[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2006-01-21 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #10 from sgk at troutmask dot apl dot washington dot edu  
2006-01-21 17:27 ---
Subject: Re:  [gfortran, 4.1.0 regression] Arithmetic overflow during
compilation

On Sat, Jan 21, 2006 at 08:49:26AM -, martin at mpa-garching dot mpg dot de
wrote:
> 
> Unfortunately I can reproduce it with GMP 4.1.4 now :(
> This is on an Athlon64 with Suse 10.0, using the GMP 4.1.4 coming with the
> distribution.
> 
> What do we do?
> 

Contact SuSe.  This isn't a gfortran problem.


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2006-01-21 Thread martin at mpa-garching dot mpg dot de


--- Comment #9 from martin at mpa-garching dot mpg dot de  2006-01-21 08:49 
---
(In reply to comment #8)
> I am going to declare this is GMP bug as I can reproduce it on two out of 
> three
> of my machines.  The one with the newest GMP, it works.  These three machines
> are all different targets, powerpc, x86 and x86-64.

Unfortunately I can reproduce it with GMP 4.1.4 now :(
This is on an Athlon64 with Suse 10.0, using the GMP 4.1.4 coming with the
distribution.

What do we do?

BTW, the GMP people have a big notice on their web page that recent gcc
versions often miscompile GMP. That could of course be a problem of the GMP
code as well, but maybe the GMP testsuite should be used regularly to test GCC
builds.
This is especially important since gfortran relies on GMP and MPFR working
properly.


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2006-01-20 Thread pinskia at gcc dot gnu dot org


--- Comment #8 from pinskia at gcc dot gnu dot org  2006-01-20 20:56 ---
I am going to declare this is GMP bug as I can reproduce it on two out of three
of my machines.  The one with the newest GMP, it works.  These three machines
are all different targets, powerpc, x86 and x86-64.

So closing as worksforme.


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||WORKSFORME


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2006-01-16 Thread martin at mpa-garching dot mpg dot de


--- Comment #7 from martin at mpa-garching dot mpg dot de  2006-01-16 11:14 
---
I have re-tested today, and it seems that the problem only occurs when gfortran
is built using a self-compiled version of GMP 4.1.3. When using the system-wide
installed GMP 4.1.4 I don't get the error.
So this looks like a GMP-related problem (either a bug in GMP or a
miscompilation
of GMP).


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread sgk at troutmask dot apl dot washington dot edu


--- Comment #6 from sgk at troutmask dot apl dot washington dot edu  
2005-11-15 21:49 ---
Subject: Re:  [gfortran, 4.1.0 regression] Arithmetic overflow during
compilation

> Comment #5 from martin
> ~/tmp>gfortran -c -fdump-parse-tree huge.f90
> 
>Namespace: A-Z: (UNKNOWN 0)
>procedure name = mod1
>symtree: gndp_max  Ambig 0
>symbol gndp_max (REAL 8)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS UNKNOWN-PROC)
>value: 1.79769313486232e308_8
> 

On amd64-*-freebsd.

Namespace: A-Z: (UNKNOWN 0)
procedure name = mod1
symtree: gndp_max  Ambig 0
symbol gndp_max (REAL 8)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS UNKNOWN-PROC)
value: 1.7976931348623157e308_8

>procedure name = mod2
>symtree: gndp_max  Ambig 0
>symbol gndp_max (REAL 8)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS
>  UNKNOWN-PROC USE-ASSOC)
>value: 1.79769313486232e308_8

Good, you're reading in what was written to the module.

> 6 'gndp_max' 'mod1' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN) (
> REAL 8 ()) 0 0 () (CONSTANT (REAL 8 ()) 0 '[EMAIL PROTECTED]') () 0 ()
> ())

6 'gndp_max' 'mod1' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN) (
REAL 8 ()) 0 0 () (CONSTANT (REAL 8 ()) 0 '[EMAIL PROTECTED]') () 0 ()

Hmmm, this doesn't look good.  You're getting 1 fewer digits
than I.  I'll check what happens on i386-*-freebsd.


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread martin at mpa-garching dot mpg dot de


--- Comment #5 from martin at mpa-garching dot mpg dot de  2005-11-15 21:16 
---
~/tmp>gfortran -c -fdump-parse-tree huge.f90

Namespace: A-Z: (UNKNOWN 0)
procedure name = mod1
symtree: gndp_max  Ambig 0
symbol gndp_max (REAL 8)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC)
value: 1.79769313486232e308_8

symtree: gndp  Ambig 0
symbol gndp (INTEGER 4)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC)
value: 8

symtree: mod1  Ambig 0
symbol mod1 (UNKNOWN 0)(MODULE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC)

symtree: huge  Ambig 0
symbol huge (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC FUNCTION)
result: huge

symtree: kind  Ambig 0
symbol kind (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC FUNCTION)
result: kind



 In file huge.f90:15

val = -GNDP_MAX
  1
Error: Arithmetic overflow at (1)

Namespace: A-Z: (UNKNOWN 0)
procedure name = mod2
symtree: gndp_max  Ambig 0
symbol gndp_max (REAL 8)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC USE-ASSOC)
value: 1.79769313486232e308_8

symtree: gndp  Ambig 0
symbol gndp (INTEGER 4)(PARAMETER UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC USE-ASSOC)
value: 8

symtree: foo  Ambig 0
symbol foo (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS
MODULE-PROC SUBROUTINE)

symtree: mod2  Ambig 0
symbol mod2 (UNKNOWN 0)(MODULE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC)

symtree: kind  Ambig 0
symbol kind (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC USE-ASSOC FUNCTION)
result: kind

symtree: huge  Ambig 0
symbol huge (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC USE-ASSOC FUNCTION)
result: huge

symtree: mod1  Ambig 0
symbol mod1 (UNKNOWN 0)(MODULE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC USE-ASSOC)



CONTAINS

  Namespace: A-Z: (UNKNOWN 0)
  procedure name = foo
  symtree: foo  Ambig 0 from namespace mod2
  symtree: val  Ambig 0
  symbol val (REAL 8)(VARIABLE UNKNOWN-INTENT UNKNOWN-ACCESS
UNKNOWN-PROC)




~/tmp> 
~/tmp>cat mod1.mod
GFORTRAN module created from huge.f90 on Tue Nov 15 22:14:38 2005
If you edit this, you'll get what you deserve.

(() () () () () () () () () () () () () () () () () () () ())

()

()

()

()

(2 'gndp' 'mod1' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN) (
INTEGER 4 ()) 0 0 () (CONSTANT (INTEGER 4 ()) 0 '8') () 0 () ())
3 'kind' '(intrinsic)' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN
FUNCTION) (UNKNOWN 0 ()) 0 0 () () 3 () ())
4 'huge' '(intrinsic)' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN
FUNCTION) (UNKNOWN 0 ()) 0 0 () () 4 () ())
5 'mod1' 'mod1' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN) (
UNKNOWN 0 ()) 0 0 () () 0 () ())
6 'gndp_max' 'mod1' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN) (
REAL 8 ()) 0 0 () (CONSTANT (REAL 8 ()) 0 '[EMAIL PROTECTED]') () 0 ()
())
)

('gndp_max' 0 6 'gndp' 0 2 'mod1' 0 5 'huge' 0 4 'kind' 0 3)
~/tmp>   


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread martin at mpa-garching dot mpg dot de


--- Comment #4 from martin at mpa-garching dot mpg dot de  2005-11-15 21:09 
---
> The code works for me on amd64-*-freebsd.  Can
> you compile the failing code with -fdump-parse-tree
> and post both mod1.mod and the parse-tree?

Will do tomorrow.


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread martin at mpa-garching dot mpg dot de


--- Comment #3 from martin at mpa-garching dot mpg dot de  2005-11-15 21:09 
---
(In reply to comment #2)
> It fails on powerpc64-linux with both -m32 and -m64 for current trunk,
> 4.0 branch, and GCC 4.0.0.  Since it's Fortran 90 code it's not really
> a regression.

Well, it worked for me with the current gcc 4.0 branch, so I thought it might
be one. But it seems this is a quite intermittent problem ...


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread janis at gcc dot gnu dot org


--- Comment #2 from janis at gcc dot gnu dot org  2005-11-15 20:16 ---
It fails on powerpc64-linux with both -m32 and -m64 for current trunk,
4.0 branch, and GCC 4.0.0.  Since it's Fortran 90 code it's not really
a regression.


-- 


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



[Bug fortran/24875] [gfortran, 4.1.0 regression] Arithmetic overflow during compilation

2005-11-15 Thread kargl at gcc dot gnu dot org


--- Comment #1 from kargl at gcc dot gnu dot org  2005-11-15 20:11 ---
The code works for me on amd64-*-freebsd.  Can
you compile the failing code with -fdump-parse-tree
and post both mod1.mod and the parse-tree?


-- 

kargl at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||kargl at gcc dot gnu dot org


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