[Bug c++/23648] New: Spurious uninitialized variable warnings at -O1 and higher
The compiler issues spurious warnings such as warning: '__cur' might be used uninitialized in this function, where on the corresponding line, __cur is the lvalue in an assignment. The warnings are not issued at -O0. I noticed this problem when dealing with nested STL containers. This is not a duplicate of bug 5035. Here is the test code: #include vector #include set int main(int, char**) { std::vectorstd::vectorstd::setint basis; basis.clear(); return 0; } I'll attach the preprocessed output. Command line and compiler output follows: % g++ -v -save-temps -Wall -o uninitialized -O2 uninitialized.cc Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs Configured with: /gcc/gcc-3.4.4/gcc-3.4.4-1/configure --verbose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-languages=c,ada,c++,d,f77,java,objc --enable-nls --without-included-gettext --enable-version-specific-runtime-libs --without-x --enable-libgcj --disable-java-awt --with-system-zlib --enable-interpreter --disable-libgcj-debug --enable-threads=posix --enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions --enable-hash-synchronization --enable-libstdcxx-debug : (reconfigured) Thread model: posix gcc version 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125) /usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1plus.exe -E -quiet -v -D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix -idirafter /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api -idirafter /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api uninitialized.cc -mtune=pentiumpro -Wall -O2 -o uninitialized.ii ignoring nonexistent directory /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/include ignoring duplicate directory /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api #include ... search starts here: #include ... search starts here: /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++ /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/i686-pc-cygwin /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/backward /usr/local/include /usr/lib/gcc/i686-pc-cygwin/3.4.4/include /usr/include /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api End of search list. /usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1plus.exe -fpreprocessed uninitialized.ii -quiet -dumpbase uninitialized.cc -mtune=pentiumpro -auxbase uninitialized -O2 -Wall -version -o uninitialized.s GNU C++ version 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125) (i686-pc-cygwin) compiled by GNU C version 3.4.4 (cygming special) (gdc 0.12, using dmd 0.125). GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32702 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_vector.h: In member function `std::vector_Tp, _Alloc std::vector_Tp, _Alloc::operator=(const std::vector_Tp, _Alloc) [with _Tp = std::setint, std::lessint, std::allocatorint , _Alloc = std::allocatorstd::setint, std::lessint, std::allocatorint ]': /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_vector.h:715: warning: '__result' might be used uninitialized in this function /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_uninitialized.h:82: warning: '__cur' might be used uninitialized in this function /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/bits/stl_uninitialized.h:82: warning: '__cur' might be used uninitialized in this function /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/as.exe -o uninitialized.o uninitialized.s /usr/lib/gcc/i686-pc-cygwin/3.4.4/collect2.exe -Bdynamic --dll-search-prefix=cyg -o uninitialized.exe /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../crt0.o -L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -L/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../.. uninitialized.o -lstdc++ -lgcc -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc -- Summary: Spurious uninitialized variable warnings at -O1 and higher Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: t dot starling at physics dot unimelb dot edu dot au CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-cygwin GCC host triplet: i686-pc-cygwin GCC target triplet: i686-pc-cygwin http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23648
[Bug c++/23648] Spurious uninitialized variable warnings at -O1 and higher
--- Additional Comments From t dot starling at physics dot unimelb dot edu dot au 2005-08-31 07:08 --- Created an attachment (id=9629) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9629action=view) Preprocessed test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23648
[Bug c++/23628] Typeinfo comparison code easily breaks shared libs
--- Additional Comments From ghost at cs dot msu dot su 2005-08-31 07:16 --- It's is mess, but I hope that we don't just agree on *that*. The situation is that the whole -fvisibility thing does not work reliably for C++ dynamic libraries which is rather bad. -- What|Removed |Added CC||ghost at cs dot msu dot su http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23628
[Bug ada/23646] [4.1 Regression] Ada testsuite hangs -- many new failures
--- Additional Comments From charlet at adacore dot com 2005-08-31 07:19 --- Subject: Re: [4.1 Regression] Ada testsuite hangs -- many new failures So the only thing left is the Ada front-end/library changes. Thanks for investigating, I'll have a look. I have a set of pending changes that should take care of this. Arno -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23646
[Bug c++/23586] [3.4 regression] Bad diagnostic for invalid namespace-name
--- Additional Comments From reichelt at gcc dot gnu dot org 2005-08-31 08:32 --- Patch for the 3.4 branch posted. -- What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2005- ||08/msg01818.html http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23586
[Bug c++/23639] [3.4/4.0/4.1 regression] Bad error message: not a member of 'declaration error'
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 08:47 --- Subject: Bug 23639 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 08:46:47 Modified files: gcc/cp : ChangeLog semantics.c gcc/testsuite : ChangeLog gcc/testsuite/g++.dg/template: ttp5.C Log message: PR c++/23639 * semantics.c (qualified_name_lookup_error): Do not complain again on invalid scope. * g++.dg/template/ttp5.C: Adjust error markers. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gccr1=1.4863r2=1.4864 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/semantics.c.diff?cvsroot=gccr1=1.482r2=1.483 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gccr1=1.5984r2=1.5985 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/ttp5.C.diff?cvsroot=gccr1=1.1r2=1.2 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23639
[Bug target/23570] [4.0/4.1 Regression] internal compiler error: in merge_assigned_reloads, at reload1.c:6091
--- Additional Comments From uros at kss-loka dot si 2005-08-31 08:48 --- Patch. -- What|Removed |Added AssignedTo|unassigned at gcc dot gnu |uros at kss-loka dot si |dot org | URL||http://gcc.gnu.org/ml/gcc- ||patches/2005- ||08/msg01819.html Status|NEW |ASSIGNED Keywords||patch Last reconfirmed|2005-08-26 03:36:35 |2005-08-31 08:48:43 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23570
[Bug c++/23639] [3.4/4.0/4.1 regression] Bad error message: not a member of 'declaration error'
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 08:51 --- Subject: Bug 23639 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-4_0-branch Changes by: [EMAIL PROTECTED] 2005-08-31 08:51:31 Modified files: gcc/cp : ChangeLog semantics.c gcc/testsuite : ChangeLog gcc/testsuite/g++.dg/template: ttp5.C Log message: PR c++/23639 * semantics.c (qualified_name_lookup_error): Do not complain again on invalid scope. * g++.dg/template/ttp5.C: Adjust error markers. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.4648.2.86r2=1.4648.2.87 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/semantics.c.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.463.2.5r2=1.463.2.6 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.5084.2.362r2=1.5084.2.363 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/ttp5.C.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.1r2=1.1.82.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23639
[Bug c++/23645] internal compiler error
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 08:55 --- I cannot reproduce this with a checking enabled 4.0.2 20050826 (prerelease) on i686-pc-linux-gnu. -- What|Removed |Added Known to work|4.1.0 |4.1.0 4.0.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23645
[Bug c++/23639] [3.4/4.0/4.1 regression] Bad error message: not a member of 'declaration error'
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 08:56 --- Subject: Bug 23639 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-3_4-branch Changes by: [EMAIL PROTECTED] 2005-08-31 08:56:11 Modified files: gcc/cp : ChangeLog semantics.c gcc/testsuite : ChangeLog gcc/testsuite/g++.dg/template: ttp5.C Log message: PR c++/23639 * semantics.c (qualified_name_lookup_error): Do not complain again on invalid scope. * g++.dg/template/ttp5.C: Adjust error markers. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.3892.2.229r2=1.3892.2.230 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/semantics.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.381.4.18r2=1.381.4.19 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.3389.2.421r2=1.3389.2.422 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/ttp5.C.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.1r2=1.1.22.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23639
[Bug c++/23639] [3.4/4.0/4.1 regression] Bad error message: not a member of 'declaration error'
--- Additional Comments From reichelt at gcc dot gnu dot org 2005-08-31 08:58 --- Fixed on mainline, 4.0 branch, and 3.4 branch. -- What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|4.0.2 |3.4.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23639
[Bug target/23649] New: gcc.dg/ppc-and-1.c failure due to not using rlwinm
This test has been failing since Geoff's 2005-06-11 rs6000 patch. The test was added when PR16457 was fixed. -- Summary: gcc.dg/ppc-and-1.c failure due to not using rlwinm Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: target AssignedTo: amodra at bigpond dot net dot au ReportedBy: amodra at bigpond dot net dot au CC: gcc-bugs at gcc dot gnu dot org GCC target triplet: powerpc64-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23649
[Bug target/23649] gcc.dg/ppc-and-1.c failure due to not using rlwinm
--- Additional Comments From amodra at bigpond dot net dot au 2005-08-31 09:03 --- See http://gcc.gnu.org/ml/gcc-testresults/2005-06/msg00748.html and http://gcc.gnu.org/ml/gcc-testresults/2005-06/msg00754.html -- What|Removed |Added Status|UNCONFIRMED |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23649
[Bug rtl-optimization/23650] New: Scheduler does not handle zero_extract correctly
/* * compile with GCC 3.3.2 on s390-ibm-linux * options: -O3 * * instruction 61 and 71 will be switched by the scheduler, although they * access overlapping memory * (insn 71 317 72 2 ff1f1500 (parallel [ (set (reg/v:SI 53) (zero_extract:SI (mem/f:QI (plus:SI (reg/f:SI 34 %fp) (const_int 96 [0x60])) [9 S1 A16]) (const_int 15 [0xf]) (const_int 0 [0x0]))) (clobber (reg:CC 33 %cc)) ]) 89 {*extracthi} (insn_list 317 (nil)) (expr_list:REG_UNUSED (reg:CC 33 %cc) (nil))) (insn 61 67 63 2 ff1f1500 (set (mem/s:QI (plus:SI (reg/f:SI 34 %fp) (const_int 97 [0x61])) [0 variable.string_2+1 S1 A8]) (mem/s:QI (plus:SI (reg/v/f:SI 49) (const_int 3 [0x3])) [0 variable.mem2.string_2+1 S1 A8])) 59 {movqi} (insn_list 56 (insn_list:REG_DEP_OUTPUT 317 (insn_list:REG_DEP_ANTI 312 (insn_list:REG_DEP_ANTI 315 (nil) (nil)) * The reason is probably in sched_analyze_2 which does not handle zero_extract * correctly. It just hands the (mem:QI ...) subexpression to another * incarnation of sched_analyze_2. The fact that 2 bytes were accessed is lost. * */ typedef struct { char string_2 [2]; } Char2; typedef struct { char string_4 [4]; } Char4; typedef struct { void *mem4; void *mem5; Char4 mem6; Char2 mem7; Char2 mem8; } Type2; typedef struct { Char2 mem1; Char2 mem2; Char2 mem3; } Type1; typedef void *Pointer; unsigned char Erwin ( Type2 *par1, Type1 *par2, Type1 *par3, Type1 **par4, Char2 **par5, unsigned char *par6, Char4 *par7 ) { int var1; Pointer var2; Pointer var3; Pointer var4; int var5; int var6; int var7; unsigned short var8; Char2 var9; Char2 var10; unsigned char var11; var2 = (Pointer) par2; var4 = (Pointer) par2; var11 = 0; while ((var2 par3) (!var11)) { if (memcmp( (Char2 *) var2, par1-mem7, sizeof(Char2)) == 0) { *par4 = (Type1 *) var2; ((Char2 * ) var8)-string_2[0] = ((Type1 *) var2)-mem2.string_2[0];; ((Char2 * ) var8)-string_2[1] = ((Type1 *) var2)-mem2.string_2[1];; var2 = (Pointer) ((char *) var2 + ((sizeof (Type1) - sizeof (Char2; var3 = var2; var5 = 0; var6 = ((int) var8) / sizeof(Char2); while (var5 != var6) { var7 = (var5 + var6) / sizeof(Char2); var2 = ( (Pointer) ( (char *) (var3) + ((var7 * sizeof (Char2))) ) ); var1 = memcmp ( (Char2 *) var2, par1-mem8, sizeof(Char2)); if (var1 0) { var5 = var7 + 1; } else if (var1 0) { var6 = var7; } else { var6 = var7; var5 = var7; } } if ( var1 == 0) { var11 = (!0); *par5 = ((Char2 *) var2); if (( (Pointer) ( (char *) (var2) + (sizeof(Char2)) ) ) == par3) { *par6 = (!0); if (( (Pointer) ( (char *) (*par4) + ((sizeof (Type1) - sizeof (Char2))) ) ) == var2) { if (var4 == *par4) { memset(var9, 0x00, sizeof(Char2)); memset(var10, 0x00, sizeof(Char2)); } else { memcpy (var9, var4, sizeof(Char2)); *((Char2 * ) var8) = ((Type1 *) var4)-mem2;; var2 = ((Pointer) ((char *) var4 + ((var8 + (sizeof (Type1) - sizeof (Char2)) - sizeof (Char2))) ) ); memcpy (var10, var2, sizeof(Char2)); } } else { var2 = ( (Pointer) ( (char *) (var2) - (sizeof(Char2)) ) ); memcpy (var10, var2, sizeof(Char2)); var9 = par1-mem7; } memcpy((par7-string_4[0]), var9, sizeof(Char2)); memcpy((par7-string_4[2]), var10, sizeof(Char2)); } else { *par6 = 0; } } else { var11 = 0; break; } } else { var4 = var2; *((Char2 * ) var8) = ((Type1 *) var2)-mem2;; var2 = ( (Pointer) ( (char *) (var2) + ((var8 + (sizeof (Type1) - sizeof (Char2)) )) ) ); } } return(var11); } -- Summary: Scheduler does not handle zero_extract correctly Product: gcc Version: 3.3.2 Status: UNCONFIRMED Severity: normal Priority: P2 Component: rtl-optimization AssignedTo:
[Bug rtl-optimization/22568] Should use cmov in some stituations
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 09:40 --- With new tree-codes instead of using COND_EXPR we may use the tree-vectorizers if-conversion and make expand preserve the conditional moves. Also it shouldn't be too hard to hack rtl if-conversion to handle the case of exactly two set's in the then/else block, too, and that may turn out to be profitable always. Is there any arch whose conditional move will kill condition codes? RTL is not my best friend (yet), but ifcvt doens't look too bad either ;) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22568
[Bug c++/23651] New: ICE in GC
Release: gcc (GCC) 4.1.0 20050831 (experimental) Environment: System: Linux karma 2.6.12.1sss #2 Thu Jul 7 00:28:21 EDT 2005 i686 i686 i386 GNU/Linux Architecture: i686 machine, os, target, libraries (multiple lines) host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: /home/sss/gcc/gcc/configure --prefix=/usr/local/gcc --enable-threads=posix --enable-long-long --enable-languages=c,c++,f95 On the attached source, g++ dies with an ICE in garbage collection when it is compiled as follows: $ g++ -c -O3 -fPIC -g y.cc y.cc: In function 'int foo()': y.cc:14681: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. $ Here's where it's crashing: Program received signal SIGSEGV, Segmentation fault. 0x08505e77 in gt_ggc_mx_basic_block_def (x_p=0xb7384960) at gtype-desc.c:445 445 gt_ggc_m_9tree_node ((*x).stmt_list); #0 0x08505e77 in gt_ggc_mx_basic_block_def (x_p=0xb7384960) at gtype-desc.c:445 #1 0x08508634 in gt_ggc_mx_rtx_def (x_p=0xb7350258) at gtype-desc.c:1369 #2 0x08508434 in gt_ggc_mx_rtx_def (x_p=0xb722ee7c) at gtype-desc.c:1341 #3 0x085064b8 in gt_ggc_mx_function (x_p=0xb74a9400) at gtype-desc.c:624 #4 0x081d8774 in gt_ggc_mx_lang_tree_node (x_p=0xb7564a50) at ./gt-cp-tree.h:320 #5 0x0820d235 in gt_ggc_mx_cp_binding_level (x_p=0xb7e01190) at ./gt-cp-name-lookup.h:65 #6 0x0820d3f4 in gt_ggc_mx_cxx_binding (x_p=0xb7df87c8) at ./gt-cp-name-lookup.h:91 #7 0x081d940e in gt_ggc_mx_lang_tree_node (x_p=0xb7e09ed4) at ./gt-cp-tree.h:521 #8 0x081d8451 in gt_ggc_mx_lang_tree_node (x_p=0xb7e11270) at ./gt-cp-tree.h:285 #9 0x081d88c4 in gt_ggc_mx_lang_tree_node (x_p=0xb7e0a2e0) at ./gt-cp-tree.h:344 #10 0x081d8a22 in gt_ggc_mx_lang_tree_node (x_p=0xb7e0b000) at ./gt-cp-tree.h:362 #11 0x081d87d7 in gt_ggc_mx_lang_tree_node (x_p=0xb7e0a000) at ./gt-cp-tree.h:326 #12 0x081d744a in gt_ggc_mx_lang_tree_node (x_p=0xb7df8540) at ./gt-cp-tree.h:85 ... Apologies for the large size of the test case, but i've already spent a huge amount of time reducing it. Almost any perturbation in either the test case or the compiler is likely to make the crash go away. To further pinpoint the version of the compiler i'm using, here are the most recent entries in gcc/ChangeLog and gcc/cp/ChangeLog that i have checked out: 2005-08-30 Richard Henderson [EMAIL PROTECTED] PR target/23630 * expr.c (expand_expr_real_1) VIEW_CONVERT_EXPR: Use gen_lowpart whenever the mode sizes match. 2005-08-30 Volker Reichelt [EMAIL PROTECTED] PR c++/23586 * parser.c (cp_parser_namespace_name): Move diagnostic for invalid namespace-name to here from ... * name-lookup.c (do_namespace_alias): ... here and ... (do_using_directive): ... here. Remove dead code. -- Summary: ICE in GC Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: snyder at fnal dot gov CC: gcc-bugs at gcc dot gnu dot org 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=23651
[Bug c++/23651] ICE in GC
--- Additional Comments From snyder at fnal dot gov 2005-08-31 09:44 --- Created an attachment (id=9630) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9630action=view) test case -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23651
[Bug libstdc++/23633] map::insert() invalidates reverse_iterators
--- Additional Comments From pcarlini at suse dot de 2005-08-31 10:06 --- Agreed, not a bug. Thanks PS: notice that according to 23.1.2/8, no iterators are invalidated due to the insertion, and im2 is perfectly ok to use, just gets updated to the new M.rbegin() ;) Last remark: being libstdc++-v3 free software, submitter is encouraged to have a look to class reverse_iterator in stl_iterator.h, in particular its comments and the (conforming, 24.4.1.3.3) implementation of operator*! -- What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23633
[Bug tree-optimization/23626] [4.1 Regression] ICE after cunrolling
--- Additional Comments From rakdver at gcc dot gnu dot org 2005-08-31 10:13 --- Patch. -- What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2005- ||08/msg01821.html http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23626
[Bug c++/23586] [3.4 regression] Bad diagnostic for invalid namespace-name
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 10:16 --- Subject: Bug 23586 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-3_4-branch Changes by: [EMAIL PROTECTED] 2005-08-31 10:16:05 Modified files: gcc/cp : ChangeLog parser.c name-lookup.c Log message: PR c++/23586 * parser.c (cp_parser_namespace_name): Move diagnostic for invalid namespace-name to here from ... * name-lookup.c (do_namespace_alias): ... here and ... (do_using_directive): ... here. Remove dead code. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.3892.2.230r2=1.3892.2.231 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.157.2.58r2=1.157.2.59 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/name-lookup.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.34.2.22r2=1.34.2.23 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23586
[Bug target/23602] [4.1 regression] 1081 test failures in libjava, when configured for i486-linux
--- Additional Comments From debian-gcc at lists dot debian dot org 2005-08-31 10:16 --- tracked down the 15 failures to this patch: 2005-06-14 Tom Tromey [EMAIL PROTECTED] PR libgcj/19877: * no-executables.m4: Call real AC_FUNC_MMAP when cache variable is set but not 'no'. 2005-06-14 Tom Tromey [EMAIL PROTECTED] PR libgcj/19877: * configure, aclocal.m4, Makefile.in: Rebuilt. looking at the generated libjava/Makefile, the only interesting difference is -BACKTRACESPEC = -fno-omit-frame-pointer +BACKTRACESPEC = -fomit-frame-pointer but that macro isn't used anywhere. -- What|Removed |Added CC||tromey at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23602
[Bug c++/23586] [3.4 regression] Bad diagnostic for invalid namespace-name
--- Additional Comments From reichelt at gcc dot gnu dot org 2005-08-31 10:17 --- Now also fixed on the 3.4 branch. -- What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23586
[Bug c++/13377] unexpected behavior of namespace usage directive
-- Bug 13377 depends on bug 23586, which changed state. Bug 23586 Summary: [3.4 regression] Bad diagnostic for invalid namespace-name http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23586 What|Old Value |New Value Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13377
[Bug c++/13377] unexpected behavior of namespace usage directive
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 10:33 --- Subject: Bug 13377 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 10:32:54 Modified files: gcc/cp : ChangeLog parser.c gcc/testsuite : ChangeLog gcc/testsuite/g++.dg/tc1: dr101.C Added files: gcc/testsuite/g++.dg/lookup: ambig4.C ambig5.C Log message: PR c++/13377 * parser.c (cp_parser_lookup_name): Pass LOOKUP_COMPLAIN to lookup_name_real on final parse. * g++.dg/lookup/ambig4.C: New test. * g++.dg/lookup/ambig5.C: New test. * g++.dg/tc1/dr101.C: Adjust error markers. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gccr1=1.4864r2=1.4865 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gccr1=1.352r2=1.353 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gccr1=1.5985r2=1.5986 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/lookup/ambig4.C.diff?cvsroot=gccr1=NONEr2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/lookup/ambig5.C.diff?cvsroot=gccr1=NONEr2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/tc1/dr101.C.diff?cvsroot=gccr1=1.2r2=1.3 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13377
[Bug c++/13377] unexpected behavior of namespace usage directive
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 10:54 --- Subject: Bug 13377 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-4_0-branch Changes by: [EMAIL PROTECTED] 2005-08-31 10:54:35 Modified files: gcc/cp : ChangeLog parser.c gcc/testsuite : ChangeLog gcc/testsuite/g++.dg/tc1: dr101.C Added files: gcc/testsuite/g++.dg/lookup: ambig4.C ambig5.C Log message: PR c++/13377 * parser.c (cp_parser_lookup_name): Pass LOOKUP_COMPLAIN to lookup_name_real on final parse. * g++.dg/lookup/ambig4.C: New test. * g++.dg/lookup/ambig5.C: New test. * g++.dg/tc1/dr101.C: Adjust error markers. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.4648.2.87r2=1.4648.2.88 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.319.2.13r2=1.319.2.14 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.5084.2.363r2=1.5084.2.364 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/lookup/ambig4.C.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=NONEr2=1.1.2.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/lookup/ambig5.C.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=NONEr2=1.1.2.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/tc1/dr101.C.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.2r2=1.2.58.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13377
[Bug c++/23645] internal compiler error
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 11:04 --- None of 4.0.0, 4.0.1 or current 4.0.2 shows this problem. Please at least try again with a recent 4.0.2 snapshot. -- What|Removed |Added Status|UNCONFIRMED |WAITING Known to work|4.1.0 4.0.2 |4.1.0 4.0.2 4.0.0 4.0.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23645
[Bug c++/13377] [3.4 regression] unexpected behavior of namespace usage directive
--- Additional Comments From reichelt at gcc dot gnu dot org 2005-08-31 11:07 --- For the testcase == namespace N { int i; } int i; using namespace N; void foo() { i; } == we now get ambig4.C: In function 'void foo()': ambig4.C:10: error: use of 'i' is ambiguous ambig4.C:6: error: first declared as 'int i' here ambig4.C:3: error: also declared as 'int N::i' here ambig4.C:10: error: 'i' was not declared in this scope Btw, this is the testcase which was a regression from GCC 3.3.x. For the testcase == namespace N { namespace M {} } namespace M {} using namespace N; using namespace M; == we now get (since the patch for PR23586 is also in place): ambig5.C:13: error: use of 'M' is ambiguous ambig5.C:10: error: first declared as 'namespace M { }' here ambig5.C:7: error: also declared as 'namespace M { }' here ambig5.C:13: error: 'M' is not a namespace-name ambig5.C:13: error: expected namespace-name before ';' token This is still a little suboptimal (first we say it's ambiguous, then we say it's not declared/not a namespace-name), but I think the user can figure out the problem now. So this is fixed on mainline and the 4.0 branch. -- What|Removed |Added URL||http://gcc.gnu.org/ml/gcc- ||patches/2005- ||08/msg01717.html Summary|unexpected behavior of |[3.4 regression] unexpected |namespace usage directive |behavior of namespace usage ||directive Target Milestone|--- |3.4.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13377
[Bug middle-end/23477] [4.1 Regression] default-initializing array new expression uses makes stack usage go way up
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 11:21 --- Subject: Bug 23477 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 11:20:48 Modified files: gcc: ChangeLog expr.c Log message: 2005-08-31 Richard Guenther [EMAIL PROTECTED] PR middle-end/23477 * expr.c (all_zeros_p): New function. (expand_expr_real_1): Handle the case of an all-zero non-addressable constructor separately. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.9855r2=2.9856 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gccr1=1.811r2=1.812 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23477
[Bug middle-end/23477] [4.1 Regression] default-initializing array new expression uses makes stack usage go way up
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 11:21 --- Fixed. -- What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23477
[Bug c++/23636] [4.0/4.1 Regression] crashes on ThreadWeaver compilation
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 11:43 --- Actually thinking about this again, my patch is wrong. The C++ front-end is missing a CLEANUP_POINT_EXPR. -- What|Removed |Added AssignedTo|pinskia at gcc dot gnu dot |unassigned at gcc dot gnu |org |dot org Status|ASSIGNED|NEW Component|middle-end |c++ http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23636
[Bug target/23649] [4.1 Regression] gcc.dg/ppc-and-1.c failure due to not using rlwinm
-- What|Removed |Added Keywords||missed-optimization Summary|gcc.dg/ppc-and-1.c failure |[4.1 Regression] gcc.dg/ppc- |due to not using rlwinm |and-1.c failure due to not ||using rlwinm Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23649
[Bug c++/23651] ICE in GC
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 12:00 --- Reducing using --param ggc-min-expand=0 ggc-min-heapsize=0. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23651
[Bug c++/23651] ICE in GC
-- What|Removed |Added Keywords||GC, ice-on-valid-code http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23651
[Bug target/23648] Spurious uninitialized variable warnings at -O1 and higher
-- What|Removed |Added Component|c++ |target Keywords||diagnostic http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23648
[Bug rtl-optimization/23650] Scheduler does not handle zero_extract correctly
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 12:29 --- You are violating C aliasing rules, either use an union (which is a GCC extension) or use -fno-strict- alias. (Char2 * ) var *** This bug has been marked as a duplicate of 21920 *** -- What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23650
[Bug c/21920] alias violating
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 12:29 --- *** Bug 23650 has been marked as a duplicate of this bug. *** -- What|Removed |Added CC||Erwin dot Unruh at fujitsu- ||siemens dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21920
[Bug fortran/20592] -fno-automatic (g77 option) is missing from gfortran.
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 12:36 --- Subject: Bug 20592 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 12:31:36 Modified files: gcc/fortran: ChangeLog gfortran.h invoke.texi lang.opt options.c resolve.c Log message: PR fortran/20592 * gfortran.h (gfc_option_t): Add flag_automatic. * invoke.texi: Document the -fno-automatic option. * lang.opt: Add a -fautomatic option. * options.c (gfc_init_options): Default for -fautomatic is on. (gfc_handle_option): Add handling of -fautomatic option. * resolve.c (gfc_resolve): When -fno-automatic is used, mark needed variables as SAVE. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gccr1=1.534r2=1.535 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/gfortran.h.diff?cvsroot=gccr1=1.83r2=1.84 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/invoke.texi.diff?cvsroot=gccr1=1.20r2=1.21 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/lang.opt.diff?cvsroot=gccr1=1.17r2=1.18 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/options.c.diff?cvsroot=gccr1=1.23r2=1.24 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/resolve.c.diff?cvsroot=gccr1=1.51r2=1.52 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20592
[Bug fortran/20592] -fno-automatic (g77 option) is missing from gfortran.
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 12:40 --- Subject: Bug 20592 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-4_0-branch Changes by: [EMAIL PROTECTED] 2005-08-31 12:39:29 Modified files: gcc/fortran: ChangeLog gfortran.h invoke.texi lang.opt options.c resolve.c Log message: PR fortran/20592 * gfortran.h (gfc_option_t): Add flag_automatic. * invoke.texi: Document the -fno-automatic option. * lang.opt: Add a -fautomatic option. * options.c (gfc_init_options): Default for -fautomatic is on. (gfc_handle_option): Add handling of -fautomatic option. * resolve.c (gfc_resolve): When -fno-automatic is used, mark needed variables as SAVE. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.335.2.110r2=1.335.2.111 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/gfortran.h.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.58.2.15r2=1.58.2.16 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/invoke.texi.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.7.18.8r2=1.7.18.9 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/lang.opt.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.8.20.4r2=1.8.20.5 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/options.c.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.17.8.4r2=1.17.8.5 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/resolve.c.diff?cvsroot=gcconly_with_tag=gcc-4_0-branchr1=1.34.2.14r2=1.34.2.15 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20592
[Bug fortran/20592] -fno-automatic (g77 option) is missing from gfortran.
--- Additional Comments From fxcoudert at gcc dot gnu dot org 2005-08-31 12:41 --- The -fno-automatic is now present on both branches (4.0 and mainline). Fixed. -- What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED Target Milestone|--- |4.0.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20592
[Bug fortran/19292] [meta-bug] g77 features lacking in gfortran
-- Bug 19292 depends on bug 20592, which changed state. Bug 20592 Summary: -fno-automatic (g77 option) is missing from gfortran. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20592 What|Old Value |New Value Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19292
[Bug rtl-optimization/23650] Scheduler does not handle zero_extract correctly
--- Additional Comments From Erwin dot Unruh at fujitsu-siemens dot com 2005-08-31 12:51 --- With option -fno-strict-aliasing the generated code is still incorrect. -- What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|DUPLICATE | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23650
[Bug tree-optimization/15366] [unit-at-a-time] -fno-inline-functions is ignored for static functions
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 12:54 --- I have a patch for -fno-inline-functions-called-once. -- What|Removed |Added Component|rtl-optimization|tree-optimization http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15366
[Bug tree-optimization/15366] [unit-at-a-time] -fno-inline-functions is ignored for static functions
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 13:13 --- Patches: 4.1: http://gcc.gnu.org/ml/gcc-patches/2005-08/msg01837.html 4.0: http://gcc.gnu.org/ml/gcc-patches/2005-08/msg01838.html 3.4: http://gcc.gnu.org/ml/gcc-patches/2005-08/msg01839.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15366
[Bug middle-end/23410] [4.1 Regression] FAIL: gcc.c-torture/execute/950612-1.c execution, at -Os and -O3
--- Additional Comments From amylaar at gcc dot gnu dot org 2005-08-31 13:14 --- (In reply to comment #8) The computation of the min bound is not correct. I'm working on a patch. What is the current status on this? -- What|Removed |Added CC||joern dot rennecke at st dot ||com Last reconfirmed|2005-08-17 02:33:34 |2005-08-31 13:14:04 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23410
[Bug other/22511] [3.4 Regression] cc1plus: error: unrecognized command line option -Wno-pointer-sign
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 13:25 --- 3.4 does not contain such option at all. I wonder in what way 3.0.4 was special in this regard ;) -- What|Removed |Added Status|NEW |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22511
[Bug middle-end/23651] [4.1 Regression] ICE in GC
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 13:28 --- Confirmed, reduced testcase: namespace std { struct allocator { ~allocator() throw(){} }; struct string { struct _Alloc_hider : allocator {}; _Alloc_hider _M_dataplus; string(); string(const char* __s, const allocator __a = allocator()); }; } struct Strptrmap { bool insert (const std::string key, unsigned val){} }; struct Indptr_Base { virtual ~Indptr_Base (); void decref (); unsigned short _refcount; }; inline void Indptr_Base::decref () { if (_refcount == 2) delete this; else _refcount -= 2; } struct d0_Ref_Base { ~d0_Ref_Base (); bool is_null() const; void* ptr1 () const; mutable const void* _ptr; Indptr_Base* _indptr; Strptrmap* operator-() const; }; inline d0_Ref_Base::~d0_Ref_Base () { if (_indptr) _indptr-decref (); } inline bool d0_Ref_Base::is_null () const { return (_ptr == 0 _indptr == 0); } inline Strptrmap* d0_Ref_Base::operator-() const { if (is_null()) return 0; return reinterpret_castStrptrmap* (ptr1 ()); } int foo () { std::string fname; d0_Ref_Base hm1; for (int i = 0; i 10; i++) hm1-insert (, 0); hm1-insert (, 0); return 0; } --- It worked with 20050823. Note my reduced testcase is from powerpc-darwin. -- What|Removed |Added Status|UNCONFIRMED |NEW Component|c++ |middle-end Ever Confirmed||1 GCC build triplet|i686-pc-linux-gnu | GCC host triplet|i686-pc-linux-gnu | GCC target triplet|i686-pc-linux-gnu | Last reconfirmed|-00-00 00:00:00 |2005-08-31 13:28:51 date|| Summary|ICE in GC |[4.1 Regression] ICE in GC Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23651
[Bug translation/21768] [3.4 regression] ICE in error message due to violation of coding conventions
--- Additional Comments From bonzini at gcc dot gnu dot org 2005-08-31 13:36 --- This ought to use ngettext. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21768
[Bug objc++/23640] obj-c++ does not call __objc_exec_class for the classes
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 13:46 --- Fixed. Most of the rest obj-c++ fails are filed, there are some more which needs to file. I think one is at least needs library support. -- What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23640
[Bug objc++/23640] obj-c++ does not call __objc_exec_class for the classes
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 13:47 --- Subject: Bug 23640 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 13:46:07 Modified files: gcc/cp : ChangeLog decl2.c gcc/testsuite : ChangeLog Added files: gcc/testsuite/obj-c++.dg: gnu-runtime-3.mm Log message: 2005-08-31 Andrew Pinski [EMAIL PROTECTED] PR obj-c++/23640 * decl2.c (cp_finish_file): If this is obj-c++ and we need a static init, call generate_ctor_or_dtor_function. 2005-08-31 Andrew Pinski [EMAIL PROTECTED] PR obj-c++/23640 * obj-c++.dg/gnu-runtime-3.mm: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gccr1=1.4865r2=1.4866 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl2.c.diff?cvsroot=gccr1=1.794r2=1.795 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gccr1=1.5986r2=1.5987 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/obj-c++.dg/gnu-runtime-3.mm.diff?cvsroot=gccr1=NONEr2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23640
[Bug target/23602] [4.1 regression] 1081 test failures in libjava, when configured for i486-linux
--- Additional Comments From debian-gcc at lists dot debian dot org 2005-08-31 14:08 --- tracked down the 1000+ test failures to the import of classpath from 20050716 (well not exactly, but between 2005-07-16 00:00 UTC and 02:00 UTC). Matthias 2005-07-15 Mark Mitchell [EMAIL PROTECTED] PR c++/22204 * repo.c (repo_emit_p): Robustify. 2005-07-15 Tom Tromey [EMAIL PROTECTED] Major merge with Classpath. Removed many duplicate files. * HACKING: Updated.x * classpath: Imported new directory. * standard.omit: New file. * Makefile.in, aclocal.m4, configure: Rebuilt. * sources.am: New file. * configure.ac: Run Classpath configure script. Moved code around to support. Disable xlib AWT peers (temporarily). * Makefile.am (SUBDIRS): Added 'classpath' (JAVAC): Removed. (AM_CPPFLAGS): Added more -I options. (BOOTCLASSPATH): Simplified. Completely redid how sources are built. Include sources.am. * include/Makefile.am (tool_include__HEADERS): Removed jni.h. * include/jni.h: Removed (in Classpath). * scripts/classes.pl: Updated to look at built classes. * scripts/makemake.tcl: New file. * testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added -I options. (gcj_jni_invocation_compile_c_to_binary): Likewise. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23602
[Bug c++/23628] Typeinfo comparison code easily breaks shared libs
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 14:12 --- Lets recap here: -fvisibility=xxx means mark all things as xxx unless something else marks it differenently. So if you include a header and that header does not have the push/pop (or otherwise marking the classes/functions), you run into this problem report. But this is an user bug and not a GCC one since GCC is doing exactly it was told to do but the user was not expecting it. Think about headers/#include as pasting method and not a way to mark things different (system headers are questionable here but usually it is only for diagnostic and extern C being default just because system headers are broken). -- What|Removed |Added Status|REOPENED|RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23628
[Bug fortran/23654] New: internal compiler error: in gfc_conv_function_call
The following i.m.o. correct code lets gfortran crash: module problem implicit none contains !--- subroutine compare_words character(len=1), dimension(:), pointer :: word1 allocate(word1(5)) word1(1:5) = (/ '1','2','3','4','5' /) call print_word(chararray2string(word1)) deallocate(word1) end subroutine compare_words !--- subroutine print_word(word1) character(len=*), intent(in) :: word1 ! input print *,word1 = ,word1 end subroutine print_word !--- function chararray2string(chararray) result(text) ! #[ character(len=1), dimension(:) :: chararray ! input character(len=size(chararray)) :: text ! output text = transfer(chararray,text) end function chararray2string !--- end module problem program testproblem USE problem, only: compare_words call compare_words end program Testproblem The compiler responds as follows: gfortran -o problem problem.F90 problem.F90: In function ‘compare_words’: problem.F90:8: internal compiler error: in gfc_conv_function_call, at fortran/trans-expr.c:1107 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. -- Summary: internal compiler error: in gfc_conv_function_call Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kloedej at knmi dot nl CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23654
[Bug target/23539] C C++ compiler generating misaligned references regardless of compiler flags
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 14:29 --- Subject: Bug 23539 CVSROOT:/cvs/gcc Module name:gcc Branch: gcc-3_4-branch Changes by: [EMAIL PROTECTED] 2005-08-31 14:28:46 Modified files: gcc: ChangeLog gcc/config/rs6000: rs6000.c Log message: PR target/23539 Backport from mainline: 2005-08-27 David Edelsohn [EMAIL PROTECTED] * config/rs6000/rs6000.c (expand_block_move): Use HImode when bytes = 2 not bytes == 2. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=2.2326.2.909r2=2.2326.2.910 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/rs6000/rs6000.c.diff?cvsroot=gcconly_with_tag=gcc-3_4-branchr1=1.576.2.45r2=1.576.2.46 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23539
[Bug c++/23628] Typeinfo comparison code easily breaks shared libs
--- Additional Comments From ghost at cs dot msu dot su 2005-08-31 14:31 --- You might be formally right, but what about practical consequences? Unless *all* libraries I use have push/pops in *every single header*, using -fvisibility for my own library can result in crash. So for a large application you'd need to get authors of all used libraries to fix them! Note that even libstdc++ does not have this at the moment. This makes -fvisibility just useless. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23628
[Bug rtl-optimization/23650] Scheduler does not handle zero_extract correctly
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 14:39 --- Can you please provide a testcase that can be executed and does abort() if the outcome is wrong and has zero exit code if it is right? Thanks, Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23650
[Bug rtl-optimization/23650] Scheduler does not handle zero_extract correctly
--- Additional Comments From bonzini at gcc dot gnu dot org 2005-08-31 14:45 --- Having a zero_extract that takes 16 bytes out of a QImode mem seems extremely wrong. Can you find out which pass generates that thing? Just grep for zero_extract:SI..mem[a-z/]:QI in all the files dumped by -da. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23650
[Bug c++/23628] Typeinfo comparison code easily breaks shared libs
--- Additional Comments From gdr at integrable-solutions dot net 2005-08-31 14:48 --- Subject: Re: Typeinfo comparison code easily breaks shared libs ghost at cs dot msu dot su [EMAIL PROTECTED] writes: | You might be formally right, but what about practical consequences? Unless | *all* libraries I use have push/pops in *every single header*, using | -fvisibility for my own library can result in crash. So for a large | application you'd need to get authors of all used libraries to fix them! | Note that even libstdc++ does not have this at the moment. This makes | -fvisibility just useless. Please, reopen this PR. Andrew, take a deep breadth. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23628
[Bug ada/23187] MAXPATHLEN usage in gcc/ada/*.c
--- Additional Comments From ams at gnu dot org 2005-08-31 14:56 --- Subject: Re: MAXPATHLEN usage in gcc/ada/*.c This patch is a kludge, GNU does not have any limit what-so-ever on the length of a filename. And it is a horrible kludge, since it is common to have filenames longer than 256 chars. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23187
[Bug rtl-optimization/23650] Scheduler does not handle zero_extract correctly
--- Additional Comments From rguenth at gcc dot gnu dot org 2005-08-31 14:58 --- Also note that gcc 3.3.2 is not exactly state of the art, but unmaintained, and a fix would go at earliest into 3.4.5, which may be already fixed. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23650
[Bug ada/23187] MAXPATHLEN usage in gcc/ada/*.c
--- Additional Comments From ams at gnu dot org 2005-08-31 15:00 --- Subject: Re: MAXPATHLEN usage in gcc/ada/*.c --- Additional Comments From charlet at gcc dot gnu dot org 2005-08-29 13:14 --- Should not cause compilation error any more. The fix is wrong, GNU doesn't have any limit on the length of filenames. Defining a atribitary limit is not a fix. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23187
[Bug target/23539] C C++ compiler generating misaligned references regardless of compiler flags
--- Additional Comments From dje at gcc dot gnu dot org 2005-08-31 15:07 --- Patch applied to mainline. Backported to 3.4 and 4.0 branches. -- What|Removed |Added Status|ASSIGNED|RESOLVED Known to fail||3.4.4 4.0.1 Known to work||3.4.5 4.0.2 Resolution||FIXED Target Milestone|--- |3.4.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23539
[Bug tree-optimization/20165] Pointer does not really escape with write
--- Additional Comments From dberlin at gcc dot gnu dot org 2005-08-31 15:08 --- These should simply be marked with pointer_no_escape once that goes in -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20165
[Bug ada/23187] MAXPATHLEN usage in gcc/ada/*.c
--- Additional Comments From schwinge-bugzilla-gcc dot gnu dot org at nic-nac-project dot de 2005-08-31 15:09 --- Reopened bug awaiting a proper fix. -- What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23187
[Bug target/21824] [meta-bug] bootstrap bugs for *-gnu*
-- Bug 21824 depends on bug 23187, which changed state. Bug 23187 Summary: MAXPATHLEN usage in gcc/ada/*.c http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23187 What|Old Value |New Value Status|RESOLVED|REOPENED Resolution|FIXED | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21824
[Bug ada/23187] MAXPATHLEN usage in gcc/ada/*.c
-- What|Removed |Added Severity|minor |enhancement Target Milestone|4.1.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23187
[Bug fortran/23654] internal compiler error: in gfc_conv_function_call
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:15 --- Reduced testcase: module problem contains subroutine compare_words character(len=1), dimension(:), pointer :: word1 call print_word(chararray2string(word1)) end subroutine compare_words subroutine print_word(word1) character(len=*), intent(in) :: word1 ! input end subroutine print_word function chararray2string(chararray) result(text) character(len=1), dimension(:) :: chararray ! input character(len=size(chararray)) :: text ! output end function chararray2string end module problem Which means this is a dup of bug 15326. *** This bug has been marked as a duplicate of 15326 *** -- What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23654
[Bug fortran/15326] ICE with assumed length character strings
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:15 --- *** Bug 23654 has been marked as a duplicate of this bug. *** -- What|Removed |Added CC||kloedej at knmi dot nl http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15326
[Bug java/23620] [4.0/4.1 Regression] Segfault compiling inner interfaces
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:26 --- Confirmed, this is a regression from 3.4.0 where this worked just fine. before 3.4.0, we rejected this with: C.java:2: error: Class `C' must override `C.methB()' with a public method in order to implement interface `B$BInt'. void methB() { } ^ 1 error Actually that is correct, we should error out, even fixing that bug I still get an ICE. I will report a bug for that one soon too. Back trace: #0 0x0805991c in check_inner_circular_reference (source=0xb7d35b80, target=0xb7d32b80) at parse.y:5375 #1 0x08059a15 in check_inner_circular_reference (source=0xb7d32e04, target=0xb7d32b80) at parse.y:5397 #2 0x08059a15 in check_inner_circular_reference (source=0xb7d32b80, target=0xb7d32b80) at parse.y:5397 #3 0x08066d99 in java_check_circular_reference () at parse.y:5445 #4 0x080cce1f in parse_source_file_3 () at /home/peshtigo/pinskia/src/gnu/gcc/src/gcc/java/jcf- parse.c:1020 #5 0x080d0a3d in java_parse_file (set_yydebug=0) at /home/peshtigo/pinskia/src/gnu/gcc/src/gcc/ java/jcf-parse.c:1286 -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Keywords||ice-on-valid-code Known to work||3.4.0 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:26:08 date|| Summary|Segfault compiling inner|[4.0/4.1 Regression] |interfaces |Segfault compiling inner ||interfaces http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23620
[Bug java/23655] New: [3.4/4.0/4.1 Regression] Accepts invalid
We accept the following invalid code from 3.4.0 and above: interface A { void methA(); } class B implements A{ void methA() { } } We used to error out with: B.java:4: error: Class `B' must override `B.methA()' with a public method in order to implement interface `A'. void methA() { } ^ 1 error Which is correct. Sun's 1.4.0 javac gives: B.java:3: methA() in B cannot implement methA() in A; attempting to assign weaker access privileges; was public class B implements A{ ^ 1 error -- Summary: [3.4/4.0/4.1 Regression] Accepts invalid Product: gcc Version: 4.1.0 Status: UNCONFIRMED Keywords: accepts-invalid Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23655
[Bug other/23656] New: Cross-compilation with newlib fails in libiberty
While attempting to generate a cross-compiler, I got a build error in libiberty/strsignal.c, because newlib has a strsignal() definition but libiberty does not test for the strsignal() declaration in the newlib headers. ### $PREFIX kernel=... (2.4.31 Linux kernel sources) combined=... (tree with gcc-3.4.4 and newlib-1.13.0 sources combined) export PREFIX=/home/bart/cross export KERNELARCH=m68k export TARGET=m68k-amiga-linux export HOST=i686-pc-linux-gnu mkdir -p $PREFIX/$TARGET/include cd $PREFIX/$TARGET/include || exit $? ln -s $kernel/include/linux . ln -s $kernel/include/asm-generic . ln -s $kernel/include/asm-$KERNELARCH asm $combined/configure\ --disable-checking \ --disable-mudflap \ --disable-nls \ --disable-shared \ --enable-__cxa_atexit \ --enable-languages=c,c++ \ --enable-threads=single\ --prefix=$PREFIX \ --target=$TARGET \ --with-local-prefix=$PREFIX\ --with-newlib \ --with-sysroot=$PREFIX/$TARGET \ -- Summary: Cross-compilation with newlib fails in libiberty Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: normal Priority: P2 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: bart dot vanassche at gmail dot com CC: gcc-bugs at gcc dot gnu dot org GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: m68k-amiga-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23656
[Bug other/23656] Cross-compilation with newlib fails in libiberty
--- Additional Comments From bart dot vanassche at gmail dot com 2005-08-31 15:36 --- Created an attachment (id=9631) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9631action=view) patch for gcc-3.4.4/libiberty/configure.ac -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23656
[Bug objc++/23616] obj-c++.dg/try-catch-[29].mm (objc exceptions are broken) fails with the GNU Runtime
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:38 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:38:44 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23616
[Bug translation/21768] [3.4 regression] ICE in error message due to violation of coding conventions
--- Additional Comments From reichelt at igpm dot rwth-aachen dot de 2005-08-31 15:39 --- Subject: Re: [3.4 regression] ICE in error message due to violation of coding conventions On 31 Aug, bonzini at gcc dot gnu dot org wrote: This ought to use ngettext. That's not necessary. The trickery with the plural s that would have made ngettext necessary was a violation of the coding conventions, anyway. This is already fixed by using a different error message. We are just waiting for a new .po file with a suitable translation. This won't arrive until close to the release, however. This PR is just a reminder to test whether the translation really got fixed before spinning the release. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21768
[Bug testsuite/23611] obj-c++.dg/encode-[45].mm fails with the GNU runtime on linux
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:43 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:43:47 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23611
[Bug testsuite/23612] obj-c++.dg/encode-6.mm fail with the GNU runtime
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:44 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:44:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23612
[Bug testsuite/23613] obj-c++.dg/isa-field-1.mm fails with the GNU runtime
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:44 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:44:35 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23613
[Bug testsuite/23610] obj-c++.dg/bitfield-[14].mm, obj-c++.dg/layout-1.mm fails with the GNU runtime
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:45 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html fails only on 64bit targets. -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 GCC target triplet||64bit targets Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:45:28 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23610
[Bug objc++/23614] obj-c++.dg/lookup-2.mm fails with the GNU runtime
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:46 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:46:52 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23614
[Bug testsuite/23615] obj-c++.dg/method-19.mm fails with the GNU runtime on linux
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:47 --- Confirmed based on: http://gcc.gnu.org/ml/gcc-testresults/2005-08/msg01653.html -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 15:47:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23615
[Bug middle-end/23458] ICE on m68k (-O3)
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 15:56 --- The works with a cross compiler: GNU C version 4.0.2 20050826 (prerelease) (m68k-linux-gnu) compiled by GNU C version 3.3 20030304 (Apple Computer, Inc. build 1495). I compiled cc1 at -O0. -- What|Removed |Added Known to work|4.1.0 | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23458
[Bug target/23621] gcj-dbtool aborts on m68k-linux
-- What|Removed |Added Keywords||wrong-code http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23621
[Bug middle-end/23651] [4.1 Regression] ICE in GC
-- What|Removed |Added Severity|normal |critical http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23651
[Bug middle-end/22216] [4.1 regression] ICE during GC
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:00 --- From the backtrace, this looks like PR 23651. I wonder what root is this from. -- What|Removed |Added BugsThisDependsOn||23651 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22216
[Bug tree-optimization/23384] Clobber list should be flow sensitive
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:03 --- Confirmed. -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 16:03:31 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384
[Bug middle-end/23401] Gimplifier produces too many temporaries
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:04 --- Confirmed. -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 16:04:05 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23401
[Bug middle-end/23470] a*a (for floats) is not considered always postive
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:05 --- Confirmed. -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 16:05:03 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23470
[Bug c/23657] New: Wrong code generated: too much optimized out
/* The result should be 7. When compiled with gcc version 4.1.0 20050815 (experimental) with some patches from PLD (incl. PR7776, PR20297, PR23128, PR22533, PR23386) with -O, the result is 0. */ #include stdio.h int arr[100]; int *alloc(void) {return arr;} void fill(int n) { int *result = alloc(); int *dest = result; for(;;) { int *next; dest[0] = 7; if (--n == 0) break; next = dest + 1; dest = next; } } int main(void) { fill(5); printf(%d\n, arr[1]); return 0; } /* Looking at the generated assembly code, the whole loop is optimized out, except for filling the first element. Using less temporaries or inlining alloc() makes the bug disappear. The bug manifests only with optimization turned on. */ -- Summary: Wrong code generated: too much optimized out Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: qrczak at knm dot org dot pl CC: gcc-bugs at gcc dot gnu dot org 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=23657
[Bug tree-optimization/23471] a*a (for signed ints with -fno-wrapv) is always postive
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:07 --- Confirmed. -- What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 16:07:00 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23471
[Bug ada/23519] Dividing fixed point number by zero returns zero.
--- Additional Comments From dje at gcc dot gnu dot org 2005-08-31 16:18 --- On PowerPC, one needs to emit arithmetic instructions using the mnemonic with the o suffix to test for overflow (including divide by zero). The GCC language and/or front-end would need to inform the backend that this is required. Currently GCC cannot represent that overflow test or divide by zero test is required, e.g., with a different RTL code. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23519
[Bug tree-optimization/23657] [4.1 Regression] Wrong code generated: too much optimized out
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:19 --- Confirmed, between t41.copyrename2 and t42.dom2, the V_MAY_DEF is removed. After *next_8 = 7; Before: # TMT.51_18 = V_MAY_DEF TMT.51_4; *dest_2 = 7; I think we are forgetting to copy the alias info. I think this is fixed by the patch for PR 23509: http://gcc.gnu.org/ml/gcc-patches/2005-08/msg01647.html The tree-cfg.c part that is. -- What|Removed |Added CC||pinskia at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Component|c |tree-optimization Ever Confirmed||1 GCC build triplet|i686-pc-linux-gnu | GCC host triplet|i686-pc-linux-gnu | GCC target triplet|i686-pc-linux-gnu | Keywords||alias, wrong-code Last reconfirmed|-00-00 00:00:00 |2005-08-31 16:19:38 date|| Summary|Wrong code generated: too |[4.1 Regression] Wrong code |much optimized out |generated: too much ||optimized out Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23657
[Bug c/23658] New: bogus warning for missing return value
The testcase below was distilled from GMP source code (thanks to TG). Consider inline int foo (void){ if (1) return 0; } int bar () { return foo (); } compile with -Wall -O2 -c. Gcc spits out tg.c: In function 'bar': tg.c:2: warning: control may reach end of non-void function 'foo' being inlined which clearly is bogus as the branch is *always* taken. -- Summary: bogus warning for missing return value Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gdr at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: platform independent http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23658
[Bug java/23620] [4.0/4.1 Regression] Segfault compiling inner interfaces
--- Additional Comments From wmahan at gmail dot com 2005-08-31 16:23 --- I guess that is a bug in my test case. I didn't notice because it compiles fine with gcc 4.0.1 when A.class and A$AInt.class are not present. The problem seems to be that when check_inner_circular_reference() is looking for circular references, it segfaults when it gets to the tree for A, which has -type.binfo == NULL. I'm not sure if that's supposed to happen. Here's a patch that fixes the bug for me, but it may just fix the symptom rather than the real problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23620
[Bug fortran/17815] Language name for --enable-languages should be fortran instead of f95
--- Additional Comments From bkoz at gcc dot gnu dot org 2005-08-31 16:24 --- I completely agree. I would dearly love it if names like c, c++, java, fortran were used consistently in naming. For directories, for configuration options, for runtime libraries, for make check rules, etc. Since the proposed is one small step towards sanity, I'm completely for it. -benjamin -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17815
[Bug rtl-optimization/23601] [4.1 Regression] reload may drop non-call exception information
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 16:27 --- Subject: Bug 23601 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 16:26:54 Modified files: gcc: ChangeLog function.c reload1.c Log message: PR rtl-opt/23601 * reload1.c (reload): Set MEM_NOTRAP_P in spill slots. (fixup_eh_region_note): New. (reload_as_needed): Call it. (fixup_abnormal_edges): Allow all throwing insns to be deleted; don't call find_many_sub_basic_blocks; call verify_flow_info. * function.c (assign_stack_local_1): Set MEM_NOTRAP_P. (keep_stack_depressed): Likewise. (assign_stack_temp_for_type): Likewise; use adjust_address_nv. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gccr1=2.9859r2=2.9860 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/function.c.diff?cvsroot=gccr1=1.642r2=1.643 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/reload1.c.diff?cvsroot=gccr1=1.479r2=1.480 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23601
[Bug middle-end/23658] [4.0 Regression] bogus warning for missing return value
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-31 16:30 --- Confirmed but we already decided (in the bug about libstdc++'s headers with -fno-exceptions) that this is not going to be fixed for 4.0.x. -- What|Removed |Added Severity|normal |minor Status|UNCONFIRMED |RESOLVED Component|c |middle-end GCC host triplet|platform independent| Keywords||diagnostic Resolution||FIXED Summary|bogus warning for missing |[4.0 Regression] bogus |return value|warning for missing return ||value Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23658
[Bug rtl-optimization/23601] [4.1 Regression] reload may drop non-call exception information
--- Additional Comments From rth at gcc dot gnu dot org 2005-08-31 16:43 --- Fixed. -- What|Removed |Added Status|NEW |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23601
[Bug target/23556] FAIL: gfortran.dg/pr18122.f90
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 16:58 --- Subject: Bug 23556 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 16:58:29 Modified files: libgfortran: ChangeLog libgfortran/io : read.c Log message: PR target/23556 * io/read.c (convert_real): Use memcpy to fill buffer. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgfortran/ChangeLog.diff?cvsroot=gccr1=1.288r2=1.289 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgfortran/io/read.c.diff?cvsroot=gccr1=1.16r2=1.17 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23556
[Bug tree-optimization/23659] New: Should able to add dereferencing (statements with VUSE) without rerunning may_alias
An example of this comes from PR 18298: extern C int strcmp (const char*, const char*); char s[2048] = a; inline bool foo(const char *str) { return !strcmp(s,str); } int main() { while(!(foo())) { s[0] = '\0'; } return 0; } In fab, we replace: # VUSE s_1; D.1754_4 = strcmp (s[0], [0]); With D.1777_6 = (const unsigned char *) s[0]; D.1778_9 = *D.1777_6; D.1779_3 = (int) D.1778_9; D.1754_4 = D.1779_3; And the D.1778_9 = *D.1777_6; statement does not have a VUSE which causes wrong code if we have a V_MAY_DEF/V_MUST_DEF above (which happens in the testcase). The main reason why I am asking this question so that in the tree combiner, I don't want to rerun may_alias after each time I run the tree combiner which just becomes too expensive. An example for the tree combiner would be: int f(char *a) { int b = strlen(a); return b == 0; } -- Summary: Should able to add dereferencing (statements with VUSE) without rerunning may_alias Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: enhancement Priority: P2 Component: tree-optimization AssignedTo: dnovillo at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23659
[Bug tree-optimization/23659] Should able to add dereferencing (statements with VUSE) without rerunning may_alias
-- What|Removed |Added Status|UNCONFIRMED |ASSIGNED Ever Confirmed||1 Last reconfirmed|-00-00 00:00:00 |2005-08-31 17:00:14 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23659
[Bug libstdc++/23632] std::vectorbool in combination with debug mode fails to compile code
--- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-08-31 17:02 --- Subject: Bug 23632 CVSROOT:/cvs/gcc Module name:gcc Changes by: [EMAIL PROTECTED] 2005-08-31 17:01:57 Modified files: libstdc++-v3 : ChangeLog libstdc++-v3/include/bits: stl_bvector.h Added files: libstdc++-v3/testsuite/23_containers/vector/bool: 23632.cc Log message: 2005-08-31 Paolo Carlini [EMAIL PROTECTED] Kaspar Fischer [EMAIL PROTECTED] PR libstdc++/23632 * include/bits/stl_bvector.h (_Bit_iterator::operator[], _Bit_const_iterator::operator[]): Const-ify. * testsuite/23_containers/vector/bool/23632.cc: New. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gccr1=1.3087r2=1.3088 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/bits/stl_bvector.h.diff?cvsroot=gccr1=1.44r2=1.45 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/23_containers/vector/bool/23632.cc.diff?cvsroot=gccr1=NONEr2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23632