← Back to context

Comment by groundzeros2015

1 month ago

> Assert what, exactly?

That you do not call it recursively by checking that the thread local is nil before invocation.

> a re-entrant general solution is desirable.

I know what you mean, but I just don't know why you want to emulate that in C. There is a real problem of people writing APIs that don't let you pass in data with your function pointer - the thread local method can solve 99% of those without changes to the original API.

But if you really want to do all kinds of first class functions with data, do you want to use C?