Re: broken gcc 3.x update ("3.4.3""fixed")

From: Clayton Weaver
Date: Wed Nov 17 2004 - 17:38:19 EST


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@xxxxxxxxx>

--
___________________________________________________________
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@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/