[Bug c++/34749] Incorrect warning when applying dllimport to friend function
--- Comment #4 from dannysmith at users dot sourceforge dot net 2008-01-13 08:32 --- Testing a patch. -- dannysmith at users dot sourceforge dot net changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |dannysmith at users dot |dot org |sourceforge dot net Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 08:32:51 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34749
[Bug fortran/34556] Rejects valid with bogus error message: parameter initalization
--- Comment #5 from pault at gcc dot gnu dot org 2008-01-13 08:49 --- (In reply to comment #4) This is similar to 34432 is some ways. I think we are not matching the (\ \) correctly. I don't think gfc_match_expr has the tooling for it yet. The error message is spurious in my opinion. It is left on the stack from a failed match. As I say above, the problem is in simplification and, specifically, the simplification of reshape. Hang a gfc_show_expr_n in gfc_simplify_reshape for each of the arguments and see what happens. You will find, I believe, that the simplification is failing on arguments that look perfectly OK for reasons that I just do not understand. Good luck - I think that it is easily fixable but that one needs to alight on what triggers failure. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34556
[Bug c++/34406] [reject valid?] incomplete type 'Y' used in nested name specifier.
--- Comment #2 from pluto at agmk dot net 2008-01-13 10:23 --- (In reply to comment #1) What is the question you want to ask? The first code you show is invalid, the second valid... i'd ask why the first code is invalid? class Y looks pretty complete so why typedef expression throws an error? could you please redirect me to the appropriate paragraph in c++ standard? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34406
[Bug bootstrap/34766] New: Cannot compute suffix of object files
Yesterday and today has been building trunk (up-to-date) for 4.3 and still getting the same error, here the config.log: This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by GNU C Runtime Library configure 1.0, which was generated by GNU Autoconf 2.59. Invocation command line was $ /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13/libgcc/configure --cache-file=./config.cache --enable-multilib --enable-language=c,c++,objc --enable-languages=c,c++,fortran,java,objc --program-transform-name=s,y,y, --with-target-subdir=i686-pc-cygwin --build=i686-pc-cygwin --host=i686-pc-cygwin --target=i686-pc-cygwin --srcdir=../../../gcc_4_3_trunk_2008-01-13/libgcc --with-build-libsubdir=. --enable-werror-always ## - ## ## Platform. ## ## - ## hostname = andry_host uname -m = i686 uname -r = 1.5.25(0.156/4/2) uname -s = CYGWIN_NT-5.1 uname -v = 2007-12-14 19:21 /usr/bin/uname -p = unknown /bin/uname -X = unknown /bin/arch = unknown /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /usr/local/bin PATH: /usr/bin PATH: /bin PATH: /usr/X11R6/bin PATH: /cygdrive/c/Programs/Tools/Interpreters/JPSoft/4NT8 PATH: /cygdrive/c/Program Files/PC Connectivity Solution/ PATH: /cygdrive/c/Programs/Dev/www.ruby-lang.org/Ruby v1.8.6/bin PATH: /cygdrive/c/WINXP/system32 PATH: /cygdrive/c/WINXP PATH: /cygdrive/c/WINXP/System32/Wbem PATH: /cygdrive/c/Programs/Tools/Console/Console v2.00b137 PATH: /cygdrive/c/Programs/Dev/CollabNet/Subversion v1.4.3/bin PATH: /cygdrive/c/Programs/Dev/Perforce/Perforce v2006.2 PATH: /cygdrive/c/Programs/Dev/CVSHome/cvsnt PATH: /cygdrive/c/Program Files/Microsoft Visual Studio 2008 SDK/VisualStudioIntegration/Tools/Sandcastle/ProductionTools/ ## --- ## ## Core tests. ## ## --- ## configure:1198: creating cache ./config.cache configure:1373: checking for --enable-version-specific-runtime-libs configure:1388: result: no configure:1420: checking for a BSD-compatible install configure:1475: result: /usr/bin/install -c configure:1491: checking for gawk configure:1507: found /usr/bin/gawk configure:1517: result: gawk configure:1540: checking build system type configure:1558: result: i686-pc-cygwin configure:1566: checking host system type configure:1580: result: i686-pc-cygwin configure:1639: checking for i686-pc-cygwin-ar configure:1665: result: ar configure:1718: checking for i686-pc-cygwin-lipo configure:1744: result: lipo configure:1798: checking for i686-pc-cygwin-nm configure:1824: result: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/nm configure:1877: checking for i686-pc-cygwin-ranlib configure:1903: result: ranlib configure:1957: checking for i686-pc-cygwin-strip configure:1983: result: strip configure:2034: checking whether ln -s works configure:2038: result: yes configure:2055: checking for i686-pc-cygwin-gcc configure:2081: result: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc -B/cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/ -B/usr/local/i686-pc-cygwin/bin/ -B/usr/local/i686-pc-cygwin/lib/ -isystem /usr/local/i686-pc-cygwin/include -isystem /usr/local/i686-pc-cygwin/sys-include configure:2363: checking for C compiler version configure:2366: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc -B/cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/ -B/usr/local/i686-pc-cygwin/bin/ -B/usr/local/i686-pc-cygwin/lib/ -isystem /usr/local/i686-pc-cygwin/include -isystem /usr/local/i686-pc-cygwin/sys-include --version /dev/null 5 /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13/libgcc/configure: line 2367: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc: No such file or directory configure:2369: $? = 127 configure:2371: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc -B/cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/ -B/usr/local/i686-pc-cygwin/bin/ -B/usr/local/i686-pc-cygwin/lib/ -isystem /usr/local/i686-pc-cygwin/include -isystem /usr/local/i686-pc-cygwin/sys-include -v /dev/null 5 /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13/libgcc/configure: line 2372: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc: No such file or directory configure:2374: $? = 127 configure:2376: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc -B/cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/ -B/usr/local/i686-pc-cygwin/bin/ -B/usr/local/i686-pc-cygwin/lib/ -isystem /usr/local/i686-pc-cygwin/include -isystem /usr/local/i686-pc-cygwin/sys-include -V /dev/null 5 /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13/libgcc/configure: line 2377: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc: No such file or directory configure:2379: $? = 127 configure:2398: /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc
[Bug fortran/34765] erroneous intrinsic assignment call
--- Comment #3 from burnus at gcc dot gnu dot org 2008-01-13 10:26 --- It would be great, if you could create a minimal example; I still do not fully understand what is not working. I get the same output using gfortran, the Intel Fortran Compiler 10.1 and g95. Or at least give an example how the output/variable is different than expected; I don't want to dig through the whole program, while you seemingly already did so to pinpoint the problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34765
[Bug fortran/34765] erroneous intrinsic assignment call
--- Comment #4 from burnus at gcc dot gnu dot org 2008-01-13 10:34 --- I modified now FUNCTION fluid_Statistics to read as follows: 205print *, 'BEFORE' 206v1 = velocity(1) 207PRINT *,'AFTER gfortran_bug: the line above this should indicate the termination of a call to complex_array_equals_Field()' 208 stop and added print statements at the beginning/end of complex_array_equals_Field. The result: BEFORE ENTER: complex_array_equals_Field LEAVE: complex_array_equals_Field AFTER gfortran_bug: the line above this should indicate the termination of a call to complex_array_equals_Field() Thus I do not understand the comment. Please elaborate. -- burnus at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34765
[Bug middle-end/32135] [4.3 Regression] bogus array-ref fold triggering array overflow warning
--- Comment #5 from hubicka at gcc dot gnu dot org 2008-01-13 11:18 --- Subject: Bug 32135 Author: hubicka Date: Sun Jan 13 11:18:08 2008 New Revision: 131502 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=131502 Log: PR middle-end/32135 * tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Do not construct references above array bounds. This might trigger bounds checks for pointers to arrays. Added: trunk/gcc/testsuite/gcc.dg/pr32135.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-ccp.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32135
[Bug middle-end/32135] [4.3 Regression] bogus array-ref fold triggering array overflow warning
--- Comment #6 from hubicka at gcc dot gnu dot org 2008-01-13 11:26 --- Fixed. -- hubicka at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32135
[Bug bootstrap/34766] Cannot compute suffix of object files
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 11:32 --- /cygdrive/e/Work/gcc_4_3_trunk_2008-01-13_build/./gcc/xgcc: No such file or directory figure out why the stage1 compile did not generate that. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34766
[Bug rtl-optimization/33796] valgrind error with -O2 for linux kernel code
--- Comment #15 from bonzini at gnu dot org 2008-01-13 12:02 --- Considering that we allocate exactly 1 sparseset per function, it cannot change the performance in any way to initialize the memory, so maybe we do want to go for that. But it is just stupid IMHO if the beauty of the data structure is that it allows O(1) creation. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33796
[Bug c++/34624] valid c++ code doesn't compile for x86_64, but for i386
--- Comment #2 from tim at klingt dot org 2008-01-13 12:38 --- ... i tried when reporting the bug ... however i haven't really been able create a stripped down version ... the problem also occurs when using std::tr1::array instead of boost::array, though ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34624
[Bug rtl-optimization/32463] [4.1 Regression] bitwise shift optimization error
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 12:53 --- This is fixed in newer releases. Note that while the code overflows the signed bitfield, it is still valid as the bitfield is integer promoted before each operation. Maybe fixed by the fix for PR30274. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||wrong-code Known to fail||4.0.4 4.1.3 Known to work||3.4.6 4.2.3 4.3.0 Last reconfirmed|-00-00 00:00:00 |2008-01-13 12:53:24 date|| Summary|[4.0.2|4.1.0] bitwise shift |[4.1 Regression] bitwise |optimization error |shift optimization error Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32463
[Bug c++/29704] [4.1 Regression] ICE: default non-type template argument of pointer-to-member type
--- Comment #8 from rguenth at gcc dot gnu dot org 2008-01-13 12:57 --- 3.4 rejects this with t.C:6: error: `((void (C::*)(int)))0)' is not a valid template argument t.C:6: error: it must be a pointer-to-member of the form `X::Y' t.C:6: error: invalid type in declaration before ';' token 4.0 wrongly accepts it. 4.2 rejects it with: t.C:6: error: a cast to a type other than an integral or enumeration type cannot appear in a constant-expression t.C:6: error: template argument 1 is invalid t.C:6: error: invalid type in declaration before ; token -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||accepts-invalid, ice-on- ||invalid-code Known to fail||4.0.4 4.1.3 Known to work||3.4.6 4.2.0 Last reconfirmed|-00-00 00:00:00 |2008-01-13 12:57:48 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29704
[Bug middle-end/34768] [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 13:23 --- Mine. Probably also causes PR32139. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added OtherBugsDependingO||32139 nThis|| AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Known to fail||4.0.4 4.1.3 4.2.3 4.3.0 Known to work||3.4.6 Priority|P3 |P1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 13:23:55 date|| Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug c/34768] [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-01-13 13:25 --- Um, this is a FE bug. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Component|middle-end |c http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug middle-end/34768] New: [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
int x; void __attribute__((noinline)) foo (void) { x = -x; } void __attribute__((const,noinline)) bar (void) { } int __attribute__((noinline)) test (int c) { int tmp = x; (c ? foo : bar) (); return tmp + x; } extern void abort (void); int main() { x = 1; if (test (1) != 0) abort (); return 0; } creates wrong code because the side-effect of the call to foo() is not accounted for. Since the merge of tree-ssa already gimplification removes the function call. Thus, the above fails with -O0. If you modify the testcase to use the return-value, you see that wrong alias information is created because we appearantly use the const attribute for the indirect call. int x; int __attribute__((noinline)) foo (void) { x = -x; return 0; } int __attribute__((const,noinline)) bar (void) { return 0; } int __attribute__((noinline)) test (int c) { int tmp = x; int res = (c ? foo : bar) (); return tmp + x + res; } extern void abort (void); int main() { x = 1; if (test (1) != 0) abort (); return 0; } alias produced is: test (c) { int res; int tmp; int D.1207; int x.3; int D.1205; int (*T240) (void) iftmp.2; bb 2: # VUSE x_11(D) tmp_2 = x; if (c_3(D) != 0) goto bb 4; else goto bb 3; bb 3: bb 4: # iftmp.2_1 = PHI foo(2), bar(3) res_6 = iftmp.2_1 (); # VUSE x_11(D) x.3_7 = x; D.1207_8 = tmp_2 + x.3_7; D.1205_9 = D.1207_8 + res_6; return D.1205_9; } and we happily CSE the load from x. This testcase requires -O to fail. -- Summary: [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug debug/34767] trouble debugging C++ programs: info locals = No locals.
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-01-13 13:02 --- *** This bug has been marked as a duplicate of 27574 *** -- 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=34767
[Bug debug/34767] New: trouble debugging C++ programs: info locals = No locals.
Here is the minimal test case exhibiting my trouble: $ cat bug.cc #include iostream class c { public: c (); }; c::c () { int i = 42; std::cout i std::endl; } int main (int argc, char** argv) { c* C = new c; } I compile it with the following command: $ g++ -g -O0 bug.cc With g++ 3.* or 4.0.*, everything's fine: (gdb) start Breakpoint 1 at 0x4008d8: file /home/toomas/bug.cc, line 14. warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff193fd000 main (argc=1, argv=0x7fff19283c78) at /home/toomas/bug.cc:14 14c* C = new c; (gdb) s c (this=0x602010) at /home/toomas/bug.cc:7 7 int i = 42; (gdb) s 8 std::cout i std::endl; (gdb) p i $1 = 42 (gdb) info locals i = 42 But with version 4.1.0 and above, I cannot inspect local symbols in c::c(): (gdb) start Breakpoint 1 at 0x4008d8: file /home/toomas/bug.cc, line 14. warning: no loadable sections found in added symbol-file system-supplied DSO at 0x713fd000 main (argc=1, argv=0x71261c58) at /home/toomas/bug.cc:14 14c* C = new c; (gdb) s c (this=0x602010) at /home/toomas/bug.cc:7 7 int i = 42; (gdb) s 8 std::cout i std::endl; (gdb) p i No symbol i in current context. (gdb) info locals No locals. At the same time, there is nothing wrong with the local symbols of main(). Experimenting with sources co'd from SVN (trunk), I found out that the last revision that behaves correctly is -r96653. There was one change in -r96654: 2005-03-18 Jan Hubicka [EMAIL PROTECTED] * cgraph.c (cgraph_remove_node): Avoid loop in code deciding whether function body should be released; do not proactively release function bodies in non-unit-at-a-time mode. Here I turned out to have arrived at the seat of the end of my wits. Output of `objdump -lSd' was exactly the same in both cases, but there were many differences in the `.debug_info' section. This seems not to be a hardware- or distribution-specific issue, because I have the same situation on two Debian systems and on a hand-crafted system, with both AMD64 and Pentium 4 hardware. (All of them GNU/Linux.) Thanks in advance, Toomas. Environment: System: Linux toomas 2.6.23.1 #1 SMP Sun Nov 4 13:54:34 EET 2007 x86_64 GNU/Linux host: x86_64-unknown-linux-gnu build: x86_64-unknown-linux-gnu target: x86_64-unknown-linux-gnu configured with: /INCOMING/misc/gcc-96654/configure --disable-multilib --disable-bootstrap --enable-languages=c,c++ How-To-Repeat: cat bug.cc EOF #include iostream class c { public: c (); }; c::c () { int i = 42; std::cout i std::endl; } int main (int argc, char** argv) { c* C = new c; } EOF g++ -g -O0 bug.cc { echo start; echo s; echo s; echo info locals; } | gdb --batch -x - ./a.out -- Summary: trouble debugging C++ programs: info locals = No locals. Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: toomas at rosin dot pri dot ee GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34767
[Bug debug/27574] [4.1/4.2/4.3 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #16 from pinskia at gcc dot gnu dot org 2008-01-13 13:02 --- *** Bug 34767 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||toomas at rosin dot pri dot ||ee http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug c/34768] [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 13:50 --- The bug is in common_pointer_type (), where we merge the function type qualifiers (TYPE_READONLY is used for 'const' functions): else if (TYPE_P (exp) TYPE_READONLY (exp) ! TREE_THIS_VOLATILE (exp)) flags |= ECF_CONST; volatile is used as 'noreturn'. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug debug/27574] [4.1/4.2/4.3 Regression] MIssing debug info at -O0 for a local variable in a C++ constructor
--- Comment #17 from rguenth at gcc dot gnu dot org 2008-01-13 14:04 --- Honza, can you have a look here? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27574
[Bug middle-end/32135] [4.3 Regression] bogus array-ref fold triggering array overflow warning
--- Comment #7 from ismail at pardus dot org dot tr 2008-01-13 14:01 --- This is possibly is the reason for new test failures: FAIL: gcc.dg/Warray-bounds.c (test for warnings, line 59) FAIL: gcc.dg/Warray-bounds.c (test for warnings, line 65) FAIL: gcc.dg/Warray-bounds.c (test for warnings, line 66) -- ismail at pardus dot org dot tr changed: What|Removed |Added CC||ismail at pardus dot org dot ||tr http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32135
[Bug bootstrap/28326] [4.1 regression] profiledbootstrap will produce an ICE with -mtune=power3 -mcpu=power3 in BOOT_CFLAGS
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-13 14:37 --- Does this work on the current 4.1 branch now? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28326
[Bug objc++/31032] [4.3 Regression] expected tree that contains 'decl with RTL' structure, have 'field_decl' in assemble_external_real, at varasm.c:2225
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 14:48 --- Confirmed. They also ICE on ppc. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 14:48:31 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31032
[Bug libgcj/33263] [4.3 regression] libjava testsuite failures on alpha-linux
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 14:58 --- How is the status now? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33263
[Bug tree-optimization/32698] [4.3 regression] inefficient pointer expression
--- Comment #23 from rguenth at gcc dot gnu dot org 2008-01-13 14:56 --- Closing as fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32698
[Bug objc++/32052] [4.3 Regression] encode-2.mm, encode-3.mm fail on at least powerpc-darwin
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 14:52 --- Confirmed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 14:52:00 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32052
[Bug objc++/31032] [4.3 Regression] expected tree that contains 'decl with RTL' structure, have 'field_decl' in assemble_external_real, at varasm.c:2225
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-13 14:49 --- ice-on-valid, raising to P4. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P5 |P4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31032
[Bug tree-optimization/32139] [4.1 Regression] ICE in mark_operand_necessary
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 14:36 --- ./cc1 -quiet t.c -O2 t.c: In function test: t.c:6: internal compiler error: tree check: expected ssa_name, have var_decl in mark_operand_necessary, at tree-ssa-pre.c:2460 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. we have unrenamed VOPs on code inserted by PRE. # TMT.7D.1301 = V_MAY_DEF TMT.7D.1301; D.1324_9 = foo () 4.2 ICEs once you try to do -fdump-tree-all-vops: t.c: In function test: t.c:6: internal compiler error: in stmt_ann, at tree-flow-inline.h:173 Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. For Debian GNU/Linux specific bug reporting instructions, see URL:file:///usr/share/doc/gcc-4.2/README.Bugs. note that VOPs are missing from the indirect function call before PRE: L2:; # VUSE NONLOCAL.7_12; # VUSE NONLOCAL.14_1; # VUSE NONLOCAL.20_7; # VUSE NONLOCAL.26_13; # VUSE NONLOCAL.32_14; a_6 = foo (); # a_4 = PHI a_6(3), a_5(5); # iftmp.1_2 = PHI foo(3), bar(5); L5:; b_9 = iftmp.1_2 (); (likewise in the 4.1 and 4.3 case). -- rguenth at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|34768 | Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||alias, ice-on-valid-code Known to fail||4.1.3 Known to work||4.0.4 4.2.0 Last reconfirmed|-00-00 00:00:00 |2008-01-13 14:36:09 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32139
[Bug c++/31714] [4.1 Regression] default_conversion ICE while processing_template_decl
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-01-13 14:35 --- Confirmed. The bogus part is actually that we have two TREE_LISTs as arguments to BIT_IOR_EXPR: Unknown tree: cast_expr 0 | Unknown tree: cast_expr 0 Where the CAST_EXPRs with the tree-list are built from #1 0x08195455 in build_c_cast (type=0xb7b64228, expr=0xb7b539d8) at /home/richard/src/gcc-4_1-branch/gcc/cp/typeck.c:5283 5283 tree_cons (NULL_TREE, value, NULL_TREE)); (gdb) l 5278return error_mark_node; 5279 5280 if (processing_template_decl) 5281{ 5282 tree t = build_min (CAST_EXPR, type, 5283 tree_cons (NULL_TREE, value, NULL_TREE)); 5284 /* We don't know if it will or will not have side effects. */ 5285 TREE_SIDE_EFFECTS (t) = 1; 5286 return convert_from_reference (t); 5287} Note this happens while executing the convert_to_integer part of return fold_if_not_in_template (convert_to_integer (type, e)); but processing_template_decl is true. This may be a generic (and now latent) problem that the quasi middle-end convert_to_integer does call fold itself. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to work||4.2.3 4.3.0 Last reconfirmed|-00-00 00:00:00 |2008-01-13 14:35:23 date|| Summary|[4.1 regression]|[4.1 Regression] |default_conversion ICE while|default_conversion ICE while |processing_template_decl|processing_template_decl http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31714
[Bug tree-optimization/30930] [4.3 Regression] vector can cause to create an extra variable, DECL_GIMPLE_REG_P not recomputed
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 14:46 --- It indeed works on the 4.2 branch where the loads magically disappear with the first may_alias pass. Possibly because it doesn't pay attention to whether DECL_GIMPLE_REG is set or not. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||missed-optimization Known to work||4.2.3 Last reconfirmed|-00-00 00:00:00 |2008-01-13 14:46:12 date|| Summary|[4.3 Regression] vector can |[4.3 Regression] vector can |cause to create an extra|cause to create an extra |variable|variable, DECL_GIMPLE_REG_P ||not recomputed http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30930
[Bug target/32431] [4.3 Regression][m68hc11] ICE in df_refs_verify, at df-scan.c:4066
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 14:55 --- Does this bug still happen? There were a lot of changes in the m68k backend since the bug report was opened. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32431
[Bug fortran/34556] Rejects valid with bogus error message: parameter initalization
--- Comment #6 from jvdelisle at verizon dot net 2008-01-13 15:18 --- Subject: Re: Rejects valid with bogus error message: parameter initalization pault at gcc dot gnu dot org wrote: --- Comment #5 from pault at gcc dot gnu dot org 2008-01-13 08:49 --- (In reply to comment #4) This is similar to 34432 is some ways. I think we are not matching the (\ \) correctly. I don't think gfc_match_expr has the tooling for it yet. The error message is spurious in my opinion. It is left on the stack from a failed match. As I say above, the problem is in simplification and, specifically, the simplification of reshape. I agree there is a failed match. I am reducing the test case until I can get this to succeed. I have managed to ICE a similar test case. Here: ! Rejects-valid. Fails with gfortran 4.1, 4.2 and 4.3 ! For 4.3 the error message is: ! !(/ linem, nplam /) ) ! 1 !Error: Invalid character in name at (1) ! ! Found using the Fortran Company Fortran 90 Test Suite (Lite), ! Version 1.4 program splitprms integer, parameter :: nplam = 3 ! # of plans to expand TABs integer, parameter :: linem = 132 ! max. line length integer, parameter :: ncntm = 39 ! max. # cont. lines integer, dimension (linem, nplam) :: nxttab nxttab = reshape ( (/ max( (/ (6+3*((i-6+3)/3), i= 1,linem), (6+2*((i-6+2)/2), i= 1,linem) /), (/ (6, i= 1, 2*linem) /)), (/ (i, i= 1,linem) /) /), (/ linem, nplam /) ) print *, nxttab end program splitprms ]$ gfc pr34556.f90 pr34556.f90: In function splitprms: pr34556.f90:10: internal compiler error: Intrinsic function (164) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34556
[Bug c/34621] [4.3 Regression] gcc.c-torture/execute/va-arg-25.c:32: internal compiler error: in expand_call, at calls.c:2785
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 15:22 --- Please provide preprocessed source, as this test pulls in system headers. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34621
[Bug c++/34755] [4.3 regression] ICE with invalid argument in variadic template function
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 15:24 --- Confirmed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Priority|P3 |P5 Last reconfirmed|-00-00 00:00:00 |2008-01-13 15:24:35 date|| Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34755
[Bug c++/34756] [4.3 regression] ICE with broken specialization of variadic template
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 15:25 --- Confirmed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Priority|P3 |P5 Last reconfirmed|-00-00 00:00:00 |2008-01-13 15:25:29 date|| Target Milestone|--- |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34756
[Bug libgcj/32967] [4.3 regression] gcjavac throws java exceptions on startup
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 15:27 --- There are questions pending. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32967
[Bug c/34601] [4.3 regression] ICE with undefined enum
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-01-13 15:11 --- Confirmed. We leak (gdb) call debug_tree (t) var_decl 0xb7cb2108 e type error_mark 0xb7ca83f0 used unsigned SI file t.i line 3 col 10 align 32 context function_decl 0xb7d129a0 foo (reg:SI 58) to #2 0x08218782 in set_reg_attrs_for_decl_rtl (t=0xb7cb2108, x=0xb7caee60) at /home/richard/src/trunk/gcc/emit-rtl.c:1009 1006 if (REG_P (x)) 1007REG_ATTRS (x) 1008 = get_reg_attrs (t, byte_lowpart_offset (GET_MODE (x), 1009 TYPE_MODE (TREE_TYPE (t; because we end up expanding stuff even though errorcount is 1. Supposedly we need to do this, but the special routine expand_one_error_var should be more careful here. #1 0x0872766d in tree_class_check_failed (node=0xb7ccb3f0, cl=tcc_type, file=0x8a7d4d4 /home/richard/src/trunk/gcc/emit-rtl.c, line=1009, function=0x8a7d560 set_reg_attrs_for_decl_rtl) at /home/richard/src/trunk/gcc/tree.c:6863 #2 0x08218782 in set_reg_attrs_for_decl_rtl (t=0xb7cd5108, x=0xb7cd1e60) at /home/richard/src/trunk/gcc/emit-rtl.c:1009 #3 0x08218978 in set_decl_rtl (t=0xb7cd5108, x=0xb7cd1e60) at /home/richard/src/trunk/gcc/emit-rtl.c:1045 #4 0x089692bc in expand_one_error_var (var=0xb7cd5108) at /home/richard/src/trunk/gcc/cfgexpand.c:702 -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to work||4.2.3 Last reconfirmed|-00-00 00:00:00 |2008-01-13 15:11:41 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34601
[Bug c/34601] [4.3 regression] ICE with undefined enum
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 15:15 --- This was caused by +2007-12-19 Richard Sandiford [EMAIL PROTECTED] + + * rtl.def (SUBREG): Update comments. ... + (set_reg_attrs_for_decl_rtl): New function, split out from + set_decl_incoming_rtl. Set the offset of plain REGs to the + offset of the REG's mode from the decl's. Assert that all + subregs are lowparts and handle their inner registers in the + same way as plain REGs. + (set_decl_rtl, set_incoming_decl_rtl): Use reg_attrs_for_decl_rtl. ... and can be fixed by Index: emit-rtl.c === --- emit-rtl.c (revision 131502) +++ emit-rtl.c (working copy) @@ -1006,7 +1006,7 @@ set_reg_attrs_for_decl_rtl (tree t, rtx if (REG_P (x)) REG_ATTRS (x) = get_reg_attrs (t, byte_lowpart_offset (GET_MODE (x), - TYPE_MODE (TREE_TYPE (t; + DECL_MODE (t))); if (GET_CODE (x) == CONCAT) { if (REG_P (XEXP (x, 0))) -- rguenth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2008-01-13 15:11:41 |2008-01-13 15:15:22 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34601
Re: [Bug fortran/34556] Rejects valid with bogus error message: parameter initalization
pault at gcc dot gnu dot org wrote: --- Comment #5 from pault at gcc dot gnu dot org 2008-01-13 08:49 --- (In reply to comment #4) This is similar to 34432 is some ways. I think we are not matching the (\ \) correctly. I don't think gfc_match_expr has the tooling for it yet. The error message is spurious in my opinion. It is left on the stack from a failed match. As I say above, the problem is in simplification and, specifically, the simplification of reshape. I agree there is a failed match. I am reducing the test case until I can get this to succeed. I have managed to ICE a similar test case. Here: ! Rejects-valid. Fails with gfortran 4.1, 4.2 and 4.3 ! For 4.3 the error message is: ! !(/ linem, nplam /) ) ! 1 !Error: Invalid character in name at (1) ! ! Found using the Fortran Company Fortran 90 Test Suite (Lite), ! Version 1.4 program splitprms integer, parameter :: nplam = 3 ! # of plans to expand TABs integer, parameter :: linem = 132 ! max. line length integer, parameter :: ncntm = 39 ! max. # cont. lines integer, dimension (linem, nplam) :: nxttab nxttab = reshape ( (/ max( (/ (6+3*((i-6+3)/3), i= 1,linem), (6+2*((i-6+2)/2), i= 1,linem) /), (/ (6, i= 1, 2*linem) /)), (/ (i, i= 1,linem) /) /), (/ linem, nplam /) ) print *, nxttab end program splitprms ]$ gfc pr34556.f90 pr34556.f90: In function ‘splitprms’: pr34556.f90:10: internal compiler error: Intrinsic function (164)
[Bug middle-end/34725] [4.3 regression] gcc 4.3-rev 131213 miscompiles libgcrypt 1.4.0 at -O2 -mtune=i686 -fomit-frame-pointer
--- Comment #1 from rguenth at gcc dot gnu dot org 2008-01-13 15:23 --- Testcase? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34725
[Bug c++/28560] [4.1/4.2/4.3 regression] Trouble with __attribute__ in template parameter
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 15:39 --- Adjusting target milestone. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Summary|[4.0/4.1/4.2/4.3 regression]|[4.1/4.2/4.3 regression] |Trouble with __attribute__ |Trouble with __attribute__ |in template parameter |in template parameter Target Milestone|4.0.4 |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28560
[Bug debug/33044] Local static variable in C++ constructor not visible for debugging
--- Comment #10 from rguenth at gcc dot gnu dot org 2008-01-13 15:43 --- Unclear status of this bug. Removing target milestone. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.1.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33044
[Bug rtl-optimization/26449] [4.2 Regression] ICE in loop invariant motion
--- Comment #23 from rguenth at gcc dot gnu dot org 2008-01-13 15:47 --- This works for me on the branch. Uros, what is exactly failing? -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|REOPENED|WAITING Known to fail||4.2.2 Target Milestone|4.2.0 |4.2.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26449
[Bug fortran/34770] New: Incorrect array indexing through pointer when array does not start at 1
Have put together a small test program demonstrating the error, which has to do with indexing of a pointer when the array it points to starts at an index other than '1'. The test program, gfortran behavior, and the correct (ifort) behavior of the program is listed below. [EMAIL PROTECTED] ~]$ cat showbad.F90 PROGRAM showbad IMPLICIT NONE INTEGER, TARGET :: x(0:12) INTEGER, POINTER :: z(:) INTEGER i DO i = 0,12 x(i) = i ENDDO z = x DO i = 0,12 print*,i,x(i),z(i) ENDDO END PROGRAM showbad [EMAIL PROTECTED] ~]$ gfortran showbad.F90 [EMAIL PROTECTED] ~]$ a.out 0 0 56 1 10 wrong 2 2 1 3 3 2 4 4 3 5 5 4 6 6 5 7 7 6 8 8 7 9 9 8 10 10 9 11 11 10 12 12 11 [EMAIL PROTECTED] ~]$ ifort showbad.F90 [EMAIL PROTECTED] ~]$ a.out 0 0 0 1 11 correct 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 8 9 9 9 10 10 10 11 11 11 12 12 12 --- John Michalakes, Software Engineer[EMAIL PROTECTED] NCAR, MMM Division voice: +1 303 497 8199 3450 Mitchell Lane fax: +1 303 497 8181 Boulder, Colorado 80301 U.S.A.cell: +1 720 209 2320 http://www.mmm.ucar.edu/individual/michalakes --- -- Summary: Incorrect array indexing through pointer when array does not start at 1 Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: michalak at ucar dot edu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34770
[Bug tree-optimization/34769] New: [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
On Linux/Intel64, with revision 131442, I got Executing on host: /export/build/gnu/gcc/build-x86_64-linux/gcc/xgcc -B/export/build/gnu/gcc/build-x86_64-linux/gcc/ /export/gnu/src/gcc/gcc/gcc/testsuite/gcc.dg/vect/no-vfa-pr29145.c -ftree-vectorize -fno-vect-cost-model -msse2 -O2 -fdump-tree-vect-details --param vect-max-version-for-alias-checks=0 -fno-show-column -lm -m32 -o ./no-vfa-pr29145.exe(timeout = 300) PASS: gcc.dg/vect/no-vfa-pr29145.c (test for excess errors) FAIL: gcc.dg/vect/no-vfa-pr29145.c execution test FAIL: gcc.dg/vect/no-vfa-pr29145.c scan-tree-dump-times vect vectorized 0 loops 2 FAIL: gcc.dg/vect/no-vfa-pr29145.c scan-tree-dump-times vect vectorized 1 loops 1 Revision 131403 is OK. -- Summary: [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: hjl at lucon dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug target/26658] [4.1/4.2/4.3 Regression] memcpy/memset are not inlining with -march=athlon-xp and size of 128
--- Comment #9 from rguenth at gcc dot gnu dot org 2008-01-13 15:30 --- I am closing this bug as INVALID based on the doubious testcase. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID Summary|[4.0/4.1/4.2/4.3 Regression]|[4.1/4.2/4.3 Regression] |memcpy/memset are not |memcpy/memset are not |inlining with -march=athlon-|inlining with -march=athlon- |xp and size of 128 |xp and size of 128 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26658
[Bug fortran/34771] New: Parenthesis around character variables: No expression
(c) and c are regarded as the same for character variables; for other types (z) and z are not the same. gfc_get_parentheses (gfc_expr *e) { gfc_expr *e2; /* This is a temporary fix, awaiting the patch for various other character problems. The resolution and translation of substrings and concatenations are so kludged up that putting parentheses around them breaks everything. */ if (e-ts.type == BT_CHARACTER e-ref) return e; Test case: subroutine a(c) character :: c(*) call b((c)) contains subroutine b(y) character :: y(*) end subroutine b end subroutine Due to the parenthesis, it should print: Error: The upper bound in the last dimension must appear in the reference to the assumed size array (Error messages needs patch for PR 34665.) -- Summary: Parenthesis around character variables: No expression Product: gcc Version: 4.3.0 Status: UNCONFIRMED Keywords: accepts-invalid Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: burnus at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34771
[Bug middle-end/179] gcc -O2 -Wuninitialized missing warning with var under 2.95.x and 3.x
--- Comment #11 from rguenth at gcc dot gnu dot org 2008-01-13 15:40 --- Non-regressions should not have a target milestone set. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.0.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=179
[Bug ada/15610] Invalid program not detected, generic formal parameter hides declared item
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 15:42 --- Non-regression shouldn't have a target milestone. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.0.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15610
[Bug target/31786] [4.1/4.2/4.3 Regression][avr] error: unable to find a register to spill in class 'BASE_POINTER_REGS'
--- Comment #15 from rguenth at gcc dot gnu dot org 2008-01-13 15:44 --- Adjusting target milestone. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|4.2.1 |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31786
[Bug target/32431] [4.3 Regression][m68hc11] ICE in df_refs_verify, at df-scan.c:4066
--- Comment #5 from steven at gcc dot gnu dot org 2008-01-13 16:04 --- The m68k and m68hc11 are not the same backend. -- steven at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 16:04:08 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32431
[Bug c/34601] [4.3 regression] ICE with undefined enum
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 16:13 --- This works with -funit-at-a-time, where we don't expand. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34601
[Bug fortran/34770] Incorrect array indexing through pointer when array does not start at 1
--- Comment #1 from burnus at gcc dot gnu dot org 2008-01-13 16:17 --- I can reproduce it in GCC/gfortran 4.1.3 and 4.2.1, but it works in 4.3.0. Could you try with a newer GCC? http://gcc.gnu.org/wiki/GFortranBinaries -- burnus at gcc dot gnu dot org changed: What|Removed |Added Known to fail||4.1.2 4.1.3 4.2.2 Known to work||4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34770
[Bug tree-optimization/34769] [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
--- Comment #1 from hjl at lucon dot org 2008-01-13 16:25 --- Revision 131429: http://gcc.gnu.org/ml/gcc-patches/2008-01/msg00367.html -- hjl at lucon dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org OtherBugsDependingO||34458 nThis|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug tree-optimization/34769] [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
--- Comment #2 from hjl at lucon dot org 2008-01-13 16:26 --- Revision 131429 is the cause. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug c++/34406] [reject valid?] incomplete type 'Y' used in nested name specifier.
--- Comment #3 from bangerth at dealii dot org 2008-01-13 16:31 --- (In reply to comment #2) i'd ask why the first code is invalid? class Y looks pretty complete so why typedef expression throws an error? A class is complete at the closing brace. You use it before that. W. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34406
[Bug c/34601] [4.3 regression] ICE with undefined enum
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-13 16:31 --- Subject: Bug 34601 Author: rguenth Date: Sun Jan 13 16:30:51 2008 New Revision: 131506 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=131506 Log: 2008-01-13 Richard Guenther [EMAIL PROTECTED] PR middle-end/34601 * emit-rtl.c (set_reg_attrs_for_decl_rtl): Use DECL_MODE instead of TYPE_MODE to deal with calls from expand_one_error_var. * gcc.dg/noncompile/incomplete-4.c: New testcase. Added: trunk/gcc/testsuite/gcc.dg/noncompile/incomplete-4.c Modified: trunk/gcc/ChangeLog trunk/gcc/emit-rtl.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34601
[Bug tree-optimization/34769] [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
--- Comment #3 from hjl at lucon dot org 2008-01-13 16:31 --- This bug may only happen when you compile for 32bit on 64bit host. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug c/34601] [4.3 regression] ICE with undefined enum
--- Comment #6 from rguenth at gcc dot gnu dot org 2008-01-13 16:32 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34601
[Bug fortran/34765] erroneous intrinsic assignment call
-- damian at rouson dot net changed: What|Removed |Added Status|WAITING |UNCONFIRMED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34765
[Bug fortran/34765] erroneous intrinsic assignment call
--- Comment #5 from damian at rouson dot net 2008-01-13 16:40 --- I was trying to demonstrate multiple instances of the bug. Based on comment #4, I realize that the compiler performed correctly in at least 3 of the 4 instances. I will now attempt to verify whether the 4th instance is actually a bug. My apologies about the other three. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34765
[Bug fortran/34770] Incorrect array indexing through pointer when array does not start at 1
--- Comment #2 from john at michalakes dot us 2008-01-13 16:43 --- Subject: RE: Incorrect array indexing through pointer when array does not start at 1 Will do. Thanks for the quick response. -John -Original Message- From: burnus at gcc dot gnu dot org [mailto:[EMAIL PROTECTED] Sent: Sunday, January 13, 2008 9:18 AM To: [EMAIL PROTECTED] Subject: [Bug fortran/34770] Incorrect array indexing through pointer when array does not start at 1 --- Comment #1 from burnus at gcc dot gnu dot org 2008-01-13 16:17 --- I can reproduce it in GCC/gfortran 4.1.3 and 4.2.1, but it works in 4.3.0. Could you try with a newer GCC? http://gcc.gnu.org/wiki/GFortranBinaries -- burnus at gcc dot gnu dot org changed: What|Removed |Added --- - Known to fail||4.1.2 4.1.3 4.2.2 Known to work||4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34770 --- You are receiving this mail because: --- You are on the CC list for the bug, or are watching someone who is. You reported the bug, or are watching the reporter. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34770
[Bug tree-optimization/34769] [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 16:45 --- It simply vectorizes all loops in the testcase. It looks like there may be a non-canonical sizetype constant (just wild guesses). -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||wrong-code Last reconfirmed|-00-00 00:00:00 |2008-01-13 16:45:47 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug c++/33810] gcc 4.1.2 mangles results on x86_64 in bitfield operations
-- mmitchel at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33810
[Bug middle-end/34762] [4.2 regression] internal compiler error: in delete_output_reload, at reload1.c:7958
--- Comment #8 from danglin at gcc dot gnu dot org 2008-01-13 16:53 --- Subject: Bug 34762 Author: danglin Date: Sun Jan 13 16:53:02 2008 New Revision: 131508 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=131508 Log: PR middle-end/34762 * reload.c (find_reloads_toplev): Use rtx_equal_p to compare x and mem. Modified: branches/gcc-4_2-branch/gcc/ChangeLog branches/gcc-4_2-branch/gcc/reload.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34762
[Bug c/34621] [4.3 Regression] gcc.c-torture/execute/va-arg-25.c:32: internal compiler error: in expand_call, at calls.c:2785
--- Comment #2 from dominiq at lps dot ens dot fr 2008-01-13 16:55 --- Please provide preprocessed source, as this test pulls in system headers. Do you need the system headers for Darwin9? # 1 /opt/gcc/_gcc_clean/gcc/testsuite/gcc.c-torture/execute/va-arg-25.c # 1 built-in # 1 command-line # 1 /opt/gcc/_gcc_clean/gcc/testsuite/gcc.c-torture/execute/va-arg-25.c # 1 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include/stdarg.h 1 3 4 # 19 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include/stdarg.h 3 4 typedef __builtin_va_list __gnuc_va_list; # 91 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include/stdarg.h 3 4 typedef __gnuc_va_list va_list; # 125 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include/stdarg.h 3 4 # 4 /opt/gcc/_gcc_clean/gcc/testsuite/gcc.c-torture/execute/va-arg-25.c 2 # 1 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 1 3 4 # 1 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/syslimits.h 1 3 4 # 1 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 1 3 4 # 120 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 3 4 # 1 /usr/include/limits.h 1 3 4 # 23 /usr/include/limits.h 3 4 # 59 /usr/include/limits.h 3 4 # 1 /usr/include/sys/cdefs.h 1 3 4 # 28 /usr/include/sys/cdefs.h 3 4 # 66 /usr/include/sys/cdefs.h 3 4 # 105 /usr/include/sys/cdefs.h 3 4 # 128 /usr/include/sys/cdefs.h 3 4 # 155 /usr/include/sys/cdefs.h 3 4 # 166 /usr/include/sys/cdefs.h 3 4 # 180 /usr/include/sys/cdefs.h 3 4 # 198 /usr/include/sys/cdefs.h 3 4 # 253 /usr/include/sys/cdefs.h 3 4 # 288 /usr/include/sys/cdefs.h 3 4 # 298 /usr/include/sys/cdefs.h 3 4 # 322 /usr/include/sys/cdefs.h 3 4 # 387 /usr/include/sys/cdefs.h 3 4 # 410 /usr/include/sys/cdefs.h 3 4 # 456 /usr/include/sys/cdefs.h 3 4 # 64 /usr/include/limits.h 2 3 4 # 1 /usr/include/machine/limits.h 1 3 4 # 1 /usr/include/i386/limits.h 1 3 4 # 35 /usr/include/i386/limits.h 3 4 # 1 /usr/include/i386/_limits.h 1 3 4 # 24 /usr/include/i386/_limits.h 3 4 # 41 /usr/include/i386/limits.h 2 3 4 # 61 /usr/include/i386/limits.h 3 4 # 83 /usr/include/i386/limits.h 3 4 # 96 /usr/include/i386/limits.h 3 4 # 9 /usr/include/machine/limits.h 2 3 4 # 65 /usr/include/limits.h 2 3 4 # 1 /usr/include/sys/syslimits.h 1 3 4 # 28 /usr/include/sys/syslimits.h 3 4 # 64 /usr/include/sys/syslimits.h 3 4 # 87 /usr/include/sys/syslimits.h 3 4 # 104 /usr/include/sys/syslimits.h 3 4 # 66 /usr/include/limits.h 2 3 4 # 75 /usr/include/limits.h 3 4 # 89 /usr/include/limits.h 3 4 # 107 /usr/include/limits.h 3 4 # 118 /usr/include/limits.h 3 4 # 123 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 2 3 4 # 8 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/syslimits.h 2 3 4 # 12 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 2 3 4 # 55 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 3 4 # 102 /opt/gcc/gcc4.3w/lib/gcc/i686-apple-darwin9/4.3.0/include-fixed/limits.h 3 4 # 5 /opt/gcc/_gcc_clean/gcc/testsuite/gcc.c-torture/execute/va-arg-25.c 2 __const __attribute__((vector_size(16))) unsigned int v1 = {10,11,12,13}; __const __attribute__((vector_size(16))) unsigned int v2 = {20,21,22,23}; void foo(int a, ...) { va_list args; __attribute__((vector_size(16))) unsigned int v; __builtin_va_start(args, a); v = __builtin_va_arg(args, __attribute__((vector_size(16))) unsigned int); if (a != 1 || memcmp (v, v1, sizeof (v)) != 0) abort (); a = __builtin_va_arg(args, int); if (a != 2) abort (); v = __builtin_va_arg(args, __attribute__((vector_size(16))) unsigned int); if (memcmp (v, v2, sizeof (v)) != 0) abort (); __builtin_va_end(args); } int main(void) { foo (1, (__attribute__((vector_size(16))) unsigned int){10,11,12,13}, 2, (__attribute__((vector_size(16))) unsigned int){20,21,22,23}); return 0; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34621
[Bug middle-end/34762] [4.2 regression] internal compiler error: in delete_output_reload, at reload1.c:7958
--- Comment #9 from danglin at gcc dot gnu dot org 2008-01-13 16:55 --- Fixed by patch. -- danglin at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34762
[Bug tree-optimization/34769] [4.3 Regression] gcc.dg/vect/no-vfa-pr29145.c
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-13 17:00 --- We enter that function with: {4294967288B, +, 4}_1 polynomial_chrec 0x2acbda7bd500 type pointer_type 0x2acbd9dd09c0 type integer_type 0x2acbd9dc1540 int sizes-gimplified public SI size integer_cst 0x2acbd9db1ab0 constant invariant 32 unit size integer_cst 0x2acbd9db1720 constant invariant 4 align 32 symtab 0 alias set 2 canonical type 0x2acbd9dc1540 precision 32 min integer_cst 0x2acbd9db1a20 -2147483648 max integer_cst 0x2acbd9db1a50 2147483647 pointer_to_this pointer_type 0x2acbd9dd09c0 sizes-gimplified public unsigned SI size integer_cst 0x2acbd9db1ab0 32 unit size integer_cst 0x2acbd9db1720 4 align 32 symtab 0 alias set -1 canonical type 0x2acbd9dd09c0 arg 0 integer_cst 0x2acbd9dce510 type integer_type 0x2acbd9dc1540 int constant invariant 1 arg 1 integer_cst 0x2acbda7bf4b0 type pointer_type 0x2acbd9dd09c0 constant invariant public overflow 4294967288 arg 2 integer_cst 0x2acbd9db1720 4 where the HOST_WIDE_INT will be positive (it's not sign-extended). For -m64 we instead get {-8B, +, 4}_1 polynomial_chrec 0x2b154a2925f0 type pointer_type 0x2b15498a3b40 type integer_type 0x2b1549894540 int sizes-gimplified public SI size integer_cst 0x2b1549884ab0 constant invariant 32 unit size integer_cst 0x2b1549884720 constant invariant 4 align 32 symtab 0 alias set 2 canonical type 0x2b1549894540 precision 32 min integer_cst 0x2b1549884a20 -2147483648 max integer_cst 0x2b1549884a50 2147483647 pointer_to_this pointer_type 0x2b15498a3b40 sizes-gimplified public unsigned DI size integer_cst 0x2b1549884ba0 constant invariant 64 unit size integer_cst 0x2b1549884bd0 constant invariant 8 align 64 symtab 0 alias set -1 canonical type 0x2b15498a3b40 arg 0 integer_cst 0x2b15498a1570 type integer_type 0x2b1549894540 int constant invariant 1 arg 1 integer_cst 0x2b154a2948a0 type pointer_type 0x2b15498a3b40 constant invariant public overflow 18446744073709551608 arg 2 integer_cst 0x2b1549884720 4 where the HOST_WIDE_INT will be negative. For consistency you should always use sizetype variables for offsets, as they are properly sign-extended. Using pointer types asks for trouble. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34769
[Bug c/34621] [4.3 Regression] gcc.c-torture/execute/va-arg-25.c:32: internal compiler error: in expand_call, at calls.c:2785
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|WAITING |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 17:01:48 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34621
[Bug fortran/34665] Cannot pass scalar to array argument 'a'
--- Comment #7 from burnus at gcc dot gnu dot org 2008-01-13 17:41 --- One has to be careful not to to get the same problem as with SHAPE in PR 34759, i.e. passing a rank-2 array A(:,:,5) defined as rank-3 assumed-shape array A(:,:,*). This is actually already properly handled. Patch: http://gcc.gnu.org/ml/gcc-patches/2008-01/msg00570.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34665
[Bug fortran/34763] bare END not allowed in an interface block in a module procedure
--- Comment #3 from burnus at gcc dot gnu dot org 2008-01-13 17:41 --- Patch: http://gcc.gnu.org/ml/gcc-patches/2008-01/msg00567.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34763
[Bug fortran/34759] Assumed size array reference not allowed in SHAPE intrinsic, even though last subscript specified
--- Comment #3 from burnus at gcc dot gnu dot org 2008-01-13 17:41 --- Patch: http://gcc.gnu.org/ml/gcc-patches/2008-01/msg00566.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34759
[Bug c/34768] [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
--- Comment #4 from pinskia at gcc dot gnu dot org 2008-01-13 17:49 --- THis is related to PR 29382 and PR 13519. And I think this is exactly the same issue as PR 28289. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug tree-optimization/30930] [4.3 Regression] vector can cause to create an extra variable, DECL_GIMPLE_REG_P not recomputed
--- Comment #4 from pinskia at gcc dot gnu dot org 2008-01-13 17:57 --- (In reply to comment #3) It indeed works on the 4.2 branch where the loads magically disappear with the first may_alias pass. Possibly because it doesn't pay attention to whether DECL_GIMPLE_REG is set or not. Well DECL_GIMPLE_REG was not needed for vector types before 4.3.0 :) so yes it was ignored. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30930
[Bug fortran/34765] erroneous intrinsic assignment call
--- Comment #6 from damian at rouson dot net 2008-01-13 17:59 --- It turns out this is not a gfortran bug. My apologies for any time wasted. -- damian at rouson dot net changed: What|Removed |Added CC||damian at rouson dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34765
[Bug c++/33810] [4.1 Regression] gcc 4.1.2 mangles results on x86_64 in bitfield operations
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org Known to fail||4.1.3 Known to work||3.3.6 4.2.3 4.3.0 Summary|gcc 4.1.2 mangles results on|[4.1 Regression] gcc 4.1.2 |x86_64 in bitfield |mangles results on x86_64 in |operations |bitfield operations Target Milestone|--- |4.1.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33810
[Bug c++/34772] New: -Winit-self ignored when compiling C++ (and ObjC++)
The info manual says: `-Winit-self (C, C++, Objective-C and Objective-C++ only)' Warn about uninitialized variables which are initialized with themselves. Note this option can only be used with the `-Wuninitialized' option, which in turn only works with `-O1' and above. For example, GCC will warn about `i' being uninitialized in the following snippet only when `-Winit-self' has been specified: int f() { int i = i; return i; } However, trying that exact example, I get: $ g++-4.2 -O -Wuninitialized -c warnings.cc warnings.cc: In function int f(): warnings.cc:3: warning: i is used uninitialised in this function $ g++-4.2 -O -Wuninitialized -Wno-init-self -c warnings.cc warnings.cc: In function int f(): warnings.cc:3: warning: i is used uninitialised in this function Compiling the same code as C: $ gcc-4.2 -x c -O -Wuninitialized -c warnings.cc $ gcc-4.2 -x c -O -Wuninitialized -Winit-self -c warnings.cc warnings.cc: In function f: warnings.cc:3: warning: i is used uninitialised in this function $ So it appears that g++ simply ignores the -Winit-self setting and always warns about such code, contrary to what the documentation states (and gcc works as documented). ObjC seems to handle this as C does (as documented). ObjC++ seems to handle it as C++ does (contrary to documentation). This could be viewed as a documentation bug, though it seems more useful for this to work for C++ (and ObjC++) as is currently documented. It looks like -Winit-self was new in GCC 3.4, and I can the same behaviour for C++ with g++ 3.4.4, so I don't think this is a regression. -- Summary: -Winit-self ignored when compiling C++ (and ObjC++) Product: gcc Version: 4.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: olly at survex dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34772
[Bug c/34768] [4.1/4.2/4.3 Regression] Wrong code with conditional function invocation
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-01-13 18:17 --- *** Bug 28289 has been marked as a duplicate of this bug. *** -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||amylaar at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34768
[Bug c/28289] composite_types called to do two different things
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 18:17 --- 34768 has a testcase. *** This bug has been marked as a duplicate of 34768 *** -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28289
[Bug c/28306] const / pure call with ignored argument emitted.
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 18:22 --- This works for 'const' functions because they stick on the function type as well. The attributes are only on the DECL and do not get merged and transfered to the resulting function type of the COND_EXPR. So this again asks for streamlining attributes on types vs. decls. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28306
[Bug c++/34772] -Winit-self ignored when compiling C++ (and ObjC++)
--- Comment #1 from olly at survex dot com 2008-01-13 18:23 --- I've just noticed that Debian have a packaged 4.3 snapshot: g++-4.3 (Debian 4.3-20080104-1) 4.3.0 20080104 (experimental) [trunk revision 131316] Testing with this shows the same behaviour for C++. -- olly at survex dot com changed: What|Removed |Added Known to fail||3.4.4 4.2.1 4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34772
[Bug rtl-optimization/34773] New: fwprop1 bug causing miscompilation of vfprintf_r
See attachment vf.i. The bug manifests in code roughly corresponding to the code snippet: union double_union { double d; __uint32_t i[2]; }; union double_union tmp; tmp.d = value; if ((tmp.i[1]) ((__uint32_t)0x8000L)) { value = -value; *sign = '-'; } else *sign = '\000'; As manifested by the 142.fwprop1 dump compared to 141.cse1 dump, fwprop1 has changed (note 628 627 630 101 [bb 101] NOTE_INSN_BASIC_BLOCK) (insn 630 628 632 101 vf.i:1270 (set (reg:SI 277) (const_int -2147483648 [0x8000])) 38 {*movsi_internal} (nil)) (insn 632 630 629 101 vf.i:1270 (clobber (reg/v:DF 77 [ __x.739 ])) -1 (insn_list:REG_LIBCALL 631 (nil))) (insn 629 632 631 101 vf.i:1270 (set (subreg:SI (reg/v:DF 77 [ __x.739 ]) 0) (subreg:SI (reg/v:DF 152 [ __x ]) 0)) 38 {*movsi_internal} (expr_list:REG_NO_CONFLICT (reg/v:DF 152 [ __x ]) (nil))) (insn 631 629 633 101 vf.i:1270 (set (subreg:SI (reg/v:DF 77 [ __x.739 ]) 4) (xor:SI (subreg:SI (reg/v:DF 152 [ __x ]) 4) (reg:SI 277))) 155 {xorsi3} (insn_list:REG_RETVAL 632 (expr_list:REG_NO_CONFLICT (reg/v:DF 152 [ __x ]) (nil into: (note 628 627 631 103 [bb 103] NOTE_INSN_BASIC_BLOCK) (insn 631 628 633 103 vf.i:1270 (set (subreg:SI (reg/v:DF 77 [ __x.739 ]) 4) (plus:SI (subreg:SI (reg/v:DF 152 [ __x ]) 4) (const_int -2147483648 [0x8000]))) 75 {*addsi3_non_v32} (expr_list:REG_NO_CONFLICT (reg/v:DF 152 [ __x ]) (nil))) (insn 633 631 634 103 vf.i:1270 (set (reg/v:QI 161 [ softsign ]) (const_int 45 [0x2d])) 47 {movqi} (nil)) (code_label 634 633 635 104 86 [0 uses]) thereby making the lower part of the mantissa in (reg:DF 77) undefined and the bug manifestation depending on stack contents. Trunk of 130734 was used for the dump above. -- Summary: fwprop1 bug causing miscompilation of vfprintf_r Product: gcc Version: unknown Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: hp at gcc dot gnu dot org ReportedBy: hp at gcc dot gnu dot org GCC target triplet: cris-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34773
[Bug rtl-optimization/34773] fwprop1 bug causing miscompilation of vfprintf_r
--- Comment #1 from hp at gcc dot gnu dot org 2008-01-13 18:35 --- Created an attachment (id=14935) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14935action=view) Preprocessed source corresponding to newlib vfprintf.c Compile with -O2. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34773
[Bug c++/34774] New: templates, enumerations, overflow, ice
While trying to pinpoint an *intermitent* warning/error with g++ 4.3 mf/unit.h:84: error: no integral type can represent all of the enumerator values for `metafloat::core::helpers::details::aligner7u, metafloat::core::float_t0l, 0l, 0ul, CAT_NRM ::anonymous enum' i finally got it to ice with the attached version. Even better, the venerable g++ 3.4 as shipped by Cygwin also craps out. $ g++ tf.ii -o tf In file included from metafloat.h:13, from tf.cc:14: mf/significand.h:37: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://cygwin.com/problems.html for instructions. $ /usr/local/gcc-4.3-20080104/bin/g++ tf.ii -o tf In file included from metafloat.h:14, from tf.cc:15: mf/significand.h:35: 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. $ g++ -v Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs Configured with: /usr/build/package/orig/test.respin/gcc-3.4.4-3/configure --verbose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --libe xecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-languages=c,ada,c++,d,f77,pascal,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-thre ads=posix --enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions --enable-hash-synchronization --enable-libstdcxx-debug Thread model: posix gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125) $ /usr/local/gcc-4.3-20080104/bin/g++ -v Using built-in specs. Target: i686-pc-cygwin Configured with: ../configure --prefix=/usr/local/gcc-4.3-20080104 --enable-languages=c,c++ --enable-threads=posix --disable-checking --disable-libmudflap --dis able-nls --disable-shared --disable-win32-registry --disable-multilib --enable-sjlj-exceptions --with-system-zlib --with-gnu-ld --with-gnu-as --verbose --enable -checking=none --disable-bootstrap Thread model: posix gcc version 4.3.0 20080104 (experimental) (GCC) -- Summary: templates, enumerations, overflow, ice Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tbptbp at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
[Bug c++/34774] templates, enumerations, overflow, ice
--- Comment #1 from tbptbp at gmail dot com 2008-01-13 18:50 --- Created an attachment (id=14936) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14936action=view) preprocessed offender -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
[Bug rtl-optimization/34773] fwprop1 bug causing miscompilation of vfprintf_r
-- hp at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-01-13 18:50:30 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34773
[Bug rtl-optimization/34773] fwprop1 bug causing miscompilation of vfprintf_r
-- hp at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |ASSIGNED Last reconfirmed|2008-01-13 18:50:30 |2008-01-13 18:50:56 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34773
[Bug bootstrap/28326] [4.1 regression] profiledbootstrap will produce an ICE with -mtune=power3 -mcpu=power3 in BOOT_CFLAGS
--- Comment #6 from markus at unixforces dot net 2008-01-13 19:13 --- still failing with the 4.1-20080107 snapshot -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28326
[Bug c++/34774] [4.1/4.2/4.3 Regression] templates, enumerations, overflow, ice
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-01-13 19:17 --- This is the same issue as PR31714 (which occurs only on the 4.1 branch). #0 0x084c1ddd in operand_equal_p (arg0=0xb7d275b0, arg1=0xb7d275cc, flags=0) at /home/richard/src/trunk/gcc/fold-const.c:3015 #1 0x084c4664 in operand_equal_p (arg0=0xb7d23be0, arg1=0xb7d23c20, flags=0) at /home/richard/src/trunk/gcc/fold-const.c:3157 #2 0x084c48d0 in operand_equal_p (arg0=0xb7d2806c, arg1=0xb7d28090, flags=0) at /home/richard/src/trunk/gcc/fold-const.c:3162 #3 0x0853fcb1 in fold_ternary (code=COND_EXPR, type=0xb7c84548, op0=0xb7d25550, op1=0xb7d2806c, op2=0xb7d28090) at /home/richard/src/trunk/gcc/fold-const.c:13018 #4 0x08543a00 in fold_build3_stat (code=COND_EXPR, type=0xb7c84548, op0=0xb7d25550, op1=0xb7d2806c, op2=0xb7d28090) at /home/richard/src/trunk/gcc/fold-const.c:13717 #5 0x084e1cc7 in fold_binary_op_with_conditional_arg (code=GT_EXPR, type=0xb7c84548, op0=0xb7c7f280, op1=0xb7d2747c, cond=0xb7c7f280, arg=0xb7d2747c, cond_first_p=1) at /home/richard/src/trunk/gcc/fold-const.c:6398 #6 0x08506c18 in fold_binary (code=GT_EXPR, type=0xb7c84548, op0=0xb7c7f280, op1=0xb7d2747c) at /home/richard/src/trunk/gcc/fold-const.c:9532 #7 0x08543530 in fold (expr=0xb7d28048) at /home/richard/src/trunk/gcc/fold-const.c:13331 #8 0x0826d088 in fold_if_not_in_template (expr=0xb7d28048) at /home/richard/src/trunk/gcc/cp/tree.c:2728 #9 0x081f7043 in build_binary_op (code=GT_EXPR, orig_op0=0xb7c7f280, (gdb) call debug_tree (arg0) tree_list 0xb7d275b0 value negate_expr 0xb7d23c00 type integer_type 0xb7c842d8 int public type_6 SI size integer_cst 0xb7c73620 constant invariant 32 unit size integer_cst 0xb7c7340c constant invariant 4 align 32 symtab 0 alias set -1 canonical type 0xb7c842d8 precision 32 min integer_cst 0xb7c735cc -2147483648 max integer_cst 0xb7c735e8 2147483647 pointer_to_this pointer_type 0xb7c8d8f0 arg 0 template_parm_index 0xb7c78e34 type integer_type 0xb7c842d8 int readonly constant invariant index 0 level 1 orig_level 1 we leak template args to middle-end fold. 3.3 emits an error: mf/unit.h: In instantiation of `metafloat::core::helpers::details::aligner7, metafloat::core::float_t0, 0, 0, CAT_NRM ': mf/unit.h:108: instantiated from `metafloat::core::helpers::details::normalizer7, metafloat::core::helpers::details::aligner7, metafloat::core::float_t0, 0, 0, CAT_NRM ' metafloat.h:135: instantiated from `metafloat::core::helpers::normalizer7, metafloat::core::float_t0, 0, 0, CAT_NRM, true' metafloat.h:135: instantiated from `metafloat::core::ops::addF0, F1' tf.cc:59: instantiated from here mf/unit.h:84: error: no integral type can represent all of the enumerator values for `metafloat::core::helpers::details::aligner7, metafloat::core::float_t0, 0, 0, CAT_NRM ::anonymous enum' reducing. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||rguenth at gcc dot gnu dot ||org OtherBugsDependingO||31714 nThis|| Keywords||ice-on-invalid-code Known to fail||3.4.6 4.1.3 4.3.0 Known to work||3.3.6 Priority|P3 |P4 Summary|templates, enumerations,|[4.1/4.2/4.3 Regression] |overflow, ice |templates, enumerations, ||overflow, ice Target Milestone|--- |4.1.3 Version|unknown |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
[Bug target/34775] New: configuration for x86_64-pc-solaris2.10 target
I will attach a patch that allows me to compile a compiler on Solaris 10/x86 that has a native bits size of 64 for produced code. I created the configuration analogous to the sparcv9-sun-solaris2.* case. With this patch I have successfully built a fully 64-bits environment (toolchain, userland) that appears to work fine. Essentially the profile just switches the default code generation from m32 to m64, so no real rocket science in here ;) -- Summary: configuration for x86_64-pc-solaris2.10 target Product: gcc Version: 4.2.2 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: grobian at gentoo dot org GCC build triplet: i386-pc-solaris2.10 GCC host triplet: i386-pc-solaris2.10 GCC target triplet: x86_64-pc-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34775
[Bug target/34775] configuration for x86_64-pc-solaris2.10 target
--- Comment #1 from grobian at gentoo dot org 2008-01-13 19:21 --- Created an attachment (id=14937) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14937action=view) solaris x86_64 configuration -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34775
[Bug c++/34774] [4.1/4.2/4.3 Regression] templates, enumerations, overflow, ice
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-01-13 19:24 --- Reduced testcase that is accepted by 3.3 and 3.4 w/o diagnostic but ICEs starting with 4.0. typedef unsigned int op_type_u_t; typedef op_type_u_t op_type_t; templateint shifts, op_type_u_t sig struct shift { enum { num_bits = op_type_u_t(sizeof(op_type_t) * 8), max_shift = num_bits - 1u, is_left = shifts 0 ? true : false, n0 = is_left ? op_type_u_t(-shifts) : op_type_u_t(shifts), n = n0 max_shift ? max_shift : n0, n_comp = max_shift - n } x; }; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
[Bug target/30726] bootstrap support for x86_64-*-solaris2.10
--- Comment #2 from grobian at gentoo dot org 2008-01-13 19:29 --- *** Bug 34775 has been marked as a duplicate of this bug. *** -- grobian at gentoo dot org changed: What|Removed |Added CC||grobian at gentoo dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30726
[Bug target/34775] configuration for x86_64-pc-solaris2.10 target
--- Comment #2 from grobian at gentoo dot org 2008-01-13 19:29 --- I'm sorry for the spam, this should have been reported in bug #30726 *** This bug has been marked as a duplicate of 30726 *** -- grobian at gentoo dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34775
[Bug c++/34774] [4.1/4.2/4.3 Regression] templates, enumerations, overflow, ice
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-01-13 19:29 --- Created an attachment (id=14938) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14938action=view) unincluded testcase -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
[Bug target/30726] bootstrap support for x86_64-*-solaris2.10
--- Comment #3 from grobian at gentoo dot org 2008-01-13 19:30 --- In bug #34775 I've attached a configuration patch that works for me. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30726
[Bug rtl-optimization/34773] fwprop1 bug causing miscompilation of vfprintf_r
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 Version|unknown |4.3.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34773
[Bug fortran/34556] Rejects valid with bogus error message: parameter initalization
--- Comment #7 from jvdelisle at gcc dot gnu dot org 2008-01-13 19:38 --- In gfc_simplify_reshape, gfc_get_array_element is returning a NULL pointer. This is due to a failure in expand_constructor. I am still tracing this. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34556
[Bug c++/34774] [4.1/4.2/4.3 Regression] templates, enumerations, overflow, ice
--- Comment #5 from tbptbp at gmail dot com 2008-01-13 19:47 --- Thanks a lot for your investigations. May i ask if the apparent 'quenching' of sign mismatch - and related - warnings (that is if you pile enough templates, due warning are never emitted), is in any way related to this bug? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774