On Sun, Jul 19, 2015 at 12:34:21PM +0200 I heard the voice of Rhialto, and lo! it spake thus: > > Yes I find that terribly annoying. Conflating language features and > library features is less than optimal I think.
Eh. I can see both sides of it. Life is usually more annoying but less terrifying dealing with overly-strict than overly-loose stuff anyway. > (I think the same problem exists when you -D one of those POSIX > defines, but it was a while ago that I tried and I never tried it > since.) Yeah, we could set them as -D's instead of defines in the header. And that would avoid header file ordering issues, and silence some of the warns from flex on Fedora. I chose not to do that for keeping the command lines simple; we don't have _any_ -D's in the compile process (unless you enable YACC debugging, anyway; I didn't bother messing with that) since I setup the ctwm_config.h mechanism. We've got -I's (can't really get away from that) and -W's (can if you disable warnings), but everything we reasonably can is pulled down into files. I also avoid setting different flags onto different source files for similar reasons. The upshot is that, in extremis, you can hand-craft ctwm_config.h.in -> ctwm_config.h, figure what -I's and -libs you need, and "cc -Iwhatever *.c -o ctwm -lwhatever" to bypass everything and build manually. Or potentially get a few inter-file optimizations out of the compiler, at the expense of lack of parallelism. > A workaround is to use -std=gnu99, but that also enables the GNU > extensions to the language. Yeah. And assumes a pretty gcc-like compiler. -- Matthew Fuller (MF4839) | [email protected] Systems/Network Administrator | http://www.over-yonder.net/~fullermd/ On the Internet, nobody can hear you scream.
