Messages in this thread | | | From | "Clayton Weaver" <> | Date | Wed, 17 Nov 2004 17:29:01 -0500 | Subject | Re: broken gcc 3.x update ("3.4.3""fixed") |
| |
gcc-3.4.3 caveats:
While gcc-3.4.3 fixed the string literal parsing bug I saw, which involved chunks of literal string with escaped newlines sandwiched around repeated instances of a string-valued macro and the whole thing assigned directly as the value of a const char *, 3.4.3 is more strict than gcc-3.3.x about embedded, unescaped newlines.
In gcc-3.3.2, string literals like this merely got a "deprecated" warning:
const char * msg = "hello world";
gcc-3.4.3 refuses to parse that at all, reporting a missing " error as soon as it sees the unescaped newline after 'hello' (and then reporting itself confused by the remainder of the source file).
(Recompiling a system full of old laissez faire C applications code with gcc-3.4.3, there is going to be some additional maintenance involved.)
gcc-3.4.3 also bloats the kernel a little. While stripped application binaries (-march=i686 -O2 -fno-strict-aliasing) consistently end up smaller than they were when compiled with gcc-2.95.3, a 2.4.28-rc3 kernel ended up 60k bigger with the same .config.
Regards,
Clayton Weaver <mailto: cgweav@email.com>
-- ___________________________________________________________ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |