Dear Julius,
Am Dienstag, den 29.11.2016, 14:20 -0800 schrieb Julius Werner: > > A lot of the GNU extensions are used in our codebase, so if somebody > > feels strongly about moving away from GNU11 to C11, the code needs to > > be cleaned up. But that should be done in a different patch set. > > I'd like to explicitly object to that. There are many GNU extensions > which are simply necessary to write sane, readable and performant code > (e.g. to implement non-double-evaluating MIN()/MAX() macros, to > cleanly control linking into particular sections, to get performant > code generated for IO accessor functions, etc.). The C standard by > itself is simply insufficient to support all systems programming use > cases, and if we forbade GNU extensions we'd have to rewrite > significant parts of coreboot in pure assembly and add weird, hardly > readable workarounds for many code patterns. I don't see how this > would be worth it just to try to get compatibility with compilers > nobody wants to use anyway, or for some theoretical goal of "standards > compliance" with no practical benefit. (Note that many GNU extensions > are implicitly available even without -std=gnuXX, some of them even if > you also enable -Werror=pedantic. But that doesn't not make them GNU > extensions, and there'd be no reason to treat them differently from > ones that require the -std flag. Ditching GNU extensions would mean > that every __attribute__, every __builtin and every extended asm > becomes illegal.) Thank you for the elaborate explanation. I never intended to take on that task, but if I had, you would have convinced me. I hope using GNU11 suits everyone. Thanks, Paul
signature.asc
Description: This is a digitally signed message part
-- coreboot mailing list: [email protected] https://www.coreboot.org/mailman/listinfo/coreboot

