Name: Anonymous 2012-11-26 12:21
Apple innovates: http://llvm.org/devmtg/2012-11/Gregor-Modules.pdf
s/tool assist/tool to assist/;s/native linker cannot understand/native linker can understand/#pragma once / compiler-side include-guard optimization? -- He never seems to have heard about this either...#included - you can just do it a bit quicker. And if you've ever tried to integrate large code bases from different sources you know those are unfortunately not bad examples. (Windows system headers seem to work especially hard to cause collisions)
#pragma once is ugly and non-standard. It's like the header guards. C was invented in a time when compilers and programming languages were much less sophisticated, and now it's time to fix some things that were fixable a long time ago, instead of inventing completely new languages like Go.#pragma once should be used, I don't use it myself, either. I just think that (conditional) #include is all you mostly need. Especially since it can be optimized by the compiler. There's just no need in fixing a working system.min/max isn't specified AFAIK. But seriously now, it's just common sense not to deliberately try to provoke name clashes.#import will be the same as #pragma once:namespaces are used, but even then there's always some cock who sticks using directives everywhere.#ifdef FOO_H
#error multiple includes
#else
#define FOO_H
/* ... */
#endif