This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug testsuite/32956] New: Compiling equiv_7_db.f90 gives an error with -fdefault-integer-8
- From: "dominiq at lps dot ens dot fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 Aug 2007 14:19:28 -0000
- Subject: [Bug testsuite/32956] New: Compiling equiv_7_db.f90 gives an error with -fdefault-integer-8
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Compiling equiv_7_db.f90 with -fdefault-integer-8 gives:
/opt/gcc/gcc-4.3-work/gcc/testsuite/gfortran.dg/equiv_7.f90:89.38:
data large(1),large(2) /2146435071,-1/
1
Error: Overlapping unequal initializers in EQUIVALENCE at (1)
/opt/gcc/gcc-4.3-work/gcc/testsuite/gfortran.dg/equiv_7.f90:79.30:
data large(1),large(2) /-1,2146435071/
1
Error: Overlapping unequal initializers in EQUIVALENCE at (1)
The following patch fix the problem:
[karma] f90/bug% diff -u
/opt/gcc/gcc-4.3-work/gcc/testsuite/gfortran.dg/equiv_7.f90 equiv_7_db.f90
--- /opt/gcc/gcc-4.3-work/gcc/testsuite/gfortran.dg/equiv_7.f90 2007-07-30
10:50:18.000000000 +0200
+++ equiv_7_db.f90 2007-08-01 16:15:12.000000000 +0200
@@ -72,21 +72,23 @@
function d1mach_little(i) result(d1mach)
implicit none
double precision d1mach,dmach(5)
- integer i,large(4),small(4)
+ integer(4) large(4),small(4)
+ integer i
equivalence ( dmach(1), small(1) )
equivalence ( dmach(2), large(1) )
- data small(1),small(2) / 0, 1048576/
- data large(1),large(2) /-1,2146435071/
+ data small(1),small(2) / 0_4, 1048576_4/
+ data large(1),large(2) /-1_4,2146435071_4/
d1mach = dmach(i)
end function d1mach_little
function d1mach_big(i) result(d1mach)
implicit none
double precision d1mach,dmach(5)
- integer i,large(4),small(4)
+ integer(4) large(4),small(4)
+ integer i
equivalence ( dmach(1), small(1) )
equivalence ( dmach(2), large(1) )
- data small(1),small(2) /1048576, 0/
- data large(1),large(2) /2146435071,-1/
+ data small(1),small(2) /1048576_4, 0_4/
+ data large(1),large(2) /2146435071_4,-1_4/
d1mach = dmach(i)
end function d1mach_big
subroutine derived_types
--
Summary: Compiling equiv_7_db.f90 gives an error with -fdefault-
integer-8
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: testsuite
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dominiq at lps dot ens dot fr
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32956