[Bug c++/30046] [4.1/4.2/4.3 Regression] ICE on invalid code in digest_init at cp/typeck2.c:709

2006-12-04 Thread s__nakayama at infoseek dot jp


--- Comment #2 from s__nakayama at infoseek dot jp  2006-12-04 08:11 ---
I seem this is same as Bug 29733.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30046



[Bug c++/30046] [4.1/4.2/4.3 Regression] ICE on invalid code in digest_init at cp/typeck2.c:709

2006-12-04 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-12-04 08:15 ---


*** This bug has been marked as a duplicate of 29733 ***


-- 

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=30046



[Bug c++/29733] [4.1/4.2/4.3 regression] ICE on initialization of function type

2006-12-04 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-12-04 08:15 ---
*** Bug 30046 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jkherciueh at gmx dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29733



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #18 from pault at gcc dot gnu dot org  2006-12-04 09:09 ---
(In reply to comment #17)
 Created an attachment (id=12735)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12735action=view) [edit]
 Compilable version of previous patch.

FX and Eric,

Thanks for plugging the hole there. The attention that I can give to gfortran
is very limited at present. I committed the FMOD patch, under the impression
that the library had been fixed across the board. Since then, I have been more
or less continuously on the road.

I am curious as to why the test in the original patch, for the presence of the
builtin, does not work.  In principle, it should furnish the old tree-ssa
version of MOD.  Would it not be an idea to apply the C99 condition there?

Regards

Paul

PS As for breaking the compiler on a regular basis; there was a lot that was
fundamentally wrong with it that is now fixed - the trend is upwards, even if
there are occasional 'reverses'.  Two consistent causes of these reverses are
(i) the range of platforms an (ii) the fact that the testsuite is not a
systematic regurgitation of the F95 standard.  (i) is, of course, a big plus
for gcc and we should try to be mindful of it.  However, we part-time
volunteers have relatively limited resources and rely on PRs like this one
coming in as quickly as possible.  On (ii), we have no effort to do the
equivalent of the NIST suite for F77, on which gfortran is tested regularly. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread ebotcazou at gcc dot gnu dot org


--- Comment #19 from ebotcazou at gcc dot gnu dot org  2006-12-04 09:22 
---
 I am curious as to why the test in the original patch, for the presence of the
 builtin, does not work.  In principle, it should furnish the old tree-ssa
 version of MOD.  Would it not be an idea to apply the C99 condition there?

Yes, clearly that would be best.

 Two consistent causes of these reverses are
 (i) the range of platforms an (ii) the fact that the testsuite is not a
 systematic regurgitation of the F95 standard.

Note that I'm complaining about one very specific issue, which is the
implicit dependencies on C99 that regularly creep through the library.
This one can be easily simulated by butchering the configure script.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug middle-end/28752] bootstrap comparision fails with -ftree-vectorize -maltivec on ppc and i386

2006-12-04 Thread irar at il dot ibm dot com


--- Comment #29 from irar at il dot ibm dot com  2006-12-04 09:24 ---
I reproduced the wrong printings on x86. It seems to be a problem in strided
access vectorization after all - no stores are generated. I am looking into
this.

Thanks,
Ira


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28752



[Bug fortran/29464] problem with duplicate USE, ONLY of procedure in INTERFACE

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #3 from pault at gcc dot gnu dot org  2006-12-04 09:44 ---
Since I posted a fix, I guess that I should accept the bug!

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-10-15 07:02:15 |2006-12-04 09:44:08
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29464



[Bug middle-end/29965] OpenMP vs always throw in a loop

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2006-12-04 10:21 ---
Subject: Bug 29965

Author: jakub
Date: Mon Dec  4 10:20:51 2006
New Revision: 119483

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119483
Log:
PR middle-end/29965
* omp-low.c (determine_parallel_type): Don't try to optimize combined
parallels if region-exit or region-inner-exit is NULL.
(expand_omp_parallel): Handle NULL region-exit even if cfg is already
built.
(expand_omp_for_generic): Handle NULL region-cond and region-exit.
(expand_omp_for): Use expand_omp_for_generic if either region-cond
or region-exit is NULL.
(expand_omp_sections): Handle NULL region-cond or region-exit.
(expand_omp_synch): 

* gcc.dg/gomp/pr29965-1.c: New test.
* gcc.dg/gomp/pr29965-2.c: New test.
* gcc.dg/gomp/pr29965-3.c: New test.
* gcc.dg/gomp/pr29965-4.c: New test.
* gcc.dg/gomp/pr29965-5.c: New test.
* gcc.dg/gomp/pr29965-6.c: New test.
* g++.dg/gomp/pr29965-1.C: New test.
* g++.dg/gomp/pr29965-2.C: New test.
* g++.dg/gomp/pr29965-3.C: New test.
* g++.dg/gomp/pr29965-4.C: New test.
* g++.dg/gomp/pr29965-5.C: New test.
* g++.dg/gomp/pr29965-6.C: New test.
* g++.dg/gomp/pr29965-7.C: New test.
* g++.dg/gomp/pr29965-8.C: New test.
* g++.dg/gomp/pr29965-9.C: New test.
* g++.dg/gomp/pr29965-10.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/gomp/pr29965-1.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-10.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-2.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-3.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-4.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-5.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-6.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-7.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-8.C
trunk/gcc/testsuite/g++.dg/gomp/pr29965-9.C
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-1.c
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-2.c
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-3.c
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-4.c
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-5.c
trunk/gcc/testsuite/gcc.dg/gomp/pr29965-6.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/omp-low.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29965



[Bug middle-end/29965] OpenMP vs always throw in a loop

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2006-12-04 10:23 ---
Subject: Bug 29965

Author: jakub
Date: Mon Dec  4 10:23:06 2006
New Revision: 119484

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119484
Log:
PR middle-end/29965
* omp-low.c (determine_parallel_type): Don't try to optimize combined
parallels if region-exit or region-inner-exit is NULL.
(expand_omp_parallel): Handle NULL region-exit even if cfg is already
built.
(expand_omp_for_generic): Handle NULL region-cond and region-exit.
(expand_omp_for): Use expand_omp_for_generic if either region-cond
or region-exit is NULL.
(expand_omp_sections): Handle NULL region-cond or region-exit.
(expand_omp_synch): 

* gcc.dg/gomp/pr29965-1.c: New test.
* gcc.dg/gomp/pr29965-2.c: New test.
* gcc.dg/gomp/pr29965-3.c: New test.
* gcc.dg/gomp/pr29965-4.c: New test.
* gcc.dg/gomp/pr29965-5.c: New test.
* gcc.dg/gomp/pr29965-6.c: New test.
* g++.dg/gomp/pr29965-1.C: New test.
* g++.dg/gomp/pr29965-2.C: New test.
* g++.dg/gomp/pr29965-3.C: New test.
* g++.dg/gomp/pr29965-4.C: New test.
* g++.dg/gomp/pr29965-5.C: New test.
* g++.dg/gomp/pr29965-6.C: New test.
* g++.dg/gomp/pr29965-7.C: New test.
* g++.dg/gomp/pr29965-8.C: New test.
* g++.dg/gomp/pr29965-9.C: New test.
* g++.dg/gomp/pr29965-10.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-1.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-10.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-2.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-3.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-4.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-5.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-6.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-7.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-8.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/gomp/pr29965-9.C
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-1.c
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-2.c
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-3.c
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-4.c
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-5.c
branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/gomp/pr29965-6.c
Modified:
branches/gcc-4_2-branch/gcc/ChangeLog
branches/gcc-4_2-branch/gcc/omp-low.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29965



[Bug middle-end/29947] OpenMP parallel for fails for reversed loop range

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2006-12-04 10:26 ---
Subject: Bug 29947

Author: jakub
Date: Mon Dec  4 10:26:00 2006
New Revision: 119485

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119485
Log:
PR libgomp/29947
* omp-low.c (expand_omp_for_static_nochunk,
expand_omp_for_static_chunk): Do all arithmetics in signed rather than
unsigned type.

* loop.c (gomp_loop_init): Make parameters signed.  Set ws-end to
start if there shouldn't be any loop iterations.
(gomp_loop_ordered_static_start): Remove start == end test.
* testsuite/libgomp.c/pr29947-1.c: New test.
* testsuite/libgomp.c/pr29947-2.c: New test.

Added:
trunk/libgomp/testsuite/libgomp.c/pr29947-1.c
trunk/libgomp/testsuite/libgomp.c/pr29947-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/omp-low.c
trunk/libgomp/ChangeLog
trunk/libgomp/loop.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29947



[Bug middle-end/29947] OpenMP parallel for fails for reversed loop range

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2006-12-04 10:30 ---
Subject: Bug 29947

Author: jakub
Date: Mon Dec  4 10:30:11 2006
New Revision: 119486

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119486
Log:
PR libgomp/29947
* omp-low.c (expand_omp_for_static_nochunk,
expand_omp_for_static_chunk): Do all arithmetics in signed rather than
unsigned type.

* loop.c (gomp_loop_init): Make parameters signed.  Set ws-end to
start if there shouldn't be any loop iterations.
(gomp_loop_ordered_static_start): Remove start == end test.
* testsuite/libgomp.c/pr29947-1.c: New test.
* testsuite/libgomp.c/pr29947-2.c: New test.

Added:
branches/gcc-4_2-branch/libgomp/testsuite/libgomp.c/pr29947-1.c
branches/gcc-4_2-branch/libgomp/testsuite/libgomp.c/pr29947-2.c
Modified:
branches/gcc-4_2-branch/gcc/ChangeLog
branches/gcc-4_2-branch/gcc/omp-low.c
branches/gcc-4_2-branch/libgomp/ChangeLog
branches/gcc-4_2-branch/libgomp/loop.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29947



[Bug middle-end/29965] OpenMP vs always throw in a loop

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2006-12-04 10:36 ---
Fixed in SVN.


-- 

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=29965



[Bug middle-end/29947] OpenMP parallel for fails for reversed loop range

2006-12-04 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2006-12-04 10:36 ---
Fixed in SVN.


-- 

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=29947



[Bug fortran/29916] Dimension of a function result as host association does not work

2006-12-04 Thread burnus at gcc dot gnu dot org


--- Comment #5 from burnus at gcc dot gnu dot org  2006-12-04 11:16 ---
Subject: Bug 29916

Author: burnus
Date: Mon Dec  4 11:16:12 2006
New Revision: 119489

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119489
Log:
fortran/
2006-12-04  Paul Thomas  [EMAIL PROTECTED]

PR fortran/29916
* resolve.c (resolve_symbol): Allow host-associated variables
  in the specification expression of an array-valued function.
* expr.c (check_restricted): Accept host-associated dummy
  array indices.

testsuite/
2006-12-04  Paul Thomas  [EMAIL PROTECTED]

PR fortran/29916
* gfortran.dg/host_dummy_index_1.f90: Added additional test.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/expr.c
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/host_dummy_index_1.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29916



[Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions

2006-12-04 Thread rearnsha at gcc dot gnu dot org


--- Comment #21 from rearnsha at gcc dot gnu dot org  2006-12-04 11:26 
---
We can't apply this patch to the 4.1 branch if it would mean users had to use
CVS versions of binutils.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516



[Bug c++/30062] New: g++ does not distinguish functions with C and C++ linkage

2006-12-04 Thread marc dot glisse at normalesup dot org
Hello,

I noticed that if I give g++ the prototypes for bsearch as listed in the 2003
standard, it errors out saying that the 2 declarations conflict:

extern C void *bsearch(const void *key, const void *base, size_t nmemb,
size_t size, int (*compar)(const void *, const void *));
extern C++ void *bsearch(const void *key, const void *base, size_t nmemb,
size_t size, int (*compar)(const void *, const void *));

The same is true for qsort. I believe the compiler is supposed to distinguish
between the 2 versions according to the linkage of compar.

Even if you don't want to distinguish functions according to linkage, g++
should be able to accept a declaration that is written in the standard.


-- 
   Summary: g++ does not distinguish functions with C and C++
linkage
   Product: gcc
   Version: 4.1.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: marc dot glisse at normalesup dot org
  GCC host triplet: i486-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30062



Re: gcj: ICE on gcj -c seda.jar

2006-12-04 Thread Andrew Haley
Shaun Jackman writes:
  $ gcj -c /usr/share/java/seda.jar
  seda/sandStorm/internal/AggTPSThreadManager.java: In class
  'seda.sandStorm.internal.AggTPSThreadManager$governorThread':
  seda/sandStorm/internal/AggTPSThreadManager.java: In method
  'seda.sandStorm.internal.AggTPSThreadManager$governorThread.run()':
  seda/sandStorm/internal/AggTPSThreadManager.java:328: internal
  compiler error: Segmentation fault
  Please submit a full bug report,
  with preprocessed source if appropriate.
  See URL:http://gcc.gnu.org/bugs.html for instructions.
  For Debian GNU/Linux specific bug reporting instructions,
  see URL:file:///usr/share/doc/gcc-4.1/README.Bugs.
  
  The line the compiler mentions is...
  $ cat -n ./seda/src/seda/sandStorm/internal/ATTIC/AggTPSThreadManager.java
  ...
  25   package seda.sandStorm.internal;
  ...
  44   class AggTPSThreadManager implements ThreadManagerIF, 
  sandStormConst {
  45   
  46 private static final boolean DEBUG = true;
  47 private static final boolean DEBUG_VERBOSE = false;
  ...
 327   public void run() {
 328 if (DEBUG) System.err.println(AggTPSTM Governor: 
  starting);
 329   
  ...
  $ gcj --version |head -1
  gcj (GCC) 4.1.2 20061020 (prerelease) (Debian 4.1.1-17)
  
  The binary and source files in question may be downloaded from a Debian 
  archive:
  http://packages.debian.org/testing/libs/libseda-java

Thanks.  This is caused because
seda.sandStorm.internal.AggTPSThreadManager$governorThread is in the
file
seda/sandStorm/internal/ATTIC/AggTPSThreadManager$governorThread.class
(In other words, it's not where gcj expects to find it.)

This is a bug in gcj.  We probably shouldn't even attempt to generate
code when a class is not in the right place in an archive, and exit
with a compiler error.  

zip -d usr/share/java/seda.jar seda/sandStorm/internal/ATTIC/\*

solves the problem.

Andrew.


[Bug middle-end/30063] New: It would be useful for __attribute__((deprecated)) to take an optional parameter

2006-12-04 Thread bero at arklinux dot org
People are probably more likely to fix their code if they're told how -- it
would be useful to have

void new_function() { }
void __attribute__((deprecated(use new_function instead)) old_function() { }

int main(int argc, char **argv) {
old_function();
}

resulting in
test.cpp: 6: warning: 'old_function' is deprecated (declared at test.cpp:2, use
new_function instead)


-- 
   Summary: It would be useful for __attribute__((deprecated)) to
take an optional parameter
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bero at arklinux dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30063



[Bug driver/29931] following argv[0] symlink in process_command breaks symlinked-together toolchain

2006-12-04 Thread amylaar at gcc dot gnu dot org


--- Comment #4 from amylaar at gcc dot gnu dot org  2006-12-04 14:27 ---
The bug is not fixed; the gcc.c patch has not been reviewed.


-- 

amylaar at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|FIXED   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29931



[Bug libfortran/30007] libgfortran doesn't build for sh-elf

2006-12-04 Thread amylaar at gcc dot gnu dot org


--- Comment #2 from amylaar at gcc dot gnu dot org  2006-12-04 14:37 ---
Created an attachment (id=12740)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12740action=view)
preprocessed source

The sub-command that fails using --save-temps -v is:

/home/amylaar/bld/2006-11-27/sh-elf/./gcc/cc1 -fpreprocessed error.i -quiet
-dumpbase error.c -auxbase-strip error.o -g -O2 -O2 -Wall -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -std=gnu99
-version -o error.s


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30007



[Bug target/29997] various targets: GCC fails to encode epilogues in unwind-info

2006-12-04 Thread amylaar at gcc dot gnu dot org


--- Comment #2 from amylaar at gcc dot gnu dot org  2006-12-04 14:51 ---
(In reply to comment #1)
 I think this is really a dup of bug 12990.
 

Sort of, but not quite.  12990 does no cover the exception handling aspects,
but it claims that the problem persists target-independently for debug.
But this is not a problem for ia64.  Since we have now the target-independent
infrastructure and one target port that uses it to handle this problem,
this has become a target problem; each target needs to be adjusted separately
to create the proper epilogue information, so it makes sense to track
progress (or lack thereof) for each target individually, while having
one meta-bug to keep track of them all.

Should I mark 12990 as blocking 29997, and 29998 as blocking 12990?

OTOH, when you read the description of 12990, it sounds like the problem
exists only for i[3456]86-*-*, so maybe we should add this to the target
field of 12990 and only make 12990 as blocking 29997.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29997



[Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions

2006-12-04 Thread pbrook at gcc dot gnu dot org


--- Comment #22 from pbrook at gcc dot gnu dot org  2006-12-04 15:10 ---
I disagree.  All code that requires new gas would previously ICE.
Any code that currently compiles with 4.1 should be unaffected.

Paul


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516



[Bug c++/30062] g++ does not distinguish functions with C and C++ linkage

2006-12-04 Thread marc dot glisse at normalesup dot org


--- Comment #1 from marc dot glisse at normalesup dot org  2006-12-04 15:54 
---


*** This bug has been marked as a duplicate of 2316 ***


-- 

marc dot glisse at normalesup dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30062



[Bug c++/2316] g++ fails to overload on language linkage

2006-12-04 Thread marc dot glisse at normalesup dot org


--- Comment #15 from marc dot glisse at normalesup dot org  2006-12-04 
15:54 ---
*** Bug 30062 has been marked as a duplicate of this bug. ***


-- 

marc dot glisse at normalesup dot org changed:

   What|Removed |Added

 CC||marc dot glisse at
   ||normalesup dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2316



[Bug c++/30060] Error/warning on invalid code (duplicate identifier for enum/class) should be more specific

2006-12-04 Thread bangerth at dealii dot org


--- Comment #3 from bangerth at dealii dot org  2006-12-04 16:11 ---
Confirmed. While there may not be much that can be done at the place
where the current error is reported, the warning is definitely a valid
request.

W.


-- 

bangerth at dealii dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||diagnostic
   Last reconfirmed|-00-00 00:00:00 |2006-12-04 16:11:48
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30060



[Bug target/30064] New: ICE in reload_cse_simplify_operands, at postreload.c:393

2006-12-04 Thread ssoe at kirktelecom dot com
$ m68k-linux-gcc -v -m5307 -msep-data -O1 -c gcc-m68k-ice.c
Using built-in specs.
Target: m68k-linux
Configured with: ../gcc-4.3-20061202/configure --prefix=/home/ssoe/tmp/m68k
--target m68k-linux --disable-shared --disable-threads --enable-languages=c
--with-headers=/home/ssoe/tmp/m68k/m68k-linux/include
Thread model: single
gcc version 4.3.0 20061202 (experimental)
 /home/ssoe/tmp/m68k/libexec/gcc/m68k-linux/4.3.0/cc1 -quiet -v
-D__HAVE_68881__ gcc-m68k-ice.c -quiet -dumpbase gcc-m68k-ice.c -m5307
-msep-data -auxbase gcc-m68k-ice -O1 -version -o /tmp/cchI2eF1.s
#include ... search starts here:
#include ... search starts here:
 /home/ssoe/tmp/m68k/lib/gcc/m68k-linux/4.3.0/include

/home/ssoe/tmp/m68k/lib/gcc/m68k-linux/4.3.0/../../../../m68k-linux/sys-include
 /home/ssoe/tmp/m68k/lib/gcc/m68k-linux/4.3.0/../../../../m68k-linux/include
End of search list.
GNU C version 4.3.0 20061202 (experimental) (m68k-linux)
compiled by GNU C version 4.1.1 20061011 (Red Hat 4.1.1-30).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: c0f3be0098cca37cfe39087e559a1e7c
gcc-m68k-ice.c: In function ‘f’:
gcc-m68k-ice.c:28: error: insn does not satisfy its constraints:
(insn 81 205 207 9 (parallel [
(set (reg:SI 2 %d2)
(div:SI (reg:SI 2 %d2)
(mem/c:SI (plus:SI (reg/f:SI 14 %a6)
(reg:SI 9 %a1)) [0 column_width+0 S4 A8])))
(set (reg:SI 0 %d0 [80])
(mod:SI (reg:SI 2 %d2)
(mem/c:SI (plus:SI (reg/f:SI 14 %a6)
(reg:SI 9 %a1)) [0 column_width+0 S4 A8])))
]) 228 {*m68k.md:3000} (nil)
(nil))
gcc-m68k-ice.c:28: internal compiler error: in reload_cse_simplify_operands, at
postreload.c:393

If any of the options -m5307, -msep-data, or -O1 is removed, the problem goes
away.

Reproduced on 4.1.1, 4.1-20061124, 4.2-20061128, 4.3-20061202. Couldn't
reproduce ICE on 3.4.6, but it could be generating incorrect code (no solid
evidence of that though).


-- 
   Summary: ICE in reload_cse_simplify_operands, at postreload.c:393
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ssoe at kirktelecom dot com
 GCC build triplet: i686-redhat-linux-gnu
  GCC host triplet: i686-redhat-linux-gnu
GCC target triplet: m68k-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30064



[Bug target/30064] ICE in reload_cse_simplify_operands, at postreload.c:393

2006-12-04 Thread ssoe at kirktelecom dot com


--- Comment #1 from ssoe at kirktelecom dot com  2006-12-04 16:42 ---
Created an attachment (id=12741)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12741action=view)
Testcase

Reduced version of shell/cmdedit.c from busybox-1.2.2. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30064



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #20 from sgk at troutmask dot apl dot washington dot edu  
2006-12-04 16:44 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

On Mon, Dec 04, 2006 at 09:09:51AM -, pault at gcc dot gnu dot org wrote:
 
 (In reply to comment #17)
  Created an attachment (id=12735)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12735action=view)
  -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12735action=view) [edit]
  Compilable version of previous patch.
 
 FX and Eric,
 
 Thanks for plugging the hole there.

If I've read the above patch correctlu, then it
doesn't properly plugged the hole.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #21 from sgk at troutmask dot apl dot washington dot edu  
2006-12-04 16:46 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

On Mon, Dec 04, 2006 at 09:22:10AM -, ebotcazou at gcc dot gnu dot org
wrote:
 Note that I'm complaining about one very specific issue, which is the
 implicit dependencies on C99 that regularly creep through the library.
 This one can be easily simulated by butchering the configure script.
 

AFAIK, libgfortran has also assumed a C99 compiler/library is 
available (even though gcc isn't C99 compliant).  You'd need to
ping pbrook or stevenb about the details.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



Re: gcj: ICE on gcj -c seda.jar

2006-12-04 Thread Shaun Jackman

On 12/4/06, Andrew Haley [EMAIL PROTECTED] wrote:

Thanks.  This is caused because
seda.sandStorm.internal.AggTPSThreadManager$governorThread is in the
file
seda/sandStorm/internal/ATTIC/AggTPSThreadManager$governorThread.class
(In other words, it's not where gcj expects to find it.)

This is a bug in gcj.  We probably shouldn't even attempt to generate
code when a class is not in the right place in an archive, and exit
with a compiler error.

zip -d usr/share/java/seda.jar seda/sandStorm/internal/ATTIC/\*

solves the problem.


Thanks, Andrew. I thought that ATTIC directory looked a little suspicious.

Cheers,
Shaun


[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread ebotcazou at gcc dot gnu dot org


--- Comment #22 from ebotcazou at gcc dot gnu dot org  2006-12-04 17:06 
---
 AFAIK, libgfortran has also assumed a C99 compiler/library is 
 available (even though gcc isn't C99 compliant).  You'd need to
 ping pbrook or stevenb about the details.

s/also/always?  In either case, that's not true, the 4.1.1 compiler works fine
on Solaris 2.5.1, which is not C99 compliant at all, while 4.1.2pre is broken.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #23 from sgk at troutmask dot apl dot washington dot edu  
2006-12-04 17:40 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

On Mon, Dec 04, 2006 at 05:06:37PM -, ebotcazou at gcc dot gnu dot org
wrote:
 
 
 --- Comment #22 from ebotcazou at gcc dot gnu dot org  2006-12-04 17:06 
 ---
  AFAIK, libgfortran has also assumed a C99 compiler/library is 
  available (even though gcc isn't C99 compliant).  You'd need to
  ping pbrook or stevenb about the details.
 
 s/also/always?  In either case, that's not true, the 4.1.1 compiler works fine
 on Solaris 2.5.1, which is not C99 compliant at all, while 4.1.2pre is broken.
 

Yes, always.  Ping pbrook or stevenb.  c99_function.c was
included to provide missing c99 routines on platforms that
needed them.  4.1.1 worked because people were careful with
adding missing functions.  For example, I added round[f,l].

When rth fixed gfortran's determination of kind types,
gfortran suddenly grew real(10) or real(16) on many
platforms.  It is assumed that the *l math functions
are available (e.g., cosl()).  These math functions aren't
available on {Free,Open,Net}BSD, which I've been slowly 
implementing under the 2-clause BSD license.

BTW, the patch should use libgfortran's internal round[f,l]
functions to avoid the significant loss of precision in
the current patch.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug fortran/29916] [4.1 and 4.2 only] Dimension of a function result as host association does not work

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2006-12-04 17:53 ---
(In reply to comment #5)
 Subject: Bug 29916
Tobias,

Thank you!  I had a bit of a surprise when I tried, a few minutes ago, to apply
the patch...  I thought that I was going even madder than usual, when it came
back with the information that there was an unreversed patch in place!

I suppose that this should float down to 4.2 before it is cleared?

Paul


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29916



[Bug c++/29632] [4.0/4.1/4.2/4.3 Regression] ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #2 from mmitchel at gcc dot gnu dot org  2006-12-04 18:00 
---
Subject: Bug 29632

Author: mmitchel
Date: Mon Dec  4 18:00:32 2006
New Revision: 119499

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119499
Log:
PR c++/29632
* call.c (add_builtin_candidate): Do not permit NULL pointer
constants to be compared with template parameters.
PR c++/29632
* g++.dg/template/error23.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/template/error23.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29632



[Bug fortran/29916] [4.1 and 4.2 only] Dimension of a function result as host association does not work

2006-12-04 Thread burnus at gcc dot gnu dot org


--- Comment #7 from burnus at gcc dot gnu dot org  2006-12-04 18:05 ---
 Thank you!  I had a bit of a surprise when I tried, a few minutes ago, to 
 apply the patch...  I thought that I was going even madder than usual, when it
 came back with the information that there was an unreversed patch in place!
I thought you saw the submission email (autoattached to this PR and thus also
in your mailbox).

 I suppose that this should float down to 4.2 before it is cleared?
Yes -- and maybe also to 4.1.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29916



[Bug c++/29733] [4.1/4.2/4.3 regression] ICE on initialization of function type

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #3 from mmitchel at gcc dot gnu dot org  2006-12-04 18:08 
---
Subject: Bug 29733

Author: mmitchel
Date: Mon Dec  4 18:08:11 2006
New Revision: 119500

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119500
Log:
PR c++/29733
* pt.c (tsubst_decl): Disallow variables of function type.
PR c++/29733
* g++.dg/template/crash61.C: New test. 

Added:
trunk/gcc/testsuite/g++.dg/template/crash61.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29733



[Bug libstdc++/29989] missed #undef min/max in limits

2006-12-04 Thread pcarlini at suse dot de


--- Comment #4 from pcarlini at suse dot de  2006-12-04 18:23 ---
Damn windows.h ;)


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|FIXED   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29989



[Bug c++/14329] [4.1/4.2 only] badly formatted warnings for SRA replacements used uninitialized

2006-12-04 Thread pinskia at gcc dot gnu dot org


--- Comment #19 from pinskia at gcc dot gnu dot org  2006-12-04 18:32 
---
Subject: Bug 14329

Author: pinskia
Date: Mon Dec  4 18:31:40 2006
New Revision: 119501

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119501
Log:
2006-12-04  Richard Henderson  [EMAIL PROTECTED]
Andrew Pinski  [EMAIL PROTECTED]

PR C++/14329
* error.c (cp_printer) 'D': Handle DECL_DEBUG_EXPR.

2006-12-04  Richard Henderson  [EMAIL PROTECTED]
Andrew Pinski  [EMAIL PROTECTED]

PR C++/14329
* g++.dg/warn/unit-1.C: New test.



Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/warn/unit-1.C
  - copied unchanged from r119478, trunk/gcc/testsuite/g++.dg/warn/unit-1.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/error.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14329



[Bug fortran/29916] [4.1 and 4.2 only] Dimension of a function result as host association does not work

2006-12-04 Thread paulthomas2 at wanadoo dot fr


--- Comment #8 from paulthomas2 at wanadoo dot fr  2006-12-04 18:38 ---
Subject: Re:  [4.1 and 4.2 only] Dimension of a function
 result as host association does not work

Tobias,
 t you saw the submission email (autoattached to this PR and thus also
 in your mailbox).
   
As I said yesterday, I am trying keep the ia64 clean of email :-)

I just saw your message now.


Thanks a lot!

Paul


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29916



[Bug libstdc++/29989] missed #undef min/max in limits

2006-12-04 Thread pcarlini at suse dot de


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-12-04 18:41:17
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29989



[Bug rtl-optimization/30065] New: Could use indexed addressing to reduce const costs

2006-12-04 Thread amylaar at gcc dot gnu dot org
Sometimes constants could be replaced by smaller, cheaper constants by
making use of scaled indices.


-- 
   Summary: Could use indexed addressing to reduce const costs
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: missed-optimization
  Severity: normal
  Priority: P3
 Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: amylaar at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30065



[Bug rtl-optimization/30065] Could use indexed addressing to reduce const costs

2006-12-04 Thread amylaar at gcc dot gnu dot org


--- Comment #1 from amylaar at gcc dot gnu dot org  2006-12-04 19:14 ---
Created an attachment (id=12742)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12742action=view)
tentative patch

This patch implements this optimization, although it could be improved to
consider more possible scaling factors.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30065



[Bug c++/30066] New: option to make inline functions hidden

2006-12-04 Thread mrs at apple dot com
A user would like an option to mark all inline functions (foo in this case):

extern void bar();
inline void foo() { bar(); }
void doit() { foo(); }

as hidden, kinda like what -fvisibility-inlines-hidden does for inline methods.

I gather this is so that runtime binding is limited to make startup faster and
to improve codegen.


-- 
   Summary: option to make inline functions hidden
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mrs at apple dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30066



[Bug c++/30066] option to make inline functions hidden

2006-12-04 Thread mrs at apple dot com


--- Comment #1 from mrs at apple dot com  2006-12-04 19:27 ---
radr://4405938


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30066



[Bug fortran/29821] ICE in gfc_typenode_for_spec, at fortran/trans-types.c:666ans-types.c:666

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2006-12-04 19:30 ---
Subject: Bug 29821

Author: pault
Date: Mon Dec  4 19:30:33 2006
New Revision: 119504

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119504
Log:
2006-12-04  Paul Thomas  [EMAIL PROTECTED]

PR fortran/29821
* resolve.c (resolve_operator): Only return result of
gfc_simplify_expr if expression is constant.


2006-12-04  Paul  Thomas [EMAIL PROTECTED]

PR fortran/29821
* gfortran.dg/parameter_array_section_1.f90: New test.

Added:
trunk/gcc/testsuite/gfortran.dg/parameter_array_section_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29821



[Bug fortran/29962] Initialization expressions checking in gfc_intrinsic_func_interface

2006-12-04 Thread burnus at gcc dot gnu dot org


--- Comment #6 from burnus at gcc dot gnu dot org  2006-12-04 20:03 ---
Subject: Bug 29962

Author: burnus
Date: Mon Dec  4 20:02:43 2006
New Revision: 119505

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119505
Log:
fortran/
2006-12-04  Tobias Burnus  [EMAIL PROTECTED]

PR fortran/29962
* expr.c (check_intrinsic_op): Allow noninteger exponents for F2003.


testsuite/
2006-12-04  Tobias Burnus  [EMAIL PROTECTED]

PR fortran/29962
* initialization_4.f90: Test noninteger exponents (-std=f95).
* initialization_5.f90: New test for noninteger exponents with
-std=f2003


Added:
trunk/gcc/testsuite/gfortran.dg/initialization_5.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/expr.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/initialization_4.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29962



[Bug fortran/30003] Expressions with side effects in array references

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #2 from pault at gcc dot gnu dot org  2006-12-04 20:47 ---
(In reply to comment #1)
 I thought I would have time to do something about this bug, but I will not; 
 not
 in the next few weeks/months.  I therefore unassign it from me.  My appologies
 to those who expected to be fixed soon.

That's a pity, Erik, but quite understandable.

I started playing with it at lunchtime.  It's quite an amusing little PR!

As running the test below shows, an array reference 'start' or 'stride' is
always handled correctly, whereas the 'end' is always handled incorrectly.

This suggests that the way to fix this is to add an 'end' field to gfc_ss_info
and to treat it exactly like start, even if it is not used in the scalarizer.

Paul

implicit none
integer :: a(5), b(3), cnt

b = [ 1, 2, 3 ]

cnt = 0
a(bar(1):3) = b
print *, a(start) = , cnt,  calls

cnt = 0
a(1:bar(3)) = b
print *, a(end) = , cnt,  calls

cnt = 0
a(1:3:bar(1)) = b
print *, a(stride) = , cnt,  calls

cnt = 0
a(1:3) = b(bar(1):3)
print *, b(start) = , cnt,  calls

cnt = 0
a(1:3) = b(1:bar(3))
print *, b(end) = , cnt,  calls

cnt = 0
a(1:3) = b(1:3:bar(1))
print *, b(stride) = , cnt,  calls

contains
integer function bar(n)
integer, intent(in) :: n
cnt = cnt + 1
bar = n
end function bar
end program foo



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30003



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread ebotcazou at gcc dot gnu dot org


--- Comment #24 from ebotcazou at gcc dot gnu dot org  2006-12-04 20:54 
---
 Yes, always.  Ping pbrook or stevenb.  c99_function.c was
 included to provide missing c99 routines on platforms that
 needed them.  4.1.1 worked because people were careful with
 adding missing functions.  For example, I added round[f,l].

I know, I added trunc and truncf.

 When rth fixed gfortran's determination of kind types,
 gfortran suddenly grew real(10) or real(16) on many
 platforms.  It is assumed that the *l math functions
 are available (e.g., cosl()).  These math functions aren't
 available on {Free,Open,Net}BSD, which I've been slowly 
 implementing under the 2-clause BSD license.

You cannot unilaterally decide that the Fortran compiler will suddenly
stop working on non C99-platforms, I think it's a SC-level decision.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug fortran/29975] [meta-bugs] ICEs with CP2K

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #24 from pault at gcc dot gnu dot org  2006-12-04 20:55 ---
OK, I'll put this in the pipeline for clean-up and submission.

Paul

 However, one gets neither a warning nor an error for the following test case,
 which can be found in the Fortran 2003 standard, Section C.11.2:
 
Would you raise a PR for BAD8 please, Tobias?  It is quite separate from the
issue with CP2K but it is 'BAD' stuff!  I think that I know how to fix it but
it will have to be another day. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29975



[Bug c/30067] New: use of thread local storage causes code generator to fail

2006-12-04 Thread juulvanderspek at yahoo dot com
The following code fragment fails on gcc i386 3.4.5-2, but works on 4.0.
Compilation terminates normally when field x is removed from structure 
declaration S.

The fragment is simple enough, but I could not find an open bug description for
it.





struct S
{
  char x;
  unsigned char v[2];
};

static __thread struct S G1;


void test_local (int i)
{
(((unsigned char *) G1.v)[i]) = ((unsigned char) 170U);
}


--
$ uname -a
Linux 2.4.21-37.ELhugemem #1 SMP Sat Nov 26 12:13:22 EST 2005 i686 athlon i386
GNU/Linux

$ 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-49)

$ gcc x.c
x.c: In function `test_local':
x.c:17: unrecognizable insn:
(insn 9 17 11 (set (reg/f:SI 59)
(const:SI (plus:SI (symbol_ref:SI (%lG1))
(const_int 1 [0x1] -1 (nil)
(expr_list:REG_EQUAL (const:SI (plus:SI (symbol_ref:SI (%lG1))
(const_int 1 [0x1])))
(nil)))
x.c:17: Internal compiler error in extract_insn, at recog.c:2149
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://bugzilla.redhat.com/bugzilla/ for instructions.
Preprocessed source stored into /tmp/cc6v1K6v.out file, please attach this to
your bugreport.


--
$ uname -a
Linux 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:54:53 EST 2006 i686 athlon i386
GNU/Linux

$ gcc -v
Reading specs from /usr/lib/gcc/i386-redhat-linux/3.4.5/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
--disable-libunwind-exceptions --enable-java-awt=gtk --host=i386-redhat-linux
Thread model: posix
gcc version 3.4.5 20051201 (Red Hat 3.4.5-2)

$ gcc x.c
x.c: In function `test_local':
x.c:17: error: unrecognizable insn:
(insn 8 15 9 0 (set (reg/f:SI 59)
(const:SI (plus:SI (symbol_ref:SI (G1) [flags 0x22] var_decl
0xb7c69288 G1)
(const_int 1 [0x1] -1 (nil)
(nil))
x.c:17: internal compiler error: in extract_insn, at recog.c:2083
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://bugzilla.redhat.com/bugzilla for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.


-- 
   Summary: use of thread local storage causes code generator to
fail
   Product: gcc
   Version: 3.4.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: juulvanderspek at yahoo dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30067



[Bug libstdc++/29989] missed #undef min/max in limits

2006-12-04 Thread paolo at gcc dot gnu dot org


--- Comment #5 from paolo at gcc dot gnu dot org  2006-12-04 21:12 ---
Subject: Bug 29989

Author: paolo
Date: Mon Dec  4 21:11:52 2006
New Revision: 119510

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119510
Log:
2006-12-04  Paolo Carlini  [EMAIL PROTECTED]

PR libstdc++/29989 (again)
* include/bits/c++config: #undef min and max.
* testsuite/18_support/numeric_limits/29989.cc: New.

Added:
trunk/libstdc++-v3/testsuite/18_support/numeric_limits/29989.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/c++config


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29989



[Bug fortran/30068] New: Ambigous interfaces not detected

2006-12-04 Thread burnus at gcc dot gnu dot org
Examples taken from the Fortran 2003 standard, Section C.11.2.
They are not recognized as invalid.

 * * *

INTERFACE BAD8 ! this interface is invalid !
  ! despite the fact that it is unambiguous !
  SUBROUTINE S8A(X,Y,Z)
REAL,OPTIONAL :: X
INTEGER :: Y
REAL :: Z
  END SUBROUTINE S8A
  SUBROUTINE S8B(X,Z,Y)
INTEGER,OPTIONAL :: X
INTEGER :: Z
REAL :: Y
  END SUBROUTINE S8B
END INTERFACE BAD8

This interface fails rule (3) because there are no required arguments that can
be distinguished from the positionally corresponding argument, but in order for
the mismatch of the optional arguments not to be relevant, the later arguments
must be specified as keyword arguments, so distinguishing by name does the
trick. This interface is nevertheless invalid so a standard-conforming Fortran
processor is not required to do such reasoning. The rules to cover all cases
are too complicated to be useful.

 * * *

module x
  INTERFACE BAD9 ! this interface is invalid !
  ! despite the fact that it is unambiguous !
SUBROUTINE S9A(X)
  REAL :: X
END SUBROUTINE S9A
SUBROUTINE S9B(X)
  INTERFACE
FUNCTION X(A)
  REAL :: X,A
END FUNCTION X
  END INTERFACE
END SUBROUTINE S9B
SUBROUTINE S9C(X)
  INTERFACE
FUNCTION X(A)
  REAL :: X
  INTEGER :: A
END FUNCTION X
  END INTERFACE
END SUBROUTINE S9C
  END INTERFACE BAD9
end module x

The real data objects that would be valid arguments for S9A are entirely
disjoint from procedures that are valid arguments to S9B and S9C, and the
procedures that valid arguments for S9B are disjoint from the procedures that
are valid arguments to S9C because the former are required to accept real
arguments and the latter integer arguments. Again, this interface is invalid,
so a standard-conforming Fortran processor need not examine such properties
when deciding whether a generic collection is valid. Again, the rules to cover
all cases are too complicated to be useful.


-- 
   Summary: Ambigous interfaces not detected
   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=30068



[Bug libstdc++/29989] missed #undef min/max in limits

2006-12-04 Thread pcarlini at suse dot de


--- Comment #6 from pcarlini at suse dot de  2006-12-04 21:12 ---
Finally fixed.


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29989



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #25 from dave at hiauly1 dot hia dot nrc dot ca  2006-12-04 
21:13 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

  When rth fixed gfortran's determination of kind types,
  gfortran suddenly grew real(10) or real(16) on many
  platforms.  It is assumed that the *l math functions
  are available (e.g., cosl()).  These math functions aren't
  available on {Free,Open,Net}BSD, which I've been slowly 
  implementing under the 2-clause BSD license.
 
 You cannot unilaterally decide that the Fortran compiler will suddenly
 stop working on non C99-platforms, I think it's a SC-level decision.

I support Eric on this.

I suspect the determination of kind types is at least partially broken
since both 32 and 64-bit PA targets on hpux have support for 128-bit
long doubles.  However, I'm only seeing the fmodl problem on the 64-bit
target.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug fortran/29975] [meta-bugs] ICEs with CP2K

2006-12-04 Thread burnus at gcc dot gnu dot org


--- Comment #25 from burnus at gcc dot gnu dot org  2006-12-04 21:15 ---
 OK, I'll put this in the pipeline for clean-up and submission.
Thanks. At least the generic interface patch should be completely ok; for the
other one, I'll try to dream up something which is not correctly covered (if
any).


 Would you raise a PR for BAD8 please, Tobias?  It is quite separate from the
 issue with CP2K but it is 'BAD' stuff!  I think that I know how to fix it but
 it will have to be another day. 
Filled as PR30068, I realized it immediately after I hit submit.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29975



[Bug rtl-optimization/29840] [4.3 Regression] build/genconditions ../../gcc/gcc/config/pa/pa.md tmp-condmd.c: /bin/sh: 13354 Memory fault(coredump)

2006-12-04 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #31 from dave at hiauly1 dot hia dot nrc dot ca  2006-12-04 
21:26 ---
Subject: Re:  [4.3 Regression] build/genconditions
../../gcc/gcc/config/pa/pa.md  tmp-condmd.c: /bin/sh: 13354 Memory
fault(coredump)

 I will test on a cross if it fixes the failure on hppa.  It seemed not 
 to be necessary on the trunk (it fixed a very early bootstrapping 
 failure on x86-linux, as soon as building stage1 libgcc).

It fixes the hppa failure.  Tested on hppa2.0w-hp-hpux11.11 and
hppa64-hp-hpux11.11.

I've attached the change tested.

Dave


--- Comment #32 from dave at hiauly1 dot hia dot nrc dot ca  2006-12-04 
21:26 ---
Created an attachment (id=12743)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12743action=view)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29840



[Bug libgomp/29949] implement argument checking for user accessable runtime routines

2006-12-04 Thread dfranke at gcc dot gnu dot org


--- Comment #3 from dfranke at gcc dot gnu dot org  2006-12-04 21:35 ---
Subject: Bug 29949

Author: dfranke
Date: Mon Dec  4 21:35:19 2006
New Revision: 119511

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119511
Log:
PR libgomp/29949
* env.c (omp_set_num_threads): Set illegal thread count to 1.

Modified:
trunk/libgomp/ChangeLog
trunk/libgomp/env.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29949



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #26 from sgk at troutmask dot apl dot washington dot edu  
2006-12-04 21:37 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

On Mon, Dec 04, 2006 at 08:54:40PM -, ebotcazou at gcc dot gnu dot org
wrote:
  When rth fixed gfortran's determination of kind types,
  gfortran suddenly grew real(10) or real(16) on many
  platforms.  It is assumed that the *l math functions
  are available (e.g., cosl()).  These math functions aren't
  available on {Free,Open,Net}BSD, which I've been slowly 
  implementing under the 2-clause BSD license.
 
 You cannot unilaterally decide that the Fortran compiler will suddenly
 stop working on non C99-platforms, I think it's a SC-level decision.
 

Hopefully, that is a generic you because I haven't decided
anything.  In fact, I requested that pault or fx backout the
offending patch.  See

http://gcc.gnu.org/ml/fortran/2006-11/msg00523.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug c++/29632] [4.0/4.1/4.2 Regression] ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #3 from mmitchel at gcc dot gnu dot org  2006-12-04 22:14 
---
Subject: Bug 29632

Author: mmitchel
Date: Mon Dec  4 22:14:42 2006
New Revision: 119512

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119512
Log:
PR c++/29632
* call.c (add_builtin_candidate): Do not permit NULL pointer
constants to be compared with template parameters.
PR c++/29632
* g++.dg/template/error23.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/error23.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/call.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29632



[Bug c++/29733] [4.1/4.2 regression] ICE on initialization of function type

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #4 from mmitchel at gcc dot gnu dot org  2006-12-04 22:15 
---
Subject: Bug 29733

Author: mmitchel
Date: Mon Dec  4 22:15:24 2006
New Revision: 119513

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119513
Log:
PR c++/29733
* pt.c (tsubst_decl): Disallow variables of function type.
PR c++/29733
* g++.dg/template/crash61.C: New test. 

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/crash61.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/pt.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29733



[Bug c++/29632] [4.0/4.1 Regression] ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #4 from mmitchel at gcc dot gnu dot org  2006-12-04 22:16 
---
Fixed in 4.2.0, 4.3.0.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.0/4.1/4.2 Regression] ICE|[4.0/4.1 Regression] ICE on
   |on invalid code:|invalid code:
   |regenerate_decl_from_templat|regenerate_decl_from_templat
   |e, at cp/pt.c:10969 |e, at cp/pt.c:10969


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29632



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread ebotcazou at gcc dot gnu dot org


--- Comment #27 from ebotcazou at gcc dot gnu dot org  2006-12-04 22:18 
---
 Hopefully, that is a generic you because I haven't decided
 anything.  In fact, I requested that pault or fx backout the
 offending patch.  See
 
 http://gcc.gnu.org/ml/fortran/2006-11/msg00523.html

Thanks for doing this.  Note that we would need fmodf too.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug c++/30069] New: gcc rejects valid default template parameter

2006-12-04 Thread ppluzhnikov at charter dot net
The test case below declares 3 global functions with exactly the 
same signature, and another 3 member functions with the same signature.

The last of these is incorrectly rejected.

$ cat junk.cc
#include vector

using namespace std;

void foo11(const vectorchar  = vectorchar());
void foo12(const vector char, allocator char=
   vector char  ()); 
void foo13(const vector char, allocator char= 
   vector char, allocator char  ()); 

struct Foo {
void foo21(const vectorchar  = vectorchar());
void foo22(const vector char, allocator char= 
   vector char  ()); 
void foo23(const vector char, allocator char= 
   vector char, allocator char  ()); 
};

$ /usr/local/gcc-4.3-20061104/bin/g++ -c junk.cc 
junk.cc:16: error: expected ',' or '...' before '' token
junk.cc:16: error: template argument 1 is invalid
junk.cc:16: error: template argument 2 is invalid
junk.cc:16: error: default argument missing for parameter 2 of 'void
Foo::foo23(const std::vectorchar, std::allocatorchar ,
std::allocatorchar)'


-- 
   Summary: gcc rejects valid default template parameter
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ppluzhnikov at charter dot net
 GCC build triplet: i686-pc-linux-gnu/
  GCC host triplet: i686-pc-linux-gnu/
GCC target triplet: i686-pc-linux-gnu/


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30069



[Bug fortran/30003] Expressions with side effects in array references

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #3 from pault at gcc dot gnu dot org  2006-12-04 22:44 ---
Created an attachment (id=12744)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12744action=view)
A fix for this PR

This is most of the way there, using the idea in #2; except that, for reasons I
do not understand, allocatable_function_1.f90 emits an extra gfc_internal_free.

Erik, if you have a moment, could you see if you can understand where the extra
free comes from?

Cheers

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30003



[Bug c++/30069] gcc rejects valid default template parameter

2006-12-04 Thread ppluzhnikov at charter dot net


--- Comment #1 from ppluzhnikov at charter dot net  2006-12-04 22:46 ---
It turns out that I've already seen this bug in MSVC-6.0,
and found a workaround. 

This parses fine (note extra parenthesis) with gcc-3.4.0 and above:

struct Foo {
void foo23(const vector char, allocator char= 
   (vector char, allocator char  ())); 
};


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30069



[Bug fortran/30068] Ambigous interfaces not detected

2006-12-04 Thread pault at gcc dot gnu dot org


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-12-04 22:46:55
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30068



[Bug c++/30069] gcc rejects valid default template parameter

2006-12-04 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-12-04 22:51 ---
This is not really a bug but a questionable one in the C++ standard.
anyways this is a dup of bug 57.

*** This bug has been marked as a duplicate of 57 ***


-- 

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=30069



[Bug c++/57] [DR 325] GCC can't parse a non-parenthesized comma in a template-id within a default argument

2006-12-04 Thread pinskia at gcc dot gnu dot org


--- Comment #32 from pinskia at gcc dot gnu dot org  2006-12-04 22:51 
---
*** Bug 30069 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ppluzhnikov at charter dot
   ||net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57



[Bug libfortran/29810] [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in libgfortran shared library

2006-12-04 Thread dave at hiauly1 dot hia dot nrc dot ca


--- Comment #28 from dave at hiauly1 dot hia dot nrc dot ca  2006-12-04 
22:52 ---
Subject: Re:  [4.1/4.2/4.3 regression] Unsatisfied symbol fmodl in
libgfortran shared library

 I suspect the determination of kind types is at least partially broken
 since both 32 and 64-bit PA targets on hpux have support for 128-bit
 long doubles.  However, I'm only seeing the fmodl problem on the 64-bit
 target.

I investigated the above a bit more and it seems to be an issue with
the 32-bit linker.  It's no longer printing warnings about unsatisfied
shared library symbols unless I add -Wl,-v to the command.  Then,
I see the following:

/usr/ccs/bin/ld: Unsatisfied shared library symbols:
   fmodl (first referenced in
/home/gnu/gcc/objdir/hppa2.0w-hp-hpux11.00/./libgfortran/.libs/libgfortran.sl)
(code)

So, it's not a problem with determination of kind types.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29810



[Bug c++/29733] [4.1 regression] ICE on initialization of function type

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #5 from mmitchel at gcc dot gnu dot org  2006-12-04 23:20 
---
Subject: Bug 29733

Author: mmitchel
Date: Mon Dec  4 23:19:56 2006
New Revision: 119516

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119516
Log:
PR c++/29733
* pt.c (tsubst_decl): Disallow variables of function type.
PR c++/29733
* g++.dg/template/crash61.C: New test. 

Added:
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/template/crash61.C
Modified:
branches/gcc-4_1-branch/gcc/cp/ChangeLog
branches/gcc-4_1-branch/gcc/cp/pt.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29733



[Bug c++/29733] [4.1 regression] ICE on initialization of function type

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #6 from mmitchel at gcc dot gnu dot org  2006-12-04 23:21 
---
Fixed in 4.1.2.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29733



[Bug target/25295] unused register saved in function prolog

2006-12-04 Thread michael dot meissner at amd dot com


--- Comment #3 from michael dot meissner at amd dot com  2006-12-04 23:21 
---
I've done some analysis on the test case.  The current GCC 4.2 and mainline
branches no longer generate the initial push of %r8, but instead do a subq
$8,%rsp.  I believe in the compiler you used it did the push to allocate 8
bytes of stack instead of the subtract.  Note, the epilogue still uses a pop to
remove the stack location.  The core of the problem is that the compiler is
allocating 8 bytes too much stack in this particular case.  I think I
understand whats going on, but I want to dig a bit more.


-- 

michael dot meissner at amd dot com changed:

   What|Removed |Added

 CC||michael dot meissner at amd
   ||dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25295



[Bug c++/29632] [4.0/4.1 Regression] ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #5 from mmitchel at gcc dot gnu dot org  2006-12-04 23:21 
---
Subject: Bug 29632

Author: mmitchel
Date: Mon Dec  4 23:21:03 2006
New Revision: 119517

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119517
Log:
PR c++/29632
* call.c (add_builtin_candidate): Do not permit NULL pointer
constants to be compared with template parameters.
PR c++/29632
* g++.dg/template/error23.C: New test.

Added:
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/template/error23.C
Modified:
branches/gcc-4_1-branch/gcc/cp/ChangeLog
branches/gcc-4_1-branch/gcc/cp/call.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29632



[Bug c++/29632] [4.0 Regression] ICE on invalid code: regenerate_decl_from_template, at cp/pt.c:10969

2006-12-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #6 from mmitchel at gcc dot gnu dot org  2006-12-04 23:21 
---
Fixed in 4.1.2.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|mark at codesourcery dot com|unassigned at gcc dot gnu
   ||dot org
 Status|ASSIGNED|NEW
Summary|[4.0/4.1 Regression] ICE on |[4.0 Regression] ICE on
   |invalid code:   |invalid code:
   |regenerate_decl_from_templat|regenerate_decl_from_templat
   |e, at cp/pt.c:10969 |e, at cp/pt.c:10969


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29632



[Bug fortran/30034] pure subroutine requires intent for procedure argument

2006-12-04 Thread pault at gcc dot gnu dot org


--- Comment #1 from pault at gcc dot gnu dot org  2006-12-04 23:31 ---
Created an attachment (id=12745)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12745action=view)
A fix for this PR

Regtests on Cygwin_NT/amd64


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30034



[Bug c/30051] Current gcc gets error compiling glibc with -std=gnu99

2006-12-04 Thread ron3763 at msn dot com


--- Comment #2 from ron3763 at msn dot com  2006-12-04 23:55 ---
(In reply to comment #1)
 This is a bug in glibc.  The mainline changed the way it handles inline to 
 be
 the C99 way.
 
 Also see:
 http://sourceware.org/ml/libc-hacker/2006-11/msg1.html
 

Ok, I read his patch, so are you telling me(us), to use the latest gcc-4.3, we
have to grab glibc/libc6 CVS sources?  I have done that, but haven't compiled
against it yet.


-- 

ron3763 at msn dot com changed:

   What|Removed |Added

 CC||ron3763 at msn dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30051



[Bug libfortran/30005] Open errors (not/already exists etc.): show also the file name

2006-12-04 Thread jvdelisle at gcc dot gnu dot org


--- Comment #4 from jvdelisle at gcc dot gnu dot org  2006-12-05 00:51 
---
Subject: Bug 30005

Author: jvdelisle
Date: Tue Dec  5 00:51:26 2006
New Revision: 119530

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119530
Log:
2006-12-04  Jerry DeLisle  [EMAIL PROTECTED]

PR libfortran/30005
* io/open.c: Add errno.h include.
(new_unit): Add new error messages with file name for file open.

Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/io/open.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30005



Bizarre inlining type promotion effect

2006-12-04 Thread Shaun Jackman

In the code snippet below, the function mul_8_8 compiles to use
exactly one `mul' instruction on the AVR. The function mul_16_8 calls
mul_8_8 twice. If mul_8_8 is a static inline function and inlined in
mul_16_8, each call generates three `mul' instructions! Why does
inlining mul_8_8 cause each 8x8 multiplication to be promoted to a
16x16 multiplication?

It seems that the inlining mechanism has a real bug if inlining can
cause such a major change in the code generated for a given function.

Cheers,
Shaun

$ avr-gcc --version |head -1
avr-gcc (GCC) 4.1.0
$ cat mul.c
#include stdint.h

static uint16_t mul_8_8(uint8_t a, uint8_t b)
{
return a * b;
}

uint32_t mul_16_8(uint16_t a, uint8_t b)
{
uint8_t a0 = a, a1 = a  8;
return ((uint32_t)mul_8_8(a1, b)  8) + mul_8_8(a0, b);
}
$ avr-gcc -c -g -O2 -mmcu=avr4 mul.c
$ avr-objdump -d mul.o

mul.o: file format elf32-avr

Disassembly of section .text:

 mul_8_8:
  0:86 9f   mul r24, r22
  2:c0 01   movwr24, r0
  4:11 24   eor r1, r1
  6:08 95   ret

0008 mul_16_8:
  8:bf 92   pushr11
  a:cf 92   pushr12
  c:df 92   pushr13
  e:ef 92   pushr14
 10:ff 92   pushr15
 12:0f 93   pushr16
 14:1f 93   pushr17
 16:6c 01   movwr12, r24
 18:b6 2e   mov r11, r22
 1a:8d 2d   mov r24, r13
 1c:99 27   eor r25, r25
 1e:f0 df   rcall   .-32; 0x0 mul_8_8
 20:7c 01   movwr14, r24
 22:00 27   eor r16, r16
 24:11 27   eor r17, r17
 26:10 2f   mov r17, r16
 28:0f 2d   mov r16, r15
 2a:fe 2c   mov r15, r14
 2c:ee 24   eor r14, r14
 2e:6b 2d   mov r22, r11
 30:8c 2d   mov r24, r12
 32:e6 df   rcall   .-52; 0x0 mul_8_8
 34:aa 27   eor r26, r26
 36:bb 27   eor r27, r27
 38:e8 0e   add r14, r24
 3a:f9 1e   adc r15, r25
 3c:0a 1f   adc r16, r26
 3e:1b 1f   adc r17, r27
 40:c8 01   movwr24, r16
 42:b7 01   movwr22, r14
 44:1f 91   pop r17
 46:0f 91   pop r16
 48:ff 90   pop r15
 4a:ef 90   pop r14
 4c:df 90   pop r13
 4e:cf 90   pop r12
 50:bf 90   pop r11
 52:08 95   ret
$ sed -i 's/static/ inline/' mul.c
$ avr-gcc -c -g -O2 -mmcu=avr4 mul.c
$ avr-objdump -d mul.o

mul.o: file format elf32-avr

Disassembly of section .text:

 mul_16_8:
  0:ac 01   movwr20, r24
  2:26 2f   mov r18, r22
  4:33 27   eor r19, r19
  6:89 2f   mov r24, r25
  8:99 27   eor r25, r25
  a:82 9f   mul r24, r18
  c:b0 01   movwr22, r0
  e:83 9f   mul r24, r19
 10:70 0d   add r23, r0
 12:92 9f   mul r25, r18
 14:70 0d   add r23, r0
 16:11 24   eor r1, r1
 18:88 27   eor r24, r24
 1a:99 27   eor r25, r25
 1c:98 2f   mov r25, r24
 1e:87 2f   mov r24, r23
 20:76 2f   mov r23, r22
 22:66 27   eor r22, r22
 24:55 27   eor r21, r21
 26:f9 01   movwr30, r18
 28:e4 9f   mul r30, r20
 2a:90 01   movwr18, r0
 2c:e5 9f   mul r30, r21
 2e:30 0d   add r19, r0
 30:f4 9f   mul r31, r20
 32:30 0d   add r19, r0
 34:11 24   eor r1, r1
 36:44 27   eor r20, r20
 38:55 27   eor r21, r21
 3a:62 0f   add r22, r18
 3c:73 1f   adc r23, r19
 3e:84 1f   adc r24, r20
 40:95 1f   adc r25, r21
 42:08 95   ret


Re: Bizarre inlining type promotion effect

2006-12-04 Thread Shaun Jackman

On 12/4/06, Shaun Jackman [EMAIL PROTECTED] wrote:

In the code snippet below, the function mul_8_8 compiles to use
exactly one `mul' instruction on the AVR. The function mul_16_8 calls
mul_8_8 twice. If mul_8_8 is a static inline function and inlined in

...

For comparison, a hand-coded 16x8 multiply function requires 11 instructions.

Cheers,
Shaun

mul_16_8:
mul r25, r22
mov r23, r0
mov r25, r1
mul r24, r22
eor r24, r24
mov r22, r0
add r23, r1
adc r24, r25
eor r25, r25
eor r1, r1
ret


[Bug c++/26943] [gomp] firstprivate not working properly with non-POD

2006-12-04 Thread bergner at vnet dot ibm dot com


--- Comment #11 from bergner at vnet dot ibm dot com  2006-12-05 02:06 
---
The testcase pr26943-2.c fails intermittently for me using unpatched mainline. 
Is anyone else seeing that?  I'm building on powerpc64-linux with -m32. If I
run it a few times, it mainly passes, but every once in a while, I get the
error below:

(gdb) run
Starting program:
/home/bergner/gcc/indexed_load_store/build/gcc-mainline-rtlanal/powerpc64-linux/libgomp/testsuite/pr26943-2.exe
 
Breakpoint 1 at 0x100111b4
[Thread debugging using libthread_db enabled]
[New Thread 1074060096 (LWP 29281)]
Breakpoint 1 at 0xfe04344
[New Thread 1082451136 (LWP 29282)]
[New Thread 1090839744 (LWP 29283)]
[New Thread 1099228352 (LWP 29284)]
[Switching to Thread 1074060096 (LWP 29281)]

Breakpoint 1, 0x0fe04344 in abort () from /lib/tls/libc.so.6
(gdb) where
#0  0x0fe04344 in abort () from /lib/tls/libc.so.6
#1  0x16b8 in main ()
at
/home/bergner/gcc/indexed_load_store/gcc-mainline-rtlanal/libgomp/testsuite/libgomp.c/pr26943-2.c:45
(gdb) list 42
37if (e[0] != 'a' + 6 || f[0] != 'b' + i || g[0] != 'g' + i)
38  j += 64;
39if (h[0] != 'h' + i)
40  j += 512;
41  }
42if (j || a != 8 + 6 || b != 12 || c != 3 || d != 20)
43  abort ();
44if (e[0] != 'a' + 6 || f[0] != 'b' || g[0] != 'g' + 3 || h[0] != 'd')
45  abort ();
46return 0;
(gdb) p e[0]
$10 = 101 'e'
(gdb) p f[0]
$11 = 98 'b'
(gdb) p g[0]
$12 = 106 'j'
(gdb) p h[0]
$13 = 100 'd'


-- 

bergner at vnet dot ibm dot com changed:

   What|Removed |Added

 CC||bergner at vnet dot ibm dot
   ||com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26943



[Bug middle-end/28690] [4.2/4.3 Regression] Performace problem with indexed load/stores on powerpc

2006-12-04 Thread bergner at vnet dot ibm dot com


--- Comment #30 from bergner at vnet dot ibm dot com  2006-12-05 04:22 
---
Ok, the problem from comment #28 was due to a latent bug in
reload1.c:eliminate_regs_in_insn(). The bug is that eliminate_regs_in_insn()
calls single_set() on the passed in insn.  This has been fine before, but now
with the patch, we end up passing in a parallel insn for a load with update and
the load portion of the parallel has the REG_UNUSED flag set.  This causes
single_set() to return the update portion of the parallel instead of
returning NULL as it would do normally with parallels.  This causes us to only
eliminate the update portion of the parallel and we skip eliminating the load
portion.  The problem insn belfore eliminate_regs_in_insn() looks like:

(insn 12 62 13 2 (parallel [
(set (reg:SI 0 0 [125])
(mem/s/j:SI (plus:SI (reg/f:SI 113 sfp)
(const_int 8 [0x8])) [0 S4 A32]))
(set (reg/f:SI 9 9 [orig:124 D.965 ] [124])
(plus:SI (reg/f:SI 113 sfp)
(const_int 8 [0x8])))
]) 373 {*movsi_update1} (nil)
(expr_list:REG_UNUSED (reg:SI 0 0 [125])
(nil)))

After eliminate_regs_in_insn(), we have:

(insn 12 62 13 2 (parallel [
(set (reg:SI 0 0 [125])
(mem/s/j:SI (plus:SI (reg/f:SI 113 sfp)
(const_int 8 [0x8])) [0 S4 A32]))
(set (reg/f:SI 9 9 [orig:124 D.965 ] [124])
(plus:SI (reg/f:SI 1 1)
(const_int 8 [0x8])))
]) 373 {*movsi_update1} (nil)
(expr_list:REG_UNUSED (reg:SI 0 0 [125])
(nil)))

However, calculate_needs_all_insns() ends up backing out the eliminated
(reg/f:SI 1 1) with the non eliminated (reg/f:SI 113 sfp) and  (reg/f:SI 113
sfp) never gets eliminated after that and we generate bogus assembler.

In addition to the latest patch attached here, I added the following patch to
stop eliminate-regs_in_insn from calling single_set for parallel insns.  It
fixed the bug here and bootstrapped and regtested with no errors.  I'll post
the  combined patch to gcc-patches.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28690



[Bug middle-end/28690] [4.2/4.3 Regression] Performace problem with indexed load/stores on powerpc

2006-12-04 Thread bergner at vnet dot ibm dot com


--- Comment #31 from bergner at vnet dot ibm dot com  2006-12-05 04:41 
---
...and here's the patch I mentioned in the previous comment:

Index: reload1.c
===
--- reload1.c   (revision 119497)
+++ reload1.c   (working copy)
@@ -2930,7 +2930,7 @@ eliminate_regs_in_insn (rtx insn, int re
   int icode = recog_memoized (insn);
   rtx old_body = PATTERN (insn);
   int insn_is_asm = asm_noperands (old_body) = 0;
-  rtx old_set = single_set (insn);
+  rtx old_set;
   rtx new_body;
   int val = 0;
   int i;
@@ -2949,6 +2949,12 @@ eliminate_regs_in_insn (rtx insn, int re
   return 0;
 }

+  /* Guard against a PARALLEL with a REG_UNUSED note.  */
+  if (GET_CODE (PATTERN (insn)) != PARALLEL)
+old_set = single_set (insn);
+  else
+old_set = 0;
+
   if (old_set != 0  REG_P (SET_DEST (old_set))
REGNO (SET_DEST (old_set))  FIRST_PSEUDO_REGISTER)
 {


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28690