I'm writing a bunch of related preprocessor macros, one of which generates labels which the other one jumps to. I use them in this fashion:
MAKE_FUNNY_JUMPING_LOOP( MAKE_LABEL(); MAKE_LABEL(); )
I need some way to generate unique labels, one for each inner
MAKE_LABEL call, with the preprocessor. I've tried using
__LINE__, but since I call
MAKE_LABEL inside another macro, they all have the same line and the labels collide.
What I'd like this to expand to is something like:
MAKE_FUNNY_JUMPING_LOOP( my_cool_label_1: // from first inner macro ... my_cool_label_2: // from second inner macro ... )
Is there a way to generate hashes or auto-incrementing integers with the preprocessor?