[Bug tree-optimization/32328] [4.2 Regression] -fstrict-aliasing causes skipped code

2007-09-04 Thread giovannibajo at libero dot it


--- Comment #25 from giovannibajo at libero dot it  2007-09-05 06:47 ---
Daniel, can we backport this patch to 4.2, please? It's a P1 regression!


-- 


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



[Bug bootstrap/33309] gcc.c:6236: error: passing argument 1 of 'xputenv' discards qualifiers from pointer target type

2007-09-04 Thread ghazi at gcc dot gnu dot org


--- Comment #2 from ghazi at gcc dot gnu dot org  2007-09-05 06:17 ---
(In reply to comment #1)
> I think I'll let Kaveh fix this one...

To what exactly do I owe this honor? :-)

AFAICT, this is a -Wwrite-strings error caused by a patch by FX:
http://gcc.gnu.org/ml/gcc-patches/2007-08/msg02280.html

A quick fix might be to do ASTRDUP on the INIT_ENVIRONMENT string.  It's okay
to use stack space for putenv strings here because we're in main().  However I
seem to recall a problem with alloca passed as a function argument in some
ancient version of gcc.  So it'll need an intermediate tmp variable, or use
xstrdup to avoid alloca.

Another option would be to constify xputenv and use CONST_CAST on the argument
passed to putenv.

A third option would be to constify xputenv and fixinclude putenv on those
platforms where it isn't const.


-- 

ghazi at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||fxcoudert at gmail dot com


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



[Bug c++/33094] [4.2/4.3 Regression] ICE on valid C++ virtual template static member in anonymous namespace

2007-09-04 Thread ian at airs dot com


--- Comment #4 from ian at airs dot com  2007-09-05 06:03 ---
I haven't looked further at this since this message:

http://gcc.gnu.org/ml/gcc-patches/2007-08/msg01166.html

Testing DECL_EXTERNAL_LINKAGE_P does not make any difference: the compiler
still crashes.  The decl in question is

 
unit size 
align 32 symtab 0 alias set -1 canonical type 0xb7d378dc precision 32
min  max >
readonly used private static tree_1 tree_2 tree_3 nonlocal decl_3 decl_5
decl_6 SI file /home/iant/foo1.cc line 8 size  unit
size 
align 32 context  initial 
template-info 0xb7d3c444 chain >


-- 


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



[Bug tree-optimization/33136] [4.1/4.2/4.3 Regression] wrong code due to alias with allocation in loop

2007-09-04 Thread jakub at gcc dot gnu dot org


--- Comment #26 from jakub at gcc dot gnu dot org  2007-09-05 05:46 ---
This is just one bug, present in GCC 4.1 and onwards, no need to have
several bug ids.
tree-ssa-alias.c just uses ipa_type_escape_field_does_not_clobber_p
incorrectly, it asks an unrelated question and based on the answer decides
if things can or can't alias.  There are testcases where this bug exhibits
only in some gcc versions (e.g.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33136#c7 ), because it depends
on what exactly other optimization passes do, and other testcases, like #c8,
which fail in all 4.1+ GCCs.


-- 


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



[Bug middle-end/33029] [4.3 Regression] libgcc2.c:1890: internal compiler error: in local_cprop_pass, at gcse.c:3236

2007-09-04 Thread ian at airs dot com


--- Comment #15 from ian at airs dot com  2007-09-05 05:34 ---
Fixed.


-- 

ian at airs dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug middle-end/33029] [4.3 Regression] libgcc2.c:1890: internal compiler error: in local_cprop_pass, at gcse.c:3236

2007-09-04 Thread ian at gcc dot gnu dot org


--- Comment #14 from ian at gcc dot gnu dot org  2007-09-05 05:31 ---
Subject: Bug 33029

Author: ian
Date: Wed Sep  5 05:31:37 2007
New Revision: 128119

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128119
Log:
PR middle-end/33029
* lower-subreg.c (resolve_clobber): If we remove a REG_LIBCALL
note, remove the associated REG_RETVAL note.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/lower-subreg.c


-- 


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



[Bug libgcj/33278] [4.3 Regression] libjava fails to compile if configure argument contains "version"

2007-09-04 Thread belyshev at depni dot sinp dot msu dot ru


--- Comment #5 from belyshev at depni dot sinp dot msu dot ru  2007-09-05 
05:10 ---
Fixed.


-- 

belyshev at depni dot sinp dot msu dot ru changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug libstdc++/31906] "-Xcompiler" is inserted after "-Xlinker" when building libstdc++

2007-09-04 Thread prj-bugzilla-gcc at multivac dot cwru dot edu


--- Comment #13 from prj-bugzilla-gcc at multivac dot cwru dot edu  
2007-09-05 04:49 ---
(In reply to comment #12)
> I'd certainly like to see this fixed in 4.2.2

Will someone be reviewing and committing this before 4.2.2?  I posted it to
gcc-patches with a ChangeLog entry, but there was no response:
http://gcc.gnu.org/ml/gcc-patches/2007-07/msg00920.html


-- 


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



[Bug tree-optimization/33299] [4.3 Regression] miscompilation with gfortran -O2 -ffast-math -ftree-vectorize

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug libgcj/33278] [4.3 Regression] libjava fails to compile if configure argument contains "version"

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #4 from mmitchel at gcc dot gnu dot org  2007-09-05 02:24 
---
Since a patch has been checked in, can this issue be closed?


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P5


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



[Bug libgcj/33263] [4.3 regression] libjava testsuite failures on alpha-linux

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P5


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



[Bug tree-optimization/33237] [4.3 Regression]Tree memory partitioning is spending 430 seconds of a 490 second compile.

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug c++/33213] [4.3 regression] Broken diagnostic: 'type_pack_expansion' not supported by dump_decl

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug c++/33207] [4.3 regression] ICE redeclaring namespace as struct

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P4


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



[Bug libstdc++/33203] [4.3 regression] libstdc++-v3 build broken on i386-pc-mingw32

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug middle-end/33199] [4.3 Regression] tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug c++/33185] [4.3 Regression] ICE: canonical types differ for identical types T [] and T []

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug target/33184] [4.3 Regression] m32c: ostream.tcc:92: error: unable to find a register to spill in class 'A_REGS'

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P5


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



[Bug tree-optimization/33146] [4.3 Regression] ICE in build_polynomial_chrec, at tree-chrec.h:136

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug tree-optimization/33140] [4.3 Regression] ICE in build2_stat, at tree.c:3115

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug target/33138] [4.3 Regression] rejects valid? assembler, segfaults

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug target/33133] [4.3 Regression] ICE in try_ready, at haifa-sched.c:2958 with -O3

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug bootstrap/33309] gcc.c:6236: error: passing argument 1 of 'xputenv' discards qualifiers from pointer target type

2007-09-04 Thread danglin at gcc dot gnu dot org


--- Comment #1 from danglin at gcc dot gnu dot org  2007-09-05 01:50 ---
I think I'll let Kaveh fix this one...

On hpux and in libiberty, putenv takes a const char * while on other os's
it takes a char *.  xputenv doesn't do anything that would affect the
constantness of its argument.

Thus, it doesn't seem reasonable to do something ugly to the definition of
INIT_ENVIRONMENT in pa64-hpux.h to resolve this regression.


-- 

danglin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ghazi at caip dot rutgers
   ||dot edu
Summary|gcc.c:6236: error: passing  |gcc.c:6236: error: passing
   |argument 1 of 'xputenv' |argument 1 of 'xputenv'
   |discards qualif |discards qualifiers from
   |iers from pointer target|pointer target type
   |type|


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



[Bug target/32552] [4.3 Regression] Runtime failure in SPEC CPU2000 benchmark fma3d and applu

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug c++/33118] [4.3 Regression] #'argument_pack_select' not supported by dump_expr#

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug tree-optimization/33107] [4.3 regression] segfault in garbage collector

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug middle-end/33092] [4.3 Regrsssion] Using -O1 -fno-tree-salias results in ICE

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #3 from mmitchel at gcc dot gnu dot org  2007-09-05 01:31 
---
I'm all for removing optimization options if we don't ever want to turn them
off.  Fewer options would be better...


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug libfortran/32841] [4.3 regression] HUGE(1.0d0) output as +Infinity on ppc-darwin8

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P5


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



gcc-bugs@gcc.gnu.org

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug target/32552] [4.3 Regression] Runtime failure in SPEC CPU2000 benchmark fma3d and applu

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #10 from mmitchel at gcc dot gnu dot org  2007-09-05 01:28 
---
To answer Jakub's question: 

> So, what can be done to speed up acceptance of this?

Jim is a GWP maintainer, so once he's happy the patch can go in.  Testing on
IA64 definitely seems like a good step. :-)


-- 


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



[Bug rtl-optimization/31849] [4.3 Regression] Code size regression caused by fix to PR 31360

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug rtl-optimization/32300] [4.3 Regression] ICE with -O2 -fsee

2007-09-04 Thread zadeck at naturalbridge dot com


--- Comment #13 from zadeck at naturalbridge dot com  2007-09-05 01:24 
---
Subject: Re:  [4.3 Regression] ICE with -O2 -fsee

jakub at gcc dot gnu dot org wrote:
> --- Comment #12 from jakub at gcc dot gnu dot org  2007-09-04 23:37 
> ---
> Fixed.
>
>
>   
jakub

thanks for doing this.  The changes to df are fine, but i think that it
exceeds my authority to approve more than that.

kenny


-- 


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



[Bug c++/33239] [4.1/4.2/4.3 Regression] internal compiler error in instantiate_class_template, at cp/pt.c:5666

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug c/33238] [4.1/4.2/4.3 Regression] ICE on statement expression using variable-sized structure in tree_low_cst, at tree.c:4502

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug c++/33210] [4.1/4.2 Regression] Broken diagnostics: 'bound_template_template_parm' not supported by pp_cxx_unqualified_id/dump_decl

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #6 from mmitchel at gcc dot gnu dot org  2007-09-05 01:10 
---
It would be nice to fix this on the 4.2 branch, but certainly not a priority.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P5


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



[Bug middle-end/33195] [4.2 Regression] ICE: calc_dfs_tree, at dominance.c:374

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug tree-optimization/33136] [4.1/4.2/4.3 Regression] wrong code due to alias with allocation in loop

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #25 from mmitchel at gcc dot gnu dot org  2007-09-05 01:08 
---
It's not clear to me what's going on in this PR.  At one point, Jakub seems to
be saying that 4.2 does a better job than 4.1, which would suggest that this is
just a 4.1.x PR?  Can we split this into one PR for 4.1-only issues, and
another one or two, for 4.2 and/or 4.3 issues?


-- 


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



[Bug tree-optimization/33099] [4.2 Regression] Scalar evolutions confusing VRP with pointer values that wrap around

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug bootstrap/33309] New: gcc.c:6236: error: passing argument 1 of 'xputenv' discards qualif iers from pointer target type

2007-09-04 Thread danglin at gcc dot gnu dot org
/test/gnu/gcc/objdir/./prev-gcc/xgcc -B/test/gnu/gcc/objdir/./prev-gcc/
-B/opt/gnu64/gcc/gcc-4.3.0/hppa64-hp-hpux11.11/bin/   -g -O2 -DIN_GCC   -W
-Wall
 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition
 -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros
 -Wno-overlength-strings -Werror -fno-common  
-DHAV
E_CONFIG_H -I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/../include
-I../../gcc/gcc/../libcpp/include -I/opt/gnu64/gcc/gcc-4.3.0/include 
-I../../gc
c/gcc/../libdecnumber -I../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber   
\
  -DSTANDARD_STARTFILE_PREFIX=\"../../../\"
-DSTANDARD_EXEC_PREFIX=\"/opt/gnu64/
gcc/gcc-4.3.0/lib/gcc/\"
-DSTANDARD_LIBEXEC_PREFIX=\"/opt/gnu64/gcc/gcc-4.3.0/li
bexec/gcc/\" -DDEFAULT_TARGET_VERSION=\"4.3.0\"
-DDEFAULT_TARGET_MACHINE=\"hppa6
4-hp-hpux11.11\" -DSTANDARD_BINDIR_PREFIX=\"/opt/gnu64/gcc/gcc-4.3.0/bin/\"
-DTO
OLDIR_BASE_PREFIX=\"../../../../\"  `test "X${SHLIB_LINK}" = "X" || test "yes"
!
= "yes" || echo "-DENABLE_SHARED_LIBGCC"` \
  -c ../../gcc/gcc/gcc.c -o gcc.o)
cc1: warnings being treated as errors
../../gcc/gcc/gcc.c: In function 'main':
../../gcc/gcc/gcc.c:6236: error: passing argument 1 of 'xputenv' discards
qualif
iers from pointer target type

Ugh.


-- 
   Summary: gcc.c:6236: error: passing argument 1 of 'xputenv'
discards qualif
iers from pointer target type
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa64-hp-hpux11*
  GCC host triplet: hppa64-hp-hpux11*
GCC target triplet: hppa64-hp-hpux11*


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



[Bug c++/33094] [4.2/4.3 Regression] ICE on valid C++ virtual template static member in anonymous namespace

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #3 from mmitchel at gcc dot gnu dot org  2007-09-05 01:00 
---
Ian, I know that we talked about this on the mailing list at one point.  Did
this get resolved?  Does changing the assert to check DECL_EXTERNAL_LINKAGE_P
instead of DECL_EXTERNAL help?


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug tree-optimization/32723] [4.2 Regression] memory hog in solve_graph

2007-09-04 Thread mmitchel at gcc dot gnu dot org


--- Comment #13 from mmitchel at gcc dot gnu dot org  2007-09-05 00:58 
---
Do we have any way to work out whether this is still a problem?  Richard seems
to think the bug has been fixed, but Pascal is still seeing the problem,
apparently.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P2


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



[Bug libfortran/33225] Missing last digit in some formatted output (on 32bit targets), per kind write_float

2007-09-04 Thread jvdelisle at gcc dot gnu dot org


--- Comment #20 from jvdelisle at gcc dot gnu dot org  2007-09-05 00:51 
---
Subject: Bug 33225

Author: jvdelisle
Date: Wed Sep  5 00:51:18 2007
New Revision: 128114

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128114
Log:
2007-03-04  Jerry DeLisle  <[EMAIL PROTECTED]>

PR libfortran/33225
* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
new file write_float.def. Include write_float.def.
(extract_real): Delete. (calculate_sign): Delete.
(calculate_exp): Delete. (calculate_G_format): Delete.
(output_float): Delete. (write_float): Delete.
* io/write_float.def (calculate_sign): Added.
(output_float): Refactored to be independent of kind and added to this
file for inclusion. (write_infnan): New function to write "Infinite" or
"NaN" depending on flags passed, independent of kind.
(CALCULATE_EXP): New macro to build kind specific functions. Use it.
(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
(DTOA, DTOAL): Macros to implement "decimal to ascii".
(WRITE_FLOAT): New macro for kind specific write_float functions.
(write_float): Revised function to determine kind and use WRITE_FLOAT
to implement kind specific output.

Added:
trunk/libgfortran/io/write_float.def
Modified:
trunk/libgfortran/ChangeLog
trunk/libgfortran/io/write.c


-- 


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



[Bug tree-optimization/32694] [4.1/4.2 Regression] ICE in chain_of_csts_start

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug middle-end/32575] [4.2/4.3 regression] With -ftree-vrp miscompiles a single line of code in SQLite

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug tree-optimization/32544] [4.2 Regression] miscompiles Mesa's r300 DRI driver with -ftree-vrp

2007-09-04 Thread mmitchel at gcc dot gnu dot org


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1


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



[Bug fortran/33307] I/O read/positioning problem

2007-09-04 Thread jvdelisle at gcc dot gnu dot org


--- Comment #2 from jvdelisle at gcc dot gnu dot org  2007-09-05 00:11 
---
I have been waiting for this to emerge.  We knew there was a problem somewhere.


-- 

jvdelisle at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jvdelisle at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-09-05 00:11:16
   date||


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



[Bug rtl-optimization/32300] [4.3 Regression] ICE with -O2 -fsee

2007-09-04 Thread jakub at gcc dot gnu dot org


--- Comment #12 from jakub at gcc dot gnu dot org  2007-09-04 23:37 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/33017] [4.3 Regression] tree check fail for legal code

2007-09-04 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2007-09-04 23:35 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug rtl-optimization/32300] [4.3 Regression] ICE with -O2 -fsee

2007-09-04 Thread jakub at gcc dot gnu dot org


--- Comment #11 from jakub at gcc dot gnu dot org  2007-09-04 23:31 ---
Subject: Bug 32300

Author: jakub
Date: Tue Sep  4 23:31:11 2007
New Revision: 128108

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128108
Log:
PR rtl-optimization/32300
* see.c (see_copy_insn): New function.
(see_def_extension_not_merged, see_merge_one_use_extension,
see_merge_one_def_extension): Use it.  Avoid changing
PREV_INSN/NEXT_INSN chains directly, insted emit insns
into sequences.  Call df_insn_delete on temporary insns
that won't be emitted into the insn stream.
(rest_of_handle_see): Turn off DF_DEFER_INSN_RESCAN
and run df_process_deferred_rescans () before run_fast_dce.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/see.c


-- 


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



[Bug tree-optimization/33017] [4.3 Regression] tree check fail for legal code

2007-09-04 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2007-09-04 23:30 ---
Subject: Bug 33017

Author: jakub
Date: Tue Sep  4 23:29:58 2007
New Revision: 128107

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128107
Log:
PR tree-optimization/33017
* tree-data-ref.c (split_constant_offset) : Don't
recurse for pure or const function calls.

* gcc.dg/pr33017.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/pr33017.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-data-ref.c


-- 


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



[Bug fortran/33308] gfortran 4.2.1 ICE on allocated_array = reshaped_parameter_array + function_returning_array

2007-09-04 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2007-09-04 22:00 ---
This works on the trunk (which is 4.3.0).


-- 


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



[Bug fortran/33308] gfortran 4.2.1 ICE on allocated_array = reshaped_parameter_array + function_returning_array

2007-09-04 Thread t_nissie at yahoo dot co dot jp


--- Comment #1 from t_nissie at yahoo dot co dot jp  2007-09-04 21:54 
---
Created an attachment (id=14157)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14157&action=view)
compile: gfortran reshapetest.f90


-- 


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



[Bug fortran/33308] New: gfortran 4.2.1 ICE on allocated_array = reshaped_parameter_array + function_returning_array

2007-09-04 Thread t_nissie at yahoo dot co dot jp
I got ICE on i686-pc-linux-gnu, x86_64-unknown-linux-gnu and
ia64-unknown-linux-gnu with gfortran 4.2.1.

$ gfortran -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../configure --prefix=/usr --enable-languages=c,c++,fortran
Thread model: posix
gcc version 4.2.1
$ cat reshapetest.f90
! reshapetest.f90 -*-f90-*-
!!
function f()
  implicit none
  real*8 :: f(3,3)
  f(:,:) = 1.0d0
end function f

program reshapetest
  implicit none
  real*8, allocatable :: c(:,:)
  real*8, parameter :: one(3,3) = reshape((/1.0d0, 0.0d0, 0.0d0, &
0.0d0, 1.0d0, 0.0d0, &
0.0d0, 0.0d0, 1.0d0/),(/3,3/))
  interface
 function f()
   implicit none
   real*8 :: f(3,3)
 end function f
  end interface
  allocate(c(3,3))
  c(:,:) = one(:,:) + f()   ! internal compiler error
  write(6,'(3f4.1)') c(:,:)
end program reshapetest
$ gfortran reshapetest.f90
reshapetest.f90: In function 'MAIN__':
reshapetest.f90:21: internal compiler error: in gfc_trans_array_constructor, at
fortran/trans-array.c:1467
   :
$ g95 reshapetest.f90
$ ./a.out
 2.0 1.0 1.0
 1.0 2.0 1.0
 1.0 1.0 2.0


-- 
   Summary: gfortran 4.2.1 ICE on allocated_array =
reshaped_parameter_array + function_returning_array
   Product: gcc
   Version: 4.2.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: t_nissie at yahoo dot co dot jp
 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=33308



[Bug libgcj/33278] [4.3 Regression] libjava fails to compile if configure argument contains "version"

2007-09-04 Thread doko at gcc dot gnu dot org


--- Comment #3 from doko at gcc dot gnu dot org  2007-09-04 21:32 ---
Subject: Bug 33278

Author: doko
Date: Tue Sep  4 21:32:41 2007
New Revision: 128104

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128104
Log:
2007-09-05  Matthias Klose  <[EMAIL PROTECTED]>

PR libgcj/33278
* configure.ac: Robustify extraction of gcj version.
* configure: Regenerate.

Modified:
trunk/libjava/ChangeLog
trunk/libjava/configure
trunk/libjava/configure.ac


-- 


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



[Bug libfortran/33298] Wrong code for SPREAD on zero-sized arrays

2007-09-04 Thread tkoenig at gcc dot gnu dot org


--- Comment #7 from tkoenig at gcc dot gnu dot org  2007-09-04 21:03 ---
This one should be fairly straightforward.

Mine :-)


-- 

tkoenig at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||tkoenig at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |tkoenig at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-09-04 10:51:29 |2007-09-04 21:03:23
   date||


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



[Bug c++/31419] [4.1/4.2/4.3 regression] template user defined conversion operator instantiated for conversion to self

2007-09-04 Thread jason at gcc dot gnu dot org


--- Comment #6 from jason at gcc dot gnu dot org  2007-09-04 20:18 ---
Subject: Bug 31419

Author: jason
Date: Tue Sep  4 20:18:05 2007
New Revision: 128102

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128102
Log:
PR c++/31419
* call.c (reference_binding): Don't look for user-defined conversions
to the same type.

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


-- 


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



[Bug fortran/33307] I/O read/positioning problem

2007-09-04 Thread anlauf at gmx dot de


--- Comment #1 from anlauf at gmx dot de  2007-09-04 20:00 ---
Created an attachment (id=14156)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14156&action=view)
Demo code

Use with the file "gfcbug69.nml" from the bug description (3 lines),
and compare with a run with the first line of "gfcbug69.nml" removed.


-- 


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



[Bug fortran/33307] New: I/O read/positioning problem

2007-09-04 Thread anlauf at gmx dot de
The attached program exhibits a strange problem with gfortran
when repeatedly trying to position within an input file,
and which I have been hunting for a long time.
The program is supposed to work as follows:

- open input file
- do
-   rewind
-   repeatedly search for lines containing a special text
- end do

The program always succeeds in finding the occurence of the
first text, but fails to find the second text if the first
text does *not* occur on the first text line.

Example 1:
% cat gfcbug69.nml 
! ***Remove this line***
&FOOfile='foo' /
&BARfile='bar' /
% gfc -g -Wall -std=f2003 gfcbug69.f90
% ./a.out 
inquire: after OPEN: position = ASIS  nextrec = 0
 --
inquire: after REWIND: position = REWINDnextrec = 0

position_nml: Scanning for: FOO
position_nml: SUCCESS!  line= &FOOfile='foo' /
inquire: after position_nml: position = ASIS  nextrec = 0

 *** Found: &FOOfile='foo' /

position_nml: Scanning for: FOO
position_nml: FAIL: ios=   -1
inquire: after position_nml: position = APPENDnextrec = 0
 --
inquire: after REWIND: position = REWINDnextrec = 0

position_nml: Scanning for: BAR
position_nml: FAIL: ios=   -1
inquire: after position_nml: position = REWINDnextrec = 0
 --


Removing the indicated line from the text file leads to:
% ./a.out
inquire: after OPEN: position = ASIS  nextrec = 0
 --
inquire: after REWIND: position = REWINDnextrec = 0

position_nml: Scanning for: FOO
position_nml: SUCCESS!  line= &FOOfile='foo' /
inquire: after position_nml: position = REWINDnextrec = 0

 *** Found: &FOOfile='foo' /

position_nml: Scanning for: FOO
position_nml: FAIL: ios=   -1
inquire: after position_nml: position = APPENDnextrec = 0
 --
inquire: after REWIND: position = REWINDnextrec = 0

position_nml: Scanning for: BAR
position_nml: SUCCESS!  line= &BARfile='bar' /
inquire: after position_nml: position = ASIS  nextrec = 0

 *** Found: &BARfile='bar' /

position_nml: Scanning for: BAR
position_nml: FAIL: ios=   -1
inquire: after position_nml: position = ASIS  nextrec = 0
 --


Comparing the two results shows:
% diff -u out.fail out.success
--- out.fail2007-09-04 21:31:22.0 +0200
+++ out.success 2007-09-04 21:31:14.0 +0200
@@ -4,7 +4,7 @@

 position_nml: Scanning for: FOO
 position_nml: SUCCESS!  line= &FOOfile='foo' /
-inquire: after position_nml: position = ASIS  nextrec = 0
+inquire: after position_nml: position = REWINDnextrec = 0

  *** Found: &FOOfile='foo' /

@@ -15,6 +15,12 @@
 inquire: after REWIND: position = REWINDnextrec = 0

 position_nml: Scanning for: BAR
+position_nml: SUCCESS!  line= &BARfile='bar' /
+inquire: after position_nml: position = ASIS  nextrec = 0
+
+ *** Found: &BARfile='bar' /
+
+position_nml: Scanning for: BAR
 position_nml: FAIL: ios=   -1
-inquire: after position_nml: position = REWINDnextrec = 0
+inquire: after position_nml: position = ASIS  nextrec = 0
  --


For some reason the file position after attempting to find the second
text is still "REWIND".  This may only be a cosmetic problem, but
it could be a hint towards the source of the problem.


-- 
   Summary: I/O read/positioning problem
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: anlauf at gmx dot de
  GCC host triplet: i686-pc-linux-gnu


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



[Bug target/31325] gcj support for ARM EABI

2007-09-04 Thread aph at gcc dot gnu dot org


--- Comment #22 from aph at gcc dot gnu dot org  2007-09-04 19:14 ---
Done.


-- 

aph at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/33299] [4.3 Regression] miscompilation with gfortran -O2 -ffast-math -ftree-vectorize

2007-09-04 Thread dorit at gcc dot gnu dot org


--- Comment #4 from dorit at gcc dot gnu dot org  2007-09-04 19:14 ---
(by the way, fast-math should not be required here, but that's a different
bug... will fix that soonish)


-- 


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



[Bug tree-optimization/33299] [4.3 Regression] miscompilation with gfortran -O2 -ffast-math -ftree-vectorize

2007-09-04 Thread dorit at gcc dot gnu dot org


--- Comment #3 from dorit at gcc dot gnu dot org  2007-09-04 19:11 ---
I'm testing this patch:

Index: tree-vect-transform.c
===
*** tree-vect-transform.c   (revision 128037)
--- tree-vect-transform.c   (working copy)
*** vect_create_epilog_for_reduction (tree v
*** 1964,1969 
--- 1964,1971 
tree operation = GIMPLE_STMT_OPERAND (stmt, 1);
bool nested_in_vect_loop = false;
int op_type;
+   VEC(tree,heap) *phis = NULL;
+   int i;

if (nested_in_vect_loop_p (loop, stmt))
  {
*** vect_finalize_reduction:
*** 2260,2270 
epilog_stmt = build_gimple_modify_stmt (new_dest, expr);
new_temp = make_ssa_name (new_dest, epilog_stmt);
GIMPLE_STMT_OPERAND (epilog_stmt, 0) = new_temp;
- #if 0
-   bsi_insert_after (&exit_bsi, epilog_stmt, BSI_NEW_STMT);
- #else
bsi_insert_before (&exit_bsi, epilog_stmt, BSI_SAME_STMT);
- #endif
  }


--- 2262,2268 
*** vect_finalize_reduction:
*** 2274,2318 
   Find the loop-closed-use at the loop exit of the original scalar result.
   (The reduction result is expected to have two immediate uses - one at
the
   latch block, and one at the loop exit).  */
!   exit_phi = NULL;
FOR_EACH_IMM_USE_FAST (use_p, imm_iter, scalar_dest)
  {
if (!flow_bb_inside_loop_p (loop, bb_for_stmt (USE_STMT (use_p
{
  exit_phi = USE_STMT (use_p);
! break;
}
  }
/* We expect to have found an exit_phi because of loop-closed-ssa form.  */
!   gcc_assert (exit_phi);

!   if (nested_in_vect_loop)
  {
!   stmt_vec_info stmt_vinfo = vinfo_for_stmt (exit_phi);

!   /* FORNOW. Currently not supporting the case that an inner-loop
reduction
!is not used in the outer-loop (but only outside the outer-loop).  */
!   gcc_assert (STMT_VINFO_RELEVANT_P (stmt_vinfo) 
! && !STMT_VINFO_LIVE_P (stmt_vinfo));
! 
!   epilog_stmt = adjustment_def ? epilog_stmt :  new_phi;
!   STMT_VINFO_VEC_STMT (stmt_vinfo) = epilog_stmt;
!   set_stmt_info (get_stmt_ann (epilog_stmt),
!  new_stmt_vec_info (epilog_stmt, loop_vinfo));

!   if (vect_print_dump_info (REPORT_DETAILS))
! {
!   fprintf (vect_dump, "vector of partial results after inner-loop:");
!   print_generic_expr (vect_dump, epilog_stmt, TDF_SLIM);
! }
!   return;
  }
- 
-   /* Replace the uses:  */
-   orig_name = PHI_RESULT (exit_phi);
-   FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, orig_name)
- FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
-   SET_USE (use_p, new_temp);
  } 


--- 2272,2313 
   Find the loop-closed-use at the loop exit of the original scalar result.
   (The reduction result is expected to have two immediate uses - one at
the 
   latch block, and one at the loop exit).  */
!   phis = VEC_alloc (tree, heap, 10);
FOR_EACH_IMM_USE_FAST (use_p, imm_iter, scalar_dest)
  {
if (!flow_bb_inside_loop_p (loop, bb_for_stmt (USE_STMT (use_p
{
  exit_phi = USE_STMT (use_p);
! VEC_quick_push (tree, phis, exit_phi);
}
  }
/* We expect to have found an exit_phi because of loop-closed-ssa form.  */
!   gcc_assert (!VEC_empty (tree, phis));

!   for (i = 0; VEC_iterate (tree, phis, i, exit_phi); i++)
  {
!   if (nested_in_vect_loop)
!   {
! stmt_vec_info stmt_vinfo = vinfo_for_stmt (exit_phi);

! /* FORNOW. Currently not supporting the case that an inner-loop
reduction
!is not used in the outer-loop (but only outside the outer-loop). 
*/
! gcc_assert (STMT_VINFO_RELEVANT_P (stmt_vinfo) 
! && !STMT_VINFO_LIVE_P (stmt_vinfo));
!
! epilog_stmt = adjustment_def ? epilog_stmt :  new_phi;
! STMT_VINFO_VEC_STMT (stmt_vinfo) = epilog_stmt;
! set_stmt_info (get_stmt_ann (epilog_stmt),
! new_stmt_vec_info (epilog_stmt, loop_vinfo));
! continue;
!   }

!   /* Replace the uses:  */
!   orig_name = PHI_RESULT (exit_phi);
!   FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, orig_name)
!   FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
! SET_USE (use_p, new_temp);
  }
  } 


-- 


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



[Bug fortran/33271] nint_2.f90 abort compiled with -O0

2007-09-04 Thread dje at gcc dot gnu dot org


--- Comment #9 from dje at gcc dot gnu dot org  2007-09-04 19:11 ---
By the way, nint_2.f90 also fails at -O0 on AIX.


-- 


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



[Bug fortran/33295] ICE in fold_const.c (fold_convert) when reordering USE statements

2007-09-04 Thread pinskia at gmail dot com


--- Comment #5 from pinskia at gmail dot com  2007-09-04 19:08 ---
Subject: Re:  ICE in fold_const.c (fold_convert) when reordering USE statements

On 4 Sep 2007 19:03:39 -, ubizjak at gmail dot com
<[EMAIL PROTECTED]> wrote:
> and c never generates RECORD_TYPEs

Yes it does.  Structs in C are done as RECORD_TYPEs.

This code is just plainly wrong really.  fold_convert should not
handle RECORD_TYPEs.  And if does, it is not going to help with
optimizations anyways.  The Fortran front-end has to better keep track
of modules and types inside modules to get this correct.

Thanks,
Andrew Pinski


-- 


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



[Bug fortran/33295] ICE in fold_const.c (fold_convert) when reordering USE statements

2007-09-04 Thread ubizjak at gmail dot com


--- Comment #4 from ubizjak at gmail dot com  2007-09-04 19:03 ---
(In reply to comment #3)

> Uros, do you think we could, in the fold_convert() switch on TREE_CODE(type),
> add a case for RECORD_TYPE similar to VECTOR_TYPE: assert that both
> RECORD_TYPEs have the same size, and that their fields correspond one-to-one,
> and then create a VIEW_CONVERT_EXPR? Do you think it would be worth having or
> would that hurt the middle-end in any way?

This is not exactly the part of gcc I'm familiar with (and c never generates
RECORD_TYPEs), but I think that this problem should be fixed in
fortran/trans-expr.c. At least according to the comment above fold_convert(),
this conversion should be handled in front-end convert function.

The "patch" below (similar to your proposal, with minimal checking) "works" in
the sense that the compilation doesn't break, and generated code doesn't create
a black hole at runtime, but I have no idea if it is correct (fortran)
transformation. Also, we will break here if sizes are not equal.

Index: fold-const.c
===
--- fold-const.c(revision 128092)
+++ fold-const.c(working copy)
@@ -2616,6 +2616,10 @@
  || TREE_CODE (orig) == VECTOR_TYPE);
   return fold_build1 (VIEW_CONVERT_EXPR, type, arg);

+case RECORD_TYPE:
+  gcc_assert (tree_int_cst_equal (TYPE_SIZE (type), TYPE_SIZE (orig)));
+  return fold_build1 (VIEW_CONVERT_EXPR, type, arg);
+  
 case VOID_TYPE:
   tem = fold_ignored_result (arg);
   if (TREE_CODE (tem) == GIMPLE_MODIFY_STMT)

> 


-- 


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



[Bug c++/31411] [4.1/4.2/4.3 Regression] ICE in gimplify_expr with throw/special copy constructor with initializer with a deconstructor

2007-09-04 Thread jason at gcc dot gnu dot org


--- Comment #8 from jason at gcc dot gnu dot org  2007-09-04 18:37 ---
Subject: Bug 31411

Author: jason
Date: Tue Sep  4 18:37:33 2007
New Revision: 128100

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128100
Log:
PR c++/31411
* except.c (initialize_handler_parm): Put a CLEANUP_POINT_EXPR inside
the MUST_NOT_THROW_EXPR.

Added:
trunk/gcc/testsuite/g++.dg/eh/catch5.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/except.c


-- 


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



[Bug fortran/33241] ICE with parameter string arrays

2007-09-04 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-09-04 18:17 ---
A fix for this one is coming with that for PR31564 - within 48 hours.

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|2007-08-30 13:40:52 |2007-09-04 18:17:16
   date||


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



[Bug fortran/31564] Error: Type/rank mismatch in argument

2007-09-04 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2007-09-04 18:16 ---
To my surprise, I have a fix for this one.  I'll post it to the list in the
next 48 hours.

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|2007-04-22 18:49:14 |2007-09-04 18:16:23
   date||


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



[Bug bootstrap/33100] [4.3 regression] on bootstrap getting section .eh_frame: bad cie version 0: offset 0x0

2007-09-04 Thread ro at gcc dot gnu dot org


--- Comment #1 from ro at gcc dot gnu dot org  2007-09-04 18:10 ---
Confirmed on i386-pc-solaris2.10.  This is a mainline regression.  A reghunt
revealed that this patch

2007-08-06  H.J. Lu  <[EMAIL PROTECTED]>
Daniel Jacobowitz  <[EMAIL PROTECTED]>

PR target/31868
* config.gcc (x86_64-*-freebsd*): Add i386/t-crtstuff to
tmake_file.
(x86_64-*-netbsd*): Likewise.
(x86_64-*-linux*): Likewise.
(x86_64-*-kfreebsd*-gnu): Likewise.
(x86_64-*-knetbsd*-gnu): Likewise.
(i[34567]86-*-solaris2.1[0-9]*): Likewise.

is the culprit: running elfdump on the amd64 crtend.o before and after the
patch, I find (before):

Unwind Section: .eh_frame
CIE: [0x]
 length: 0x00 cieid: 0
 version: 0  augstring: `'
 codealign: 0x0  dataalign: 0  retaddr: 0

vs. (after):

Unwind Section: .eh_frame
 FDE: [0x]
length: 0x00  cieptr: 0x18
initloc: 0x  addrrange: 0x
   Auxiliary vals:
CIE: [0x0004]
 length: 0x18 cieid: 0
 version: 1  augstring: `zR'
 codealign: 0x1  dataalign: -8  retaddr: 16

So the linker seems to be right to complain about this.

  Rainer


-- 

ro at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-09-04 18:10:17
   date||
Summary|on bootstrap getting section|[4.3 regression] on
   |.eh_frame: bad cie version  |bootstrap getting section
   |0: offset 0x0   |.eh_frame: bad cie version
   ||0: offset 0x0


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



[Bug java/27908] VMSecureRandom generateSeed infinite loop? (Regression)

2007-09-04 Thread aph at gcc dot gnu dot org


--- Comment #19 from aph at gcc dot gnu dot org  2007-09-04 18:00 ---
Subject: Bug 27908

Author: aph
Date: Tue Sep  4 18:00:31 2007
New Revision: 128098

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128098
Log:
2007-09-04  Andrew Haley  <[EMAIL PROTECTED]>

PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.

2007-08-29  Andrew Haley  <[EMAIL PROTECTED]>

* gnu/classpath/natVMStackWalker.cc (VMStackWalker::getCallingClass):
Make sure we're not sibcalled.
(GET_CALLING_CLASS): Define for ARM EABI.

2007-08-22  Andrew Haley  <[EMAIL PROTECTED]>

* configure.host (BACKTRACESPEC): Add arm*-linux*.

2007-08-22  Andrew Haley  <[EMAIL PROTECTED]>

* configure.ac (LIBSTDCXXSPEC): New.
* configure.host: Add arm*-linux* to pthread test.
* configure.ac (LIBGCJTESTSPEC): Add path to libstdc++ for ARM
EABI.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use
-fexceptions for ARM EABI.
* testsuite/lib/libjava.exp (libjava_arguments): Add libgcj-test.spec.
(libjava_invoke): Log the invocation.

2007-08-15  Andrew Haley  <[EMAIL PROTECTED]>

* configure.ac (extra_ldflags): Define.
* Makefile.am: Use extra_ldflags for all executables.

2007-08-14  Andrew Haley  <[EMAIL PROTECTED]>

* sysdep/arm/backtrace.h: Remove stubs for _Unwind_GetIPInfo,
_Unwind_GetRegionStart, and _Unwind_Backtrace.

2007-07-27  Andrew Haley  <[EMAIL PROTECTED]>

* gnu/classpath/natVMStackWalker.cc (GET_CALLING_CLASS): Stub for
ARM EABI.
* exception.cc (get_exception_header_from_ue): New.
(get_ttype_entry): ARM EABI version.
(PERSONALITY_FUNCTION): Add ARM EABI code.
* sysdep/arm/backtrace.h: New file.
* stacktrace.cc (_URC_NORMAL_STOP): New.
* configure.ac (extra_ldflags_libjava): Add libsupc++.la for ARM
EABI.
* configure.host (BACKTRACESPEC): Add arm/backtrace.h.


Added:
trunk/libjava/sysdep/arm/backtrace.h
  - copied unchanged from r128085,
branches/gcj/gcj-eabi-branch/libjava/sysdep/arm/backtrace.h
Modified:
trunk/libjava/Makefile.am
trunk/libjava/Makefile.in
trunk/libjava/configure
trunk/libjava/configure.ac
trunk/libjava/configure.host
trunk/libjava/exception.cc
trunk/libjava/gcj/Makefile.in
trunk/libjava/gnu/classpath/natVMStackWalker.cc
trunk/libjava/include/Makefile.in
trunk/libjava/libgcj.spec.in
trunk/libjava/stacktrace.cc
trunk/libjava/testsuite/Makefile.in
trunk/libjava/testsuite/lib/libjava.exp
trunk/libjava/testsuite/libjava.jni/jni.exp


-- 


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



[Bug java/27908] VMSecureRandom generateSeed infinite loop? (Regression)

2007-09-04 Thread aph at gcc dot gnu dot org


--- Comment #18 from aph at gcc dot gnu dot org  2007-09-04 17:58 ---
Subject: Bug 27908

Author: aph
Date: Tue Sep  4 17:57:52 2007
New Revision: 128097

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128097
Log:
2007-09-04  Andrew Haley  <[EMAIL PROTECTED]>

PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.

2007-08-29  Andrew Haley  <[EMAIL PROTECTED]>

* gnu/classpath/natVMStackWalker.cc (VMStackWalker::getCallingClass):
Make sure we're not sibcalled.
(GET_CALLING_CLASS): Define for ARM EABI.

2007-08-22  Andrew Haley  <[EMAIL PROTECTED]>

* configure.host (BACKTRACESPEC): Add arm*-linux*.

2007-08-22  Andrew Haley  <[EMAIL PROTECTED]>

* configure.ac (LIBSTDCXXSPEC): New.
* configure.host: Add arm*-linux* to pthread test.
* configure.ac (LIBGCJTESTSPEC): Add path to libstdc++ for ARM
EABI.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use
-fexceptions for ARM EABI.
* testsuite/lib/libjava.exp (libjava_arguments): Add libgcj-test.spec.
(libjava_invoke): Log the invocation.

2007-08-15  Andrew Haley  <[EMAIL PROTECTED]>

* configure.ac (extra_ldflags): Define.
* Makefile.am: Use extra_ldflags for all executables.

2007-08-14  Andrew Haley  <[EMAIL PROTECTED]>

* sysdep/arm/backtrace.h: Remove stubs for _Unwind_GetIPInfo,
_Unwind_GetRegionStart, and _Unwind_Backtrace.

2007-07-27  Andrew Haley  <[EMAIL PROTECTED]>

* gnu/classpath/natVMStackWalker.cc (GET_CALLING_CLASS): Stub for
ARM EABI.
* exception.cc (get_exception_header_from_ue): New.
(get_ttype_entry): ARM EABI version.
(PERSONALITY_FUNCTION): Add ARM EABI code.
* sysdep/arm/backtrace.h: New file.
* stacktrace.cc (_URC_NORMAL_STOP): New.
* configure.ac (extra_ldflags_libjava): Add libsupc++.la for ARM
EABI.
* configure.host (BACKTRACESPEC): Add arm/backtrace.h.

Modified:
trunk/libjava/ChangeLog


-- 


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



[Bug java/27908] VMSecureRandom generateSeed infinite loop? (Regression)

2007-09-04 Thread aph at gcc dot gnu dot org


--- Comment #17 from aph at gcc dot gnu dot org  2007-09-04 17:55 ---
Subject: Bug 27908

Author: aph
Date: Tue Sep  4 17:54:56 2007
New Revision: 128094

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128094
Log:
2007-09-04  Andrew Haley  <[EMAIL PROTECTED]>

PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.


Added:
trunk/libjava/testsuite/libjava.lang/Foo.class
  - copied unchanged from r128085,
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/Foo.class
trunk/libjava/testsuite/libjava.lang/WalkerTest.jar
  - copied unchanged from r128085,
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/WalkerTest.jar
trunk/libjava/testsuite/libjava.lang/WalkerTest.java
  - copied unchanged from r128085,
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/WalkerTest.java
trunk/libjava/testsuite/libjava.lang/WalkerTest.out
  - copied unchanged from r128085,
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/WalkerTest.out
Modified:
trunk/libjava/testsuite/libjava.lang/PR27908.jar
trunk/libjava/testsuite/libjava.lang/PR27908.java


-- 


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



[Bug c++/29018] empty enum accepted

2007-09-04 Thread pcarlini at suse dot de


--- Comment #9 from pcarlini at suse dot de  2007-09-04 17:53 ---
Humm, no, anonymous enums are clearly legal, sorry about the stupid mistake.
Still, it's not completely clear to me the discussion in 7.2/5 of empty
enumerator-lists, evidently, we must assume those are illegal *only* when the
enum is simultaneously anonymous (and the patch in Comment #2 is therefore
incomplete, not completely wrong, sorry about the misunderstanding).


-- 


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



[Bug c++/29018] empty enum accepted

2007-09-04 Thread pcarlini at suse dot de


--- Comment #8 from pcarlini at suse dot de  2007-09-04 17:47 ---
Hummm, with reference to the patch in Comment #9: I don't think 'enum { };' is
flagged in the standard as ill-formed because of the empty enumerator-list
(that possibility is explicitly discussed in 7.2/5), but because the enum
doesn't have a name. In other terms, the example is ill-formed for the very
same reason anonymous structs are a GNU extension. In yet other terms, it seems
to me we have got an anonymous enum extension, which probably we want to
diagnose when pedantic.


-- 


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



[Bug bootstrap/33306] New: [4.3 regression] Bootstrap failure on Tru64 UNIX V5.1B: ICE in convert_move, at expr.c:369

2007-09-04 Thread gcc-bugzilla at gcc dot gnu dot org

Bootstrapping current mainline as of 20070903 fails on alpha-dec-osf5.1b
building the stage 1 libgcc:

/vol/gccsrc/obj/gcc-4.3.0-20070903/5.1b-gcc/./gcc/xgcc
-B/vol/gccsrc/obj/gcc-4.3.0-20070903/5.1b-gcc/./gcc/
-B/vol/gcc/alpha-dec-osf5.1b/bin/ -B/vol/gcc/alpha-dec-osf5.1b/lib/ -isystem
/vol/gcc/alpha-dec-osf5.1b/include -isystem
/vol/gcc/alpha-dec-osf5.1b/sys-include -g -fkeep-inline-functions -O2  -O2 -g
-O2   -mieee -DIN_GCC-W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -pthread -g
-DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I.
-I../.././gcc -I/vol/gcc/src/gcc-dist/libgcc -I/vol/gcc/src/gcc-dist/libgcc/.
-I/vol/gcc/src/gcc-dist/libgcc/../gcc -I/vol/gcc/src/gcc-dist/libgcc/../include
 -DHAVE_CC_TLS -o _powitf2.o -MT _powitf2.o -MD -MP -MF _powitf2.dep
-DL_powitf2 -c /vol/gcc/src/gcc-dist/libgcc/../gcc/libgcc2.c \

/vol/gcc/src/gcc-dist/libgcc/../gcc/libgcc2.c: In function '__powitf2':
/vol/gcc/src/gcc-dist/libgcc/../gcc/libgcc2.c:1742: internal compiler error: in
convert_move, at expr.c:369

The same problem happens at -O, while -O0 is ok.

Environment:
System: OSF1 bartok V5.1 2650 alpha
Machine: alpha

host: alpha-dec-osf5.1b
build: alpha-dec-osf5.1b
target: alpha-dec-osf5.1b
configured with: /vol/gcc/src/gcc-dist/configure --prefix=/vol/gcc
--with-local-prefix=/vol/gcc --disable-nls --host alpha-dec-osf5.1b --build
alpha-dec-osf5.1b --target alpha-dec-osf5.1b --with-gmp=/vol/gcc
--with-mpfr=/vol/gcc --enable-languages=c,c++,fortran,java,objc,ada
--disable-libmudflap

How-To-Repeat:
Bootstrap mainline as described above.


-- 
   Summary: [4.3 regression] Bootstrap failure on Tru64 UNIX V5.1B:
ICE in convert_move, at expr.c:369
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: critical
  Priority: P2
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ro at techfak dot uni-bielefeld dot de
 GCC build triplet: alpha-dec-osf5.1b
  GCC host triplet: alpha-dec-osf5.1b
GCC target triplet: alpha-dec-osf5.1b


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



[Bug c++/29018] empty enum accepted

2007-09-04 Thread pcarlini at suse dot de


--- Comment #7 from pcarlini at suse dot de  2007-09-04 16:51 ---
On it.


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |pcarlini at suse dot de
   |dot org |
 Status|NEW |ASSIGNED


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



[Bug preprocessor/33305] New: We should warn about empty macro arguments

2007-09-04 Thread ghazi at gcc dot gnu dot org
As noted in PR33304, empty macro arguments can cause problems for ISO C90
compilers (solaris cc) as well as for older gcc versions like 2.8.1.  Therefore
I'd like to see cpp warn about these constructs either with -pedantic in C90
more and/or its own flag.

We should use this warning during bootstrap to keep the sources bootstrappable
when using compilers that have this issue.  We have to fix the existing cases
before we do that though.


-- 
   Summary: We should warn about empty macro arguments
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: preprocessor
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ghazi at gcc dot gnu dot org
 BugsThisDependsOn: 33304


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



[Bug bootstrap/33304] New: Bootstrap failure on solaris2 using cc due to empty macro arguments

2007-09-04 Thread ghazi at gcc dot gnu dot org
I'm getting bootstrap failure with mainline on sparc-sun-solaris2.10 using cc
for stage1.  The failure occurs due to empty macro arguments.  They occur in
two places, one of which I've posted a patch for:
http://gcc.gnu.org/ml/gcc-patches/2007-08/msg01131.html

The second occurance is in c-common.c on line 2249 where it says:
  C_COMMON_FIXED_TYPES (, fract);
Other instances occur below that in the same file.

In another thread, I fixed an empty macro argument problem encountered when
using gcc-2.8.1 for stage1 here:
http://gcc.gnu.org/ml/gcc-patches/2007-08/msg01119.html

According to Joseph later in that thread, empty macro arguments are undefined
in ISO C90.  Since we claim to only require ISO C90 to bootstrap, and because
we want to ensure older versions of GCC continue to be usable to bootstrap,
IMHO we should not allow empty macro arguments in the sources.


-- 
   Summary: Bootstrap failure on solaris2 using cc due to empty
macro arguments
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: build
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ghazi at gcc dot gnu dot org
  GCC host triplet: sparc-sun-solaris2.10


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



[Bug fortran/33303] Document __GFORTRAN__

2007-09-04 Thread fxcoudert at gcc dot gnu dot org


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-09-04 16:02:41
   date||


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



[Bug c++/14032] Specialization of inner template using outer template argument doesn't work

2007-09-04 Thread jason at gcc dot gnu dot org


--- Comment #20 from jason at gcc dot gnu dot org  2007-09-04 15:43 ---
Subject: Bug 14032

Author: jason
Date: Tue Sep  4 15:43:00 2007
New Revision: 128090

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128090
Log:
PR c++/14032
* pt.c (most_specialized_class): Substitute outer template
arguments into the arguments of a member template partial
specialization.
(strip_innermost_template_args): New fn.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/mem-partial1.C
  - copied unchanged from r128077,
trunk/gcc/testsuite/g++.dg/template/mem-partial1.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/mem-partial2.C
  - copied unchanged from r128077,
trunk/gcc/testsuite/g++.dg/template/mem-partial2.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/pt.c


-- 


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



[Bug fortran/33297] SIZE intrinsic crashes gfortran on invalid usage

2007-09-04 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2007-09-04 15:25 ---
>  integer array(5), i1, i2
>  print *, size(array,(/i1,i2/))

13.7.112 SIZE (ARRAY [, DIM, KIND])

ARRAY may be of any type. It shall not be scalar.
DIM (optional) shall be scalar and of type integer
KIND (optional) shall be a scalar integer initialization expression.


-- 


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



[Bug fortran/33303] New: Document __GFORTRAN__

2007-09-04 Thread burnus at gcc dot gnu dot org
I think __GFORTRAN__ is undocumented - at least I could not find any .texi
where it is documented.

I think it should be documented in doc/cpp.texi, possibly also in
fortran/*texi.


-- 
   Summary: Document __GFORTRAN__
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Keywords: documentation
  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=33303



[Bug c++/14622] type mismatch in explicit template instantiation not detected

2007-09-04 Thread pcarlini at suse dot de


--- Comment #5 from pcarlini at suse dot de  2007-09-04 15:01 ---
Fixed for 4.3.0.


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug c++/14178] doc bug: -fabi-version=2 is now default (not 1)

2007-09-04 Thread pcarlini at suse dot de


--- Comment #12 from pcarlini at suse dot de  2007-09-04 14:28 ---
Fixed.


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.0


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



[Bug c++/14178] doc bug: -fabi-version=2 is now default (not 1)

2007-09-04 Thread paolo at gcc dot gnu dot org


--- Comment #11 from paolo at gcc dot gnu dot org  2007-09-04 14:27 ---
Subject: Bug 14178

Author: paolo
Date: Tue Sep  4 14:27:05 2007
New Revision: 128085

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128085
Log:
2007-09-04  Emmanuel Thome  <[EMAIL PROTECTED]>

PR c++/14178
* common.opt: Mention ABI version 2 in comment.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/common.opt


-- 


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



[Bug tree-optimization/33302] New: follow-up on bug 33291 dead-store not eliminated

2007-09-04 Thread wouter dot vermaelen at scarlet dot be
This is a follow-up on bug 33291. It uses the same testcase (repeated here) but
with some additional optimization flags.

---
struct Clock {
 void f();
 void add(unsigned n) { a += n; }
 int a;
};

struct CPU : Clock {
 virtual ~CPU();
 unsigned char readSlow();
 void execute();

 void delay() { add(2); }
 unsigned char readFast() {
  if (unsigned char* p = ptrs[addr >> 8]) {
   // fast-path
   delay();
   delay();
   return p[addr & 255];
  } else {
   // slow-path
   return readSlow();
  }
 }

 typedef void (CPU::*FuncPtr)();
 static FuncPtr tab[256];
 unsigned char* ptrs[256];
 unsigned addr;
};

void CPU::execute() {
 f();
 while (true) {
  unsigned char b = readFast();
  delay();
  (this->*tab[b])();
 }
}


When compiled with SVN revision 128074 on a linux x86_64 machine:

> g++ -O3 -fforce-addr -ftracer -S CPU.ii
> cat CPU.s
...
movl(%rbx), %eax
leal4(%rax), %edx
addl$6, %eax
movl%edx, (%rbx)    dead store
movzbl  (%r12), %edx
movzbl  (%rcx,%rdx), %edx
movl%eax, (%rbx)
...


-- 
   Summary: follow-up on bug 33291   dead-store not eliminated
   Product: gcc
   Version: 4.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: wouter dot vermaelen at scarlet dot be


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



[Bug c++/31419] [4.1/4.2/4.3 regression] template user defined conversion operator instantiated for conversion to self

2007-09-04 Thread jason at gcc dot gnu dot org


-- 

jason at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jason at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-04-09 15:35:38 |2007-09-04 14:06:33
   date||


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



[Bug java/27908] VMSecureRandom generateSeed infinite loop? (Regression)

2007-09-04 Thread aph at gcc dot gnu dot org


--- Comment #16 from aph at gcc dot gnu dot org  2007-09-04 14:00 ---
Subject: Bug 27908

Author: aph
Date: Tue Sep  4 14:00:06 2007
New Revision: 128082

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128082
Log:
2007-09-04  Andrew Haley  <[EMAIL PROTECTED]>

PR java/27908
* testsuite/libjava.lang/PR27908.java
({run1,run2,run3}.isRunning): New Method.
(main): Fix race condition.

Modified:
branches/gcj/gcj-eabi-branch/libjava/ChangeLog
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/PR27908.jar
branches/gcj/gcj-eabi-branch/libjava/testsuite/libjava.lang/PR27908.java


-- 


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



[Bug libfortran/33298] Wrong code for SPREAD on zero-sized arrays

2007-09-04 Thread toon at moene dot indiv dot nluug dot nl


--- Comment #6 from toon at moene dot indiv dot nluug dot nl  2007-09-04 
13:04 ---
Quoting spread_generic.c:

145  for (n = 0; n < ncopies; n++)
146{
147  memcpy (dest, sptr, size);
148  dest += rdelta;
149}

The C 99 Standard has the following to say about the mem* functions (7.21.2.1
ff):   

Where an argument declared as size_t n specifies the length of the array for a
function, n can have the value zero on a call to that function. Unless
explicitly stated otherwise in the description of a particular function in this
subclause, pointer arguments on such a call shall still have valid values, as
described in 7.1.4.

So "size" can be zero, *but the the pointer arguments on such a call shall
still have valid values.*


-- 


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



[Bug tree-optimization/33301] New: wrong vectorization factor due to an invariant type-promotion in the loop

2007-09-04 Thread dorit at gcc dot gnu dot org
This testcase: gfortran.dg/g77/990115-1.f
ICEs when compiled with vectorization enabled:

gfortran 990115-1.f   -O   -pedantic-errors -S  -O2 -ftree-vectorize -msse2
-fdump-tree-vect-details -g -o 990115-1.s  
990115-1.f: In function 'zgelsx':^M
990115-1.f:3: internal compiler error: in vectorizable_type_promotion, at
tree-vect-transform.c:3959

This is because of this assumption in
tree-vect-analyze.c:vect_determine_vectorization_factor:
"
/* We set the vectype according to the type of the result (lhs).
   For stmts whose result-type is different than the type of the
   arguments (e.g. demotion, promotion), vectype will be reset
   appropriately (later).  Note that we have to visit the smallest
   datatype in this function, because that determines the VF.
   If the smallest datatype in the loop is present only as the
   rhs of a promotion operation - we'd miss it here.
   However, in such a case, that a variable of this datatype
   does not appear in the lhs anywhere in the loop, it shouldn't
   affect the vectorization factor.   */
"

It so happens that we can have a situation in which the smallest type in the
loop nevers appears in the lhs: in the above testcase we have an invariant
type-promotion stmts that is not taken out of the loop before vectorization:

:
  # i_1 = PHI <1(3), i_17(5)>
  D.1363_9 = (real8) s2_8(D);//<--- HERE
  D.1361_11 = ismax_5(D) + -2;
  D.1362_12 = D.1361_11 + i_1;
  CR.22_27 = REALPART_EXPR <(*work_13(D))[D.1362_12]>;
  CI.23_28 = IMAGPART_EXPR <(*work_13(D))[D.1362_12]>;
  CR.24_29 = D.1363_9 * CR.22_27;
  CI.25_30 = D.1363_9 * CI.23_28;
  REALPART_EXPR <(*work_13(D))[D.1362_12]> = CR.24_29;
  IMAGPART_EXPR <(*work_13(D))[D.1362_12]> = CI.25_30;
  i_17 = i_1 + 1;
  if (i_1 == D.1355_3)
goto ;
  else
goto ;

(Indeed when compiling also with --param lim-expensive=1, the invariant stmt is
taken out of the loop and the testcase passes).

I am testing the following patch:

Index: tree-vect-analyze.c
===
*** tree-vect-analyze.c (revision 128037)
--- tree-vect-analyze.c (working copy)
*** vect_determine_vectorization_factor (loo
*** 216,236 
}
  else
{
  gcc_assert (! STMT_VINFO_DATA_REF (stmt_info)
  && !is_pattern_stmt_p (stmt_info));

! /* We set the vectype according to the type of the result (lhs).
 For stmts whose result-type is different than the type of the
 arguments (e.g. demotion, promotion), vectype will be reset 
 appropriately (later).  Note that we have to visit the
smallest
 datatype in this function, because that determines the VF.  
 If the smallest datatype in the loop is present only as the 
 rhs of a promotion operation - we'd miss it here.
!However, in such a case, that a variable of this datatype
!does not appear in the lhs anywhere in the loop, it shouldn't
!affect the vectorization factor.   */
  scalar_type = TREE_TYPE (GIMPLE_STMT_OPERAND (stmt, 0));

  if (vect_print_dump_info (REPORT_DETAILS))
{
  fprintf (vect_dump, "get vectype for scalar type:  ");
--- 216,253 
}
  else
{
+ tree operation;
+
  gcc_assert (! STMT_VINFO_DATA_REF (stmt_info)
  && !is_pattern_stmt_p (stmt_info));

! /* We generally set the vectype according to the type of the
!result (lhs).
 For stmts whose result-type is different than the type of the
 arguments (e.g. demotion, promotion), vectype will be reset
 appropriately (later).  Note that we have to visit the
smallest
 datatype in this function, because that determines the VF.
 If the smallest datatype in the loop is present only as the
 rhs of a promotion operation - we'd miss it here.
!Such a case, where a variable of this datatype does not appear
!in the lhs anywhere in the loop, can only occur if it's an
!invariant: e.g.: 'int_x = (int) short_inv', which we'd expect
!to have been optimized away by invariant motion. However, we 
!cannot rely on invariant motion to always take invariants out
!of the loop, and so in the case of promotion we also have to 
!check the rhs.  */
  scalar_type = TREE_TYPE (GIMPLE_STMT_OPERAND (stmt, 0));

+ operation = GIMPLE_STMT_OPERAND (stmt, 1);
+ if (TREE_CODE (operation) == NOP_EXPR
+ || TREE_CODE (operation) == CONVERT_EXPR
+ || TREE_CODE (operation) ==  WIDEN_MULT_EXPR)
+   {
+ tree rhs_type = TREE_TYPE (TREE_OPERAND

[Bug c++/31411] [4.1/4.2/4.3 Regression] ICE in gimplify_expr with throw/special copy constructor with initializer with a deconstructor

2007-09-04 Thread jason at gcc dot gnu dot org


-- 

jason at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jason at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-08-06 15:08:14 |2007-09-04 12:39:39
   date||


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



[Bug fortran/33296] nearest(huge(1.0),1.0) gives an error

2007-09-04 Thread fxcoudert at gcc dot gnu dot org


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-09-04 12:34:17
   date||


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



[Bug fortran/33296] nearest(huge(1.0),1.0) gives an error

2007-09-04 Thread fxcoudert at gcc dot gnu dot org


--- Comment #3 from fxcoudert at gcc dot gnu dot org  2007-09-04 12:34 
---
(In reply to comment #2)
> (1) at least it should go the "enhancement" with the addition of " This check
> can be disabled with the option -fno-range-check"

We can do that, indeed. Reopening and marking enhancement.

> (2) I think the two cases are totally different:
>  as soon as the compiler knows INF/NAN (and gfortran does), I think
> nearest(huge(1.0),1.0)==+Inf is part of the floating point model and should
> not throw even a warning (even with -std=xx -pedantic).

I think the standard is very clear on that. Quoting F2003 13.7:

"A program is prohibited from invoking an intrinsic procedure under
circumstances where a value to be returned in a subroutine argument or function
result is outside the range of values representable by objects of the specified
type and type parameters, unless the intrinsic module IEEE_ARITHMETIC (section
14) is accessible and there is support for an infinite or a NaN result, as 
appropriate."

Unless we have IEEE_ARITHMETIC, we should stick to an error.


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|minor   |enhancement
 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |


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



[Bug c++/14032] Specialization of inner template using outer template argument doesn't work

2007-09-04 Thread jason at gcc dot gnu dot org


--- Comment #19 from jason at gcc dot gnu dot org  2007-09-04 12:28 ---
Subject: Bug 14032

Author: jason
Date: Tue Sep  4 12:27:38 2007
New Revision: 128077

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128077
Log:
PR c++/14032
* pt.c (most_specialized_class): Substitute outer template
arguments into the arguments of a member template partial
specialization.
(strip_innermost_template_args): New fn.

Added:
trunk/gcc/testsuite/g++.dg/template/mem-partial1.C
trunk/gcc/testsuite/g++.dg/template/mem-partial2.C


-- 


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



[Bug c++/14032] Specialization of inner template using outer template argument doesn't work

2007-09-04 Thread jason at gcc dot gnu dot org


--- Comment #18 from jason at gcc dot gnu dot org  2007-09-04 12:27 ---
Subject: Bug 14032

Author: jason
Date: Tue Sep  4 12:27:21 2007
New Revision: 128076

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128076
Log:
PR c++/14032
* pt.c (most_specialized_class): Substitute outer template
arguments into the arguments of a member template partial
specialization.
(strip_innermost_template_args): New fn.

Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c


-- 


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



[Bug middle-end/28684] Imprecise -funsafe-math-optimizations definition

2007-09-04 Thread eres at il dot ibm dot com


--- Comment #11 from eres at il dot ibm dot com  2007-09-04 12:18 ---
The patch was committed to r128075.

Revital


-- 


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



[Bug tree-optimization/33291] [4.3 Regression] a+=2; a+=2 not simplified to a+=4; with -O3 (ok with gcc-4.2.1)

2007-09-04 Thread rguenth at gcc dot gnu dot org


--- Comment #8 from rguenth at gcc dot gnu dot org  2007-09-04 12:13 ---
Yes please.


-- 


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



[Bug tree-optimization/33291] [4.3 Regression] a+=2; a+=2 not simplified to a+=4; with -O3 (ok with gcc-4.2.1)

2007-09-04 Thread wouter dot vermaelen at scarlet dot be


--- Comment #7 from wouter dot vermaelen at scarlet dot be  2007-09-04 
12:11 ---
Thanks for looking into this so quickly!

I confirm the problem is solved for the reduced testcase. However in my
original code the dead-store is not eliminated. Do you want me to file a
separate bug report for that?


mov(%rbx),%edx
movzbl %cl,%edi
lea0x3(%rdx),%r8d
add$0x5,%edx
mov%r8d,(%rbx)
movzbl (%rsi,%rdi,1),%eax
mov%edx,(%rbx)



-- 

wouter dot vermaelen at scarlet dot be changed:

   What|Removed |Added

   Severity|normal  |minor


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



[Bug fortran/33296] nearest(huge(1.0),1.0) gives an error

2007-09-04 Thread dominiq at lps dot ens dot fr


--- Comment #2 from dominiq at lps dot ens dot fr  2007-09-04 12:05 ---
I don't think the PR is invalid:

(1) at least it should go the "enhancement" with the addition of " This check
can be disabled with the option -fno-range-check" as in

print *, huge(0), -2147483648
1
Error: Integer too big for its kind at (1). This check can be disabled with the
option -fno-range-check

(2) I think the two cases are totally different:

 huge(0)+1 cannot be represented in the integer model, thus the overflow;

 as soon as the compiler knows INF/NAN (and gfortran does), I think
nearest(huge(1.0),1.0)==+Inf is part of the floating point model and should not
throw even a warning (even with -std=xx -pedantic).

I don't want to start a flame war of this issue, but look at the number of
mails, answers, noise, ..., generated by -2147483648 (note that I did not write
-(2147483648)!-).


-- 

dominiq at lps dot ens dot fr changed:

   What|Removed |Added

   Severity|normal  |minor


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



[Bug tree-optimization/33299] [4.3 Regression] miscompilation with gfortran -O2 -ffast-math -ftree-vectorize

2007-09-04 Thread dorit at gcc dot gnu dot org


-- 

dorit at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug tree-optimization/33299] [4.3 Regression] miscompilation with gfortran -O2 -ffast-math -ftree-vectorize

2007-09-04 Thread dorit at gcc dot gnu dot org


--- Comment #2 from dorit at gcc dot gnu dot org  2007-09-04 11:44 ---
(In reply to comment #1)
> Confirmed.  It looks like the vectorizer forgets to update the PHI node for
> stmp_var:

yes. I suspect I didn't expect at the time that there would be two
loop-closed-ssa-form phi-nodes at the loop exit for s_3, so I probably update
just one of them (s_10) and not the other (s_4). This is how it looks before
vectorization:

:
  # s_4 = PHI 
  # s_10 = PHI 
  D.1368_15 = *x_14(D);
  if (D.1368_15 < 0.0)
goto ;
  else
goto ;

:
  s_16 = -s_10;

:
  # s_1 = PHI 
  return s_1;

I'll prepare a fix.


-- 


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



  1   2   >