Ok, so I used https://godbolt.org (awesome!) to compile with any
meaningful compiler down to Spark, Webassembly, ESP32, and llvm
for Commodore C46. Lowest gcc available is 4.8.5.
Every dev should bookmark this (I did already). In some questionable
areas this might be useful.
MSVC
does not go low at all. The code does compile a test macro on each
and every one of them. Only if I set `-std=c++98` and pedantic, I
will get an error: anonymous variadic macros were introduced in C99.
... as expected with '-pdantic'.
Not
sure if that is acceptable.
This kind of callbacks is a new feature. If someone insists on using
ancient compilers they should not use this **new** feature. That's
it.
IMHO acceptable, yes.
I
can of course rewrite this to use a trailing number for number of
arguments... : `FL_FUNCTION_CALLBACK_3(btn,
something, int, a, 3, int, b, 4, int, c, 5)`
This would be an interesting change because it would make sure that
you assign the correct number of arguments (triplets) for every
macro. Should be considered, IMHO. Even better if it also increases
compatibility...
Comments are owned by the poster. All other content is copyright 1998-2025 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.