[Bug target/22209] [4.1 regression] libgfortran unresolvable symbols on irix6.5

2006-05-19 Thread rsandifo at gcc dot gnu dot org


--- Comment #14 from rsandifo at gcc dot gnu dot org  2006-05-19 08:05 
---
Subject: Bug 22209

Author: rsandifo
Date: Fri May 19 08:05:39 2006
New Revision: 113903

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113903
Log:
* libgcc2.c (MIN_UNITS_PER_WORD): Move default definition from
libgcc2.h.
(LIBGCC2_UNITS_PER_WORD): Provide default definition, using old
MIN_UNITS_PER_WORD logic from libgcc2.h.  Do nothing if
LIBGCC2_UNITS_PER_WORD > MIN_UNITS_PER_WORD.
* libgcc2.h (MIN_UNITS_PER_WORD): Remove definition from here.
Use LIBGCC2_UNITS_PER_WORD rather than MIN_UNITS_PER_WORD to
determine the size of Wtype, etc.
* mklibgcc.in (LIB2_SIDITI_CONV_FUNCS): New argument.
(swfloatfuncs): New variable.
(dwfloatfuncs): Likewise.
(lib2funcs): Remove floating-point conversion functions from
initial assignment.  Use LIB2_SIDITI_CONV_FUNCS to determine
the set of conversion routines needed.  Allow entries to specify
an object name, filename and word size.  Update users accordingly.
* Makefile.in (libgcc.mk): Pass LIB2_SIDITI_CONV_FUNCS.
* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Define.

Revert:

2006-02-08  Roger Sayle  <[EMAIL PROTECTED]>

PR target/22209
* config/fixtfdi.c: New libgcc source file.
* config/fixunstfdi.c: New source file.
* config/floatditf.c: New source file.
* config/floatunditf.c: New souce file.
* config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source
files above instead of config/mips/_tilib.c.
* config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise.

Removed:
trunk/gcc/config/fixtfdi.c
trunk/gcc/config/fixunstfdi.c
trunk/gcc/config/floatditf.c
trunk/gcc/config/floatunditf.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/Makefile.in
trunk/gcc/config/mips/t-iris6
trunk/gcc/config/mips/t-linux64
trunk/gcc/config/mips/t-mips
trunk/gcc/libgcc2.c
trunk/gcc/libgcc2.h
trunk/gcc/mklibgcc.in


-- 


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



[Bug c++/27677] New: ICE on "3-liner" with __thread

2006-05-19 Thread gcc at cohi dot at
With the 4.1.0 built yesterday, bootstrapped with Apple gcc 5247, I get the
following:

[EMAIL PROTECTED]:/tmp> cat t.cc 
__thread int int_tls = 2;

int get_tls()
{
return int_tls;
}

int main()
{
return get_tls();
}
[EMAIL PROTECTED]:/tmp> /opt/gcc-4.1.0-32/bin/g++ -O3 -Wall -Wextra t.cc
t.cc: In function 'int get_tls()':
t.cc:3: internal compiler error: Bus error
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.
[EMAIL PROTECTED]:/tmp> /opt/gcc-4.1.0-32/bin/g++ -v
Using built-in specs.
Target: powerpc-apple-darwin8.6.0
Configured with: ../gcc-4.1.0/configure --prefix=/opt/gcc-4.1.0-32
--enable-languages=c,c++ --enable-threads=posix --enable-tls
Thread model: posix
gcc version 4.1.0
[EMAIL PROTECTED]:/tmp> uname -a
Darwin tigger 8.6.0 Darwin Kernel Version 8.6.0: Tue Mar  7 16:58:48 PST 2006;
root:xnu-792.6.70.obj~1/RELEASE_PPC Power Macintosh powerpc


-- 
   Summary: ICE on "3-liner" with __thread
   Product: gcc
   Version: 4.1.0
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gcc at cohi dot at
  GCC host triplet: powerpc-apple-darwin8.6.0


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



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

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


--- Comment #13 from mrs at gcc dot gnu dot org  2006-05-19 10:07 ---
Subject: Bug 27673

Author: mrs
Date: Fri May 19 10:06:17 2006
New Revision: 113904

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113904
Log:
PR c/27673
* c-parser.c (c_parser_parms_declarator): Initialize had_vla_unspec.
(c_parser_parms_list_declarator): Likewise.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-parser.c


-- 


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



[Bug c/27676] gcc is overly strict in assignment to read-only data

2006-05-19 Thread jsm28 at gcc dot gnu dot org


--- Comment #1 from jsm28 at gcc dot gnu dot org  2006-05-19 10:17 ---
Technically a regression; compilers up to EGCS 1.1.2 accepted this, then it
became a pedwarn, and later a hard error.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||16620, 16989
  nThis||
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-19 10:17:04
   date||


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



[Bug c++/27678] New: ofstream() << C-string prints the pointer address.

2006-05-19 Thread yotam dot medini at gmail dot com
The following example should be self explanatory.
I was expecting same content to be written onto
the files "goodstr.txt" and "whyptr.txt".
-- yotam

[EMAIL PROTECTED]:C:444> g++ -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,java,f95,objc,ada,treelang --prefix=/usr
--with-gxx-include-dir=/usr/include/c++/4.0.2 --enable-shared
--with-system-zlib --libexecdir=/usr/lib --enable-nls
--without-included-gettext --enable-threads=posix --program-suffix=-4.0
--enable-__cxa_atexit --enable-libstdcxx-allocator=mt --enable-clocale=gnu
--enable-libstdcxx-debug --enable-java-gc=boehm --enable-java-awt=gtk
--enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/jre
--enable-mpfr --disable-werror --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu9)
[EMAIL PROTECTED]:C:445> cat ofstream-bug.cc 
#include 
using namespace std;
int main(int, char**)
{
   static const char* magic = "flute";
   {
   ofstream ofs("goodstr.txt");
   ofs << magic;
   }
   { ofstream("whyptr.txt") << magic; }
   return 0;
}
[EMAIL PROTECTED]:C:446> g++ -Wall -o /tmp/x ofstream-bug.cc 
[EMAIL PROTECTED]:C:447> ldd /tmp/x; ls -l /tmp/x
linux-gate.so.1 =>  (0xe000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7e2e000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7e0c000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7e01000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7cd3000)
/lib/ld-linux.so.2 (0xb7f25000)
-rwxr-xr-x  1 yotam yotam 8777 2006-05-19 16:18 /tmp/x*
[EMAIL PROTECTED]:C:448> /tmp/x
[EMAIL PROTECTED]:C:449> cat goodstr.txt; echo""
flute
[EMAIL PROTECTED]:C:450> cat whyptr.txt; echo""
0x804883c
[EMAIL PROTECTED]:C:451>


-- 
   Summary: ofstream() << C-string prints the pointer address.
   Product: gcc
   Version: 4.0.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: yotam dot medini at gmail dot com


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



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

2006-05-19 Thread Joern RENNECKE

Nick Clifton wrote:


  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 ?)
 


I have a patch for it, but due to problems with our hardware, newlib, and
issues with the way the linux libgcc is built, I have not been able to 
test the

patch satisfactorily.
2006-05-11  J"orn Rennecke <[EMAIL PROTECTED]>

* config/sh/linux.h (SH_DIVSI3_1_LIBFUNC): Define.
* config/sh/sh.h (SH_DIVSI3_1_LIBFUNC): Define.
(OVERRIDE_OPTIONS): Make SHCOMPACT default to SH_DIV_CALL_TABLE.
Use SH_DIVSI3_1_LIBFUNC for SH5 with SH_DIV_CALL_TABLE.
* config/sh/lib1funcs-Os-4-200.asm (udivsi3_i4i, sdivsi3_i4i): Don't
provide for __SH5__.
* config/sh/sh.md (udivsi3): Use __udivsi3 for SH5 with
SH_DIV_CALL_TABLE.

Index: config/sh/linux.h
===
/usr/bin/diff -p -d -F^( -u -L config/sh/linux.h(revision 113499) -L 
config/sh/linux.h  (working copy) config/sh/.svn/text-base/linux.h.svn-base 
config/sh/linux.h
--- config/sh/linux.h   (revision 113499)
+++ config/sh/linux.h   (working copy)
@@ -136,3 +136,5 @@ Boston, MA 02110-1301, USA.  */
 #define SH_DIV_STRATEGY_DEFAULT SH_DIV_CALL2
 #undef SH_DIV_STR_FOR_SIZE
 #define SH_DIV_STR_FOR_SIZE "call2"
+#undef SH_DIVSI3_1_LIBFUNC
+#define SH_DIVSI3_1_LIBFUNC "__sdivsi3"
Index: config/sh/sh.h
===
/usr/bin/diff -p -d -F^( -u -L config/sh/sh.h   (revision 113499) -L 
config/sh/sh.h (working copy) config/sh/.svn/text-base/sh.h.svn-base 
config/sh/sh.h
--- config/sh/sh.h  (revision 113499)
+++ config/sh/sh.h  (working copy)
@@ -454,6 +454,9 @@ do { \
 #ifndef SH_DIV_STR_FOR_SIZE
 #define SH_DIV_STR_FOR_SIZE "call"
 #endif
+#ifndef SH_DIVSI3_1_LIBFUNC
+#define SH_DIVSI3_1_LIBFUNC "__sdivsi3_1"
+#endif
 
 #define DRIVER_SELF_SPECS "%{m2a:%{ml:%eSH2a does not support little-endian}}"
 #define OPTIMIZATION_OPTIONS(LEVEL,SIZE)   \
@@ -640,8 +643,11 @@ do {   
\
   when some of the code is compiled for size, and some for \
   speed.  */   \
\
-   /* SH4 tends to emphasize speed.  */\
-   if (TARGET_HARD_SH4)\
+   /* SH4 tends to emphasize speed.\
+  SHCOMPACT uses sdvisi3_1 / udivsi3 implemented in SHMEDIA,   \
+  which are fast, clobber only T / PR of the SHCOMPACT visible \
+  registers, and are still relatively compact. */  \
+   if (TARGET_HARD_SH4 || TARGET_SHCOMPACT)\
  sh_div_strategy = SH_DIV_CALL_TABLE;  \
/* These have their own way of doing things.  */\
else if (TARGET_SH2A)   \
@@ -662,10 +668,10 @@ do {  
\
 ; /* User supplied - leave it alone.  */   \
   else if (TARGET_DIVIDE_CALL_FP)  \
 sh_divsi3_libfunc = "__sdivsi3_i4";
\
+  else if (TARGET_SH5) \
+sh_divsi3_libfunc = SH_DIVSI3_1_LIBFUNC;   \
   else if (TARGET_DIVIDE_CALL_TABLE)   \
 sh_divsi3_libfunc = "__sdivsi3_i4i";   \
-  else if (TARGET_SH5) \
-sh_divsi3_libfunc = "__sdivsi3_1"; \
   else \
 sh_divsi3_libfunc = "__sdivsi3";   \
   if (TARGET_FMOVD)\
Index: config/sh/lib1funcs-Os-4-200.asm
===
/usr/bin/diff -p -d -F^( -u -L config/sh/lib1funcs-Os-4-200.asm (revision 
113499) -L config/sh/lib1funcs-Os-4-200.asm   (working copy) 
config/sh/.svn/text-base/lib1funcs-Os-4-200.asm.svn-base 
config/sh/lib1funcs-Os-4-200.asm
--- config/sh/lib1funcs-Os-4-200.asm(revision 113499)
+++ config/sh/lib1funcs-Os-4-200.asm(working copy)
@@ -37,7 +37,7 @@ Boston, MA 02110-1301, USA.  */
dividend <  2G: 48 cycles
dividend >= 2G: divisor != 1: 54 cycles
dividend >= 2G, divisor == 1: 22 cycles */
-#if defined (__SH_FPU_DOUBLE__) || defined (__SH4_SINGLE_ONLY__)
+#if (!defined(__

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

2006-05-19 Thread Nick Clifton

Hi Joern,


I have a patch for it, but due to problems with our hardware, newlib, and
issues with the way the linux libgcc is built, I have not been able to 
test the

patch satisfactorily.


I can confirm that the patch allows GCC to build for both an sh64-elf 
and an sh-elf target.  I am now running regressions tests to see if it 
introduces any new problems.  (I doubt that it will, but it never hurts 
to check).


Cheers
  Nick


[Bug target/27338] Violation of mips o64 ABI

2006-05-19 Thread rsandifo at gcc dot gnu dot org


--- Comment #1 from rsandifo at gcc dot gnu dot org  2006-05-19 15:10 
---
The use of $f14 was an unintentional historical accident,
not a deliberate decision.  It has since been "fixed".

I realise this isn't going to be very helpful to you,
but you should just treat 3.4 and 4.x as being
ABI-incompatible as far as o64 is concerned.

The web page should be updated; I'll assign myself
to this bug for that reason.

Richard


-- 

rsandifo at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rsandifo at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-19 15:10:28
   date||


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



[Bug bootstrap/24631] SIGBUS during bootstrap

2006-05-19 Thread rsandifo at gcc dot gnu dot org


--- Comment #3 from rsandifo at gcc dot gnu dot org  2006-05-19 15:13 
---
Any update on this?


-- 

rsandifo at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rsandifo at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |WAITING


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



[Bug target/27681] New: [4.1 regression] Missing DImode float conversion functions

2006-05-19 Thread rsandifo at gcc dot gnu dot org
libgcc no longer provides __fixuns*si(), __fix*di() and __floatdi*()
functions.  This causes many testsuite failures on soft-float
mipsisa64-elf.


-- 
   Summary: [4.1 regression] Missing DImode float conversion
functions
   Product: gcc
   Version: 4.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rsandifo at gcc dot gnu dot org
GCC target triplet: mipsisa64-elf


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



[Bug target/27681] [4.1 regression] Missing DImode float conversion functions

2006-05-19 Thread rsandifo at gcc dot gnu dot org


--- Comment #1 from rsandifo at gcc dot gnu dot org  2006-05-19 15:24 
---
This was fixed for 4.2 by:
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg00806.html


-- 

rsandifo at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rsandifo at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
  Known to fail||4.1.1
  Known to work||4.0.0 4.1.0 4.2.0
   Last reconfirmed|-00-00 00:00:00 |2006-05-19 15:24:54
   date||


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



[Bug c++/26433] [4.0/4.1/4.2 Regression] Syntax error using __FUNCTION__ in catch handler

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


--- Comment #3 from mmitchel at gcc dot gnu dot org  2006-05-19 16:04 
---
Subject: Bug 26433

Author: mmitchel
Date: Fri May 19 16:04:22 2006
New Revision: 113911

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113911
Log:
PR c++/26433
* cp-tree.h (begin_function_try_block): Change prototype.
(finish_function_handler_sequence): Likewise.
* parser.c (cp_parser_function_try_block): Adjust calls.
* pt.c (tsubst_expr): Adjust calls.
* semantics.c (begin_function_try_block): Create an artificial
outer scope.
(finish_function_handler_sequence): Close it.
PR c++/26433
* g++.dg/template/fntry1.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/template/fntry1.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/parser.c
trunk/gcc/cp/pt.c
trunk/gcc/cp/semantics.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/26433] [4.0/4.1 Regression] Syntax error using __FUNCTION__ in catch handler

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


--- Comment #4 from mmitchel at gcc dot gnu dot org  2006-05-19 16:06 
---
Fixed in 4.2.


-- 

mmitchel at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |mark at codesourcery dot com
   |dot org |
 Status|NEW |ASSIGNED
Summary|[4.0/4.1/4.2 Regression]|[4.0/4.1 Regression] Syntax
   |Syntax error using  |error using __FUNCTION__ in
   |__FUNCTION__ in catch   |catch handler
   |handler |


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



[Bug target/27682] New: float to int conversion doesn't raise invalid exception

2006-05-19 Thread janis at gcc dot gnu dot org
GCC claims to follow C99 Annex F when converting a floating value to an integer
type when the integral part exceeds the range of the integer type (C99 6.3.1.4
and F.4).  Annex F says that in this case the conversion raises the "invalid"
floating-point exception.  On powerpc64-linux and x86_64-linux, however, the
instruction that is used to convert double to int converts to a 64-bit integer,
not a 32-bit register, so the exception is not raised.  On powerpc64-linux with
-m64 the instruction is fctidz (floating convert to integer doubleword with
round toward zero).  If I replace that instruction with fctiwz (convert to
integer word) in the .s file and compile that, the code behaves as expected. 
Here's a small test case:

#include 
extern void abort (void);

double x = 4294967296.0;
unsigned int i;

int
main ()
{
#pragma STDC FENV_ACCESS ON
feclearexcept (FE_ALL_EXCEPT);
i = x;/* value exceeds the range of 32-bit int */
if (! fetestexcept (FE_INVALID))
abort ();
return 0;
}

I see this behavior in all powerpc64-linux compilers I've checked from 3.2
through mainline.  The exception is raised for tests compiled with -m32.

This is a problem for applications that try to detect such invalid conversions
after checking for __STDC_IEC_559__, which claims that the implementation
conforms to Annex F.

A possibly-related issue is that this macro is defined in a header file
provided by glibc, not by GCC.


-- 
   Summary: float to int conversion doesn't raise invalid exception
   Product: gcc
   Version: 4.0.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: janis at gcc dot gnu dot org
GCC target triplet: powerpc64-linux, x86_64-linux


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



[Bug target/27682] float to int conversion doesn't raise invalid exception

2006-05-19 Thread janis at gcc dot gnu dot org


--- Comment #1 from janis at gcc dot gnu dot org  2006-05-19 16:13 ---
This is related to PR21360, although that one is about the result of an
out-of-range conversion.


-- 


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



[Bug target/27682] float to int conversion doesn't raise invalid exception

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


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-19 16:21 ---
First we don't yet implement FENV_ACCESS.  There is a bug about that.


-- 


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



[Bug target/27681] [4.1 regression] Missing DImode float conversion functions

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


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-19 16:28 ---
If this is revert, PR 22209 is reintroduced.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||22209
  nThis||


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



[Bug c++/27678] ofstream() << C-string prints the pointer address.

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


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-19 16:35 ---


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


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


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



[Bug c++/9925] ostrstream (buf, size) << "..." does not work properly

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


--- Comment #21 from pinskia at gcc dot gnu dot org  2006-05-19 16:35 
---
*** Bug 27678 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||yotam dot medini at gmail
   ||dot com


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



[Bug target/27682] float to int conversion doesn't raise invalid exception

2006-05-19 Thread joseph at codesourcery dot com


--- Comment #3 from joseph at codesourcery dot com  2006-05-19 16:35 ---
Subject: Re:   New: float to int conversion doesn't raise
 invalid exception

On Fri, 19 May 2006, janis at gcc dot gnu dot org wrote:

> GCC claims to follow C99 Annex F when converting a floating value to an 
> integer

It doesn't (in that it doesn't define __STDC_IEC_559__).  But it should 
aim to do so (provided the user doesn't specify options such as 
-fno-trapping-math in this case).

> A possibly-related issue is that this macro is defined in a header file
> provided by glibc, not by GCC.

That's a bug in the combination of glibc and GCC, requiring cooperation 
between them to fix.  The macro must be defined from the start of the 
translation unit without any headers needing to be included; the same also 
applies to __STDC_ISO_10646__ which is definitely a property of the 
library.  My suggested solution is still as at 
: an implicitly included 
header  that is provided by the library, makes such 
definitions, *does not include other glibc headers such as features.h* 
(because the source file may define feature test macros later before it 
first explicitly includes a system header), and whose absence is silently 
ignored by the compiler (in order to support older glibc without the 
header).


-- 


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



[Bug target/27677] ICE on "3-liner" with __thread

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


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-19 16:38 ---
Well TLS is not supported on Darwin and you did --enable-TLS which is just
wrong as there is no support at all in the kernel or even ABI wise.

I almost want to say this is invalid even though we ICE as you used
--enable-TLS which says you know more than configure does.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|major   |normal
  Component|c++ |target
   GCC host triplet|powerpc-apple-darwin8.6.0   |
 GCC target triplet||powerpc-apple-darwin8.6.0
   Keywords||ice-on-invalid-code


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



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

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


--- Comment #14 from pinskia at gcc dot gnu dot org  2006-05-19 16:38 
---
Fixed.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug fortran/19777] -fbounds-check catches non-existent bounds violation

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #13 from fxcoudert at gcc dot gnu dot org  2006-05-19 16:43 
---
Andrew, any news on this one? If I remember correctly, you're waiting for
paperwork with your new employer?


-- 


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



[Bug libfortran/25949] Unbounded I/O buffer memory usage for formatted IO

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #5 from fxcoudert at gcc dot gnu dot org  2006-05-19 16:45 
---
I think we can close this one, now, can't we?


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug libfortran/26889] selected_int_kind.inc broken, causing failure

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #41 from fxcoudert at gcc dot gnu dot org  2006-05-19 16:51 
---
I'm puzzled by this PR and PR 26893: what is the status on those reports? Did
you reproduce this on a given platform, with *known good* GMP and MPFR and with
a gfortran >= 4.1 ?

Otherwise, I supposed we might close both: I do regularly build on gfortran on
sparc-sun-solaris2.9, with no problem. Note that it doesn't mean we can't work
on resolving the issue, reopening a PR if the reporter has time to investigate
further.


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||fxcoudert at gcc dot gnu dot
   ||org


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



[Bug libfortran/27524] -fbounds-check interracts *strangely* with an array of size 1

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #2 from fxcoudert at gcc dot gnu dot org  2006-05-19 16:59 
---
Not sure if it's a duplicate. Here's a reduced testcase, anyhow:

print *, F()
contains
  function F()
integer :: F(1)
f = 1
  end function F
end

$ gfortran -v
Using built-in specs.
Target: i386-linux
Configured with: ../gcc/configure --prefix=/tmp/gfortran-20060519/irun
--enable-languages=c,fortran --host=i386-linux
--with-gmp=/tmp/gfortran-20060519/gfortran_libs
Thread model: posix
gcc version 4.2.0 20060519 (experimental)
$ gfortran bounds.f90 && ./a.out   
   1
$ gfortran bounds.f90 -fbounds-check && ./a.out
 5090100
zsh: bus error  ./a.out


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||fxcoudert at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-19 16:59:16
   date||


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



[Bug libfortran/22423] Warnings when building libgfortran

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #3 from fxcoudert at gcc dot gnu dot org  2006-05-19 17:04 
---
We currently have the following warnings when building libgfortran on
i686-linux:

../../../gcc/libgfortran/io/transfer.c: In function 'read_block':
../../../gcc/libgfortran/io/transfer.c:279: warning: 'return' with no value, in
function returning non-void
../../../gcc/libgfortran/io/transfer.c:309: warning: this function may return
with or without a value

../../../gcc/libgfortran/io/list_read.c: In function
'list_formatted_read_scalar':
../../../gcc/libgfortran/io/list_read.c:1460: warning: argument 'type' might be
clobbered by 'longjmp' or 'vfork'

There are also some related to signal when compiling on LP64: that's PR 26540.


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

   Last reconfirmed|2005-11-17 18:09:56 |2006-05-19 17:04:21
   date||


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



[Bug libfortran/22423] Warnings when building libgfortran

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #4 from fxcoudert at gcc dot gnu dot org  2006-05-19 17:05 
---
Adding Jerry in CC list since he's likely to be the one who introduced the
warning in transfer.c :)


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jvdelisle at gcc dot gnu dot
   ||org


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



[Bug libfortran/26889] selected_int_kind.inc broken, causing failure

2006-05-19 Thread quanah at stanford dot edu


--- Comment #42 from quanah at stanford dot edu  2006-05-19 17:09 ---
I will be working on this after the students leave, starting in June.  Please
keep this ticket open.

I note that the versions of GMP & MPFR I'm using work *fine* on linux, so I
consider them "known good".  They only don't work with Solaris.


-- 


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



[Bug libfortran/26893] kinds.h not generated, causing failure

2006-05-19 Thread quanah at stanford dot edu


--- Comment #7 from quanah at stanford dot edu  2006-05-19 17:09 ---
I will be working on this after the students leave, starting in June.  Please
keep this ticket open.

I note that the versions of GMP & MPFR I'm using work *fine* on linux, so I
consider them "known good".  They only don't work with Solaris.


-- 


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



[Bug libfortran/26893] kinds.h not generated, causing failure

2006-05-19 Thread fxcoudert at gcc dot gnu dot org


--- Comment #8 from fxcoudert at gcc dot gnu dot org  2006-05-19 17:14 
---
(In reply to comment #7)
> I will be working on this after the students leave, starting in June.  Please
> keep this ticket open.

OK.

> I note that the versions of GMP & MPFR I'm using work *fine* on linux, so I
> consider them "known good".  They only don't work with Solaris.

I was talking about the compiled binaries. My definition of a "working" GMP &
MPFR is:
  -- it's recent enough (you should try GMP 4.2.1 and MPFR 2.2.0)
  -- it passes all the checks (make check in both packages)


-- 


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



[Bug target/27682] float to int conversion doesn't raise invalid exception

2006-05-19 Thread janis at gcc dot gnu dot org


--- Comment #4 from janis at gcc dot gnu dot org  2006-05-19 17:25 ---
This has been brought up to the glibc developers in the past:

  http://sourceware.org/ml/libc-alpha/2005-03/msg00196.html

It's unfortunate that they don't agree that "an implementation" of C consists
of a combination of products, and that unless they all support Annex F, the
"implementation" doesn't support it and should not define __STDC_IEC_559__.


-- 


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



[Bug treelang/27516] install failure due to unconditional invocation of makeinfo for treelang.texi

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


--- Comment #4 from aldot at gcc dot gnu dot org  2006-05-19 17:29 ---
This also fails on the gcc-4_1-branch.


-- 


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



[Bug c/27273] [4.2 regression] tree check fail for legal code when convert returns a constant from an expression that was not constant

2006-05-19 Thread patchapp at dberlin dot org


--- Comment #11 from patchapp at dberlin dot org  2006-05-19 17:35 ---
Subject: Bug number PR c/27273

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/msg00964.html


-- 


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



[Bug fortran/25058] missing diagnostic about ENTRY dummy argument

2006-05-19 Thread patchapp at dberlin dot org


--- Comment #2 from patchapp at dberlin dot org  2006-05-19 17:35 ---
Subject: Bug number PR25058

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/msg00969.html


-- 


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



[Bug fortran/27683] New: Many new GFORTRAN testsuite failures

2006-05-19 Thread dir at lanl dot gov
st_14.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_21.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
FAIL: gfortran.dg/namelist_22.f90 execution test
Running /Users/dir/gfortran/gcc/gcc/testsuite/gfortran.dg/gomp/gomp.exp ...
Running /Users/dir/gfortran/gcc/gcc/testsuite/gfortran.dg/vect/vect.exp ...
Running
/Users/dir/gfortran/gcc/gcc/testsuite/gfortran.fortran-torture/compile/compile.exp
...
Running
/Users/dir/gfortran/gcc/gcc/testsuite/gfortran.fortran-torture/execute/execute.exp
...
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O1 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O2 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O3
-fomit-frame-pointer 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O3
-fomit-frame-pointer -funroll-loops 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O3
-fomit-frame-pointer -funroll-all-loops -finline-functions 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -O3 -g 
FAIL: gfortran.fortran-torture/execute/adjustr.f90 execution,  -Os 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O1 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O2 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O3
-fomit-frame-pointer 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O3
-fomit-frame-pointer -funroll-loops 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O3
-fomit-frame-pointer -funroll-all-loops -finline-functions 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -O3 -g 
FAIL: gfortran.fortran-torture/execute/write_logical.f90 execution,  -Os 

=== gfortran Summary ===

# of expected passes12854
# of unexpected failures114
# of expected failures  7
# of unsupported tests  56
/Users/dir/gfortran/ibin/gcc/testsuite/gfortran/../../gfortran  version 4.2.0
20060519 (experimental)


-- 
   Summary: Many new GFORTRAN testsuite failures
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dir at lanl dot gov
  GCC host triplet: powerpc-apple-darwin8.6.0


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



[Bug target/27677] ICE on "3-liner" with __thread

2006-05-19 Thread gcc at cohi dot at


--- Comment #2 from gcc at cohi dot at  2006-05-19 18:23 ---
Ah.

I, obviously wrongly, assumed that TLS would work if I could build gcc with
--enable-tls.

(Chapter 5.51 of the GCC 4.1.0 docs, which talks about thread local storage,
says that TLS is "not available everywhere", but fails to give a list; that's
why I just tried it.)


-- 

gcc at cohi dot at changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug c++/27684] New: GCC doesn't link code, compiled using boost::mpl. Segmentation failed.

2006-05-19 Thread grayyoga at gmail dot com
Supplied main.ii file compiles but doesn't link. When I reduce the number of
template parameters in the line 37070 from 4 to 3 it compiles and links ok.

I guess it's an issue of the enormous length of instantiated mpl templates
names.

N.B. In case it matters : I doesn't now how to obtain target triplet, so I
guess it's similar to the host and build triplets which are both correct.


-- 
   Summary: GCC doesn't link code, compiled using boost::mpl.
Segmentation failed.
   Product: gcc
   Version: 3.4.5
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: grayyoga at gmail dot com
 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=27684



[Bug c++/27684] GCC doesn't link code, compiled using boost::mpl. Segmentation failed.

2006-05-19 Thread grayyoga at gmail dot com


--- Comment #1 from grayyoga at gmail dot com  2006-05-19 19:19 ---
Created an attachment (id=11488)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11488&action=view)
Command line parameters and output of gcc.


-- 


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



[Bug c++/27684] GCC doesn't link code, compiled using boost::mpl. Segmentation failed.

2006-05-19 Thread grayyoga at gmail dot com


--- Comment #2 from grayyoga at gmail dot com  2006-05-19 19:20 ---
Created an attachment (id=11489)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11489&action=view)
Preprocessed output of the buggy program.


-- 


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



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

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


--- Comment #4 from kazu at gcc dot gnu dot org  2006-05-19 19:36 ---
Infinite recursion is going on in CSE.  Here is what happens.

At cse.c:4278 in fold_rtx, we have

(gdb) call debug_rtx(x)
(plus:SI (reg/v/f:SI 60 [ first ])
 (const_int 4 [0x4]))

(gdb) call debug_rtx(y)
(plus:SI (reg/v/f:SI 60 [ first ])
 (mem/s/j:SI (plus:SI (reg/v/f:SI 59 [ cur ])
  (const_int 4 [0x4])) [0 .offset_next+0
S4 A32]))
(gdb)

Here we call fold_rtx (XEXP (y, 1), 0), where XEXP (y, 1) is

  (mem/s/j:SI (plus:SI (reg/v/f:SI 59 [ cur ])
   (const_int 4 [0x4])) [0 .offset_next+0 S4
A32])

fold_rtx delegates all processing of MEMs to fold_rtx_mem, so
fold_rtx_mem gets

  (mem/s/j:SI (plus:SI (reg/v/f:SI 59 [ cur ])
   (const_int 4 [0x4])) [0 .offset_next+0 S4
A32])

fold_rtx_mem in turn calls fold_rtx with the address inside the MEM,
which is:

  (plus:SI (reg/v/f:SI 59 [ cur ])
   (const_int 4 [0x4])) [0 .offset_next+0 S4 A32])

fold_rtx later calls lookup_as_function on (reg/v/f:SI 59 [ cur ]),
which returns

  (plus:SI (reg/v/f:SI 60 [ first ])
   (mem/s/j:SI (plus:SI (reg/v/f:SI 60 [ first ])
   (const_int 4 [0x4])) [0 .offset_next+0 S4
A32]))

which is the same as what we started with.


-- 


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



[Bug objc/27686] New: objc-act.c:5573: warning: implicit declaration of function 'default_conversion'

2006-05-19 Thread danglin at gcc dot gnu dot org
/mnt/gnu/gcc-3.3/objdir/./prev-gcc/xgcc -B/mnt/gnu/gcc-3.3/objdir/./prev-gcc/
-B
/opt/gnu/gcc/gcc-4.2.0/hppa2.0w-hp-hpux11.11/bin/ -c   -g -O2 -DIN_GCC   -W
-Wal
l -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic
-Wno-long-l
ong -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition
-Wmissin
g-format-attribute -Werror -DOBJCPLUS -I../../gcc/gcc/objc -I../../gcc/gcc/cp
-f
no-common   -DHAVE_CONFIG_H -I. -Iobjcp -I../../gcc/gcc -I../../gcc/gcc/objcp
-I
../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include
-I/opt/gnu/gcc/gcc-4.
2.0/include  -I../../gcc/gcc/../libdecnumber -I../libdecnumber-I. -Iobjcp
-I
../../gcc/gcc -I../../gcc/gcc/objcp -I../../gcc/gcc/../include
-I../../gcc/gcc/.
./libcpp/include -I/opt/gnu/gcc/gcc-4.2.0/include 
-I../../gcc/gcc/../libdecnumb
er -I../libdecnumber ../../gcc/gcc/objc/objc-act.c -o objcp/objcp-act.o
cc1: warnings being treated as errors
../../gcc/gcc/objc/objc-act.c: In function
'build_shared_structure_initializer':
../../gcc/gcc/objc/objc-act.c:5573: warning: implicit declaration of function
'd
efault_conversion'
../../gcc/gcc/objc/objc-act.c:5573: warning: passing argument 2 of
'tree_cons_st
at' makes pointer from integer without a cast
make[3]: *** [objcp/objcp-act.o] Error 1


-- 
   Summary: objc-act.c:5573: warning: implicit declaration of
function 'default_conversion'
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: objc
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa2.0w-hp-hpux11.11
  GCC host triplet: hppa2.0w-hp-hpux11.11
GCC target triplet: hppa2.0w-hp-hpux11.11


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



[Bug objc++/27686] [4.2 Regression] objc-act.c:5573: warning: implicit declaration of function 'default_conversion'

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


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-19 20:27 ---
Fixed by:
http://gcc.gnu.org/ml/gcc-patches/2006-05/msg00997.html
http://gcc.gnu.org/ml/gcc-cvs/2006-05/msg00518.html


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
  Component|objc|objc++
   Keywords||build
 Resolution||FIXED
Summary|objc-act.c:5573: warning:   |[4.2 Regression] objc-
   |implicit declaration of |act.c:5573: warning:
   |function|implicit declaration of
   |'default_conversion'|function
   ||'default_conversion'
   Target Milestone|--- |4.2.0


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



[Bug rtl-optimization/26855] [4.2 Regression] ICE in add_deps_for_def with -fmodulo-sched -maltivec

2006-05-19 Thread zadeck at gcc dot gnu dot org


--- Comment #9 from zadeck at gcc dot gnu dot org  2006-05-19 21:18 ---
Subject: Bug 26855

Author: zadeck
Date: Fri May 19 21:18:23 2006
New Revision: 113915

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113915
Log:
2006-05-19  Daniel Berlin  <[EMAIL PROTECTED]>
Kenneth Zadeck <[EMAIL PROTECTED]>

PR rtl-optimization/26855

* df-scan.c (mw_reg_pool, mw_link_pool): New allocation pools for
multiword refs.
(df_scan_alloc): Added code to properly handle multiword hard
registers and add all_blocks parameter.
(df_scan_free_internal, df_insn_refs_delete, df_ref_record): Added
code to properly handle multiword hard registers.
(df_rescan_blocks): Added code to remove deleted blocks from
bitmap.
(df_ref_create_structure, df_ref_record): Added code to properly
handle subregs.
(df_ref_record_1): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER
and set DF_REF_PARTIAL.
(df_defs_record): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER.
(df_uses_record): Added DF_REF_PARTIAL for subreg. 
(df_scan_add_problem): Added flags parameter.
(df_ref_create_structure): Changed switching structure.
(df_bb_refs_record): Fixed case where duplicate artificial refs
were created.  Changed location of flags.
(df_record_entry_block_defs): Added code to make stack pointer
live in entry block.  Refined cases where frame pointer is needed.
Changed location of flags.
(df_record_exit_block_uses, df_insn_refs_record): Changed location of
flags.
(df_set_state): Removed function.
(df_grow_reg_info, df_reg_chain_unlink, df_ref_remove,
df_insn_create_insn_record, df_insn_refs_delete, 
df_ref_create_structure): Formatting changes.  
* df-core.c (df_mvs_dump, df_set_flags, df_clear_flags,
df_delete_basic_block): New function.
(df_init): Changed location of flags.
(df_add_problem): Added flags parameter and the way flags are
processed.
(df_insn_uid_debug, df_ref_debug, debug_df_defno, debug_df_ref,
debug_df_chain): Improved debugging output.
(df_insn_debug, df_insn_uid_debug): Added multiword reg support.
(df_refs_chain_dump): Removed df parameter.
(df_iterative_dataflow): Added consistency check.
(df_prune_to_subcfg): Made public.
(df_analyze_problem): Added blocks_to_init parameter and made
public.
(df_ref_record, df_bb_refs_record, df_mark_reg, 
 df_record_exit_block_uses): Whitespace changes.
(df_dump): Whitespace changes.
* df.h: Some reordering to remove forward references.
(df_ref_flags.DF_REF_MW_HARDREG, DF_REF_PARTIAL,
DF_REF_MUST_CLOBBER, DF_REF_MAY_CLOBBER): New fields.
(df_ref_flags.DF_REF_CLOBBER): Deleted field.
(dataflow.flags): New field.
(df.flag): Deleted field.
(df_alloc_function): Added additional bitmap parameter.
(df_dependent_problem_function): New type.
(df_problem.changeable_flags): New field.
(df_ref_flags.DF_REF_DIES_AFTER_THIS_USE, DF_SCAN_INITIAL,
DF_SCAN_GLOBAL, DF_SCAN_POST_ALLOC, df_state): Removed.
(df_mw_hardreg): New struct.
(DF_INSN_UID_MWS): New macro.
(df_refs_chain_dump, df_ref_debug, df_chain_dump): Removed df
parameter.
(df_add_problem, df_ru_add_problem, df_rd_add_problem,
df_lr_add_problem, df_ur_add_problem, df_urec_add_problem,
df_ri_add_problem, df_scan_add_problem): Added flags parameter.
(df_set_state): Removed function.
(df_set_flags, df_clear_flags, df_delete_basic_block) New functions.
* df-problems.c (df_chain_dump): Removed df parameter.
(df_ru_alloc, df_rd_alloc, df_lr_alloc, df_ur_alloc,
df_urec_alloc, df_chain_alloc, df_ri_alloc): Added all blocks
parameter.
(df_ru_alloc, df_rd_alloc): Now resets all blocks.
(df_rd_bb_local_compute_process_def, df_ur_bb_local_compute,
df_chain_create_bb, df_create_unused_note, df_ri_bb_compute):
Split DF_REF_CLOBBER into DF_REF_MAY_CLOBBER and
DF_REF_MUST_CLOBBER cases.
(df_ru_bb_local_compute_process_def,
df_rd_bb_local_compute_process_def, df_lr_bb_local_compute,
df_lr_bb_local_compute, df_ur_bb_local_compute,
df_chain_create_bb): Made subreg aware.
(df_ru_bb_local_compute, df_rd_bb_local_compute,
df_lr_bb_local_compute, df_lr_bb_local_compute,
df_chain_create_bb): Cleanup to use proper macros.
(df_ur_local_finalize, df_urec_local_finalize): Removed unnecessary
code to fixup bitvectors.
(df_ri_alloc): Cleared lifetime.
(df_ignore_stack_reg, df_kill_notes, df_set_notes_for_mw,
df_create_unused_note): New function.
(df_ri_bb_compute, df_ri_compute): Added code to cr

[Bug testsuite/27611] FAIL: g++.dg/other/unused1.C scan-assembler string\t"class2" and string\t"printer"

2006-05-19 Thread schwab at suse dot de


--- Comment #4 from schwab at suse dot de  2006-05-19 21:32 ---
Halfway fixed by .


-- 


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



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

2006-05-19 Thread hjl at gcc dot gnu dot org


--- Comment #7 from hjl at gcc dot gnu dot org  2006-05-20 00:28 ---
Subject: Bug 27662

Author: hjl
Date: Sat May 20 00:28:14 2006
New Revision: 113922

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113922
Log:
gcc/fortran/

2006-05-19  H.J. Lu  <[EMAIL PROTECTED]>

PR fortran/27662
* trans-array.c (gfc_conv_expr_descriptor): Don't zere the
first stride to indicate a temporary.
* trans-expr.c (gfc_conv_function_call): Likewise.

gcc/testsuite/

2006-05-19  H.J. Lu  <[EMAIL PROTECTED]>

PR fortran/27662
* gfortran.dg/temporary_1.f90: New file.

Added:
trunk/gcc/testsuite/gfortran.dg/temporary_1.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-array.c
trunk/gcc/fortran/trans-expr.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/27684] GCC doesn't link code, compiled using boost::mpl. Segmentation failed.

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


--- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-20 01:39 ---
This really should be filed to binutils and not to GCC.


-- 


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



[Bug libfortran/22423] Warnings when building libgfortran

2006-05-19 Thread jvdelisle at gcc dot gnu dot org


--- Comment #5 from jvdelisle at gcc dot gnu dot org  2006-05-20 02:56 
---
I will fix the one in transfer.c as obvious.

I don't understand the issue in list_read.c  I have a namelist patch pending
for that file so if someone could give me a hint I would be happy to fix that
as well.


-- 


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



[Bug libfortran/22423] Warnings when building libgfortran

2006-05-19 Thread jvdelisle at gcc dot gnu dot org


--- Comment #6 from jvdelisle at gcc dot gnu dot org  2006-05-20 03:30 
---
Subject: Bug 22423

Author: jvdelisle
Date: Sat May 20 03:29:58 2006
New Revision: 113923

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113923
Log:
2006-05-19  Jerry DeLisle  <[EMAIL PROTECTED]>

PR libgfortran/22423
* io/transfer.c (read_block): Return NULL instead of nothing.

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


-- 


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



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

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


--- Comment #2 from kazu at gcc dot gnu dot org  2006-05-20 04:57 ---
The whole problem is reduced to the combiner doing wrong simplification
of XOR.  Here are some details.

Consider:

extern void abort (void) __attribute__ ((noreturn));
extern void exit (int) __attribute__ ((noreturn));

static int __attribute__((noinline))
foo (int a, int b)
{
  int c = a ^ b;
  if (c == a)
abort ();
}

int
main (void)
{
  foo (0, 1);
  exit (0);
}

Note that

  c == a  <==>  a ^ b == a
  <==>  b == 0

So foo aborts if and only if b == 0.  In the above testcase, b gets 1,
so foo shouldn't abort, but it does.

The combiner tries to combine the following two insns.  (I'm omitting
clobbers for brevity.)

(set (reg:SI 61)
 (xor:SI (reg/v:SI 60 [ b ])
 (reg/v:SI 59 [ a ])))

(set (reg:CCZ 17 flags)
 (compare:CCZ (reg:SI 61)
  (reg/v:SI 59 [ a ])))

The combiner produces

(set (reg:CCZ 17 flags)
 (compare:CCZ (reg/v:SI 59 [ a ])
  (const_int 0 [0x0])))

Note that this is wrong.  What matters is whether b is 0 or not.

Once the problem is reduced to this level,
-march=pentium4 is no longer needed.
Is is just that with -march=pentium4, "k % 2" is expanded using XOR.


-- 


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



[Bug libfortran/26893] kinds.h not generated, causing failure

2006-05-19 Thread ebotcazou at gcc dot gnu dot org


--- Comment #9 from ebotcazou at gcc dot gnu dot org  2006-05-20 06:01 
---
> I note that the versions of GMP & MPFR I'm using work *fine* on linux, so I
> consider them "known good".  They only don't work with Solaris.

I definitely cannot reproduce this problem either.


-- 


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



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

2006-05-19 Thread pault at gcc dot gnu dot org


--- Comment #8 from pault at gcc dot gnu dot org  2006-05-20 06:23 ---
HJ

Your ISP does not like my address for some reason - it keeps bouncing my mail
to you.

Well done!  tonto-1.0/SPEC2006 now runs correctly.

Paul


-- 

pault at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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