[Bug c++/30839] New: tree check fail for legal code
I just tried to compile Suse Linux package ruby-zypp-0.1-44 with the GNU C++ compiler version 4.3 snapshot 20070216. The compiler said /usr/include/boost/regex/v4/perl_matcher_non_recursive.hpp:190: internal compiler error: tree check: expected tree_list, have function_decl in build_call, at cp/call.c:331 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. Preprocessed source code attached. No flags required. -- Summary: tree check fail for legal code Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug c++/30839] tree check fail for legal code
--- Comment #1 from dcb314 at hotmail dot com 2007-02-18 11:26 --- Created an attachment (id=13062) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13062&action=view) gzipped C++ source code -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug c++/30840] New: ice for legal code with flags -O3 -fno-strict-aliasing
I just tried to compile Suse Linux package rxvt-unicode-8.1-3 with the GNU C++ compiler version 4.3 snapshot 20070216. The compiler said screen.C: In member function 'void rxvt_term::scr_reset()': screen.C:160: internal compiler error: in set_lattice_value, at tree-ssa-ccp.c:487 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. Preprocessed source code attached. Flags -O3 -fno-strict-aliasing required. -- Summary: ice for legal code with flags -O3 -fno-strict-aliasing Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30840
[Bug c++/30840] ice for legal code with flags -O3 -fno-strict-aliasing
--- Comment #1 from dcb314 at hotmail dot com 2007-02-18 11:28 --- Created an attachment (id=13063) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13063&action=view) C++ source code -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30840
[Bug libstdc++/28080] header dependencies
--- Comment #12 from paolo at gcc dot gnu dot org 2007-02-18 11:33 --- Subject: Bug 28080 Author: paolo Date: Sun Feb 18 11:32:44 2007 New Revision: 122089 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122089 Log: 2007-02-18 Paolo Carlini <[EMAIL PROTECTED]> PR libstdc++/28080 (partial) * include/bits/stl_algobase.h: Do not include , use std::numeric_limits. * include/bits/stl_bvector.h: Use __CHAR_BIT__. * config/locale/gnu/codecvt_members.cc: Include . * config/locale/generic/codecvt_members.cc: Likewise. * include/std/string: Do not include ; do not include , include instead. * include/ext/vstring_fwd.h: Likewise. * include/ext/vstring_util.h: Do not include . * include/tr1/hashtable_policy.h: Include . * testsuite/21_strings/basic_string/replace/char/1.cc: Likewise. * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise. * testsuite/23_containers/bitset/cons/1.cc: Likewise. * testsuite/util/testsuite_character.h: Likewise. * config/locale/gnu/codecvt_members.cc: Also include , for MB_CUR_MAX. * config/locale/generic/codecvt_members.cc: Likewise. Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/config/locale/generic/codecvt_members.cc trunk/libstdc++-v3/config/locale/gnu/codecvt_members.cc trunk/libstdc++-v3/include/bits/stl_algobase.h trunk/libstdc++-v3/include/bits/stl_bvector.h trunk/libstdc++-v3/include/ext/vstring_fwd.h trunk/libstdc++-v3/include/ext/vstring_util.h trunk/libstdc++-v3/include/std/string trunk/libstdc++-v3/include/tr1/hashtable_policy.h trunk/libstdc++-v3/testsuite/21_strings/basic_string/replace/char/1.cc trunk/libstdc++-v3/testsuite/21_strings/basic_string/replace/wchar_t/1.cc trunk/libstdc++-v3/testsuite/23_containers/bitset/cons/1.cc trunk/libstdc++-v3/testsuite/util/testsuite_character.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28080
[Bug rtl-optimization/30841] New: Missed optimizations for sbi/cbi instructions
demo.c: #define PORTD (*(volatile unsigned char *)(50)) int main (void) { PORTD |= 1; return 0; } Revision r118474: .LM2: ; (insn 14 12 18 main.c:6 (set (mem/v:QI (const_int 50 [0x32]) [0 S1 A8]) ; (ior:QI (mem/v:QI (const_int 50 [0x32]) [0 S1 A8]) ; (const_int 1 [0x1]))) 114 {*sbi} (nil) ; (nil)) sbi 50-0x20,0; 14 *sbi[length = 1] Revision r118475: .LM2: ; (insn 10 9 11 main.c:6 (set (reg/f:HI 30 r30 [44]) ; (const_int 50 [0x32])) 12 {*movhi} (nil) ; (expr_list:REG_EQUIV (const_int 50 [0x32]) ; (nil))) ldi r30,lo8(50) ; 10 *movhi/4[length = 2] ldi r31,hi8(50) ; (insn 11 10 12 main.c:6 (set (reg:QI 24 r24 [orig:42 D.1514 ] [42]) ; (mem/v:QI (reg/f:HI 30 r30 [44]) [0 S1 A8])) 9 {*movqi} (insn_list:REG_DEP_TRUE 10 (nil)) ; (nil)) ld r24,Z ; 11 *movqi/4[length = 1] ; (insn 12 11 14 main.c:6 (set (reg:QI 24 r24 [orig:42 D.1514 ] [42]) ; (ior:QI (reg:QI 24 r24 [orig:42 D.1514 ] [42]) ; (const_int 1 [0x1]))) 47 {iorqi3} (insn_list:REG_DEP_TRUE 11 (nil)) ; (nil)) ori r24,lo8(1) ; 12 iorqi3/2[length = 1] ; (insn 14 12 18 main.c:6 (set (mem/v:QI (reg/f:HI 30 r30 [44]) [0 S1 A8]) ; (reg:QI 24 r24 [orig:42 D.1514 ] [42])) 9 {*movqi} (insn_list:REG_DEP_TRUE 12 (nil)) ; (expr_list:REG_DEAD (reg:QI 24 r24 [orig:42 D.1514 ] [42]) ; (expr_list:REG_DEAD (reg/f:HI 30 r30 [44]) ; (nil st Z,r24 ; 14 *movqi/3[length = 1] Revision 118475 2006-11-03 Paolo Bonzini <[EMAIL PROTECTED]> Steven Bosscher <[EMAIL PROTECTED]> * fwprop.c: New file. * Makefile.in: Add fwprop.o. * tree-pass.h (pass_rtl_fwprop, pass_rtl_fwprop_with_addr): New. * passes.c (init_optimization_passes): Schedule forward propagation. * rtlanal.c (loc_mentioned_in_p): Support NULL value of the second parameter. * timevar.def (TV_FWPROP): New. * common.opt (-fforward-propagate): New. * opts.c (decode_options): Enable forward propagation at -O2. * gcse.c (one_cprop_pass): Do not run local cprop unless touching jumps. * cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1, find_best_addr, canon_for_address, table_size): Remove. (new_basic_block, insert, remove_from_table): Remove references to table_size. (fold_rtx): Process SUBREGs and MEMs with equiv_constant, make simplification loop more straightforward by not calling fold_rtx recursively. (equiv_constant): Move here a small part of fold_rtx_subreg, do not call fold_rtx. Call avoid_constant_pool_reference to process MEMs. * recog.c (canonicalize_change_group): New. * recog.h (canonicalize_change_group): New. * doc/invoke.texi (Optimization Options): Document fwprop. * doc/passes.texi (RTL passes): Document fwprop. Anatoly. -- Summary: Missed optimizations for sbi/cbi instructions Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: aesok at gcc dot gnu dot org GCC target triplet: avr http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30841
[Bug ada/30684] [4.2 regression] boostrap failed with undefined reference to system__pure_exceptions_*
--- Comment #2 from ebotcazou at gcc dot gnu dot org 2007-02-18 13:24 --- Most likely a bug in the bootstrap compiler (PR ada/27936). Try with 3.4.x. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||ebotcazou at gcc dot gnu dot ||org BugsThisDependsOn||27936 Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30684
[Bug c++/30842] New: Warning received when private class has hidden visibility
class A { class __attribute__((visibility("hidden"))) B { }; B v; }; int main (void) { A a; return (0); } Compiling the above code with 4.2.0 20070207 generates: ex.cc:1: warning: 'A' declared with greater visibility than the type of its field 'A::v' 4.0.2 did not generate this warning. I believe this is a bug because A::v is private and thus does not have to be visible to anyone but A. In fact, the best solution, IMHO, is to make all private members hidden by default, since they can not be accessed from outside anyway. The only time the warning would still be valid is if there are friends in the class. This may be related to the ADA bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24167";>24167. -- Summary: Warning received when private class has hidden visibility Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: 9ugsa9j02 at sneakemail dot com GCC host triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30842
[Bug tree-optimization/30795] [4.3 Regression] ice for legal code with -ftree-vectorize -O2
--- Comment #4 from dorit at il dot ibm dot com 2007-02-18 16:42 --- patch: http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01555.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30795
[Bug c/30843] New: ice for legal code with -ftree-vectorize -O2
I just tried to compile Suse Linux package sane-backends-1.0.18-5 with the GNU C++ compiler version 4.3 snapshot 20070216. The compiler said plustek-pp_dac.c: In function 'dacP98WaitForShading': plustek-pp_dac.c:780: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. Here is some output from valgrind ==17180== Invalid read of size 8 ==17180==at 0x674ADB: bsi_for_stmt (tree-flow-inline.h:744) ==17180==by 0x9C3DFC: vect_get_vec_def_for_operand (tree-vect-transform.c:638) ==17180==by 0x9C6520: vectorizable_store (tree-vect-transform.c:3210) ==17180==by 0x9CC6BB: vect_transform_loop (tree-vect-transform.c:4270) ==17180==by 0x775216: vectorize_loops (tree-vectorizer.c:2187) ==17180==by 0x5F9060: execute_one_pass (passes.c:1055) ==17180==by 0x5F921B: execute_pass_list (passes.c:1107) ==17180==by 0x5F922D: execute_pass_list (passes.c:1108) ==17180==by 0x5F922D: execute_pass_list (passes.c:1108) ==17180==by 0x6B73A6: tree_rest_of_compilation (tree-optimize.c:412) ==17180==by 0x40AADB: c_expand_body (c-decl.c:6842) ==17180==by 0x7ED120: cgraph_expand_function (cgraphunit.c:1008) ==17180== Address 0x0 is not stack'd, malloc'd or (recently) free'd Preprocessed source code attached. Flags -ftree-vectorize -O2 required. -- Summary: ice for legal code with -ftree-vectorize -O2 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30843
[Bug c/30843] ice for legal code with -ftree-vectorize -O2
--- Comment #1 from dcb314 at hotmail dot com 2007-02-18 16:58 --- Created an attachment (id=13064) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13064&action=view) C source code -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30843
[Bug rtl-optimization/28173] [4.0/4.1 regression] misses constant folding
--- Comment #4 from sayle at gcc dot gnu dot org 2007-02-18 17:10 --- Subject: Bug 28173 Author: sayle Date: Sun Feb 18 17:10:19 2007 New Revision: 122100 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122100 Log: Backport from mainline. PR middle-end/24427 PR rtl-optimization/28173 * fold-const.c (fold_binary) : Transform (X&C1)|C2 into (X,C2) if C1 is a subset of the bits of C2. Transform (X&C1)|C2 into X|C2 if C1|C2 == ~0. Canonicalize (X&C1)|C2 as (X&(C1&~C2))|C2. : Canonicalize (X|C1)&C2 as (X&C2)|(C1&C2). * gcc.dg/tree-ssa/andor-1.c: New test case. Added: branches/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/andor-1.c Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/fold-const.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28173
[Bug middle-end/24427] missing optimization opportunity with binary operators
--- Comment #8 from sayle at gcc dot gnu dot org 2007-02-18 17:10 --- Subject: Bug 24427 Author: sayle Date: Sun Feb 18 17:10:19 2007 New Revision: 122100 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122100 Log: Backport from mainline. PR middle-end/24427 PR rtl-optimization/28173 * fold-const.c (fold_binary) : Transform (X&C1)|C2 into (X,C2) if C1 is a subset of the bits of C2. Transform (X&C1)|C2 into X|C2 if C1|C2 == ~0. Canonicalize (X&C1)|C2 as (X&(C1&~C2))|C2. : Canonicalize (X|C1)&C2 as (X&C2)|(C1&C2). * gcc.dg/tree-ssa/andor-1.c: New test case. Added: branches/gcc-4_1-branch/gcc/testsuite/gcc.dg/tree-ssa/andor-1.c Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/fold-const.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24427
[Bug c++/30842] Warning received when private class has hidden visibility
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-02-18 17:27 --- This is way unrelated to that Ada bug. The reasoning behind the warning is because you will get an ODR issue if you define the class A in a shared library and use it in the executable. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30842
[Bug middle-end/24427] missing optimization opportunity with binary operators
--- Comment #9 from ebotcazou at gcc dot gnu dot org 2007-02-18 17:58 --- Roger, I'm a little puzzled by your last move: is it really necessary to backport a patch for a missed optimization, after a delay of 1 full year, to a branch which is supposed to be in stabilization mode now? IMHO it's too late. -- ebotcazou at gcc dot gnu dot org changed: What|Removed |Added CC||sayle at gcc dot gnu dot ||org, ebotcazou at gcc dot ||gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24427
[Bug middle-end/24427] missing optimization opportunity with binary operators
--- Comment #10 from roger at eyesopen dot com 2007-02-18 18:10 --- Hi Eric, It's not PR24427 that's the motivation for this backport, but PR 28173. In fact, it was *your* request in comment #2 of PR28173 to backport this! I'm a little disappointed you'd even question my decision/authority to backport a regression fix. :-) Roger -- -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24427
[Bug middle-end/24427] missing optimization opportunity with binary operators
--- Comment #11 from ebotcazou at gcc dot gnu dot org 2007-02-18 18:50 --- > It's not PR24427 that's the motivation for this backport, but PR 28173. > In fact, it was *your* request in comment #2 of PR28173 to backport this! Well, I only requested that you comment on the proposed backport. And this was on 2006-09-13, so 5 months ago! > I'm a little disappointed you'd even question my decision/authority to > backport a regression fix. :-) I'm basically paid for that. :-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24427
[Bug fortran/30400] ANY not accepted as mask in FORALL
--- Comment #3 from pault at gcc dot gnu dot org 2007-02-18 19:52 --- Subject: Bug 30400 Author: pault Date: Sun Feb 18 19:52:16 2007 New Revision: 122102 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122102 Log: 2007-02-18 Roger Sayle <[EMAIL PROTECTED]> Paul Thomas <[EMAIL PROTECTED]> PR fortran/30400 * match.c (match_forall_iterator): Use gfc_match_expr instead of gfc_match_variable to match the iterator variable. Return MATCH_NO if not a variable. Remove the reset of the symbol's flavor in cleanup. 2007-02-18 Roger Sayle <[EMAIL PROTECTED]> * gfortran.dg/forall_10.f90: New test case. Added: trunk/gcc/testsuite/gfortran.dg/forall_10.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/match.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30400
[Bug java/30844] New: invalid "Can't find method" error
The following code, placed in a file named A.java, fails to compile with GCJ 4.1.0. Sun's javac has no problem with it. Interestingly, if you comment out the line marked with "/**/", the code compiles. /* Begin A.java */ public class A { public A() { } public int foo(Object a) { return 1; } public int foo(Object[] a) { return 1; } public static class B extends A { public B() { } /**/ public int foo(Object a) { return 1; } } public static class C extends B { public C() { } public int foo(Object[] a) { return super.foo(a); } } } /* End A.java */ The command I ran: $ gcj4 -v -C A.java Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --with-gxx-include-dir=/usr/include/c++/3.4.3 --enable-libgcj-multifile --enable-languages=c,c++,java,f95 --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=i386-redhat-linux Thread model: posix gcc version 4.1.0 20060515 (Red Hat 4.1.0-18) /usr/libexec/gcc/i386-redhat-linux/4.1.0/jc1 A.java -quiet -dumpbase A.java -mtune=generic -auxbase-strip NONE -g1 -version -fsyntax-only -femit-class-files -o A GNU Java version 4.1.0 20060515 (Red Hat 4.1.0-18) (i386-redhat-linux) compiled by GNU C version 4.1.0 20060515 (Red Hat 4.1.0-18). GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Class path starts here: ./ /home/rizzolo/lib/ /home/rizzolo/lib/java_cup.jar/ (zip) /home/rizzolo/cogcomp/LBP/LBJ2/ /usr/share/java/libgcj-4.1.0.jar/ (system) (zip) A.java: In class 'A$C': A.java: In method 'A$C.foo(java.lang.Object[])': A.java:18: error: Can't find method foo([Ljava/lang/Object;) in type A$B. Candidates are: 'A$B.foo(java.lang.Object)' in 'A$B' 'A.foo(java.lang.Object[])' in 'A'. public int foo(Object[] a) { return super.foo(a); } ^ 1 error By the way, it is not necessary for classes A, B, and C to be defined in the same file with B and C defined as static member classes of A. The problem is also present when the three classes are defined in separate files and not as member classes. - Nick -- Summary: invalid "Can't find method" error Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rizzolo at gmail dot com GCC host triplet: i386-redhat-linux GCC target triplet: i386-redhat-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30844
[Bug java/30844] invalid "Can't find method" error
--- Comment #1 from rizzolo at gmail dot com 2007-02-18 21:07 --- Created an attachment (id=13065) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13065&action=view) The code causing the problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30844
[Bug fortran/28399] Implement ftnchek-like warnings
--- Comment #1 from tkoenig at gcc dot gnu dot org 2007-02-18 21:18 --- *** This bug has been marked as a duplicate of 27866 *** -- tkoenig at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28399
[Bug fortran/27866] Warn when casting, e.g. assigning a double precision to a real
--- Comment #6 from tkoenig at gcc dot gnu dot org 2007-02-18 21:18 --- *** Bug 28399 has been marked as a duplicate of this bug. *** -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27866
[Bug fortran/30235] [4.1 and 4.2] missing alternate return argument with explicit interface causes segfault
--- Comment #8 from pault at gcc dot gnu dot org 2007-02-18 21:18 --- Subject: Bug 30235 Author: pault Date: Sun Feb 18 21:18:28 2007 New Revision: 122105 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122105 Log: 2007-02-18 Brooks Moses <[EMAIL PROTECTED]> PR 30235 * interface.c (compare_actual_formal): check for alternate returns when iterating over non-present arguments. 2007-02-18 Brooks Moses <[EMAIL PROTECTED]> PR 30235 * gfortran.dg/altreturn_2.f90: new test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/altreturn_2.f90 Modified: branches/gcc-4_2-branch/gcc/fortran/ChangeLog branches/gcc-4_2-branch/gcc/fortran/interface.c branches/gcc-4_2-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30235
[Bug fortran/30235] [4.1 only] missing alternate return argument with explicit interface causes segfault
--- Comment #9 from pault at gcc dot gnu dot org 2007-02-18 21:23 --- Good one, Brooks. Fixed on trunk and 4.2 Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Summary|[4.1 and 4.2] missing |[4.1 only] missing alternate |alternate return argument |return argument with |with explicit interface |explicit interface causes |causes segfault |segfault http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30235
[Bug c++/30845] New: segfault in collect2 with large template
Compile the attached source file to see the segfault: $ g++4 -v bug.cpp Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../gcc-4.1.2/configure --program-suffix=4 : (reconfigured) ../gcc-4.1.2/configure --enable-languages=c,c++ --program-suffix=4 Thread model: posix gcc version 4.1.2 /usr/local/libexec/gcc/i686-pc-linux-gnu/4.1.2/cc1plus -quiet -v -D_GNU_SOURCE bug.cpp -quiet -dumpbase bug.cpp -mtune=pentiumpro -auxbase bug -version -o /tmp/ccqr4llF.s ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../include/c++/4.1.2 /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../include/c++/4.1.2/i686-pc-linux-gnu /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../include/c++/4.1.2/backward /usr/local/include /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/include /usr/include End of search list. GNU C++ version 4.1.2 (i686-pc-linux-gnu) compiled by GNU C version 4.0.2 20050901 (prerelease) (SUSE Linux). GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129492 Compiler executable checksum: 05bd8c32863edc67f1601012dc99be46 as -V -Qy -o /tmp/ccCUjzhc.o /tmp/ccqr4llF.s GNU assembler version 2.17 (i686-pc-linux-gnu) using BFD version 2.17 /usr/local/libexec/gcc/i686-pc-linux-gnu/4.1.2/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/crtbegin.o -L/usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2 -L/usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/../../.. /tmp/ccCUjzhc.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/lib/gcc/i686-pc-linux-gnu/4.1.2/crtend.o /usr/lib/crtn.o collect2: ld terminated with signal 11 [Segmentation fault] -- Summary: segfault in collect2 with large template Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: cpp at tempest-sw dot com GCC build triplet: i686-pc-linux GCC host triplet: i686-pc-linux GCC target triplet: i686-pc-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30845
[Bug c++/30845] segfault in collect2 with large template
--- Comment #1 from cpp at tempest-sw dot com 2007-02-18 21:37 --- Created an attachment (id=13066) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13066&action=view) Source file to demonstrate problem -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30845
[Bug c++/30845] segfault in collect2 with large template
--- Comment #2 from pinskia at gcc dot gnu dot org 2007-02-18 21:42 --- >ld terminated with signal 11 [Segmentation fault] ld segfaulted and not collect2. ld is part the GNU binutils. You should updated to the latest stable binutils and then if it is still reproducable, report this bug to them. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30845
[Bug c++/30839] [4.3 Regression] tree check fail for legal code
--- Comment #2 from pinskia at gcc dot gnu dot org 2007-02-18 21:49 --- reducing ... -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||sandra at codesourcery dot ||com Severity|normal |blocker Keywords||ice-on-valid-code Summary|tree check fail for legal |[4.3 Regression] tree check |code|fail for legal code Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug c++/30839] [4.3 Regression] tree check fail for legal code
--- Comment #3 from pinskia at gcc dot gnu dot org 2007-02-18 21:50 --- Note this is related to placement new in a template. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug c/30843] ice for legal code with -ftree-vectorize -O2
--- Comment #2 from dorit at il dot ibm dot com 2007-02-18 21:50 --- I was able to reproduce it. Here's a reduced testcase: void dacP98FillRGBMap( unsigned char *pBuffer ) { unsigned long dw, dw1; unsigned long *pdw = (unsigned long *)(pBuffer); for( dw = 256, dw1 = 0; dw; dw--, dw1 += 0x01010101 ) { *pdw++ = dw1; *pdw++ = dw1; *pdw++ = dw1; *pdw++ = dw1; } } Looks like possibly some bad interaction between vectorization of induction and vectorization of strided-access. Will investigate. -- dorit at il dot ibm dot com changed: What|Removed |Added Summary|ice for legal code with - |ice for legal code with - |ftree-vectorize -O2 |ftree-vectorize -O2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30843
[Bug c/30846] New: ice for legal code with -O2
I just tried to compile Suse Linux package snd-8.8-2 with the GNU C++ compiler version 4.3 snapshot 20070216. The compiler said clm2xen.c: In function 'g_edot_product': clm2xen.c:7351: internal compiler error: in sra_build_assignment, at tree-sra.c:1733 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. Preprocessed source code attached. Flag -O2 required. -- Summary: ice for legal code with -O2 Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dcb314 at hotmail dot com GCC host triplet: x86_64-suse-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug c/30846] ice for legal code with -O2
--- Comment #1 from dcb314 at hotmail dot com 2007-02-18 21:52 --- Created an attachment (id=13067) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13067&action=view) C source code -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug c++/30839] [4.3 Regression] tree check fail for legal code
--- Comment #4 from pinskia at gcc dot gnu dot org 2007-02-18 22:04 --- Reduced testcase: typedef __SIZE_TYPE__ size_t; inline void* operator new(size_t, void* __p) throw() { return __p; } inline void operator delete (void*, void*) throw() { } struct saved_extra_block { saved_extra_block() {} }; template void f(void) { saved_extra_block* block; (void) new (block) saved_extra_block; } -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-02-18 22:04:13 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug bootstrap/30810] top-level BOOT_CFLAGS not being used for bootstrapping
--- Comment #7 from sdack at gmx dot de 2007-02-18 22:12 --- I dug a bit deeper and should now get my gcc compiled with a load full of options. It is compiling right now. The idea is to get a highly optimized output as well as to cause high stress to gcc. However, there is a file called gcc-4.1.2/config/mh-x86omitf, which hard-codes BOOT_CFLAGS. This value can not be over-written by an environment variable, through an argument to make or by specifying --with-boot-cflags=... to configure. The file gets included and then seems to be untouchable. I therefore edited it. Why libcpp and other parts are being compiled with no CFLAGS when they surely could use some optimization I do not yet now. The whole concept of autoconf/automake blurrs it to an extend where I loose my interest. ... The compile now aborted with an internal compiler error. So much for that *smirk*. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30810
[Bug tree-optimization/30840] ice for legal code with flags -O3 -fno-strict-aliasing
--- Comment #2 from pinskia at gcc dot gnu dot org 2007-02-18 22:12 --- Reducing ... -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|c++ |tree-optimization Summary|ice for legal code with |ice for legal code with |flags -O3 -fno-strict- |flags -O3 -fno-strict- |aliasing|aliasing http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30840
[Bug tree-optimization/30846] [4.3 Regression] ice for legal code with -O2
--- Comment #2 from pinskia at gcc dot gnu dot org 2007-02-18 22:27 --- reducing ... -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Severity|normal |blocker Component|c |tree-optimization GCC host triplet|x86_64-suse-linux | Keywords||ice-on-valid-code Summary|ice for legal code with -O2 |[4.3 Regression] ice for ||legal code with -O2 Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug rtl-optimization/30773] [4.3 Regression] Spec cpu2k6/h264ref and sphinx3 miscompare regression
--- Comment #9 from steven at gcc dot gnu dot org 2007-02-18 22:33 --- Subject: Bug 30773 Author: steven Date: Sun Feb 18 22:33:23 2007 New Revision: 122106 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122106 Log: PR rtl-optimization/30773 * local-alloc.c (update_equiv_regs): Do not set reg_equiv_init if we fail to attach a REG_EQUIV note. Modified: trunk/gcc/ChangeLog trunk/gcc/local-alloc.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30773
[Bug rtl-optimization/30773] [4.3 Regression] Spec cpu2k6/h264ref and sphinx3 miscompare regression
--- Comment #10 from steven at gcc dot gnu dot org 2007-02-18 22:34 --- Fixed on the trunk. I'll open a new PR for the missed rematerialization opportunity that this causes. -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30773
[Bug c++/30839] [4.3 Regression] tree check fail for legal code
--- Comment #5 from sandra at codesourcery dot com 2007-02-18 22:37 --- This bug is fixed by this already-posted patch, which does some restructuring of the code in build_op_delete_call where the error is happening: http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01487.html I could come up with a smaller patch that fixes just this bug, but it would be obsoleted by the above changes. Specifically, the problem is at gcc/cp/call.c:4046 -- TREE_OPERAND (placement, 1) should be CALL_EXPR_ARGS (placement), but we're trying hard to stamp out CALL_EXPR_ARGS. :-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30839
[Bug c++/30847] New: [4.1/4.2/4.3 regression] ICE with invalid statement expression
The follwoing code snippet triggers an ICE since GCC 4.0.0: = void foo(int i) { (i ? 1 : 2) = ({ int X; }); } = bug.cc: In function 'void foo(int)': bug.cc:3: internal compiler error: in build_target_expr_with_type, at cp/tree.c:382 Please submit a full bug report, [etc.] The problem is similar to PR 30158, but alas not fixed with Andrew's patch. It's even worse because it's not an error-recovery bug. -- Summary: [4.1/4.2/4.3 regression] ICE with invalid statement expression Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30847
[Bug c++/30847] [4.1/4.2/4.3 regression] ICE with invalid statement expression
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30847
[Bug middle-end/30848] New: [4.1/4.2/4.3 regression] ICE with invalid constraint in asm statement
The following invalid code snippet triggers an ICE since GCC 3.0 (with the exception of GCC 3.4.4 - 3.4.6): = void foo(double d) { __asm__ ("" : "=u" (d)); } = bug.c: In function 'foo': bug.c:3: error: output regs must be grouped at top of stack bug.c:4: internal compiler error: in emit_swap_insn, at reg-stack.c:818 Please submit a full bug report, [etc.] -- Summary: [4.1/4.2/4.3 regression] ICE with invalid constraint in asm statement Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30848
[Bug middle-end/30848] [4.1/4.2/4.3 regression] ICE with invalid constraint in asm statement
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30848
[Bug c++/30849] New: [4.1/4.2/4.3 regression] ICE with invalid asm statement
The following invalid code snippet triggers an ICE since GCC 3.4.0: = void foo() { asm("" : 0); } = bug.cc: In function 'void foo()': bug.cc:3: error: expected string-literal before numeric constant bug.cc:3: error: expected `(' before numeric constant bug.cc:3: error: expected `)' before ';' token bug.cc:3: error: lvalue required in asm statement bug.cc:3: internal compiler error: tree check: expected string_cst, have error_mark in finish_asm_stmt, at cp/semantics.c:1251 Please submit a full bug report, [etc.] -- Summary: [4.1/4.2/4.3 regression] ICE with invalid asm statement Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30849
[Bug c++/30849] [4.1/4.2/4.3 regression] ICE with invalid asm statement
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30849
[Bug rtl-optimization/29599] [4.1/4.2/4.3 Regression] ICE when building the kernel on SH4
--- Comment #7 from kkojima at gcc dot gnu dot org 2007-02-18 23:08 --- Subject: Bug 29599 Author: kkojima Date: Sun Feb 18 23:08:15 2007 New Revision: 122109 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122109 Log: Backport from mainline. PR rtl-optimization/29599 * reload1.c (eliminate_regs_in_insn): Take the destination mode into account when computing the offset. Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/reload1.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29599
[Bug rtl-optimization/29599] [4.1/4.2/4.3 Regression] ICE when building the kernel on SH4
--- Comment #8 from kkojima at gcc dot gnu dot org 2007-02-18 23:10 --- Fixed. -- kkojima at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29599
[Bug c++/30850] New: [4.1/4.2/4.3 regression] ICE with invalid asm statement
The following invalid code snippet triggers an ICE since GCC 3.4.0: = void foo() { asm("" :: 0); } = bug.cc: In function 'void foo()': bug.cc:3: error: expected string-literal before numeric constant bug.cc:3: error: expected `(' before numeric constant bug.cc:3: error: expected `)' before ';' token bug.cc:3: internal compiler error: tree check: expected string_cst, have error_mark in resolve_asm_operand_names, at stmt.c:1234 Please submit a full bug report, [etc.] The bug is similar to PR 30849, but the crash is in a different function. -- Summary: [4.1/4.2/4.3 regression] ICE with invalid asm statement Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30850
[Bug target/30848] [4.1/4.2/4.3 regression] ICE with invalid constraint in asm statement
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-02-18 23:10 --- This is an x86 specific inline-asm bug really as the "u" constraint is x86 specific. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Component|inline-asm |target GCC target triplet||i?86-*-* x86_64-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30848
[Bug c++/30851] New: [4.1/4.2/4.3 regression] ICE with invalid asm statement
The following invalid code snippet triggers an ICE since GCC 3.4.0: = void foo() { asm ("%[x]" : [0](x)); } = bug.cc: In function 'void foo()': bug.cc:3: error: expected identifier before numeric constant bug.cc:3: error: expected `]' before numeric constant bug.cc:3: error: expected string-literal before numeric constant bug.cc:3: error: expected `(' before numeric constant bug.cc:3: error: expected `)' before ']' token bug.cc:3: error: expected `)' before ']' token bug.cc:3: internal compiler error: tree check: expected string_cst, have error_mark in resolve_operand_name_1, at stmt.c:1320 Please submit a full bug report, [etc.] The bug is similar to PR 30849 and PR 30850, but the crash is in a different function. -- Summary: [4.1/4.2/4.3 regression] ICE with invalid asm statement Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, error-recovery, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30851
[Bug c++/30851] [4.1/4.2/4.3 regression] ICE with invalid asm statement
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30851
[Bug middle-end/30768] [4.3 regression]: ICE in ext/pb_ds/regression/list_update_data_map_rand.cc
--- Comment #28 from pinskia at gcc dot gnu dot org 2007-02-18 23:28 --- I think this is honza's bug. The backtrace: #0 fancy_abort (file=0xda66cc "../../gcc/dominance.c", line=374, function=0xda66e4 "calc_dfs_tree") at ../../gcc/diagnostic.c:642 #1 0x0077eba8 in calc_dfs_tree (di=0xb0b0, reverse=CDI_DOMINATORS) at ../../gcc/dominance.c:374 #2 0x0077f9f4 in calculate_dominance_info (dir=CDI_DOMINATORS) at ../../gcc/dominance.c:632 #3 0x0080808c in update_ssa (update_flags=1024) at ../../gcc/tree-into-ssa.c:3155 #4 0x00331078 in tree_function_versioning (old_decl=0x1114e00, new_decl=0x1408180, tree_map=0x0, update_clones=1 '\001') at ../../gcc/tree-inline.c:3455 #5 0x00711148 in save_inline_function_body (node=0x11a0e00) at ../../gcc/cgraphunit.c:1562 #6 0x004756b4 in apply_inline () at ../../gcc/ipa-inline.c:1563 #7 0x004b78f4 in execute_one_pass (pass=0xe9756c) at ../../gcc/passes.c:1055 Looks up inlining is messing up after all. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||hubicka at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30768
[Bug middle-end/30768] [4.3 regression]: ICE in ext/pb_ds/regression/list_update_data_map_rand.cc
--- Comment #29 from pinskia at gcc dot gnu dot org 2007-02-18 23:30 --- Created an attachment (id=13068) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13068&action=view) Reduced testcase as far as I can reduce it This is the most reduced testcase I can get it. it is down to 39k. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Attachment #13037|0 |1 is obsolete|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30768
[Bug c++/30852] New: [4.1/4.2/4.3 regression] Trouble with __builtin_offsetof and volatile
The following invalid code snippet triggers an ICE since GCC 4.0.0: = struct A { static int i; }; int j = __builtin_offsetof(volatile A, i); = bug.cc:6: internal compiler error: in fold_offsetof_1, at c-common.c:6316 Please submit a full bug report, [etc.] In addition there are diagnostic issues with a similar testcase: = struct A { static void foo(); }; int i = __builtin_offsetof(volatile A, foo[0]); = bug.cc:6: error: pointer to a function used in arithmetic bug.cc:6: error: cannot apply 'offsetof' to member function '#'compound_expr' not supported by dump_decl#' Testing a patch. -- Summary: [4.1/4.2/4.3 regression] Trouble with __builtin_offsetof and volatile Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code, diagnostic, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: reichelt at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30852
[Bug c++/30852] [4.1/4.2/4.3 regression] Trouble with __builtin_offsetof and volatile
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30852
[Bug tree-optimization/30846] [4.3 Regression] ice for legal code with -O2
--- Comment #3 from pinskia at gcc dot gnu dot org 2007-02-18 23:43 --- We generate two "complex double" types. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug bootstrap/30853] New: warnings about traditional.c during bootstrap with -O3, leading to internal error
Through a change in gcc-4.1.2/config/mh-x86omitfp to replace "-O2 -fomit-framepointer" with "-O3" the bootstrap process will fail with the following warnings: ../../gcc-4.1.2/libcpp/traditional.c: In function '_cpp_scan_out_logical_line': ../../gcc-4.1.2/libcpp/traditional.c:349: warning: 'fmacro.args' may be used uninitialized in this function ../../gcc-4.1.2/libcpp/traditional.c:349: warning: 'fmacro.node' may be used uninitialized in this function ../../gcc-4.1.2/libcpp/traditional.c:349: warning: 'fmacro.offset' may be used uninitialized in this function ../../gcc-4.1.2/libcpp/traditional.c:349: warning: 'fmacro.argc' may be used uninitialized in this function ../../gcc-4.1.2/libcpp/traditional.c:349: warning: 'fmacro.line' may be used uninitialized in this function When bootstrapping without Werror it will produce some more warnings and eventually fails (during a profiledbootstrap) in an internal compiler error. Can be reproduced with: 1) Edit config/mh-x86omitfp and set BOOT_CFLAGS to "-O3" 2) configure --prefix=/home/sven/gnu --enable-languages=c --enable-bootstrap 3) make bootstrap The following warnings probably explain why there is an internal compiler error: gengtype-lex.c:3400: warning: no previous prototype for 'yyget_lineno' gengtype-lex.c:3409: warning: no previous prototype for 'yyget_in' gengtype-lex.c:3417: warning: no previous prototype for 'yyget_out' gengtype-lex.c:3425: warning: no previous prototype for 'yyget_leng' gengtype-lex.c:3434: warning: no previous prototype for 'yyget_text' gengtype-lex.c:3443: warning: no previous prototype for 'yyset_lineno' gengtype-lex.c:3455: warning: no previous prototype for 'yyset_in' gengtype-lex.c:3460: warning: no previous prototype for 'yyset_out' gengtype-lex.c:3465: warning: no previous prototype for 'yyget_debug' gengtype-lex.c:3470: warning: no previous prototype for 'yyset_debug' gengtype-lex.c:3476: warning: no previous prototype for 'yylex_destroy' build/gengtype warning: structure `c_arg_info' used but not defined warning: structure `c_switch' used but not defined warning: structure `et_node' used but not defined warning: structure `loop' used but not defined warning: structure `ipa_reference_vars_info_d' used but not defined warning: structure `reg_info_def' used but not defined warning: structure `value_set' used but not defined warning: structure `c_arg_info' used but not defined warning: structure `c_switch' used but not defined warning: structure `et_node' used but not defined warning: structure `loop' used but not defined warning: structure `ipa_reference_vars_info_d' used but not defined warning: structure `reg_info_def' used but not defined warning: structure `value_set' used but not defined -- Summary: warnings about traditional.c during bootstrap with -O3, leading to internal error Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: minor Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sdack at gmx dot de GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30853
[Bug tree-optimization/30846] [4.3 Regression] ice for legal code with -O2
--- Comment #4 from joseph at codesourcery dot com 2007-02-19 00:01 --- Subject: Re: [4.3 Regression] ice for legal code with -O2 On Sun, 18 Feb 2007, pinskia at gcc dot gnu dot org wrote: > We generate two "complex double" types. build_common_tree_nodes_2 probably ought to use build_complex_type so the types it builds get hashed properly and so _Complex double declarations get the same type as complex_double_type_node. (I don't know if that's sufficient for this particular bug.) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug tree-optimization/30846] [4.3 Regression] ICE with complex and statement expressions
--- Comment #5 from reichelt at gcc dot gnu dot org 2007-02-19 00:26 --- Confirmed. Reduced testcase (compile with -O): = void foo() { _Complex double z = ({ 0; 1.0i; }); } = -- reichelt at gcc dot gnu dot org changed: What|Removed |Added CC||reichelt at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING Keywords||monitored Summary|[4.3 Regression] ice for|[4.3 Regression] ICE with |legal code with -O2 |complex and statement ||expressions http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug tree-optimization/30846] [4.3 Regression] ICE with complex and statement expressions
-- reichelt at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-02-19 00:26:50 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug c++/30854] New: [4.3 Regression] Wrong number of arguments printed for constructor
On mainline we get a wrong diagnostic for the follwoing code snippet: struct A { A(); }; A a = -A(); bug.cc:6: error: no match for 'operator-' in '-A(0u)' Note, that the constructor has no arguments, but 'A(0u)' is printed in the error message. This gets even more confusing if you add a constructor A(unsigned) to A. -- Summary: [4.3 Regression] Wrong number of arguments printed for constructor Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: diagnostic, monitored Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: reichelt at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30854
[Bug rtl-optimization/28173] [4.0/4.1 regression] misses constant folding
--- Comment #5 from sayle at gcc dot gnu dot org 2007-02-19 00:54 --- Subject: Bug 28173 Author: sayle Date: Mon Feb 19 00:54:29 2007 New Revision: 122116 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122116 Log: PR rtl-optimization/28173 * simplify-rtx.c (simplify_binary_operation_1) : Optimize (X & C1) | C2 as C2 when (C1 & C2) == C1 and X has no side-effects. Optimize (X & C1) | C2 as X | C2 when (C1 | C2) == ~0. Canonicalize (X & C1) | C2 as (X & (C1 & ~C2)) | C2. : Canonicalize (X | C1) & C2 as (X & C2) | (C1 & C2). * gcc.target/i386/andor-1.c: New test case. Added: trunk/gcc/testsuite/gcc.target/i386/andor-1.c Modified: trunk/gcc/ChangeLog trunk/gcc/simplify-rtx.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28173
[Bug c++/30854] [4.3 Regression] Wrong number of arguments printed for constructor
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-02-19 01:51 --- It is printing out the in-charge argument. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30854
[Bug c/30855] New: gcc changes code order
gcc changes the logical order of the code. I have a 16 byte structure on which I use a macro version of bzero() that looks like this: #define lipc_bzero( __buf, __size ) \ { \ size_t __i = ( ( __size ) >> ( sizeof( long ) >> 1 ) ); \ while ( ( __i-- ) > 0 ) { \ ( ( long * )__buf )[__i] = ( long )0; \ } \ } and I use it like this: /* > code */ struct header_t a; my_bzero( &a, sizeof( a ) ); a.id = 0x4350494c; a.rid = handle->rid; /* a 32bit random number */ a.st_size = sizeof( a ); a.size = 1024; lipc_send( s, &a, sizeof( a ), MSG_NOSIGNAL, -1 ); /* < code */ if I compile the code with: "-c -ansi -g -std=gnu99 -fPIC -DPIC -D_REENTRANT -Os -ffast-math" the asm code is: ;; [snip]--- .loc 1 469 0 leal-28(%ebp), %ecx movl$0, -4(%ecx,%eax,4) decl%eax jne .L46 .LBE9: .loc 1 470 0 movl$1129335116, -28(%ebp) .loc 1 477 0 subl$12, %esp .loc 1 471 0 movl8(%esi), %eax .loc 1 472 0 movl$16, -20(%ebp) .loc 1 473 0 movl%edi, -16(%ebp) .loc 1 471 0 movl%eax, -24(%ebp) .loc 1 477 0 leal24(%ebp), %eax movl44(%esi), %edx pushl %eax movl$16, %eax pushl $16384 subl%edx, %eax pushl %eax leal(%ecx,%edx), %edx pushl %edx pushl (%esi) .LCFI23: call[EMAIL PROTECTED] ;; [snip] - and works as a charm, but if add "-funroll-loops" (to unroll the lipc_bzero()), the asm is: ;; [snip] .LBB10: .loc 1 470 0 movl$1129335116, -28(%ebp) .loc 1 477 0 subl$12, %esp .loc 1 471 0 movl8(%esi), %ecx .loc 1 477 0 leal24(%ebp), %eax .LVL26: pushl %eax pushl $16384 leal-28(%ebp,%edx), %eax .loc 1 471 0 movl%ecx, -24(%ebp) .loc 1 477 0 movl$16, %ecx subl%edx, %ecx pushl %ecx pushl %eax .loc 1 472 0 movl$16, -20(%ebp) .loc 1 473 0 movl%edi, -16(%ebp) .loc 1 477 0 pushl (%esi) .LBB11: .loc 1 469 0 movl$0, -16(%ebp) movl$0, -20(%ebp) movl$0, -24(%ebp) movl$0, -28(%ebp) .LBE11: .loc 1 477 0 .LCFI23: call[EMAIL PROTECTED] ;; [snip] In other words, the code became: struct header_t a; a.id = 0x4350494c; a.rid = handle->rid; /* a 32bit random number */ a.st_size = sizeof( a ); a.size = 1024; my_bzero( &a, sizeof( a ) ); lipc_send( s, &a, sizeof( a ), MSG_NOSIGNAL, -1 ); I did not read every bug in the database, but I think this is new (or not :)). I'm sorry I can't give you the whole code, but I will try to help in any other way. Regards, Mihai -- Summary: gcc changes code order Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: major Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mihai dot dontu at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30855
[Bug c/30855] gcc changes code order
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-02-19 02:12 --- You are violating C aliasing rules, use -fno-strict-aliasing or fix the code so you don't violate the rules. *** This bug has been marked as a duplicate of 21920 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30855
[Bug c/21920] alias violating
--- Comment #112 from pinskia at gcc dot gnu dot org 2007-02-19 02:12 --- *** Bug 30855 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||mihai dot dontu at gmail dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21920
[Bug middle-end/30833] [4.3 Regression] ICE with -fdump-tree-all
--- Comment #5 from sandra at gcc dot gnu dot org 2007-02-19 04:13 --- Subject: Bug 30833 Author: sandra Date: Mon Feb 19 04:12:49 2007 New Revision: 122122 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122122 Log: 2007-02-18 Sandra Loosemore <[EMAIL PROTECTED]> PR middle-end/30833 * tree-dump.c (dequeue_and_dump): Add tcc_vl_exp case missed during CALL_EXPR representation conversion. * tree-ssa-propagate.c (set_rhs): Likewise. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-dump.c trunk/gcc/tree-ssa-propagate.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30833
[Bug middle-end/30833] [4.3 Regression] ICE with -fdump-tree-all
--- Comment #6 from sandra at codesourcery dot com 2007-02-19 04:15 --- I looked around and found another switch that was missing case tcc_vl_exp as well. Revised patch has been regtested and committed; see http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01584.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30833
[Bug tree-optimization/30846] [4.3 Regression] ICE with complex and statement expressions
--- Comment #6 from aoliva at gcc dot gnu dot org 2007-02-19 06:20 --- Fixed in revision 122120. -- aoliva at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30846
[Bug fortran/30681] "obsolescent" vs. "obsolete"
--- Comment #5 from patchapp at dberlin dot org 2007-02-19 06:30 --- Subject: Bug number PR30681 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01587.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30681
[Bug fortran/30681] "obsolescent" vs. "obsolete"
--- Comment #6 from jvdelisle at gcc dot gnu dot org 2007-02-19 06:48 --- Subject: Bug 30681 Author: jvdelisle Date: Mon Feb 19 06:48:07 2007 New Revision: 122124 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122124 Log: 2007-02-18 Jerry DeLisle <[EMAIL PROTECTED]> PR fortran/30681 * options.c (gfc_init_options): Relax warning level for obsolescent. * match.c (match_arithmetic_if): Change to obsolescent from deleted. (gfc_match_if): Same. Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/match.c trunk/gcc/fortran/options.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30681
[Bug fortran/30681] "obsolescent" vs. "obsolete"
--- Comment #7 from jvdelisle at gcc dot gnu dot org 2007-02-19 06:52 --- Subject: Bug 30681 Author: jvdelisle Date: Mon Feb 19 06:52:18 2007 New Revision: 122125 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122125 Log: 2007-02-18 Jerry DeLisle <[EMAIL PROTECTED]> PR fortran/30681 * gfortran.dg/pr17229.f: Change "Obsolete" to "Obsolescent". Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/pr17229.f -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30681
[Bug rtl-optimization/30841] Missed optimizations for sbi/cbi instructions
-- bonzini at gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |bonzini at gnu dot org |dot org | Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2007-02-19 06:53:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30841
[Bug tree-optimization/30840] [4.3 Regression] ice for legal code with flags -O3 -fno-strict-aliasing
--- Comment #3 from pinskia at gcc dot gnu dot org 2007-02-19 06:53 --- Confirmed, reduced testcase as far as I can do it: typedef struct rxvt_term *rxvt_t; struct rxvt_salloc { struct chain { struct chain *next; }; chain *firstline; unsigned int firstfree; inline void alloc (); }; struct rxvt_perl_interp { bool invoke (rxvt_term *term); }; extern struct rxvt_perl_interp rxvt_perl; struct rxvt_term { int term_start; int *row_buf; rxvt_salloc *talloc; void scr_reset (int pend, int qlines); }; inline void rxvt_salloc::alloc () { if (firstline) firstline = firstline->next; else{ if (firstfree > 65536) firstfree = sizeof (chain); firstfree += firstfree; } } void rxvt_term::scr_reset (int pend, int qlines) { do { int *qline; for (int qrow = term_start; qlines--; qrow++) { qline = row_buf + qrow; talloc->alloc (); talloc->alloc (); } qline[0] &= ~0x0001; talloc->alloc (); talloc->alloc (); } while (term_start != pend); rxvt_perl.invoke (this); } -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC host triplet|x86_64-suse-linux | Keywords||ice-on-valid-code Last reconfirmed|-00-00 00:00:00 |2007-02-19 06:53:25 date|| Summary|ice for legal code with |[4.3 Regression] ice for |flags -O3 -fno-strict- |legal code with flags -O3 - |aliasing|fno-strict-aliasing Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30840