Thank you for the insight into the misspelling of __FB_EVAL__. I looked at line many times and did not see that.
I corrected the misspelling and tried the code again. I still get Error 89: Recursive define.
Code: Select all
#Print gtkTemp ' works fine now
#UNDEF gtkList
#DEFINE gtkList gtkTemp
#Print gtkList
So after the print, we know that gtkTemp is 999AAAA no __FB_JOIN__ to be found.
After UNDEFing gtkList, I then define gtkList to gtkTemp ("999AAAA") and then try to print the value of gtkList.
Where can the recursive define be coming from?
Code: Select all
#Print gtkTemp
#UNDEF gtkList
#DEFINE gtkList __FB_EVAL__(gtkTemp)
#Print gtkList
I tried changing the value to which I set gtkList as above, with the same error. It's like it thinks gtkTemp contains a reference to gtkList.
Is it possible that the __FB_xxx__ functions do not work on a #define statement? And only work when the defined variable is used and the __FB_xxx__ functions get evaluated at that time? It is certainly not specified as such in the documentation. Almost makes the __FB_xxx__ functions useless.
If so then how do I build up a defined variable one piece at a time from subsequent macros and then after all the macros cause the built-up contents to be placed on a line and get compiled after all the macros do their thing?
Wally