[Bug tree-optimization/27105] ICE with -O3 -ftree-loop-linear

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-18 06:32 ---
This still ICEs after Pop's patch.


-- 


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



[Bug driver/27622] [4.1/4.2 Regression] gcc hang when compiling with -pipe

2006-05-18 Thread ian at airs dot com


--- Comment #7 from ian at airs dot com  2006-05-18 06:33 ---
Created an attachment (id=11484)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11484action=view)
Patch

I'm testing this patch.


-- 


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



[Bug java/27643] ICE in java_mark_cni_decl_local compiling bytecode-native

2006-05-18 Thread rmathew at gcc dot gnu dot org


--- Comment #1 from rmathew at gcc dot gnu dot org  2006-05-18 07:36 ---
I'm not able to reproduce this problem with the current mainline (2006-05-18).


-- 


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



sh64-elf build failure because of lib1funcs-Os-4-200.asm

2006-05-18 Thread Nick Clifton
Hi Joern, Hi Alex,

  The sh64-elf toolchain currently fails to build from the mainline
  GCC sources because it contains unsupported SH assembler:

./xgcc \
  -B./ \
  -B/usr/local/sh64-superh-elf/bin/ \
  -isystem /usr/local/sh64-superh-elf/include \
  -isystem /usr/local/sh64-superh-elf/sys-include \
  -L.../sh64-superh-elf/ld  \
  -c \
  -o sdivsi3_i4i-Os-4-200.o \
  -DL_sdivsi3_i4i \
  -x assembler-with-cpp .../gcc/config/sh/lib1funcs-Os-4-200.asm
.../gcc/config/sh/lib1funcs-Os-4-200.asm: Assembler messages:
.../gcc/config/sh/lib1funcs-Os-4-200.asm:277: Error: unknown opcode
.../gcc/config/sh/lib1funcs-Os-4-200.asm:278: Error: unknown opcode
[snip]


  I am not sure how this should be fixed however.  Should the
  functions in lib1funcs-02-4-200.asm be protected by another #ifdef
  so that they are not built for this target ?  Or maybe the rules in
  t-sh need to be updated to include an architecture selection switch
  ?  (eg -m2a-single ?)

Cheers
  Nick
  
  



[Bug other/27654] New: bogus/missed diagnostic at -Os.

2006-05-18 Thread pluto at agmk dot net
gcc version 4.1.1 20060504

#include string
bool foo ( int k )
{
std::string bar;   // unused object. not detected.
switch ( k )
{
default:
return false;
break; // unreachable code. not detected.
}
}

$ i486-gnu-linux-g++ bug1.cpp -c -Wall -Os
bug1.cpp: In function 'bool foo(int)':
bug1.cpp:11: warning: control reaches end of non-void function


-- 
   Summary: bogus/missed diagnostic at -Os.
   Product: gcc
   Version: 4.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pluto at agmk dot net
 GCC build triplet: i486-linux
  GCC host triplet: i486-linux
GCC target triplet: i486-linux


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



[Bug fortran/27655] New: ICE on invalid use of NULL as an argument to ASSOCIATED

2006-05-18 Thread fxcoudert at gcc dot gnu dot org
$ cat null_ice.f90
  print *, associated(NULL(),NULL())
  end
$ gfortran null.f90
null.f90:0: internal compiler error: in gfc_check_associated, at
fortran/check.c:508


-- 
   Summary: ICE on invalid use of NULL as an argument to ASSOCIATED
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-invalid-code
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fxcoudert at gcc dot gnu dot org


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



[Bug fortran/21061] gfortran ignores -Werror

2006-05-18 Thread aldot at gcc dot gnu dot org


--- Comment #2 from aldot at gcc dot gnu dot org  2006-05-18 09:28 ---
[RFC][PATCH] is here:
http://gcc.gnu.org/ml/fortran/2006-04/msg00266.html


-- 


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



[Bug middle-end/25776] [4.2 Regression] ICE in cgraph after error at -O1 and above

2006-05-18 Thread tbm at cyrius dot com


--- Comment #11 from tbm at cyrius dot com  2006-05-18 09:34 ---
(In reply to comment #10)
 Mine.

Did you resolve your copyright problems?


-- 


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



[Bug driver/27622] [4.1/4.2 Regression] gcc hang when compiling with -pipe

2006-05-18 Thread jzhang918 at gmail dot com


--- Comment #8 from jzhang918 at gmail dot com  2006-05-18 09:43 ---
With patch foo6.patch, I get:

gcc -c voodoo.i -o aaa/t.o -pipe
Assembler messages:
FATAL: can't create aaa/t.o: No such file or directory
src/vidhrdw/voodoo.c: In function ‘voodoo_start’:
src/vidhrdw/voodoo.c:262: internal compiler error: Broken pipe
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.

Although it does not hang, the error message is a little confusing. It should
not be internal compiler error.


-- 


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



[Bug tree-optimization/19910] [4.2 regression] ICE with -ftree-loop-linear

2006-05-18 Thread reichelt at gcc dot gnu dot org


--- Comment #9 from reichelt at gcc dot gnu dot org  2006-05-18 09:53 
---
The testcase in comment #3 compiled with -O2 -ftree-loop-linear
still ICEs on x86_64-unknown-linux-gnu.


-- 

reichelt at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |


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



[Bug fortran/27411] crashes in sra_walk_expr and emit_move_insn

2006-05-18 Thread reichelt at gcc dot gnu dot org


--- Comment #5 from reichelt at gcc dot gnu dot org  2006-05-18 10:04 
---
Paul, in your patch, you added the wrong PR number (PR24711 instead of
PR27411).
Would you mind changing the ChangeLog entries?

Are you going to fix this bug on the 4.1 branch, too, or can we close the PR?


-- 

reichelt at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||reichelt at gcc dot gnu dot
   ||org
 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=27411



[Bug fortran/27411] crashes in sra_walk_expr and emit_move_insn

2006-05-18 Thread reichelt at gcc dot gnu dot org


--- Comment #6 from reichelt at gcc dot gnu dot org  2006-05-18 10:08 
---
Btw, you also added the wrong PR number for PR 18003 in the ChangeLog entries
and the testcase (namely PR18803), would you mind fixing this as well?


-- 


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



[Bug c++/26757] [4.2 regression] C++ front-end producing two DECLs with the same UID

2006-05-18 Thread reichelt at gcc dot gnu dot org


-- 

reichelt at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.1.1   |4.2.0


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



[Bug other/27654] bogous/missed diagnostic at -Os.

2006-05-18 Thread pluto at agmk dot net


--- Comment #1 from pluto at agmk dot net  2006-05-18 10:12 ---
#include string
bool foo( bool b1, bool b2 )
{
std::string what;
std::size_t size = what.size();
if ( b1  size )
{
if ( b2 )
return true;
else
return false;
}
else
return false;
}

$ i486-gnu-linux-g++ bug2.cpp -c -Wall -Os
bug2.cpp: In function 'bool foo(bool, bool)':
bug2.cpp:15: warning: control reaches end of non-void function


-- 


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



[Bug other/27654] bogous/missed diagnostic at -Os.

2006-05-18 Thread pluto at agmk dot net


--- Comment #2 from pluto at agmk dot net  2006-05-18 10:14 ---
3.3.6 doesn't report about 'control reaches...'.
4.0 and 4.2 not tested.


-- 


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



[Bug libstdc++/27641] libpthread.a core dump with STL

2006-05-18 Thread philippe dot thibault at umontreal dot ca


--- Comment #2 from philippe dot thibault at umontreal dot ca  2006-05-18 
13:00 ---
(In reply to comment #1)
 This works for me with glibc 2.3.6 so closing as invalid.
 

You tried compiling static or shared? I have glibc-2.3.6-3 installed on my
workstation and it works only if I compile with shared libs. Did it worked for
you when you compiled with static libraries?

Philippe Thibault


-- 


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



[Bug target/27599] [4.2 Regression] build failure on mingw

2006-05-18 Thread matz at gcc dot gnu dot org


--- Comment #4 from matz at gcc dot gnu dot org  2006-05-18 13:19 ---
Subject: Bug 27599

Author: matz
Date: Thu May 18 13:19:27 2006
New Revision: 113886

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113886
Log:
PR target/27599
* config.host: Make assignments to host_xmake_file cumulative.
* config.host (*-darwin*): Test $host, not $target.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config.host


-- 


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



[Bug target/27599] [4.2 Regression] build failure on mingw

2006-05-18 Thread matz at gcc dot gnu dot org


--- Comment #5 from matz at gcc dot gnu dot org  2006-05-18 13:24 ---
Fixed for good.


-- 

matz at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/27657] New: [4.2 regression] bogus undefined reference error to static var with -g and -O

2006-05-18 Thread tbm at cyrius dot com
I get an undefined reference error when linking two files but that variable
is static.  This only happens with gcc 4.2, and only when I enable both -g and
-O1 (or higher).

(sid)473:[EMAIL PROTECTED]: ~] cat test.c
static const char utf8_skip_data[1] = {1};
static const char * const gconf_g_utf8_skip = utf8_skip_data;
(sid)474:[EMAIL PROTECTED]: ~] cat main.c
int main() {
}
(sid)475:[EMAIL PROTECTED]: ~] gcc -c -o main.o main.c
(sid)476:[EMAIL PROTECTED]: ~] gcc -c -g -O2 -o test.o test.c
(sid)477:[EMAIL PROTECTED]: ~] gcc main.o test.o
test.o:(.debug_info+0x93): undefined reference to `utf8_skip_data'
collect2: ld returned 1 exit status
zsh: exit 1 gcc main.o test.o
(sid)478:[EMAIL PROTECTED]: ~] gcc-4.1 -c -g -O2 -o test.o test.c
(sid)479:[EMAIL PROTECTED]: ~] gcc main.o test.o
(sid)480:[EMAIL PROTECTED]: ~] gcc -c -g -O0 -o test.o test.c
(sid)481:[EMAIL PROTECTED]: ~] gcc main.o test.o
(sid)482:[EMAIL PROTECTED]: ~]

This is with 4.2.0 20060419.  20060517 shows the same.


-- 
   Summary: [4.2 regression] bogus undefined reference error to
static var with -g and -O
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tbm at cyrius dot com
 GCC build triplet: powerpc-linux-gnu
  GCC host triplet: powerpc-linux-gnu
GCC target triplet: powerpc-linux-gnu


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



[Bug libstdc++/27641] libpthread.a core dump with STL

2006-05-18 Thread pcarlini at suse dot de


--- Comment #3 from pcarlini at suse dot de  2006-05-18 13:46 ---
I can confirm that mainline, 4_1-branch, 4_0-branch and stock 4.0.2 are fine
together with glibc2.3.6 (-static of course).


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|RESOLVED|VERIFIED


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



[Bug target/27571] [4.2 regression] alpha: ICE in get_attr_usegp, at config/alpha/alpha.md:171

2006-05-18 Thread tbm at cyrius dot com


--- Comment #3 from tbm at cyrius dot com  2006-05-18 13:53 ---
(In reply to comment #2)
 Index: alpha.c
 ===
 --- alpha.c (revision 113736)
 +++ alpha.c (working copy)
 @@ -7410,6 +7410,7 @@ alpha_does_function_need_gp (void)
 
for (; insn; insn = NEXT_INSN (insn))
  if (INSN_P (insn)
 +! JUMP_TABLE_DATA_P (insn)
  GET_CODE (PATTERN (insn)) != USE
  GET_CODE (PATTERN (insn)) != CLOBBER
  get_attr_usegp (insn))
 
 ?

I can confirm that the test case can be compiled correctly with this patch
applied.  Can you do a regression test (or whatever is needed) please and apply
this?


-- 


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



[Bug libgcj/27658] New: _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap problem

2006-05-18 Thread mark at gcc dot gnu dot org
_Jv_CreateJavaVM calls the following code:
  // Set up the system class loader and the bootstrap class loader.
  gnu::gcj::runtime::ExtensionClassLoader::initialize();

ExtensionClassLoader extends URLClassLoader and calls addURLs() on it which
might trigger loading of lots of jar files, this in turn can trigger loading
security providers when the jar files are signed which in turn can trigger
initialization of the logging framework which might in turn try to load user
classes.

At this time not everything has been setup yet. Thread.currentThread() for
example will return null if called by any of the above code.

This is a real problem with the latest classpath 0.91 import for which we need
a LogManager override now:

// GCJ LOCAL
// Unfortunately this can be called during bootstrap when
// Thread.currentThread() will return null.
// See bug #
Thread t = Thread.currentThread();
ClassLoader loader = (t == null) ? null : t.getContextClassLoader();


-- 
   Summary: _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap
problem
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libgcj
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mark at gcc dot gnu dot org


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



[Bug tree-optimization/27659] New: ICE on autovect-branch

2006-05-18 Thread gcc at pdoerfler dot com
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc-vect/configure --enable-languages=c,c++
--prefix=/usr/local/vect
Thread model: posix
gcc version 4.2.0-autovect 20060518 (experimental)
 /usr/local/vect/libexec/gcc/i686-pc-linux-gnu/4.2.0-autovect/cc1plus -E -quiet
-v -I/home/doerfler/ltilib-2/41/linux -I../src/basics -I../src/types
-I../src/math -I../src/imgProc -I../src/ioBasics -I../src/io -I../src/draw
-I../src/viewer -I../src/system -I../src/classifiers -Iworkbench -I../tester
-I/usr/include/cairo -I/usr/include/freetype2 -I/usr/X11R6/include
-I/usr/include/libpng12 -I/opt/gnome/include/gtk-2.0
-I/opt/gnome/lib/gtk-2.0/include -I/opt/gnome/include/atk-1.0
-I/opt/gnome/include/pango-1.0 -I/opt/gnome/include/glib-2.0
-I/opt/gnome/lib/glib-2.0/include -D_GNU_SOURCE -D_REENTRANT -D_BSD_SOURCE
-D_XOPEN_SOURCE=500 -D_REENTRANT -DNDEBUG
../src/math/ltiSecondOrderStatistics.cpp -march=pentium-m -ansi -Wundef
-Wwrite-strings -Wall -ftree-vectorize -ftree-vectorizer-verbose=2 -fpic -O3
-fpch-preprocess -o ltiSecondOrderStatistics.ii


/usr/local/vect/libexec/gcc/i686-pc-linux-gnu/4.2.0-autovect/cc1plus
-fpreprocessed ltiSecondOrderStatistics.ii -quiet -dumpbase
ltiSecondOrderStatistics.cpp -march=pentium-m -ansi -auxbase-strip
../obj/release/ltiSecondOrderStatistics.o -O3 -Wundef -Wwrite-strings -Wall
-ansi -version -ftree-vectorize -ftree-vectorizer-verbose=2 -fpic -o
ltiSecondOrderStatistics.s
GNU C++ version 4.2.0-autovect 20060518 (experimental) (i686-pc-linux-gnu)
compiled by GNU C version 4.2.0-autovect 20060518 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: ce12e1a5e2bda479d797d2bc5f9a8466

../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:428: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:428: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:334: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.

../src/math/ltiSecondOrderStatistics_template.h:368: note: not vectorized:
unhandled data-ref
../src/math/ltiSecondOrderStatistics_template.h:368: note: vectorized 0 loops
in function.
../src/math/ltiSecondOrderStatistics_template.h: In member function ‘void
lti::secondOrderStatisticsT, U::covar2corrcoef(lti::matrixU) const [with T
= unsigned char, U = float]’:
../src/math/ltiSecondOrderStatistics_template.h:831: internal compiler error:
Segmentation fault
Please submit a full bug report

[Bug fortran/27613] compile fails with Unclassifiable statement error message

2006-05-18 Thread tobi at gcc dot gnu dot org


--- Comment #4 from tobi at gcc dot gnu dot org  2006-05-18 14:40 ---
Paul, I've looked at the patch and it looks ok.  You don't seem to have posted
it, at least it's not in the patch tracker.  Did you find any problems
associated with it?


-- 

tobi at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||tobi at gcc dot gnu dot org,
   ||paul dot richard dot thomas
   ||at cea dot fr


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



[Bug tree-optimization/27659] ICE on autovect-branch

2006-05-18 Thread gcc at pdoerfler dot com


--- Comment #1 from gcc at pdoerfler dot com  2006-05-18 14:56 ---
Created an attachment (id=11485)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11485action=view)
gziped preprocessed source that produces the ICE

gziped because it's too large. Sorry, don't know how to reduce this.


-- 


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



[Bug fortran/27613] compile fails with Unclassifiable statement error message

2006-05-18 Thread paul dot richard dot thomas at cea dot fr


--- Comment #5 from paul dot richard dot thomas at cea dot fr  2006-05-18 
15:31 ---
(In reply to comment #4)
 Paul, I've looked at the patch and it looks ok.  You don't seem to have posted
 it, at least it's not in the patch tracker.  Did you find any problems
 associated with it?

I think that it is OK.  I prepared the submission, whereupon Grigory came up
with the problem with the fix for PR25090.  I dropped everything to fix the
fix!

I have also been bogged down with the problem with TRANSFER on 64bit machines.
It is not too easy to fix when you do not have a 64bit machine!

I will submit the patch in the next 24hours - promise!

Many thanks

Paul 


-- 


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



[Bug fortran/25090] Bad automatic character length

2006-05-18 Thread paul dot richard dot thomas at cea dot fr


--- Comment #4 from paul dot richard dot thomas at cea dot fr  2006-05-18 
15:43 ---
Created an attachment (id=11486)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11486action=view)
A patch to the patch

This fixes the problem with the patch, applied to trunk, that was reported by
Grigory Zagorodnev at http://gcc.gnu.org/ml/fortran/2006-05/msg00233.html

It needs tidying up before submission but seems to do what is needed.  It also
cures pr25058.

Thanks, Grigory.

Paul


-- 


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



[Bug target/27571] [4.2 regression] alpha: ICE in get_attr_usegp, at config/alpha/alpha.md:171

2006-05-18 Thread falk at debian dot org


--- Comment #4 from falk at debian dot org  2006-05-18 15:47 ---
I did a regression test, I'll submit the patch tomorrow (I hope).


-- 


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



[Bug rtl-optimization/27661] New: ICE in subst_reloads

2006-05-18 Thread matz at gcc dot gnu dot org
The following testcase produces an ICE in subst_reloads, when compiled
with -march=z990 -O2 -ftracer:

snip
extern int memcmp(const void *s1, const void *s2, unsigned long n);
extern int printf (__const char *__restrict __format, ...);
typedef struct
{
   char tmp[4092];
   char msglen[4];
   char msgtype[2];
} TESTSTRUCT;
void test_func(TESTSTRUCT *testtb) {
if (testtb)
printf(a);
if (memcmp(testtb-msgtype, a, 2))
printf(a);
printf(b);
}
--snap

% ./gcc/cc1 -march=z990 -O2 -ftracer test.i
 test_func
Analyzing compilation unitPerforming intraprocedural optimizations
Assembling functions:
 test_func
test.i: In function #8216;test_func#8217;:
test.i:19: internal compiler error: in subst_reloads, at reload.c:6108

This already ICEs with the hammer branch, and I think is also still a latent
problem in trunk.  It's a combination of the tracer and CSE working hand in 
hand to produce an invalid MEM address.  It goes like so:

1) Initially the memcmp() call is implemented by the cmpmem_short instruction
   of s390.  Remember that with -march=z990 we have long displacements active.
   The instruction emitted for the memcmp() is:
(insn 69 68 70 1 (parallel [
(set (reg:CCU 33 %cc)
(compare:CCU (mem/s:BLK (reg/f:DI 46) [0 S2 A8])
(mem/s:BLK (plus:DI (reg/v/f:DI 43 [ testtb ])
(const_int 4096 [0x1000]))
[0 variable.msgtype+0 S2 A8])))
(use (const_int 1 [0x1]))
(use (const:BLK (unspec:BLK [
(const_int 0 [0x0])
] 213)))
(clobber (scratch:DI))
]) 92 {*cmpmem_short} (nil)
(expr_list:REG_EQUAL (compare:CCU (mem/s:BLK (symbol_ref/f:DI (*.LC0)
[flags 0x2] string_cst 0x2368b70) [0 S2 A8])
(mem/s:BLK (plus:DI (reg/v/f:DI 43 [ testtb ])
(const_int 4096 [0x1000]))
  [0 variable.msgtype+0 S2 A8]))
(nil)))

  So, everything fine, but note the (mem (plus (reg 43) (4096)) operand, which
  we are going to screw up soon.

2) Then -ftracer comes along an duplicates a trace through the whole function
   using the if (testtb) predicate.  So we end up with two copies of the
   body, including the above instruction.  One of them under the testtb==0
   branch.

3) Now CSE2 comes into play, with it's path following feature.  In the second
   version of the above insn it knows that testtb (== pseudo 43) is zero.
   Hence it happily changes the insn to read:
(insn 24 23 25 3 (parallel [
(set (reg:CCU 33 %cc)
(compare:CCU (mem/s:BLK (reg/f:DI 46) [0 S2 A8])
(mem/s:BLK (const_int 4096 [0x1000])
  [0 variable.msgtype+0 S2 A8])))
(use (const_int 1 [0x1]))
(use (const:BLK (unspec:BLK [
(const_int 0 [0x0])
] 213)))
(clobber (scratch:DI))
]) 92 {*cmpmem_short} (nil)

   Note how the operand in question now is (mem (const_int 4096)).  That is
   fine so far normally, as the compiler can't know that this is going to
   be in invalid address operand.  It can't know that because all predicates
   say that it is valid.

4) reload comes over that insn, looks at the various operands and addresses
   and also determines that (mem (const_int 4096)) is valid because
   strict_memory_address_p returns true for it.

5) But then the constraints are checked too.  And we use 'Q' constraints
   in the cmpmem_short insn:
  (define_insn *cmpmem_short
  [(set (reg:CCU CC_REGNUM)
(compare:CCU (match_operand:BLK 0 memory_operand Q,Q,Q)
 (match_operand:BLK 1 memory_operand Q,Q,Q)))
   (use (match_operand 2 nonmemory_operand n,a,a))
   (use (match_operand 3 immediate_operand X,R,X))
   (clobber (match_scratch 4 =X,X,a))]
   ...
   And the 'Q' constraint forbids long displacements also on long disp
   machines.  So we now have an inconsistent situation.  As the constraints
   don't match we try to reload this address operand (const_int 4096):

Reloads for insn # 24
Reload 0: reload_in (VOID) = (const_int 4096 [0x1000])
ADDR_REGS, RELOAD_FOR_INPUT (opnum = 1)
reload_in_reg: (const_int 4096 [0x1000])

   But this operand can't be reloaded easily, because the const_int has no
   mode, hence this whole reload has only VOIDmode, and no register can
   be found for it.  Actually this situation should never happen (i.e. a
   modeless reload), that's why it isn't handled in push_reload and friends.
   All these invalid addresses should have been created a reload for much
   earlier than in the constraint checking.

I unfortunately don't have a good idea how to fix this.  I think these
large displacements much somehow be forbidden already in the predicate,
not only via the constraints, which would mean that one can't 

[Bug target/27619] wrong code for mixed-mode division with -mpowerpc64 -O1

2006-05-18 Thread dje at gcc dot gnu dot org


--- Comment #12 from dje at gcc dot gnu dot org  2006-05-18 15:56 ---
Users are suppose to control the architecture and code generation through
-mcpu=XXX, which sets the architecture options in self-consistent ways for the
target.  On Darwin, -mcpu=G5 sets -mpowerpc64; on Linux, -mpowerpc64
specifically is disabled for -mcpu=G5.  64-bit Darwin kernel always performs
64-bit context switch and apparently 64-bit Linux kernel does not.

This all is controlled by the OS_MISSING_POWERPC64 macro.  The macro is defined
for AIX and Linux and PPC64 Linux tests TARGET_64BIT on PPC64 Linux, i.e., it
only works for -m64 on PPC64 Linux.

If you want to add an error, follow the example from SUBTARGET_OVERRIDE_OPTIONS
in aix52.h:

  if (TARGET_POWERPC64  ! TARGET_64BIT)   \
{   \
  error (-maix64 required: 64-bit computation with 32-bit addressing not
yet supported); \
}


-- 


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



[Bug java/27643] ICE in java_mark_cni_decl_local compiling bytecode-native

2006-05-18 Thread tromey at gcc dot gnu dot org


--- Comment #2 from tromey at gcc dot gnu dot org  2006-05-18 16:01 ---
I was able to reproduce yesterday; but I'm updating and rebuilding
just to be sure.

The bug is dependent on the order in which the .class files are read.


-- 

tromey at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||tromey at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-18 16:01:56
   date||


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



[Bug libgcj/27658] _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap problem

2006-05-18 Thread tromey at gcc dot gnu dot org


--- Comment #1 from tromey at gcc dot gnu dot org  2006-05-18 16:02 ---
Thanks for filing this.


-- 

tromey at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||tromey at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-18 16:02:48
   date||


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



[Bug rtl-optimization/27661] ICE in subst_reloads

2006-05-18 Thread matz at gcc dot gnu dot org


--- Comment #1 from matz at gcc dot gnu dot org  2006-05-18 16:07 ---
Like so perhaps.  It fixes the ICE for me, but I've done no further testing:

--- s390.c.orig 2006-05-18 18:05:59.442621578 +0200
+++ config/s390/s390.c  2006-05-18 18:05:34.632630936 +0200
@@ -2731,6 +2731,9 @@ legitimate_address_p (enum machine_mode
return false;
   if (ad.indx  !REG_OK_FOR_INDEX_STRICT_P (ad.indx))
return false;
+  if (!ad.base  !ad.indx
+   !s390_short_displacement (ad.disp))
+   return false;
 }
   else
 {


-- 


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



[Bug fortran/27411] crashes in sra_walk_expr and emit_move_insn

2006-05-18 Thread tobi at gcc dot gnu dot org


--- Comment #7 from tobi at gcc dot gnu dot org  2006-05-18 16:36 ---
Paul, you didn't ask yourself to the CC lsit, so you missed Volker's comments. 


-- 

tobi at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||tobi at gcc dot gnu dot org,
   ||pault at gcc dot gnu dot org


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



[Bug other/27654] bogous/missed diagnostic at -Os.

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-18 16:49 ---
There are two different bugs here.  The first testcase is a dup of PR 20681. 
The second testcase is a dup of bug 25973.

Second those are not unused objects as they have side effects on their
constructors/deconstructors.

I am going to close this as invalid based on the second reason as you seem to
blame that first.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug tree-optimization/27657] [4.2 regression] bogus undefined reference error to static var with -g and -O

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
   Target Milestone|--- |4.2.0


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



[Bug c++/27557] OpenMP threadprivate directive does not work with non-POD types

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-18 16:51 ---
Confirmed.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-18 16:51:18
   date||


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



[Bug rtl-optimization/27661] ICE in subst_reloads

2006-05-18 Thread krebbel at gcc dot gnu dot org


--- Comment #2 from krebbel at gcc dot gnu dot org  2006-05-18 16:59 ---
Thanks for your comprehensive debugging!

At first glance I would say reload should take a word_mode register and reload
the constant. The code added by your patch to legitimate_address_p says that a
single number is not a valid address which isn't true. We also allow
reg+reg+constant in legitimate_address_p and rely on reload to fix this for Q
and S constraints and I think the same should happen here as well. 


-- 

krebbel 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-05-18 16:59:37
   date||


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



[Bug fortran/27662] New: Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
[EMAIL PROTECTED] tmp]$ cat x.f90
program foo
 implicit none
 real(kind=kind(1.0d0)), dimension (2, 2):: x, y, z;
 integer i, j
 open (10, status=scratch)
 write (10, *) 0.10E+010.00E+00
 write (10, *) 0.00E+000.10E+01
 rewind (10)
 read (10,*) x
 print (2(e20.10)), x
 print *
 z = matmul (x, transpose (test ()))
 print (2(e20.10)), z
 do i = 1, size (x, 1)
   do j = 1, size (x, 2)
 if (x (i, j) .ne. z (i, j)) call abort ()
   end do
 end do
 close (10)

contains
 function test () result (res)
   real(kind=kind(1.0d0)), dimension(2,2) :: res
   rewind (10)
   read (10,*) res
   print (2(e20.10)), res
   print *
 end function
end
[EMAIL PROTECTED] tmp]$ /usr/gcc-4.2/bin/gfortran -static x.f90
[EMAIL PROTECTED] tmp]$ ./a.out
0.10E+010.00E+00
0.00E+000.10E+01

0.10E+010.00E+00
0.00E+000.10E+01

0.10E+010.00E+00
0.10E+010.00E+00
Aborted
[EMAIL PROTECTED] tmp]$


-- 
   Summary: Transpose doesn't work on function return
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl at lucon dot org


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



[Bug target/27663] New: missed-optimization transforming a byte array to unsigned long

2006-05-18 Thread berndtrog at yahoo dot com
Hi,
this code:

unsigned long f (unsigned char  *P)
{
  unsigned long C;
  C  = ((unsigned long)P[1]  24)
 | ((unsigned long)P[2]  16)
 | ((unsigned long)P[3]   8)
 | ((unsigned long)P[4]   0);
  return C;
}

compiles to this:

 f:
   0:   f9 2f   mov r31, r25
   2:   e8 2f   mov r30, r24
   4:   61 81   ldd r22, Z+1; 0x01
   6:   77 27   eor r23, r23
   8:   88 27   eor r24, r24
   a:   99 27   eor r25, r25
   c:   96 2f   mov r25, r22
   e:   88 27   eor r24, r24
  10:   77 27   eor r23, r23
  12:   66 27   eor r22, r22
  14:   22 81   ldd r18, Z+2; 0x02
  16:   33 27   eor r19, r19
  18:   44 27   eor r20, r20
  1a:   55 27   eor r21, r21
  1c:   53 2f   mov r21, r19
  1e:   42 2f   mov r20, r18
  20:   33 27   eor r19, r19
  22:   22 27   eor r18, r18
  24:   62 2b   or  r22, r18
  26:   73 2b   or  r23, r19
  28:   84 2b   or  r24, r20
  2a:   95 2b   or  r25, r21
  2c:   24 81   ldd r18, Z+4; 0x04
  2e:   33 27   eor r19, r19
  30:   44 27   eor r20, r20
  32:   55 27   eor r21, r21
  34:   62 2b   or  r22, r18
  36:   73 2b   or  r23, r19
  38:   84 2b   or  r24, r20
  3a:   95 2b   or  r25, r21
  3c:   23 81   ldd r18, Z+3; 0x03
  3e:   33 27   eor r19, r19
  40:   44 27   eor r20, r20
  42:   55 27   eor r21, r21
  44:   54 2f   mov r21, r20
  46:   43 2f   mov r20, r19
  48:   32 2f   mov r19, r18
  4a:   22 27   eor r18, r18
  4c:   62 2b   or  r22, r18
  4e:   73 2b   or  r23, r19
  50:   84 2b   or  r24, r20
  52:   95 2b   or  r25, r21
  54:   08 95   ret

using this cmd line:
avr-gcc -c -Os f.c

IMO, most of the or, eor and mov instructions are unnecessary.


-- 
   Summary: missed-optimization transforming a byte array to
unsigned long
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: berndtrog at yahoo dot com
GCC target triplet: avr


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



[Bug c/25802] VM types of external and internal linkage variables not diagnosed

2006-05-18 Thread mrs at gcc dot gnu dot org


--- Comment #3 from mrs at gcc dot gnu dot org  2006-05-18 18:22 ---
Subject: Bug 25802

Author: mrs
Date: Thu May 18 18:22:12 2006
New Revision: 113888

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113888
Log:
Fix up vla, vm and [*] sematics.

PR c/18740
PR c/7948
PR c/25802
* c-tree.h (struct c_arg_info): Add had_vla_unspec.
(c_vla_unspec_p): Add.
(c_vla_type_p): Add.
* c-decl.c (struct c_scope): Add had_vla_unspec.
(build_array_declarator): Add support for [*].
(grokdeclarator): Likewise.
(grokparms): Likewise.
(get_parm_info): Likewise.
* c-objc-common.c (c_vla_unspec_p): Likewise.
* c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise.
* c-parser.c (c_parser_typeof_specifier): Evaluate arguments to
typeof when argument is a variably modified type not inside sizeof or
alignof.
(c_parser_direct_declarator_inner): Propagate errors.
(c_parser_sizeof_expression): Add support for [*].
* c-typeck.c (c_vla_type_p): Add.
(composite_type): Add support for vla compositing.
(comptypes_internal): Add support for vla compatibility.
(c_expr_sizeof_expr): Evaluate vla arguments.
* tree.c (variably_modified_type_p): Update comment for [*].

testsuite:
* gcc.dg/c90-arraydecl-1.c: Update for vla, vm [*] fixups.
* gcc.dg/vla-4.c: Add.
* gcc.dg/vla-5.c: Add.
* gcc.dg/vla-6.c: Add.

Added:
trunk/gcc/testsuite/gcc.dg/vla-4.c
trunk/gcc/testsuite/gcc.dg/vla-5.c
trunk/gcc/testsuite/gcc.dg/vla-6.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-decl.c
trunk/gcc/c-objc-common.c
trunk/gcc/c-objc-common.h
trunk/gcc/c-parser.c
trunk/gcc/c-tree.h
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/c90-arraydecl-1.c
trunk/gcc/tree.c


-- 


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



[Bug c/18740] Execution-time sizeof drops side effects

2006-05-18 Thread mrs at gcc dot gnu dot org


--- Comment #7 from mrs at gcc dot gnu dot org  2006-05-18 18:22 ---
Subject: Bug 18740

Author: mrs
Date: Thu May 18 18:22:12 2006
New Revision: 113888

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113888
Log:
Fix up vla, vm and [*] sematics.

PR c/18740
PR c/7948
PR c/25802
* c-tree.h (struct c_arg_info): Add had_vla_unspec.
(c_vla_unspec_p): Add.
(c_vla_type_p): Add.
* c-decl.c (struct c_scope): Add had_vla_unspec.
(build_array_declarator): Add support for [*].
(grokdeclarator): Likewise.
(grokparms): Likewise.
(get_parm_info): Likewise.
* c-objc-common.c (c_vla_unspec_p): Likewise.
* c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise.
* c-parser.c (c_parser_typeof_specifier): Evaluate arguments to
typeof when argument is a variably modified type not inside sizeof or
alignof.
(c_parser_direct_declarator_inner): Propagate errors.
(c_parser_sizeof_expression): Add support for [*].
* c-typeck.c (c_vla_type_p): Add.
(composite_type): Add support for vla compositing.
(comptypes_internal): Add support for vla compatibility.
(c_expr_sizeof_expr): Evaluate vla arguments.
* tree.c (variably_modified_type_p): Update comment for [*].

testsuite:
* gcc.dg/c90-arraydecl-1.c: Update for vla, vm [*] fixups.
* gcc.dg/vla-4.c: Add.
* gcc.dg/vla-5.c: Add.
* gcc.dg/vla-6.c: Add.

Added:
trunk/gcc/testsuite/gcc.dg/vla-4.c
trunk/gcc/testsuite/gcc.dg/vla-5.c
trunk/gcc/testsuite/gcc.dg/vla-6.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-decl.c
trunk/gcc/c-objc-common.c
trunk/gcc/c-objc-common.h
trunk/gcc/c-parser.c
trunk/gcc/c-tree.h
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/c90-arraydecl-1.c
trunk/gcc/tree.c


-- 


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



[Bug c/7948] gcc fails to fault gnu extension with -std=c99

2006-05-18 Thread mrs at gcc dot gnu dot org


--- Comment #4 from mrs at gcc dot gnu dot org  2006-05-18 18:22 ---
Subject: Bug 7948

Author: mrs
Date: Thu May 18 18:22:12 2006
New Revision: 113888

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113888
Log:
Fix up vla, vm and [*] sematics.

PR c/18740
PR c/7948
PR c/25802
* c-tree.h (struct c_arg_info): Add had_vla_unspec.
(c_vla_unspec_p): Add.
(c_vla_type_p): Add.
* c-decl.c (struct c_scope): Add had_vla_unspec.
(build_array_declarator): Add support for [*].
(grokdeclarator): Likewise.
(grokparms): Likewise.
(get_parm_info): Likewise.
* c-objc-common.c (c_vla_unspec_p): Likewise.
* c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise.
* c-parser.c (c_parser_typeof_specifier): Evaluate arguments to
typeof when argument is a variably modified type not inside sizeof or
alignof.
(c_parser_direct_declarator_inner): Propagate errors.
(c_parser_sizeof_expression): Add support for [*].
* c-typeck.c (c_vla_type_p): Add.
(composite_type): Add support for vla compositing.
(comptypes_internal): Add support for vla compatibility.
(c_expr_sizeof_expr): Evaluate vla arguments.
* tree.c (variably_modified_type_p): Update comment for [*].

testsuite:
* gcc.dg/c90-arraydecl-1.c: Update for vla, vm [*] fixups.
* gcc.dg/vla-4.c: Add.
* gcc.dg/vla-5.c: Add.
* gcc.dg/vla-6.c: Add.

Added:
trunk/gcc/testsuite/gcc.dg/vla-4.c
trunk/gcc/testsuite/gcc.dg/vla-5.c
trunk/gcc/testsuite/gcc.dg/vla-6.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-decl.c
trunk/gcc/c-objc-common.c
trunk/gcc/c-objc-common.h
trunk/gcc/c-parser.c
trunk/gcc/c-tree.h
trunk/gcc/c-typeck.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/c90-arraydecl-1.c
trunk/gcc/tree.c


-- 


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org


--- Comment #1 from hjl at lucon dot org  2006-05-18 18:24 ---
This testcase is derived from Tonto in SPEC CPU 2006.


-- 

hjl at lucon dot org changed:

   What|Removed |Added

OtherBugsDependingO||15502
  nThis||


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



[Bug c++/27665] New: [4.0/4.1/4.2 regression] ICE writing class instead of typename

2006-05-18 Thread reichelt at gcc dot gnu dot org
The following code snippet triggers an ICE since GCC 3.4.0
(and in GCC 2.93.x):

==
templateint struct A
{
struct B
{
struct C {};
};
};

templateint N void foo()
{
class AN::B::C X;
}

void bar()
{
foo0();
}
==

bug.cc: In instantiation of 'A0::B':
bug.cc:11:   instantiated from 'void foo() [with int N = 0]'
bug.cc:26:   instantiated from here
bug.cc:4: internal compiler error: in instantiate_class_template, at
cp/pt.c:5591
Please submit a full bug report, [etc.]

I'm not quite sure whether writing class before AN::B::C is valid
or has to be replaced by typename.


-- 
   Summary: [4.0/4.1/4.2 regression] ICE writing class instead of
typename
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code, monitored
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug c++/27666] New: [4.0/4.1/4.2 regression] ICE with volatile in conditional expression

2006-05-18 Thread reichelt at gcc dot gnu dot org
The following code snippet triggers an ICE since GCC 3.0
(it disappeared in 3.3.[2-6]):

===
struct A
{
A(int);
};

void foo(volatile A a) { 1 ? a : 0; }
===

bug.cc: In function 'void foo(A)':
bug.cc:6: error: no matching function for call to 'A::A(volatile A)'
bug.cc:3: note: candidates are: A::A(int)
bug.cc:2: note: A::A(const A)
bug.cc:6: error:   initializing temporary from result of 'A::A(int)'
bug.cc:6: internal compiler error: tree check: expected class 'type', have
'exceptional' (error_mark) in build_conditional_expr, at cp/call.c:3326
Please submit a full bug report, [etc.]

I'm not sure whether the error message before the ICE is correct
or whether the code is in fact valid.


-- 
   Summary: [4.0/4.1/4.2 regression] ICE with volatile in
conditional expression
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code, monitored
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug c/25802] VM types of external and internal linkage variables not diagnosed

2006-05-18 Thread mrs at apple dot com


--- Comment #4 from mrs at apple dot com  2006-05-18 19:29 ---
aka radr://4336222


-- 


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



[Bug c++/27667] New: [4.0/4.1/4.2 regression] ICE with in-class specialization

2006-05-18 Thread reichelt at gcc dot gnu dot org
The following invalid code snippet triggers an ICE since GCC 3.4.5 / 4.0.3:

===
struct A
{
templateint static void foo   () {}
templatestatic void foo0() {}
};
===

bug.cc:4: error: explicit specialization in non-namespace scope 'struct A'
bug.cc:4: internal compiler error: in poplevel, at cp/decl.c:551
Please submit a full bug report, [etc.]


-- 
   Summary: [4.0/4.1/4.2 regression] ICE with in-class
specialization
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-invalid-code, error-recovery, monitored
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug c++/27668] New: [4.0/4.1/4.2 regression] ICE with invalid template parameter

2006-05-18 Thread reichelt at gcc dot gnu dot org
The following invalid code snippet triggers an ICE since GCC 3.4.0:

==
templatetypename class T, T = T() struct A {};

templateint void foo(Aint);
==

bug.cc:1: error: expected nested-name-specifier before 'class'
bug.cc:1: error: two or more data types in declaration of 'parameter'
bug.cc:1: error: 'struct T' is not a valid type for a template constant
parameter
bug.cc:3: error: type/value mismatch at argument 1 in template parameter list
for 'templateint anonymous, void anonymous  struct A'
bug.cc:3: error:   expected a constant of type 'int', got 'int'
bug.cc:3: internal compiler error: in value_dependent_expression_p, at
cp/pt.c:12489
Please submit a full bug report, [etc.]


-- 
   Summary: [4.0/4.1/4.2 regression] ICE with invalid template
parameter
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-invalid-code, error-recovery, monitored
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug c++/27670] New: ICE on invalid template parameter

2006-05-18 Thread reichelt at gcc dot gnu dot org
The following invalid code snippet triggers an ICE since at least GCC 2.95.3:

==
templateoperator+ void foo();

void bar()
{
  foo();
}
==

bug.cc:1: error: expected identifier before 'operator'
bug.cc:1: error: declaration of 'operator+' as non-function
bug.cc: In function 'void bar()':
bug.cc:5: internal compiler error: in type_unification_real, at cp/pt.c:9533
Please submit a full bug report, [etc.]


-- 
   Summary: ICE on invalid template parameter
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: ice-on-invalid-code, error-recovery, monitored
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug regression/27671] New: optimization error on pentium4-Linux with %, regression from gcc-4.1.0

2006-05-18 Thread kminola at eng dot umd dot edu
/* 

% gcc -O0 -march=pentium4 -o foo foo.c ; foo
ok
% gcc -O1 -march=pentium4 -o foo foo.c ; foo
bug
% gcc -O1 -o foo foo.c ; foo
ok
% 
% gcc -v 
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: /home/kate/test/gcc-4.2-20060513/configure
--enable-languages=c --prefix=/home/kate/test/bin/i686-Linux
Thread model: posix
gcc version 4.2.0 20060513 (experimental)
%

Isolated from gmp-4.2.1 tests/t-mul.c and mpn/generic/mul_fft.c
*/

#include stdio.h

void bar (int k)
{
  int n;

  n = k % 2;

  if (n) {
printf(ok\n);
  } else {
printf(bug\n);
  }
}

int main()
{  
  bar(1);
}


-- 
   Summary: optimization error on pentium4-Linux with %, regression
from gcc-4.1.0
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: regression
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kminola at eng dot umd dot edu
 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=27671



[Bug fortran/27411] crashes in sra_walk_expr and emit_move_insn

2006-05-18 Thread paulthomas2 at wanadoo dot fr


--- Comment #8 from paulthomas2 at wanadoo dot fr  2006-05-18 20:03 ---
Subject: Re:  crashes in sra_walk_expr and emit_move_insn

tobi at gcc dot gnu dot org wrote:

--- Comment #7 from tobi at gcc dot gnu dot org  2006-05-18 16:36 ---
Paul, you didn't ask yourself to the CC lsit, so you missed Volker's comments. 


  

Drat!  Thanks Tobi.  I'll attend to it asap - probably during the weekend.

Thanks to Volker, as well ( as Tobi will testify, I do tend a bit on the 
careless side)

Paul


-- 


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



[Bug c++/27398] [4.0/4.1/4.2 regression] ICE on missing closing parenthesis

2006-05-18 Thread patchapp at dberlin dot org


--- Comment #2 from patchapp at dberlin dot org  2006-05-18 20:05 ---
Subject: Bug number PR c++/27398

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg00943.html


-- 


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



[Bug c++/27398] [4.0/4.1/4.2 regression] ICE on missing closing parenthesis

2006-05-18 Thread reichelt at gcc dot gnu dot org


-- 

reichelt at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread kargl at gcc dot gnu dot org


--- Comment #2 from kargl at gcc dot gnu dot org  2006-05-18 20:41 ---
Actually, transpose by itself does the right thing.  It is the
combination of matmul and transpose that is screwing up indexing.
A slightly modified version of your program gives

troutmask:kargl[290] ./z
 1.0 0.0 0.0 1.0 -- x
 1.0 0.0 0.0 1.0 -- a = test()
 1.0 0.0 0.0 1.0 -- a = transpose(test())
 1.0 0.0 0.0 1.0 -- z = matmul(x,a)
 1.0 0.0 1.0 0.0 -- z = matmul(x,transpose(test()))
Abort (core dumped)

Here the program.

program foo

 implicit none

 real(kind=kind(1.0d0)), dimension(2, 2):: x, z, a
 integer i, j

 x(1,1) = 1.d0 
 x(2,1) = 0.d0
 x(1,2) = 0.d0
 x(2,2) = 1.d0 
!
! Uncomment to see the output.
!
  print '(4F4.1,1X,A)', x(1,1), x(2,1), x(1,2), x(2,2), '-- x'
  a = test()
  print '(4F4.1,1X,A)', a(1,1), a(2,1), a(1,2), a(2,2), '-- a = test()'
  a = transpose(test())
  print '(4F4.1,1X,A)', a(1,1), a(2,1), a(1,2), a(2,2), 
   '-- a = transpose(test())'
  z = matmul(x, a)
  print '(4F4.1,1X,A)', z(1,1), z(2,1), z(1,2), z(2,2), '-- z = matmul(x,a)'
  z = matmul(x, transpose(test()))
  print '(4F4.1,1X,A)', z(1,1), z(2,1), z(1,2), z(2,2), 
   '-- z = matmul(x,transpose(test()))'

 z = matmul(x, transpose(test()))
 do i = 1, 2
   do j = 1, 2
 if (x(i,j) .ne. z(i,j)) call abort()
   end do
 end do
 close (10)

contains
 function test() result (res)
   real(kind=kind(1.0d0)), dimension(2,2) :: res
   res(1,1) = 1.d0 
   res(2,1) = 0.d0
   res(1,2) = 0.d0
   res(2,2) = 1.d0 
 end function
end


-- 

kargl 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-05-18 20:41:45
   date||


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



[Bug rtl-optimization/27671] [4.2 Regression] optimization error on pentium4-Linux with %, regression from gcc-4.1.0

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-18 21:19 ---
Combine is causing the code to turn into:
(insn 17 16 18 2 (set (reg:CCGOC 17 flags)
(compare:CCGOC (mem/c/i:SI (reg/f:SI 16 argp) [0 k+0 S4 A32])
(const_int 0 [0x0]))) 3 {*cmpsi_ccno_1} (nil)
(nil))


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
  Component|regression  |rtl-optimization
 Ever Confirmed|0   |1
   Keywords||wrong-code
   Last reconfirmed|-00-00 00:00:00 |2006-05-18 21:19:13
   date||
Summary|optimization error on   |[4.2 Regression]
   |pentium4-Linux with %,  |optimization error on
   |regression from gcc-4.1.0   |pentium4-Linux with %,
   ||regression from gcc-4.1.0
   Target Milestone|--- |4.2.0


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org


--- Comment #3 from hjl at lucon dot org  2006-05-18 21:22 ---
I got

  atmp.17.dtype = 538;
  atmp.17.dim[0].stride = 2;
  atmp.17.dim[0].lbound = 0;
  atmp.17.dim[0].ubound = 1;
  atmp.17.dim[1].stride = 0; - Shouldn't it be 1?
  atmp.17.dim[1].lbound = 0;
  atmp.17.dim[1].ubound = 1;
  atmp.17.data = A.16;
  atmp.17.offset = 0;
  _gfortran_matmul_r8 (parm.13, parm.14, atmp.17);


-- 


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



[Bug c++/27666] [4.0/4.1/4.2 regression] ICE with volatile in conditional expression

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.0.4


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



[Bug c++/27667] [4.0/4.1/4.2 regression] ICE with in-class specialization

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |minor
   Target Milestone|--- |4.0.4


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



[Bug c++/27668] [4.0/4.1/4.2 regression] ICE with invalid template parameter

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |minor
   Target Milestone|--- |4.0.4


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



[Bug debug/27672] New: C frontend does not generate line information for multi-line conditions

2006-05-18 Thread drow at gcc dot gnu dot org
Compile something like this with debugging information:

  if (func1 ()
  || func2 ()
  || func3 ())

Set a breakpoint on func1, and then use GDB's finish command to leave the
function.  You'll be back on the first line of the if.  Same if you finish from
func2.  Nothing in the process of parsing a conditional expression sets
expression locations for individual parts of the expression.

We do set a line number on the outer compound expression, and that points at
the beginning.  It would be strange to single-step onto the conditional jump
instruction and be taken back to the top of the if.  So this may not be a
straightforward fix.


-- 
   Summary: C frontend does not generate line information for multi-
line conditions
   Product: gcc
   Version: 4.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: debug
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: drow at gcc dot gnu dot org


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



[Bug debug/27672] C frontend does not generate line information for multi-line conditions

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-18 21:38 ---
I have seen this also.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org


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



[Bug rtl-optimization/27616] [4.1/4.2 Regression] Internal error with -O1 (CSE)

2006-05-18 Thread kazu at gcc dot gnu dot org


-- 

kazu at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org


--- Comment #4 from hjl at lucon dot org  2006-05-18 21:54 ---
Also

atmp.6.dtype = 538;
atmp.6.dim[0].stride = 1;
atmp.6.dim[0].lbound = 0;
atmp.6.dim[0].ubound = 1;
atmp.6.dim[1].stride = 2;
atmp.6.dim[1].lbound = 0;
atmp.6.dim[1].ubound = 1;
atmp.6.data = (void *) A.7;
atmp.6.offset = 0;
atmp.6.dim[0].stride = 0;  -- That causes the problem.
test (atmp.6);
atmp.8.dtype = atmp.6.dtype;
atmp.8.dim[0].stride = atmp.6.dim[1].stride;
atmp.8.dim[0].lbound = atmp.6.dim[1].lbound;
atmp.8.dim[0].ubound = atmp.6.dim[1].ubound;
atmp.8.dim[1].stride = atmp.6.dim[0].stride;
atmp.8.dim[1].lbound = atmp.6.dim[0].lbound;
atmp.8.dim[1].ubound = atmp.6.dim[0].ubound;
atmp.8.data = atmp.6.data;
atmp.8.offset = atmp.6.offset;
_gfortran_matmul_r8 (parm.4, parm.5, atmp.8);


-- 


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org


--- Comment #5 from hjl at lucon dot org  2006-05-18 22:21 ---
There are

   2042   /* Zero the first stride to indicate a temporary.  */
   2043   tmp = gfc_conv_descriptor_stride (info-descriptor,
gfc_rank_cst[0]);
   2044   gfc_add_modify_expr (se-pre, tmp,
   2045convert (TREE_TYPE (tmp),
integer_zero_node));

in gfc_conv_function_call. Later transpose is called on it. But we never
restore the first stride.


-- 


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



Re: [Bug c/14366] variable previously declared `static' redeclared `extern' is valid ISO C - 3.4 and 4.0 regression

2006-05-18 Thread Neil Booth
pinskia at gcc dot gnu dot org wrote:-

 Hmm, I think this causes the following invalid code to be accepted (but I am
 not sure if this is invalid code or not):
 enum in_section {  in_toc };
 int f(void) { extern int in_toc; }
 
 --
 In 3.3 and before we got:
 t1.c: In function `f':
 t1.c:1: error: `in_toc' redeclared as different kind of symbol
 t1.c:1: error: previous declaration of `in_toc'

I believe this should be accepted.  Either way in_toc is not
redeclared, there is only one declaration at block scope and that
hides the outer declaration.

More serious is the fact that a missing return statement is
apparently not diagnosed?


[Bug c/14366] variable previously declared `static' redeclared `extern' is valid ISO C - 3.4 and 4.0 regression

2006-05-18 Thread neil at daikokuya dot co dot uk


--- Comment #7 from neil at daikokuya dot co dot uk  2006-05-18 22:22 
---
Subject: Re:  variable previously declared `static' redeclared `extern' is
valid ISO C - 3.4 and 4.0 regression

pinskia at gcc dot gnu dot org wrote:-

 Hmm, I think this causes the following invalid code to be accepted (but I am
 not sure if this is invalid code or not):
 enum in_section {  in_toc };
 int f(void) { extern int in_toc; }
 
 --
 In 3.3 and before we got:
 t1.c: In function `f':
 t1.c:1: error: `in_toc' redeclared as different kind of symbol
 t1.c:1: error: previous declaration of `in_toc'

I believe this should be accepted.  Either way in_toc is not
redeclared, there is only one declaration at block scope and that
hides the outer declaration.

More serious is the fact that a missing return statement is
apparently not diagnosed?


-- 


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



[Bug c++/27650] internal compiler error while compiling Gecode

2006-05-18 Thread Harmon dot Nine at gmail dot com


--- Comment #2 from Harmon dot Nine at gmail dot com  2006-05-18 22:56 
---
Created an attachment (id=11487)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11487action=view)
Pre-processed output of reco-stack.cc, a gecode source file.

reco-stack.cc is generating an internal compiler error.  The attachment is this
file as pre-processed.

This file, and package of which it is a part, can be downloaded from the
following URL:

http://www.gecode.org/download/gecode-1.1.0.tar.gz


-- 


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



[Bug c++/27650] internal compiler error while compiling Gecode

2006-05-18 Thread Harmon dot Nine at gmail dot com


--- Comment #3 from Harmon dot Nine at gmail dot com  2006-05-18 23:01 
---
Command that generated attachment (reco-stack.ii):
/usr/local/bin/g++.exe -v -save-temps -I. -I. -DNDEBUG -Wall -ggdb -O3
-fno-strict-aliasing -finline-limit=3000 -ffast-math -mthreads 
-DGECODE_BUILD_SEARCH -c -o search/reco-stack.o  search/reco-stack.cc

Output from this command:
Using built-in specs.
Target: i686-pc-cygwin
Configured with: ../gcc-4.1.0/configure 
Thread model: single
gcc version 4.1.0
 /usr/local/libexec/gcc/i686-pc-cygwin/4.1.0/cc1plus.exe -E -quiet -v -I. -I.
-D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix -idirafter
/usr/lib/../include/w32api -idirafter
/usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../../include/w32api -DNDEBUG
-DGECODE_BUILD_SEARCH search/reco-stack.cc -mthreads -mtune=pentiumpro -Wall
-fno-strict-aliasing -finline-limit=3000 -ffast-math -fworking-directory -O3
-fpch-preprocess -o reco-stack.ii
ignoring nonexistent directory NONE/include
ignoring nonexistent directory
/usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../i686-pc-cygwin/include
ignoring duplicate directory
/usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../../include/w32api
ignoring duplicate directory .
#include ... search starts here:
#include ... search starts here:
 .
 /usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../include/c++/4.1.0

/usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../include/c++/4.1.0/i686-pc-cygwin
 /usr/local/lib/gcc/i686-pc-cygwin/4.1.0/../../../../include/c++/4.1.0/backward
 /usr/local/include
 /usr/local/lib/gcc/i686-pc-cygwin/4.1.0/include
 /usr/include
 /usr/lib/../include/w32api


-- 


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



[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org


--- Comment #6 from hjl at lucon dot org  2006-05-18 23:02 ---
This hack works for the testcase. But I don't know if it is the correct fix
or not.

2006-05-17  H.J. Lu  [EMAIL PROTECTED]

PR fortran/27662
* trans-expr.c (gfc_conv_function_call) Restore the first
stride after the function call.

--- gcc/fortran/trans-expr.c.transpose  2006-04-16 11:18:33.0 -0700
+++ gcc/fortran/trans-expr.c2006-05-18 15:55:30.0 -0700
@@ -2022,6 +2022,8 @@ gfc_conv_function_call (gfc_se * se, gfc
retargs = gfc_chainon_list (retargs, se-expr);
   else if (sym-result-attr.dimension)
{
+ tree stride;
+
  gcc_assert (se-loop  info);

  /* Set the type of the array.  */
@@ -2039,14 +2041,17 @@ gfc_conv_function_call (gfc_se * se, gfc
   false, !sym-attr.pointer,
callee_alloc);
  /* Zero the first stride to indicate a temporary.  */
- tmp = gfc_conv_descriptor_stride (info-descriptor, gfc_rank_cst[0]);
- gfc_add_modify_expr (se-pre, tmp,
-  convert (TREE_TYPE (tmp), integer_zero_node));
+ stride = gfc_conv_descriptor_stride (info-descriptor,
gfc_rank_cst[0]);
+ gfc_add_modify_expr (se-pre, stride,
+  convert (TREE_TYPE (stride),
integer_zero_node));
  /* Pass the temporary as the first argument.  */
  tmp = info-descriptor;
  tmp = build_fold_addr_expr (tmp);
  retargs = gfc_chainon_list (retargs, tmp);
+
+ /* Restore the first stride after the function call.  */
+ gfc_add_modify_expr (post, stride, info-stride [0]);
}
   else if (ts.type == BT_CHARACTER)
{


-- 


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



[Bug c++/27650] internal compiler error while compiling Gecode

2006-05-18 Thread Harmon dot Nine at gmail dot com


--- Comment #4 from Harmon dot Nine at gmail dot com  2006-05-18 23:04 
---
Output from gcc command in previous comment was incomplete.  Here is the rest:

End of search list.
 /usr/local/libexec/gcc/i686-pc-cygwin/4.1.0/cc1plus.exe -fpreprocessed
reco-stack.ii -quiet -dumpbase reco-stack.cc -mthreads -mtune=pentiumpro
-auxbase-strip search/reco-stack.o -ggdb -O3 -Wall -version
-fno-strict-aliasing -finline-limit=3000 -ffast-math -o reco-stack.s
GNU C++ version 4.1.0 (i686-pc-cygwin)
compiled by GNU C version 3.4.4 (cygming special) (gdc 0.12, using dmd
0.125).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 37c50bca8d9aa79de709cfd6b183fd23
search/reco-stack.cc:85: internal compiler error: in maybe_emit_vtables, at
cp/decl2.c:1548
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.


-- 


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



[Bug rtl-optimization/27671] [4.2 Regression] optimization error on pentium4-Linux with %, regression from gcc-4.1.0

2006-05-18 Thread kazu at gcc dot gnu dot org


-- 

kazu at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug bootstrap/27673] New: Gcc failed to bootstrap on Linux

2006-05-18 Thread hjl at lucon dot org
With revision 113891, I got

[EMAIL PROTECTED] libiberty]$ cat foo.c
typedef int __io_write_fn (void *__cookie, __const char *__buf,
 int __n);

int
main ()
{
  return 0;
}
[EMAIL PROTECTED] libiberty]$
/export/build/gnu/gcc/build-x86_64-linux/./prev-gcc/xgcc
-B/export/build/gnu/gcc/build-x86_64-linux/./prev-gcc/
-B/usr/gcc-4.2/x86_64-unknown-linux-gnu/bin/  -g -O2foo.c
foo.c:6: error: ‘[*]’ not allowed in other than function prototype scope


-- 
   Summary: Gcc failed to bootstrap on Linux
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: blocker
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl at lucon dot org


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||mrs at apple dot com
  Component|bootstrap   |c
   Keywords||build
Summary|Gcc failed to bootstrap on  |[4.2 Regression] Gcc failed
   |Linux   |to bootstrap on Linux
   Target Milestone|--- |4.2.0


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-19 01:01 ---
Hmm, this testcase works for me on x86-linux-gnu.


-- 


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-19 01:04 ---
Which stage is this with?


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-19 01:05 ---
Also this bug report is not that useful without how you configure gcc, etc as
all mentioned on the bugs page.


-- 


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



[Bug bootstrap/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread hjl at lucon dot org


--- Comment #4 from hjl at lucon dot org  2006-05-19 01:14 ---
Gcc is configured with

/net/gnu-13/export/gnu/src/gcc/gcc/configure \
 \
--enable-clocale=gnu --with-system-zlib --with-demangler-in-ld \
 \
--enable-shared \
--enable-threads=posix \
--enable-haifa \
--enable-checking=assert \
--prefix=/usr/gcc-4.2 \
--with-local-prefix=/usr/local

The stage1 compiler failed.


-- 

hjl at lucon dot org changed:

   What|Removed |Added

 Status|WAITING |NEW
  Component|c   |bootstrap
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-19 01:14:40
   date||
   Target Milestone|4.2.0   |---


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #5 from pinskia at gcc dot gnu dot org  2006-05-19 01:15 ---
I do get a failure like this in my bootstrap, just not with your testcase. I
will attach a testcase once I reduce it.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|bootstrap   |c
   Last reconfirmed|2006-05-19 01:14:40 |2006-05-19 01:15:25
   date||
   Target Milestone|--- |4.2.0


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #6 from pinskia at gcc dot gnu dot org  2006-05-19 01:33 ---
Here is a testcase that fails for x86-linux-gnu:
struct hblk{int i;};
void GC_check_heap_block(register struct hblk *hbp);
void GC_check_heap_proc(){}


-- 


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread mrs at apple dot com


--- Comment #7 from mrs at apple dot com  2006-05-19 01:39 ---
I'm building a cross compiler now...


-- 


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #8 from pinskia at gcc dot gnu dot org  2006-05-19 01:39 ---
The error message does not even make sense for either of the cases listed here.


-- 


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #9 from pinskia at gcc dot gnu dot org  2006-05-19 01:40 ---
(In reply to comment #7)
 I'm building a cross compiler now...

Just try the testcases on a native compiler, there should be no difference.


-- 


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread mrs at apple dot com


--- Comment #10 from mrs at apple dot com  2006-05-19 02:11 ---
A stage1 cross compiler with --enable-checking=assert targeting
--target=i686-unknown-linux-gnu hosted on darwin doesn't seem to fail, nor does
a darwin native compiler with --enable-checking=assert.  I've reviewed the
code, and it all looks very safe wrt the data structures.  I'm expected an
uninitialized scope data structure, but I see they carefully zero it and manage
it cleared.  Anybody have any hints, I'll see if I can dig out a linux box to
try next.


-- 


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



[Bug c++/27506] [4.2 Regression] bitfield enum handling regression

2006-05-18 Thread mmitchel at gcc dot gnu dot org


--- Comment #5 from mmitchel at gcc dot gnu dot org  2006-05-19 03:01 
---
Subject: Bug 27506

Author: mmitchel
Date: Fri May 19 03:01:14 2006
New Revision: 113902

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113902
Log:
PR c++/27471
PR c++/27506
* typeck.c (decay_conversion): Convert bitfields to their declared
types here.  Improve documentation.  Avoid use of cp_convert.
(default_conversion): Make it static.  Perform integral promotions
before lvalue-to-rvalue, function-to-pointer, and array-to-pointer
conversions.
* init.c (build_init): Remove.
(expand_default_init): Do not call rvalue.
* call.c (null_ptr_cst_p): Robustify.
(build_conditional_expr): Tidy.
* except.c (build_throw): Do not perform lvalue-to-rvalue
conversion on operand before initializing temporary.
* tree.c (convert.h): Include it.
(convert_bitfield_to_declared_type): Use convert_to_integer, not
cp_convert.
(rvalue): Don't convert bitfields to their declared type here.
* cp-tree.h (build_init): Remove.
(default_conversion): Likewise.
* typeck2.c (build_m_component_ref): Do not perform
lvalue-to-rvalue, function-to-pointer, or array-to-pointer
conversions here.  Correct error message.
PR c++/27471
PR c++/27506
* g++.dg/conversion/bitfield5.C: New test.
* g++.dg/conversion/bitfield6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/conversion/bitfield5.C
trunk/gcc/testsuite/g++.dg/conversion/bitfield6.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/except.c
trunk/gcc/cp/init.c
trunk/gcc/cp/tree.c
trunk/gcc/cp/typeck.c
trunk/gcc/cp/typeck2.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/27471] [4.2 Regression] ICE within build_c_cast cp/typeck.c:5434

2006-05-18 Thread mmitchel at gcc dot gnu dot org


--- Comment #4 from mmitchel at gcc dot gnu dot org  2006-05-19 03:01 
---
Subject: Bug 27471

Author: mmitchel
Date: Fri May 19 03:01:14 2006
New Revision: 113902

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113902
Log:
PR c++/27471
PR c++/27506
* typeck.c (decay_conversion): Convert bitfields to their declared
types here.  Improve documentation.  Avoid use of cp_convert.
(default_conversion): Make it static.  Perform integral promotions
before lvalue-to-rvalue, function-to-pointer, and array-to-pointer
conversions.
* init.c (build_init): Remove.
(expand_default_init): Do not call rvalue.
* call.c (null_ptr_cst_p): Robustify.
(build_conditional_expr): Tidy.
* except.c (build_throw): Do not perform lvalue-to-rvalue
conversion on operand before initializing temporary.
* tree.c (convert.h): Include it.
(convert_bitfield_to_declared_type): Use convert_to_integer, not
cp_convert.
(rvalue): Don't convert bitfields to their declared type here.
* cp-tree.h (build_init): Remove.
(default_conversion): Likewise.
* typeck2.c (build_m_component_ref): Do not perform
lvalue-to-rvalue, function-to-pointer, or array-to-pointer
conversions here.  Correct error message.
PR c++/27471
PR c++/27506
* g++.dg/conversion/bitfield5.C: New test.
* g++.dg/conversion/bitfield6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/conversion/bitfield5.C
trunk/gcc/testsuite/g++.dg/conversion/bitfield6.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/except.c
trunk/gcc/cp/init.c
trunk/gcc/cp/tree.c
trunk/gcc/cp/typeck.c
trunk/gcc/cp/typeck2.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/27506] [4.2 Regression] bitfield enum handling regression

2006-05-18 Thread mmitchel at gcc dot gnu dot org


--- Comment #6 from mmitchel at gcc dot gnu dot org  2006-05-19 03:05 
---
Fixed in 4.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=27506



[Bug c++/27471] [4.2 Regression] ICE within build_c_cast cp/typeck.c:5434

2006-05-18 Thread mmitchel at gcc dot gnu dot org


--- Comment #5 from mmitchel at gcc dot gnu dot org  2006-05-19 03:06 
---
Fixed in 4.2.0.


-- 

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



[Bug bootstrap/27674] New: [4.2 Regression] make -j3 all-gcc fails when building natively

2006-05-18 Thread pinskia at gcc dot gnu dot org
pc64:~/src/newtest/trunk/objdir make -j3 all-gcc
cat: stage_last: No such file or directory
make: invalid option -- a
Usage: make [options] [target] ...
Report bugs to bug-make@gnu.org
make: *** [configure-build-libiberty] Error 2
make: *** Waiting for unfinished jobs


-- 
   Summary: [4.2 Regression] make -j3 all-gcc fails when building
natively
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Keywords: build
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pinskia at gcc dot gnu dot org


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



[Bug bootstrap/27674] [4.2 Regression] make -j3 all-gcc fails when building natively

2006-05-18 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.2.0


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



[Bug c/27673] [4.2 Regression] Gcc failed to bootstrap on Linux

2006-05-18 Thread mrs at apple dot com


--- Comment #11 from mrs at apple dot com  2006-05-19 04:01 ---
Ok, just finished a:

  configure --enable-languages=c

native build for i686-pc-linux-gnu, worked just fine...  I'll try an expanded
configure line next...


-- 


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



[Bug c/27675] New: Compiler crash building PHP component

2006-05-18 Thread drnj at redherring dot co dot uk
System: Linksys NSLU2 with OpenSlug - Linux slugdev 2.6.12.2 #1 Tue Sep 27
20:21:18 CDT 2005 armv5teb unknown

Gcc 3.4.4

DOwnload and unack php 5.1.2
./configure --prefix=/redh/bin/php --with-apxs2=/redh/bin/apache2/bin/apxs

starts compilation then

/ext/date/ -DPHP_ATOM_INC -I/redh/dev/php-5.1.2/include
-I/redh/dev/php-5.1.2/main -I/redh/dev/php-5.1.2 -I/usr/local/include/libxml2
-I/redh/dev/php-5.1.2/ext/date/lib -I/redh/dev/php-5.1.2/TSRM
-I/redh/dev/php-5.1.2/Zend-I/usr/include -g -O2   -c
/redh/dev/php-5.1.2/ext/date/lib/dow.c -o ext/date/lib/dow.lo
/bin/sh /redh/dev/php-5.1.2/libtool --silent --preserve-dup-deps --mode=compile
gcc -Iext/date/lib -Iext/date/ -I/redh/dev/php-5.1.2/ext/date/ -DPHP_ATOM_INC
-I/redh/dev/php-5.1.2/include -I/redh/dev/php-5.1.2/main -I/redh/dev/php-5.1.2
-I/usr/local/include/libxml2 -I/redh/dev/php-5.1.2/ext/date/lib
-I/redh/dev/php-5.1.2/TSRM -I/redh/dev/php-5.1.2/Zend-I/usr/include -g -O2 
 -c /redh/dev/php-5.1.2/ext/date/lib/parse_date.c -o ext/date/lib/parse_date.lo
gcc: Internal error: Killed (program cc1)
Please submit a full bug report.
See URL:http://gcc.gnu.org/bugs.html for instructions.
make: *** [ext/date/lib/parse_date.lo] Error 1


-- 
   Summary: Compiler crash building PHP component
   Product: gcc
   Version: 3.4.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: drnj at redherring dot co dot uk


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



[Bug c/27675] Compiler crash building PHP component

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-19 05:39 ---
gcc: Internal error: Killed (program cc1)
You ran out of memory.

How much memory do you have?
People build PHP all the time.


-- 


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



[Bug c/27675] Compiler crash building PHP component

2006-05-18 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-19 05:40 ---
One more thing, can you attach the preprocessed source?


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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