[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 Andrew Pinski changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |WONTFIX --- Comment #8 from Andrew Pinski --- This is a won't fix as GCC 12+ requires GCC 4.8.0+ to build which has the fix.
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 --- Comment #7 from Andrew Pinski --- #if (GCC_VERSION >= 4005) && (__GNUC__ >= 5 || !defined(__PIC__)) && (defined(__i386__) || defined(__x86_64__)) && !(defined(__sun__) && defined(__svr4__)) I don't know if this is not that important with the requirement of C++11 compiler now.
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 --- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org --- Perhaps, but that is not sufficient, if you don't bootstrap the compiler, then it will still be likely optimized build by the (system?) compiler.
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 --- Comment #5 from Andrew Pinski pinskia at gcc dot gnu.org --- Isn't it better to disable this code when not optimizing so that stage 1 is never miscompiled?
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||build Status|UNCONFIRMED |NEW Last reconfirmed||2014-01-13 Ever confirmed|0 |1 --- Comment #1 from Richard Biener rguenth at gcc dot gnu.org --- Confirmed.
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org --- I'd say for GCC 4.8 we should just replace the conditional with GCC_VERSION = 4008 and for 4.9 with = 4009, better trust only the latest version for target attribute. libcpp is bootstrapped and thus for bootstraps it will DTRT. Note, rs6000 now supports the target attribute, so I'd say that lex.c should start to use it on ppc*.
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 --- Comment #3 from Uroš Bizjak ubizjak at gmail dot com --- (In reply to Jakub Jelinek from comment #2) I'd say for GCC 4.8 we should just replace the conditional with GCC_VERSION = 4008 and for 4.9 with = 4009, better trust only the latest version for target attribute. libcpp is bootstrapped and thus for bootstraps it will DTRT. According to [1], 4.7.1 is already OK, so 4007 should be enough. [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48326#c3
[Bug preprocessor/59782] libcpp does not avoid bug #48326 when compiled by older GCC
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59782 --- Comment #4 from Michael Deutschmann michael at talosis dot ca --- According to [1], 4.7.1 is already OK, so 4007 should be enough. But 4.7.0 isn't OK, so = 4007 isn't enough. ( 4007 is functionally equivalent to = 4008.) Note that this does make fixing 4.7.4 (which I suggest should be done otherwise a person starting with 4.7.0, no C++, and a cmov-less processor will face a circuitous route up to the current version.) a little more complicated. GCC_VERSION = 4007 isn't good enough, but GCC_VERSION = 4008 would mean that 4.7.4 would never include the MMX code when compiled with itself. Some would call that a regression. It's a simple matter of preprocessor programming to check the patchlevel too, but it will be an ugly #if statement If only there was a NOT_STAGE_1 macro... (is there?).