How does that work? It doesn't look like ! is a command or shell builtin, so I guess it's an argument to if.
#if FOO
foo();
#elif BAR
bar();
#endif
#if FOO
foo();
#else
#if BAR
bar();
#endif
#endif
I guess it works but it's clunkier.