How to implement conditional execution
Hello all, For the 16-bit target that i porting now to gcc 4.1.2 doesn't have any branch instructions. It only has jump instructions. For comparison operation it has this instruction: if cond Rx Ry execute this insn So compare and branch is implemented as if cond Rx Ry jmp Label If the condition in the 'if' instruction is satisfied the processor will execute the next instruction or it will replace with a nop. So this means that i can instructions similar to: if eq Rx, Ry add Rx, Ry add Rx, 2 This is similar to conditional execution. This way any instruction can be executed conditionally. But this is different from normal. Normally the comparison operations set the status flags. An instruction gets conditionally executed based on these flags. This means that GCC can schedule instructions between the comparison instruction and the conditional instruction, provided none of the scheduled instructions are altering the status flags. This is not possible in my case as there shouldn't be any instruction between 'if eq Rx, Ry' and 'add Rx, Ry' and this is not as such an comparison operation and 'if' instruction doesn't set any status flags. Will it be possible to implement this in the Gcc backend ? Does any other targets have similar instructions? Regards, Shafi
Re: Mirror
[ gcc - gcc-patches ] After some off-list conversations with Alex and updates on his mirror, we now have a new full mirror of gcc.gnu.org ;-) and I am committing the patch below. Gerald Index: mirrors.html === RCS file: /cvs/gcc/wwwdocs/htdocs/mirrors.html,v retrieving revision 1.180 diff -u -3 -p -r1.180 mirrors.html --- mirrors.html15 Jun 2008 12:35:00 - 1.180 +++ mirrors.html25 Jun 2008 15:50:13 - @@ -50,6 +50,7 @@ Key fingerprint = 90AA 4704 69D3 965A 87 liUK, London: a href=http://gcc-uk.internet.bs;http://gcc-uk.internet.bs/a, thanks to Internet.bs (info at internet dot bs)/li liUS, Virginia: a href=ftp://mirrors.rcn.net/pub/sourceware/gcc/;mirrors.rcn.net/a (also available via a href=http://mirrors.rcn.net/pub/sourceware/gcc/;http/a)/li liUS, St. Louis (no snapshots): a href=ftp://mirrors.laffeycomputer.com/pub/gcc.gnu.org/pub/gcc/;mirrors.laffeycomputer.com/a, thanks to mirrormaster at laffey dot biz/li +liUS, Texas: a href=http://gcc.releasenotes.org;gcc.releasenotes.org/a, thanks to Alex Korolev (alex at releasenotes dot org)/li /ul pIf you wish to host a new mirror site, please contact
Re: How to implement conditional execution
On Fri, 27 Jun 2008 15:52:22 +0530 Mohamed Shafi [EMAIL PROTECTED] wrote: If the condition in the 'if' instruction is satisfied the processor will execute the next instruction or it will replace with a nop. So this means that i can instructions similar to: if eq Rx, Ry add Rx, Ry add Rx, 2 Will it be possible to implement this in the Gcc backend ? Does any other targets have similar instructions? This is very much like (a simpler version of) the ARM Thumb-2 IT instruction. Look how config/arm/thumb2.md handles that. I think the basic idea should be that you should define conditional instruction patterns which emit assembly for both instructions simultaneously, e.g. (excuse my pseudocode): (define_insn ... [(...)] if eq Rx, Ry\;add Rx, Ry) then there's no possibility for scheduling or other optimisations to split the second instruction away from the first. Julian
Is it legitmate to have a fallthru succ edge but a different basic block next?
Hello, I try to locate a problem in GCSE pass and found some suspicious RTL code as follows. Is it legitimate to have a fallthru succ edge but next basic block is a different one? Thanks. ... ;; Succ edge 10 [91.5%] (fallthru) ;; Succ edge 9 [8.5%] ;; Start of basic block ( 8) - 9 ... Cheers, Bingfeng Mei
Write-only registers and regmove pass
Hi all, I am porting GCC to a weird architecture and I have stumbled over this small problem. The architecture has write-only registers (er0 - er7) for I/O operations, reading values from these registers is forbidden. For the following code: register int ER0 asm(er0); int main() { int a, b; ER0 = a; b = a +1; // copy propagation -- b = ER0 + 1; return b; } Regmove pass converts b = a +1 into b = ER0 + 1, which is not allowed as er0 is a write-only register. I went through the code in regmove.c and found that it was not properly checking whether such a transformation satisfies the instruction constraints. Currently, I have done a point fix to stop regmove to copy propogate if the destination register (er0) is write-only. I would like to ask the GCC gurus, if there is proper/nicer way to handle this problem? Or if this problem has already been solved in the latest version of GCC? We are using gcc-4.0.2. Thank you very much for your time, Best Regards, Manish - Dr. Manish Verma Altera European Technology Centre, High Wycombe, UK
Re: Is it legitmate to have a fallthru succ edge but a different basic block next?
On Fri, Jun 27, 2008 at 2:20 PM, Bingfeng Mei [EMAIL PROTECTED] wrote: Hello, I try to locate a problem in GCSE pass and found some suspicious RTL code as follows. Is it legitimate to have a fallthru succ edge but next basic block is a different one? Thanks. ... ;; Succ edge 10 [91.5%] (fallthru) ;; Succ edge 9 [8.5%] ;; Start of basic block ( 8) - 9 ... Yes, this is valid if you are in cfglayout mode. Gr. Steven
gcc-4.4-20080627 is now available
Snapshot gcc-4.4-20080627 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.4-20080627/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.4 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/trunk revision 137205 You'll find: gcc-4.4-20080627.tar.bz2 Complete GCC (includes all of below) gcc-core-4.4-20080627.tar.bz2 C front end and core compiler gcc-ada-4.4-20080627.tar.bz2 Ada front end and runtime gcc-fortran-4.4-20080627.tar.bz2 Fortran front end and runtime gcc-g++-4.4-20080627.tar.bz2 C++ front end and runtime gcc-java-4.4-20080627.tar.bz2 Java front end and runtime gcc-objc-4.4-20080627.tar.bz2 Objective-C front end and runtime gcc-testsuite-4.4-20080627.tar.bz2The GCC testsuite Diffs from 4.4-20080620 are available in the diffs/ subdirectory. When a particular snapshot is ready for public consumption the LATEST-4.4 link is updated and a message is sent to the gcc list. Please do not use a snapshot before it has been announced that way.
[Bug libstdc++/36647] New: configure script can not find out version of GNU ld 2.18
gcc-4.3.1/libgomp/configure and gcc-4.3.1/libstdc++-v3/configure can not find out version of ld 2.18 (from GNU Binutils 2.18) I have GNU ld 2.18 but when compiling gcc I get messages: checking for ld version... 1800 ... and configure: WARNING: === Linker version 1800 is too old for ... I found that ld version is determined by (following lines from configure scripts mentioned above) ... ldver=`$LD --version 2/dev/null | head -1 | \ sed -e 's/GNU ld \(version \)\{0,1\}\(([^)]*) \)\{0,1\}\([0-9.][0-9.]*\).*/\3/'` ... That gives: $ echo $ldver GNU ld (GNU Binutils) 2.18 whereas $ldver should be 2.18 -- Summary: configure script can not find out version of GNU ld 2.18 Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: YLitvinenko at astana dot oilfield dot slb dot com GCC build triplet: i386-pc-solaris2.11 GCC host triplet: i386-pc-solaris2.11 GCC target triplet: i386-pc-solaris2.11 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36647
[Bug target/36622] 4.3.1 failed to compile gcse.c file.
--- Comment #14 from ubizjak at gmail dot com 2008-06-27 07:16 --- (In reply to comment #13) I just tried the 4.3_branch release of gcc with the CFFLAGS='-02 -fPIC' option. It seem to fail now in libiberty/md5.c Here is the error: --snip-- In file included from ../../../gcc-4.3/libiberty/md5.c:40: ../../../gcc-4.3/libiberty/../include/md5.h:85: error: expected ?:?, ?,?, ?;?, ?}? or ?__attribute__? before ?ATTRIBUTE_ALIGNED_ALIGNOF It looks to me that you are picking wrong ansidecl.h header somehow. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36622
[Bug c++/36648] New: segfault in global constructor with -O3
This code {{{ struct vector { vector() : x(0), y(0), z(0) { } float x,y,z; }; struct Foo { int dummy; // commenting this out makes it run perfectly vector array_of_vectors[4]; }; Foo foo; int main() { } }}} compiled with g++ -O3 test.cpp -o test segaults on x86-64 linux (tested on arch-linux and ubuntu hardy). Compiled it with -g g++ -O3 -g test.cpp -o test gdb says {{{ Program received signal SIGSEGV, Segmentation fault. 0x00400553 in global constructors keyed to foo () at test.cpp:2 2 vector() : x(0), y(0), z(0) { } (gdb) bt #0 0x00400553 in global constructors keyed to foo () at test.cpp:2 #1 0x00400636 in __do_global_ctors_aux () #2 0x0040041b in _init () #3 0x7fbf690ee8c0 in ?? () from /usr/lib/libstdc++.so.6 #4 0x004005c5 in __libc_csu_init () #5 0x7fbf688ca382 in __libc_start_main () from /lib/libc.so.6 #6 0x00400479 in _start () (gdb) }}} $ LANG=en_US /opt/bin/g++ -v Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: ../gcc-4.3.1/configure --prefix=/opt --enable-languages=c++ --disable-multilib Thread model: posix gcc version 4.3.1 (GCC) Related ML threads: http://thread.gmane.org/gmane.linux.arch.general/16677 http://thread.gmane.org/gmane.comp.gcc.help/24804 -- Maik -- Summary: segfault in global constructor with -O3 Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: beckmann dot maik at googlemail dot com 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=36648
[Bug c++/36648] segfault in global constructor with -O3
--- Comment #1 from beckmann dot maik at googlemail dot com 2008-06-27 07:21 --- The segfault doesn't happen on x86-32. -- beckmann dot maik at googlemail dot com changed: What|Removed |Added Known to fail||4.3.0 4.3.1 Known to work||3.4.6 4.0.1 4.2.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36648
[Bug c++/36648] segfault in global constructor with -O3
--- Comment #2 from beckmann dot maik at googlemail dot com 2008-06-27 08:34 --- same for gcc-4_3-branch: $ LANG=en_US svn info . Path: . URL: svn://gcc.gnu.org/svn/gcc/branches/gcc-4_3-branch Repository Root: svn://gcc.gnu.org/svn/gcc Repository UUID: 138bc75d-0d04-0410-961f-82ee72b054a4 Revision: 137170 Node Kind: directory Schedule: normal Last Changed Author: gccadmin Last Changed Rev: 137166 Last Changed Date: 2008-06-27 02:16:55 +0200 (Fri, 27 Jun 2008) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36648
[Bug libgcj/36640] Build gcc-4.2.1 release fails when configured with --with-xmlj using Sun's ld
--- Comment #2 from rob1weld at aol dot com 2008-06-27 08:42 --- Test results are here: Results for 4.2.1 testsuite on i386-pc-solaris2.11 http://gcc.gnu.org/ml/gcc-testresults/2008-06/msg02160.html Everything passed (and failed) as expected for this version of gcc when configured with these options on Cygwin (under WinXP) or Debian/GNU. A (very?) good result for a first attempt at porting to my new OS. Even got a few passes with mudflaps -- but I'll see if I can fix that up. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36640
[Bug c++/36648] segfault in global constructor with -O3
--- Comment #3 from beckmann dot maik at googlemail dot com 2008-06-27 08:46 --- eeh.. same means it segfaults on x86-64 :) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36648
[Bug libgcj/36640] Build gcc-4.2.1 release fails when configured with --with-xmlj using Sun's ld
--- Comment #3 from rwild at gcc dot gnu dot org 2008-06-27 08:47 --- I don't understand the last comment. Do you still have a bug to report? If no, then please close this, if yes, then please state what is different from the successful build you used to obtain the test results. Anyway, if you have the relocation issue still, it'd be interesting to see cd i386-pc-solaris2.11/libjava ./libtool --tag=CXX --config ./libtool --tag=GCJ --config to exclude a bogus pic_flag setting. -- rwild at gcc dot gnu dot org changed: What|Removed |Added CC||rwild at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36640
[Bug target/36622] 4.3.1 failed to compile gcse.c file.
--- Comment #15 from imam dot toufique at intel dot com 2008-06-27 08:57 --- (In reply to comment #14) (In reply to comment #13) I just tried the 4.3_branch release of gcc with the CFFLAGS='-02 -fPIC' option. It seem to fail now in libiberty/md5.c Here is the error: --snip-- In file included from ../../../gcc-4.3/libiberty/md5.c:40: ../../../gcc-4.3/libiberty/../include/md5.h:85: error: expected ?:?, ?,?, ?;?, ?}? or ?__attribute__? before ?ATTRIBUTE_ALIGNED_ALIGNOF It looks to me that you are picking wrong ansidecl.h header somehow. I am not sure how did i pick the wrong file. I followed the instructions on how to fetch the 4.3 burnch and used that same source. I did: svn co http://gcc.gnu.org/svn/gcc/branches/gcc-4_3-branch/ gcc-4.3 I hope I got the correct copy there, unless I did some wrong. if you have any suggestions on how to pick the right file, I am open to it. thanks. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36622
[Bug libstdc++/36647] configure scripts can not find out version of GNU ld 2.18
--- Comment #1 from paolo dot carlini at oracle dot com 2008-06-27 09:01 --- Paolo, can you help with this one? -- paolo dot carlini at oracle dot com changed: What|Removed |Added CC||bonzini at gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36647
[Bug tree-optimization/36646] [4.3/4.4 regression] Unnecessary moves generated on loop boundaries
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-06-27 09:23 --- This is just out-of-SSA not coalescing properly because of val_16 = val_3 + 8; D.2623_17 = val_3-ptr_off; which has overlapping life-ranges for val_3 and val_16. Earlier compilers either didn't eliminate o in favor of val or were able to fix this during rtl optimization. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC target triplet|i?86-*-*|i?86-*-*, x86_64-*-* Keywords||missed-optimization Known to work||4.2.4 Last reconfirmed|-00-00 00:00:00 |2008-06-27 09:23:50 date|| Summary|[4.4 regression] Unnecessary|[4.3/4.4 regression] |moves generated on loop |Unnecessary moves generated |boundaries |on loop boundaries Target Milestone|--- |4.3.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36646
[Bug tree-optimization/36648] [4.3/4.4 Regression] segfault in global constructor with -O3
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-06-27 09:31 --- The vectorizer creates an unaligned access. -O -ftree-vectorize reproduces it. _GLOBAL__I_foo: .LFB10: xorps %xmm0, %xmm0 movaps %xmm0, foo+4(%rip) movl$foo+20, %eax movaps %xmm0, (%rax) movaps %xmm0, 16(%rax) ret .globl foo .bss .align 32 .type foo, @object .size foo, 52 base_address: foo offset from base address: 0 constant offset from base address: 4 step: 12 aligned to: 128 base_object: ((struct vector *) foo)-x symbol tag: SMT.10 the base object looks wrong (or doesn't it include the constant offset?) In the end it looks like the vectorizer simply ignores the first field of the struct. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||irar at il dot ibm dot com, ||rguenth at gcc dot gnu dot ||org, spop at gcc dot gnu dot ||org Status|UNCONFIRMED |NEW Component|c++ |tree-optimization Ever Confirmed|0 |1 Keywords||wrong-code Known to work|3.4.6 4.0.1 4.2.3 |3.4.6 4.0.1 4.1.2 4.2.4 Priority|P3 |P1 Last reconfirmed|-00-00 00:00:00 |2008-06-27 09:31:54 date|| Summary|segfault in global |[4.3/4.4 Regression] |constructor with -O3|segfault in global ||constructor with -O3 Target Milestone|--- |4.3.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36648
[Bug target/36622] 4.3.1 failed to compile gcse.c file.
--- Comment #16 from ubizjak at gmail dot com 2008-06-27 09:43 --- (In reply to comment #15) I did: svn co http://gcc.gnu.org/svn/gcc/branches/gcc-4_3-branch/ gcc-4.3 I hope I got the correct copy there, unless I did some wrong. if you have any suggestions on how to pick the right file, I am open to it. thanks. It works for me on the sources I just got from SVN. Did you start from the clean build directory? BTW: The file include/ansidecl.h is correct, but please check if your build process is using it to build md5.o. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36622
[Bug pch/36649] New: [4.3 Regression] -H option doesn't work as expected
touch err.h echo include \err.h\ err.c echo include \stdio.h\ err.c echo int main() {} err.c gcc -H err.h gcc -H err.c prints: ! x9.h.gch x9.c . /usr/include/stdio.h [more headers...] .. /usr/include/bits/sys_errlist.h Multiple include guards may be useful for: /usr/include/bits/stdio_lim.h gcc err.h gcc -H err.c prints: ! x9.h.gch Multiple include guards may be useful for: /usr/include/bits/stdio_lim.h gcc -H err.h gcc err.c prints: x9.c [more headers...] .. /usr/include/bits/sys_errlist.h [no warning about possibly missing include guard] Leading to the following conclusion: the option, whether the header dependencies should be displayed or not is included in the precompiled header, so processing a pch can turn it either on or off. I don't think, that this behaviour is intended. gcc-4.2.4 gets it imho right, printing all dependencies when -H is used, no matter, if the pch was compiled -H or not. If this kind of behaviour is desired, could someone point out the reason, please? -- Summary: [4.3 Regression] -H option doesn't work as expected Product: gcc Version: 4.2.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component: pch AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rbuergel at web dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36649
[Bug target/36644] make check fails:FAIL: tr1/8_c_compatibility/cmath/functions.cc (test for excess errors)
--- Comment #5 from paolo dot carlini at oracle dot com 2008-06-27 10:29 --- I have no idea either. Unfortunately you target isn't very common among the contributors of GCC / testers on testresults. As you can see, x86_64 -m32 is also fine... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36644
[Bug target/36644] make check fails:FAIL: tr1/8_c_compatibility/cmath/functions.cc (test for excess errors)
-- paolo dot carlini at oracle dot com changed: What|Removed |Added Severity|critical|normal http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36644
[Bug target/36644] make check fails:FAIL: tr1/8_c_compatibility/cmath/functions.cc (test for excess errors)
--- Comment #6 from paolo dot carlini at oracle dot com 2008-06-27 10:34 --- By the way, I would consider using a 64-bit OS... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36644
[Bug testsuite/29071] gcc.dg/20020919-1.c compilation test fails on powerpc-apple-darwin8 at -m64
--- Comment #7 from dominiq at lps dot ens dot fr 2008-06-27 11:53 --- Before the patch I had: ... === gcc Summary for unix/-m64 === # of expected passes49011 # of unexpected failures41 # of unexpected successes 3 # of expected failures 180 # of unsupported tests 676 === gcc Summary === # of expected passes98177 # of unexpected failures65 # of unexpected successes 7 # of expected failures 352 # of unsupported tests 1275 /opt/gcc/darwin_buildw/gcc/xgcc version 4.4.0 [revision 137150p5] 20080626 (experimental) (GCC) after I have: ... === gcc Summary for unix/-m64 === # of expected passes49017 # of unexpected failures35 # of unexpected successes 3 # of expected failures 180 # of unsupported tests 676 === gcc Summary === # of expected passes98183 # of unexpected failures59 # of unexpected successes 7 # of expected failures 352 # of unsupported tests 1275 /opt/gcc/darwin_buildw/gcc/xgcc version 4.4.0 [revision 137169p4] 20080627 (experimental) (GCC) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29071
[Bug c/36650] New: Unable to build libgcc, xgcc aborts with a segmentation fault
GCC version: 4.3.1-20080507 System type: CYGWIN_NT-5.2-WOW64 version 1.5.25 Native GCC: version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125) GCC configured with: --target=x86_64-pc-linux --prefix=/usr/local/opensuse-x86_64 --enable-languages=c --disable-shared --disable-threads --disable-multilib --disable-libssp --disable-libmudflap From x86_64-pc-linux-gcc/libgcc/config.log: /usr/local/build-root/build-opensuse-64/x86_64-pc-linux-gcc/./gcc/xgcc -B/usr/local/build-root/build-opensuse-64/x86_64-pc-linux-gcc/./gcc/ -B/usr/local/opensuse-x86_64/x86_64-pc-linux/bin/ -B/usr/local/opensuse-x86_64/x86_64-pc-linux/lib/ -isystem /usr/local/opensuse-x86_64/x86_64-pc-linux/include -isystem /usr/local/opensuse-x86_64/x86_64-pc-linux/sys-include -c -O2 -g -g -O2 conftest.c conftest.c: In function 'main': conftest.c:12: internal compiler error: Segmentation fault -- Summary: Unable to build libgcc, xgcc aborts with a segmentation fault Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: marion dot deveaud at siemens dot com GCC host triplet: i686-pc-cygwin GCC target triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36650
[Bug c/34867] valgrind error indication in testsuite from c-lex.c:996:c_lex_with_flags for gcc.dg/cpp/charconst.c
--- Comment #2 from lauras at gcc dot gnu dot org 2008-06-27 12:30 --- Subject: Bug 34867 Author: lauras Date: Fri Jun 27 12:29:55 2008 New Revision: 137175 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137175 Log: 2008-06-27 Laurynas Biveinis [EMAIL PROTECTED] PR c/34867 * c-lex.c (lex_charconst): Initialize unsignedp. Modified: trunk/gcc/ChangeLog trunk/gcc/c-lex.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34867
[Bug c/34867] valgrind error indication in testsuite from c-lex.c:996:c_lex_with_flags for gcc.dg/cpp/charconst.c
--- Comment #3 from lauras at gcc dot gnu dot org 2008-06-27 12:32 --- Fixed on trunk. -- lauras at gcc dot gnu dot org changed: What|Removed |Added CC||lauras at gcc dot gnu dot ||org Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34867
[Bug c/36651] New: 64-bit enumerator incorrectly demoted to 32 bits
This problem can be reproduced using the attached testcase. In GCC 3.2.3 (i386-redhat-linux), it works as expected: ~ % gcc -v Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/specs Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux Thread model: posix gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-54) ~ % gcc -o foo foo.c ~ % ./foo 10002 10002 In GCC 4.1.2 (x86_64-redhat-linux), apparently the value FOO is interpreted as a 32-bit integer before the left shift; the bizarre thing is that casting to Foo (which should be unnecessary) avoids this. ~ % gcc -v Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=x86_64-redhat-linux Thread model: posix gcc version 4.1.2 20070626 (Red Hat 4.1.2-14) ~ % gcc -o foo foo.c foo.c: In function 'main': foo.c:13: warning: left shift count = width of type ~ % ./foo 2 10002 When I asked about this on gcc-help, Andrew Haley [EMAIL PROTECTED] wrote: It's a bug. C99 says an enumerated type shall be large enough to represent all its members, and that when promoting the rank of the enumerated type shall equal the rank of the compatible integer type. -- Summary: 64-bit enumerator incorrectly demoted to 32 bits Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jjk at acm dot org GCC host triplet: x86_64-redhat-linux GCC target triplet: x86_64-redhat-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36651
[Bug c/36651] 64-bit enumerator incorrectly demoted to 32 bits
--- Comment #1 from jjk at acm dot org 2008-06-27 12:36 --- Created an attachment (id=15820) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15820action=view) Test case. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36651
[Bug c/36651] 64-bit enumerator incorrectly demoted to 32 bits
--- Comment #2 from joseph at codesourcery dot com 2008-06-27 12:50 --- Subject: Re: New: 64-bit enumerator incorrectly demoted to 32 bits On Fri, 27 Jun 2008, jjk at acm dot org wrote: When I asked about this on gcc-help, Andrew Haley [EMAIL PROTECTED] wrote: It's a bug. C99 says an enumerated type shall be large enough to represent all its members, and that when promoting the rank of the enumerated type shall equal the rank of the compatible integer type. If there is a bug here, it relates to a GNU extension and has nothing to do with C99. C99 requires that all enumeration constants have values representable as int. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36651
[Bug c/18624] GCC does not detect local variable set but never used
--- Comment #11 from aldot at gcc dot gnu dot org 2008-06-27 13:04 --- should we - add a bit so that used_flags:2 and set TREE_USED() = 2 in expand_assignment(), expand_expr_real_1, adjust setting tree addressable(decl)=!!TREE_USED(decl), set it in gimplify_modify_expr_rhs() for vars that are not init-self, expand_one_var() etc. or - warn on has_zero_uses() in something like ccp? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18624
[Bug fortran/36652] New: Internal compiler error: in gfc_conv_expr
When compiling the code (taken and simplified from FoX, the FORTRAN XML library): module charset implicit none private character(len=1), parameter :: SPACE = achar(32) character(len=1), parameter :: NEWLINE = achar(10) character(len=1), parameter :: CARRIAGE_RETURN = achar(13) character(len=1), parameter :: TAB = achar(9) ! ** taking the last one or two items out of the concatenation allows compilation character(len=*), parameter :: whitespace = SPACE//NEWLINE//CARRIAGE_RETURN//TAB public :: whitespace public :: allowed_encoding contains function allowed_encoding(encoding) result(p) character(len=*), intent(in) :: encoding logical :: p character(len=100) :: enc logical :: utf8, usascii, iso88591 ! ** restoring the next line allows compilation ! utf8 = .false. p = utf8.or.usascii.or.iso88591 stop end function allowed_encoding end module charset with the command: gfortran -v -save-temps -c testbug.f90 I get an Internal Error: Using built-in specs. Target: i386-apple-darwin9.2.0 Configured with: ../gcc-4.4-20080509/configure --enable-languages=fortran Thread model: posix gcc version 4.4.0 20080509 (experimental) (GCC) COLLECT_GCC_OPTIONS='-mmacosx-version-min=10.5.3' '-v' '-save-temps' '-c' '-mtune=generic' /usr/local/libexec/gcc/i386-apple-darwin9.2.0/4.4.0/f951 testbug.f90 -fPIC -quiet -dumpbase testbug.f90 -mmacosx-version-min=10.5.3 -mtune=generic -auxbase testbug -version -fintrinsic-modules-path /usr/local/lib/gcc/i386-apple-darwin9.2.0/4.4.0/finclude -o testbug.s GNU Fortran (GCC) version 4.4.0 20080509 (experimental) (i386-apple-darwin9.2.0) compiled by GNU C version 4.4.0 20080509 (experimental), GMP version 4.2.1, MPFR version 2.2.1. GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 testbug.f90: In function â#128;#152;allowed_encodingâ#128;#153;: testbug.f90:19: internal compiler error: in gfc_conv_expr, at fortran/trans-expr.c:3589 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. -- Summary: Internal compiler error: in gfc_conv_expr Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: j dot wookey at bristol dot ac dot uk GCC build triplet: ../gcc-4.4-20080509/configure --enable- languages=fortran GCC target triplet: i386-apple-darwin9.2.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36652
[Bug target/36584] [4.3/4.4 Regression] Stack is not aligned correctly in recursive function
--- Comment #7 from hjl at gcc dot gnu dot org 2008-06-27 13:59 --- Subject: Bug 36584 Author: hjl Date: Fri Jun 27 13:59:05 2008 New Revision: 137179 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137179 Log: 2008-06-27 H.J. Lu [EMAIL PROTECTED] PR middle-end/36584 * gcc.target/i386/stackalign/local-1.c: Remove invalid test. Removed: branches/stack/gcc/testsuite/gcc.target/i386/stackalign/local-1.c Modified: branches/stack/gcc/testsuite/ChangeLog.stackalign -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36584
[Bug debug/36617] Debug info for OpenMP code is almost non-existent
-- jakub at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jakub at gcc dot gnu dot org |dot org | URL||http://gcc.gnu.org/ml/gcc- ||patches/2008- ||06/msg01745.html Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-06-27 14:25:15 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36617
[Bug c/36651] 64-bit enumerator incorrectly demoted to 32 bits
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-06-27 15:12 --- I think this is the old bug that the enum values that fit into int get integer type. This can be seen from the warning as well (I think the preprocessor gets this wrong already). There is a dup about this somewhere... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36651
[Bug c/36651] 64-bit enumerator incorrectly demoted to 32 bits
--- Comment #4 from pinskia at gcc dot gnu dot org 2008-06-27 15:13 --- If you try with -pedantic, it changes behaviour IIRC. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36651
[Bug c++/36654] New: Inlined con/de-structor breaks in dllimport classes with virtual inheritance
In mingw32 builds of the GCC 4.3 branch, the following code causes an ICE: class blah {}; class __attribute__((dllimport)) vchild : virtual public blah { vchild() {} }; The dllimport attribute, the virtual inheritance, and the inline constructor are key to causing the error. A Windows prompt session using the MinGW GCC 4.3.0 alpha follows: g++ -v Using built-in specs. Target: mingw32 Configured with: ../gcc-4.3.0/configure --enable-languages=c,ada,c++,fortran,java,objc,obj-c++ --disable-sjlj-exceptions --enable-shared --enable-libgcj --enable-libgomp --with-dwarf2 --disable-win32-registry --enable-libstdcxx-debug --enable-concept-checks --enable-version-specific-runtime-libs --build=mingw32 --with-bugurl=http://www.mingw.org/bugs.shtml --prefix=/mingw --with-gmp=/mingw/src/gcc/gmp-mpfr-root --with-mpfr=/mingw/src/gcc/gmp-mpfr-root --with-libiconv-prefix=/mingw/src/gcc/libiconv-root Thread model: win32 gcc version 4.3.0 20080305 (alpha-testing) mingw-20080502 (GCC) g++ -c deltatest.ii deltatest.ii:8: internal compiler error: in maybe_emit_vtables, at cp/decl2.c:1678 Please submit a full bug report, with preprocessed source if appropriate. See http://www.mingw.org/bugs.shtml for instructions. -- Summary: Inlined con/de-structor breaks in dllimport classes with virtual inheritance Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: major Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tdragon at tdragon dot net GCC build triplet: mingw32 GCC host triplet: mingw32 GCC target triplet: mingw32 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654
[Bug c++/36654] Inlined con/de-structor breaks virtual inheritance dllimport classes
--- Comment #1 from tdragon at tdragon dot net 2008-06-27 17:09 --- I have also discovered that this bug is *not* present in the MinGW 4.2.1 TP (or in MinGW 3.4.5), but is present in unofficial builds of GCC 4.3.1 and 4.2.4 as well as 4.3.0. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654
[Bug c++/36655] New: unjustified warning for extern template when using -pedantic -std=c++0x
Consider: template typename void f() {} extern template void fint(); When compiled with: g++ -pedantic -std=c++0x -c t.cpp the following warning is emitted: warning: ISO C++ forbids the use of extern on explicit instantiations Since extern template has already been integrated into the C++0x working paper, I think this warning should not be emitted when using -std=c++0x, not even with -pedantic. -- Summary: unjustified warning for extern template when using - pedantic -std=c++0x Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gcc-bugzilla at contacts dot eelis dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36655
[Bug c++/36656] New: useless warning: type qualifiers ignored on function return type in template code
The warning below is unhelpful in generic code and silencing it by removing the top-level cv qualifiers is unnecessarily tedious. $ cat t.cpp g++ t.cpp -W template class T T foo () { return T (); } int main () { fooconst int(); } t.cpp: In function 'int main()': t.cpp:2: warning: type qualifiers ignored on function return type -- Summary: useless warning: type qualifiers ignored on function return type in template code Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sebor at roguewave dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36656
[Bug c++/36052] type qualifiers ignored warning
--- Comment #4 from pinskia at gcc dot gnu dot org 2008-06-27 17:46 --- *** Bug 36656 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||sebor at roguewave dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36052
[Bug c++/36656] useless warning: type qualifiers ignored on function return type in template code
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-06-27 17:46 --- *** This bug has been marked as a duplicate of 36052 *** -- 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=36656
[Bug c++/30601] [4.3 regression] -Wreturn-type warns about more than what the documentation says
--- Comment #14 from pinskia at gcc dot gnu dot org 2008-06-27 17:47 --- *** Bug 36052 has been marked as a duplicate of this bug. *** -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30601
[Bug c++/36052] type qualifiers ignored warning
--- Comment #5 from pinskia at gcc dot gnu dot org 2008-06-27 17:47 --- Really I don't see any differences between this and PR 30601. *** This bug has been marked as a duplicate of 30601 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|NEW |RESOLVED Resolution||DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36052
[Bug c++/36655] unjustified warning for extern template when using -pedantic -std=c++0x
--- Comment #1 from paolo dot carlini at oracle dot com 2008-06-27 17:57 --- I think you are right. -- paolo dot carlini at oracle dot com changed: What|Removed |Added CC||paolo at gcc dot gnu dot ||org, doug dot gregor at ||gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36655
[Bug c++/36655] unjustified warning for extern template when using -pedantic -std=c++0x
-- paolo dot carlini at oracle dot com changed: What|Removed |Added CC|paolo at gcc dot gnu dot org| AssignedTo|unassigned at gcc dot gnu |paolo dot carlini at oracle |dot org |dot com Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-06-27 18:00:54 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36655
[Bug target/36644] make check fails:FAIL: tr1/8_c_compatibility/cmath/functions.cc (test for excess errors)
--- Comment #7 from dtom77 at gmail dot com 2008-06-27 18:12 --- Subject: Re: make check fails:FAIL: tr1/8_c_compatibility/cmath/functions.cc (test for excess errors) On Friday 27 June 2008 06:33, paolo dot carlini at oracle dot com wrote: By the way, I would consider using a 64-bit OS... I've lots and lots of apps and their configurations. I am not thinking about transfering right now. So I tried uninstalling the old libmpfr and using the command line parameters: --with-mpfr=pathname --with-mpfr-include=pathname --with-mpfr-lib=pathname Still gcc doesn't see the new lib. Seems like gcc is using the old lib location which doesn't have mpfr_remainder() function. That creates the previous errors from my first post. Changes from versions 2.2.* to version 2.3.0(from mpfr homepage) .. * New functions mpfr_j0, mpfr_j1, mpfr_jn, mpfr_y0, mpfr_y1, mpfr_yn ,mpfr_lgamma, mpfr_remainder, mpfr_remquo, mpfr_fms, mpfr_signbit, mpfr_setsign, mpfr_copysign, mpfr_get_patches. * Functions mpfr_sin, mpfr_cos and mpfr_sin_cos improved (argument reduction). .. i think gcc needs to respect the location and CL parameters that refer to new lib. Is there anyway to force the compilation process to recognize the new path without creating symbolic link (even if it means modifying the source)? I can provide assistance regarding this bug. output from config.log during `make`: checking for i686-pc-linux-gnu-gcc... /home/ad/build_gcc/./gcc/xgcc -B/home/ad/build_gcc/./gcc/ -B/opt/gcc-4.3.1/i686-pc-linux-gnu/bin/ -B/opt/gcc-4.3.1/i686-pc-linux-gnu/lib/ -isystem /opt/gcc-4.3.1/i686-pc-linux-gnu/include -isystem /opt/gcc-4.3.1/i686-pc-linux-gnu/sys-include checking for suffix of object files... configure: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. make[2]: *** [configure-stage1-target-libgcc] Error 1 make[2]: Leaving directory `/home/ad/build_gcc' make[1]: *** [stage1-bubble] Error 2 make[1]: Leaving directory `/home/ad/build_gcc' make: *** [all] Error 2 And: configure:2567: checking for suffix of object files configure:2588: /home/ad/build_gcc/./gcc/xgcc -B/home/ad/build_gcc/./gcc/ -B/opt/gcc-4.3.1/i686-pc-linux-gnu/bin/ -B/opt/gcc-4.3.1/i686-pc-linux-gnu/lib/ -isystem /opt/gcc-4.3.1/i686-pc-linux-gnu/include -isystem /opt/gcc-4.3.1/i686-pc-linux-gnu/sys-include -c -g -fkeep-inline-functions conftest.c 5 /home/ad/build_gcc/./gcc/cc1: error while loading shared libraries: libmpfr.so.1: cannot open shared object file: No such file or directory configure:2591: $? = 1 configure: failed program was: | /* confdefs.h. */ | | #define PACKAGE_NAME GNU C Runtime Library | #define PACKAGE_TARNAME libgcc | #define PACKAGE_VERSION 1.0 | #define PACKAGE_STRING GNU C Runtime Library 1.0 | #define PACKAGE_BUGREPORT | /* end confdefs.h. */ | | int | main () | { | | ; | return 0; | } configure:2605: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36644
[Bug tree-optimization/36400] [4.2/4.3/4.4 Regression] points-to results wrong
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-06-27 18:54 --- Subject: Bug 36400 Author: rguenth Date: Fri Jun 27 18:53:43 2008 New Revision: 137197 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137197 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c trunk/gcc/testsuite/gcc.dg/tree-ssa/pr24287.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-alias.c trunk/gcc/tree-ssa-structalias.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36400
[Bug tree-optimization/36373] [4.2/4.3/4.4 Regression] Wrong code with struct return
--- Comment #6 from rguenth at gcc dot gnu dot org 2008-06-27 18:54 --- Subject: Bug 36373 Author: rguenth Date: Fri Jun 27 18:53:43 2008 New Revision: 137197 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137197 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c trunk/gcc/testsuite/gcc.dg/tree-ssa/pr24287.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-alias.c trunk/gcc/tree-ssa-structalias.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36373
[Bug testsuite/36344] [4.3/4.4 Regression] gcc.dg/tree-ssa/loadpre8.c XFAILed
--- Comment #3 from rguenth at gcc dot gnu dot org 2008-06-27 18:54 --- Subject: Bug 36344 Author: rguenth Date: Fri Jun 27 18:53:43 2008 New Revision: 137197 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137197 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c trunk/gcc/testsuite/gcc.dg/tree-ssa/pr24287.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-alias.c trunk/gcc/tree-ssa-structalias.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36344
[Bug debug/36617] Debug info for OpenMP code is almost non-existent
--- Comment #2 from jakub at gcc dot gnu dot org 2008-06-27 19:43 --- Subject: Bug 36617 Author: jakub Date: Fri Jun 27 19:42:32 2008 New Revision: 137198 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137198 Log: PR debug/36617 * tree-cfg.c (struct move_stmt_d): Replace block field with orig_block and new_block fields. (move_stmt_r): Only set TREE_BLOCK to p-new_block if if it used to be NULL, p-orig_block or if p-orig_block is NULL. (move_block_to_fn): Replace vars_map and new_label_map arguments with struct move_stmt_d pointer. (replace_block_vars_by_duplicates): New function. (move_sese_region_to_fn): Add ORIG_BLOCK argument. Adjust move_block_to_fn caller. If ORIG_BLOCK is non-NULL, move over all subblocks of ORIG_BLOCK to the new function. Call replace_block_vars_by_duplicates. * tree-flow.h (move_sese_region_to_fn): Adjust prototype. * omp-low.c (expand_omp_taskreg): Set TREE_USED on DECL_INITIAL BLOCK of the new function. Adjust move_sese_region_to_fn caller. Prune vars with original DECL_CONTEXT from child_cfun-local_decls. (expand_omp): Temporarily set input_location to the location of region's controlling stmt. (lower_omp_sections, lower_omp_for): Add a BLOCK into outermost BIND_EXPR, push ctx-block_vars and gimplification vars into the BIND_EXPR and its block's BLOCK_VARS instead of directly into dest function. (lower_omp_single): Set TREE_USED on the BIND_EXPR's BLOCK if there are any BLOCK_VARS. (lower_omp_taskreg): Set BLOCK on a BIND_EXPR containing the OMP_PARALLEL or OMP_TASK stmt. (lower_omp): Save and restore input_location around the lower_omp_1 call. * testsuite/libgomp.c/debug-1.c: New test. Added: trunk/libgomp/testsuite/libgomp.c/debug-1.c Modified: trunk/gcc/ChangeLog trunk/gcc/omp-low.c trunk/gcc/tree-cfg.c trunk/gcc/tree-flow.h trunk/libgomp/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36617
[Bug libfortran/36657] New: Namelist reading bug with string constant immediately followed by comment
Hi, the following program shows a runtime bug with gfortran 4.3.x: % cat gfcbug79.f90 program gfcbug79 implicit none integer, parameter :: nnml = 10 character(len=8) :: model = namelist /NML/ model open (nnml, file='gfcbug79.nml') write(nnml,*) nml write(nnml,*) model='foo'! This is a just comment write(nnml,*) / rewind(nnml) read (nnml, nml=NML) close(nnml) write (*,nml=NML) end program gfcbug79 % gfc gfcbug79.f90 ./a.out At line 14 of file gfcbug79.f90 (unit = 10, file = 'gfcbug79.nml') Fortran runtime error: Invalid string input in item 0 % Inserting a blank before the comment character (!) is a workaround, but gfortran should nevertheless be fixed. Cheers, -ha -- Summary: Namelist reading bug with string constant immediately followed by comment Product: gcc Version: 4.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: anlauf at gmx dot de GCC host triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36657
[Bug libgcj/36658] New: Building gcj for arm linux from trunk (gcc 4.4.0): libjava/gcj/array.h:24: internal compiler error: verify_gimple failed
I'm getting the following error/bug when I try to cross compile gcj for ARM Linux from trunk (gcc 4.4.0). This works fine using gcc 4.3.0 and 4.3.1 In file included from ../../../libjava/java/lang/String.h:10, from ../../../libjava/java/lang/Class.h:19, from ../../../libjava/gcj/cni.h:17, from ../../../libjava/jni-libjvm.cc:11: ../../../libjava/gcj/array.h: In constructor '__JArray::__JArray()': ../../../libjava/gcj/array.h:24: error: non-trivial conversion at assignment void struct __JArray * const retval = this ../../../libjava/gcj/array.h:24: internal compiler error: verify_gimple failed Please submit a full bug report, with preprocessed source if appropriate. make[3]: *** [jni-libjvm.lo] Error 1 make[3]: Leaving directory `/media/disk/trunk/gtk-peer/arm-linux-gnueabi/libjava' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/media/disk/trunk/gtk-peer/arm-linux-gnueabi/libjava' make[1]: *** [all-target-libjava] Error 2 make[1]: Leaving directory `/media/disk/trunk/gtk-peer' make: *** [all] Error 2 Configured with: --prefix=/media/disk/gcc-inst --with-sysroot=/root/tmp/f8/rootfs-f8 --disable-libssp --disable-libgomp --disable-libmudflap --enable-libgcj --disable-bootstrap --disable-multilib --disable-sjlj-exceptions --target=arm-linux-gnueabi --enable-languages=c,c++,java --with-build-time-tools=/root/tmp/f8/binutils/arm-linux-gnueabi/bin --with-ld=/root/tmp/f8/binutils/arm-linux-gnueabi/bin/ld --with-nm=/root/tmp/f8/binutils/arm-linux-gnueabi/bin/nm --with-strip=/root/tmp/f8/binutils/arm-linux-gnueabi/bin/strip --with-as=/root/tmp/f8/binutils/arm-linux-gnueabi/bin/as --with-float=soft --enable-java-awt=gtk -- Summary: Building gcj for arm linux from trunk (gcc 4.4.0): libjava/gcj/array.h:24: internal compiler error: verify_gimple failed Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ffileppo at libero dot it GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: arm-unknown-linux-gnueabi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36658
[Bug c++/35499] Symbol resolution optimization should be separately controlled from -fPIC
--- Comment #4 from ddenisen at altera dot com 2008-06-27 20:34 --- Here's the answer to my question (in case somebody else has the same problem): You have to use -fPIC for compiling the executable itself (but not the shared objects) to fix the symbol resolution problem described here. I was originally omitting -fPIC for both SOs and EXE. and here's some background info about -fPIC removal: - Not using -fPIC only works on x86 architecture (but not even on x86_64) because it allows code pages to be both writable and executable. Not using -fPIC works because the linker creates text relocations (http://people.redhat.com/drepper/textrelocs.html) all over code that dynamic loader fixes up when SO/EXE is loaded. - Having code pages writable and executable is a huge security thread, so don't create text relocations if you care about security of your app. - x86_64 arch allows RIP-related addressing, making position-independent code virtually free. So don't worry about using PIC for 64-bit apps. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35499
[Bug c++/36655] unjustified warning for extern template when using -pedantic -std=c++0x
--- Comment #2 from paolo at gcc dot gnu dot org 2008-06-27 20:46 --- Subject: Bug 36655 Author: paolo Date: Fri Jun 27 20:45:25 2008 New Revision: 137200 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137200 Log: /cp 2008-06-27 Paolo Carlini [EMAIL PROTECTED] PR c++/36655 * pt.c (do_decl_instantiation): In c++0x mode do not warn for extern template. /testsuite 2008-06-27 Paolo Carlini [EMAIL PROTECTED] PR c++/36655 * g++.dg/cpp0x/extern_template.C: New. Added: trunk/gcc/testsuite/g++.dg/cpp0x/extern_template.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/pt.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36655
[Bug c++/36655] unjustified warning for extern template when using -pedantic -std=c++0x
--- Comment #3 from paolo dot carlini at oracle dot com 2008-06-27 20:50 --- Fixed for 4.4.0. -- paolo dot carlini at oracle dot com changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36655
[Bug other/31754] Include column number along line in error messages main.cpp:5:38
--- Comment #9 from dseketel at redhat dot com 2008-06-27 21:31 --- Created an attachment (id=15821) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15821action=view) better column number in error patch [2/2] After applying this patch, all calls to error() gcc/cp/parser.c use an accurate location. The remaining calls that use the global input_location variable are outside of the parser. Some impacted tests have been updated to catch column number regressions. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31754
[Bug tree-optimization/36373] [4.2/4.3/4.4 Regression] Wrong code with struct return
--- Comment #7 from rguenth at gcc dot gnu dot org 2008-06-27 21:55 --- Subject: Bug 36373 Author: rguenth Date: Fri Jun 27 21:54:42 2008 New Revision: 137204 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137204 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Added: trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-1.c trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-1.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-10.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-3.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-4.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-5.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-6.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-7.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-8.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-9.c trunk/gcc/testsuite/gcc.dg/torture/pr36400.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36373
[Bug testsuite/36344] [4.3/4.4 Regression] gcc.dg/tree-ssa/loadpre8.c XFAILed
--- Comment #4 from rguenth at gcc dot gnu dot org 2008-06-27 21:55 --- Subject: Bug 36344 Author: rguenth Date: Fri Jun 27 21:54:42 2008 New Revision: 137204 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137204 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Added: trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-1.c trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-1.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-10.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-3.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-4.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-5.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-6.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-7.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-8.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-9.c trunk/gcc/testsuite/gcc.dg/torture/pr36400.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36344
[Bug tree-optimization/36400] [4.2/4.3/4.4 Regression] points-to results wrong
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-06-27 21:55 --- Subject: Bug 36400 Author: rguenth Date: Fri Jun 27 21:54:42 2008 New Revision: 137204 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137204 Log: 2008-06-27 Richard Guenther [EMAIL PROTECTED] PR tree-optimization/36400 PR tree-optimization/36373 PR tree-optimization/36344 * tree-ssa-structalias.c (var_escaped, escaped_tree, escaped_id, var_nonlocal, nonlocal_tree, nonlocal_id): New globals (update_alias_info): Remove call clobbering code. (make_constraint_to): New helper function. (make_escape_constraint): Likewise. (handle_rhs_call): Use it on all pointer containing arguments. Also mark the static chain escaped. (handle_lhs_call): Make constraints from NONLOCAL and ESCAPED instead of ANYTHING. (make_constraint_from): New helper split out from ... (make_constraint_from_anything): ... here. (find_func_aliases): Add constraints for escape sites. (intra_create_variable_infos): Make constraints from NONLOCAL for parameters. (find_what_p_points_to): Interpret NONLOCAL and ESCAPED the same as ANYTHING. (clobber_what_p_points_to): Remove. (clobber_what_escaped): New function. (init_base_vars): Init NONLOCAL and ESCAPED. (do_sd_constraint): Do not propagate the solution from ESCAPED but use ESCAPED as a placeholder. (solve_graph): Likewise. * tree-flow.h (clobber_what_p_points_to): Remove. (clobber_what_escaped): Declare. * tree-ssa-alias.c (set_initial_properties): Call it. Remove code clobbering escaped pointers. * gcc.dg/torture/pr36373-1.c: New testcase. * gcc.dg/torture/pr36373-2.c: Likewise. * gcc.dg/torture/pr36373-3.c: Likewise. * gcc.dg/torture/pr36373-4.c: Likewise. * gcc.dg/torture/pr36373-5.c: Likewise. * gcc.dg/torture/pr36373-6.c: Likewise. * gcc.dg/torture/pr36373-7.c: Likewise. * gcc.dg/torture/pr36373-8.c: Likewise. * gcc.dg/torture/pr36373-9.c: Likewise. * gcc.dg/torture/pr36373-10.c: Likewise. * gcc.dg/torture/pr36400.c: Likewise. * gcc.c-torture/execute/pta-field-1.c: Likewise. * gcc.c-torture/execute/pta-field-2.c: Likewise. * gcc.dg/tree-ssa/loadpre8.c: Remove XFAIL. * gcc.dg/tree-ssa/pr24287.c: XFAIL. Added: trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-1.c trunk/gcc/testsuite/gcc.c-torture/execute/pta-field-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-1.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-10.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-2.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-3.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-4.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-5.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-6.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-7.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-8.c trunk/gcc/testsuite/gcc.dg/torture/pr36373-9.c trunk/gcc/testsuite/gcc.dg/torture/pr36400.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36400
[Bug c++/36364] [4.1/4.2/4.3/4.4 Regression] Problem with -frepo
--- Comment #3 from jakub at gcc dot gnu dot org 2008-06-27 22:27 --- Subject: Bug 36364 Author: jakub Date: Fri Jun 27 22:26:48 2008 New Revision: 137205 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137205 Log: PR c++/36364 * repo.c (repo_emit_p): Put const static data members initialized by const expr into *.rpo file, just return 2 if IDENTIFIER_REPO_CHOSEN for it is 0. * g++.dg/template/repo9.C: New test. Added: trunk/gcc/testsuite/g++.dg/template/repo9.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/repo.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36364
[Bug c++/36364] [4.1/4.2/4.3/4.4 Regression] Problem with -frepo
--- Comment #4 from jakub at gcc dot gnu dot org 2008-06-27 22:36 --- Subject: Bug 36364 Author: jakub Date: Fri Jun 27 22:35:14 2008 New Revision: 137206 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137206 Log: PR c++/36364 * repo.c (repo_emit_p): Put const static data members initialized by const expr into *.rpo file, just return 2 if IDENTIFIER_REPO_CHOSEN for it is 0. * g++.dg/template/repo9.C: New test. Added: branches/gcc-4_3-branch/gcc/testsuite/g++.dg/template/repo9.C Modified: branches/gcc-4_3-branch/gcc/cp/ChangeLog branches/gcc-4_3-branch/gcc/cp/repo.c branches/gcc-4_3-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36364
[Bug c++/36364] [4.1/4.2/4.3/4.4 Regression] Problem with -frepo
--- Comment #5 from jakub at gcc dot gnu dot org 2008-06-27 22:36 --- Fixed. -- jakub at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36364
[Bug debug/36617] Debug info for OpenMP code is almost non-existent
--- Comment #3 from jakub at gcc dot gnu dot org 2008-06-27 22:43 --- Fixed. -- jakub at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36617
[Bug other/31754] Include column number along line in error messages main.cpp:5:38
--- Comment #10 from jg at jguk dot org 2008-06-28 01:00 --- Dodji Seketeli, Just a quick note to say how great it is that you're working in this enhancement. Cheers, Jon -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31754
[Bug libfortran/36657] Namelist reading bug with string constant immediately followed by comment
--- Comment #1 from jvdelisle at gcc dot gnu dot org 2008-06-28 01:34 --- I will investigate this. i have another namelist patch I am working as well. -- jvdelisle at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jvdelisle at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2008-06-28 01:34:59 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36657
[Bug libstdc++/31413] FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test
--- Comment #18 from dtom77 at gmail dot com 2008-06-28 02:55 --- Subject: Re: FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test The bug still exists in gcc 4.3.1 on my amd 64 computer with 32 bit Linux(Debian Etch). During make check get error message. Should i be concerned? Is there any remedy for this problem? === libstdc++ tests === Schedule of variations: unix Running target unix Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/ad/dloads/gcc-4.3.1/libstdc++-v3/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/ad/dloads/gcc-4.3.1/libstdc++-v3/testsuite/libstdc++-abi/abi.exp ... Running /home/ad/dloads/gcc-4.3.1/libstdc++-v3/testsuite/libstdc++-dg/conformance.exp ... FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test XPASS: 26_numerics/headers/cmath/c99_classification_macros_c.cc (test for excess errors) === libstdc++ Summary === # of expected passes5570 # of unexpected failures1 # of unexpected successes 1 # of expected failures 59 # of unsupported tests 10 make[4]: *** [check-DEJAGNU] Error 1 make[4]: Leaving directory `/home/ad/build_gcc/i686-pc-linux-gnu/libstdc++-v3/testsuite' make[3]: *** [check-am] Error 2 make[3]: Leaving directory `/home/ad/build_gcc/i686-pc-linux-gnu/libstdc++-v3/testsuite' make[2]: *** [check-recursive] Error 1 make[2]: Leaving directory `/home/ad/build_gcc/i686-pc-linux-gnu/libstdc++-v3' make[1]: *** [check-target-libstdc++-v3] Error 2 make[1]: Leaving directory `/home/ad/build_gcc' make: *** [do-check] Error 2 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31413
[Bug libstdc++/31413] FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test
--- Comment #19 from dave at hiauly1 dot hia dot nrc dot ca 2008-06-28 03:47 --- Subject: Re: FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test The bug still exists in gcc 4.3.1 on my amd 64 computer with 32 bit Linux(Debian Etch). During make check get error message. Should i be concerned? Is there any remedy for this problem? No. The fail is the result of a political statement about Taiwanese dates by a Debian a maintainer. When I last checked into it, the change in the calendar had not been officially accepted. This was some months ago. The test should be xfailed on Debian. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31413
[Bug libstdc++/31413] FAIL: 22_locale/time_get/get_date/wchar_t/4.cc execution test
--- Comment #20 from danglin at gcc dot gnu dot org 2008-06-28 03:55 --- See debian bug 352600. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31413