3 ms·
One can try to catch use of gcc extensions with: gcc -std=c99 -pedantic
by imurray 12y ago
One can try to catch use of gcc extensions with:
gcc -std=c99 -pedantic
- guillaumec 12y agoI usually don't use those flags because some extensions are well supported (as long as I stay away from MSVC), and so I feel free to use them if they help me. One example is the ##__VAR_ARGS__ gnu extension that is not strictly c99, but not using it is just too painful for variadic macros.
- deleted 12y ago[deleted]
- kps 12y agoC11 standardizes variadic macros — see §6.10.3 Macro replacement http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf
- codys 12y agoYes, even c99 has them IIRC. The issue that was called out, however, was the use of "FOO(x, ## __VA_ARGS__)". GNU C has an extension that causes the ',' to be removed if __VA_ARGS__ is empty. AFAIK, it is not standard.