This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/19561] [gfortran] wrong code generation for pointers to derived types
- From: "paulthomas2 at wanadoo dot fr" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Jan 2005 13:04:10 -0000
- Subject: [Bug fortran/19561] [gfortran] wrong code generation for pointers to derived types
- References: <20050121103032.19561.martin@mpa-garching.mpg.de>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From paulthomas2 at wanadoo dot fr 2005-01-21 13:03 -------
Confirmed on Cygwin and RH9
In an attempt to reduce this a bit, I have produced a slightly more startling
error:
$ cat point.f90
module mpoint
type :: mytype
integer :: i
end type mytype
contains
function get (a) result (b)
type (mytype), target :: a
type (mytype), pointer :: b
b => a
end function get
end module mpoint
program point
use mpoint
type (mytype), target :: x
type (mytype), pointer :: y
x = mytype (42)
print *, get (x)
end program point
$ d:/irun/bin/gfortran -c -v point.f90
Using built-in specs.
Configured with: ../gcc/configure --with-gmp=/usr/local --with-
mpfr=/usr/local -
-enable-languages=c,f95,c++ --prefix=/cygdrive/d/irun :
(reconfigured) ../gcc/co
nfigure --with-gmp=/usr/local --with-mpfr=/usr/local --
prefix=/cygdrive/d/irun -
-with-gcc-version-trigger=/cygdrive/d/gcc-cvs/gcc/gcc/version.c --enable-
languag
es=c,c++,f95 --no-create --no-recursion : (reconfigured) ../gcc/configure --
with
-gmp=/usr/local --with-mpfr=/usr/local --prefix=/cygdrive/d/irun --with-gcc-
vers
ion-trigger=/cygdrive/d/gcc-cvs/gcc/gcc/version.c --enable-
languages=c,c++,f95 -
-no-create --no-recursion
Thread model: single
gcc version 4.0.0 20050116 (experimental)
/cygdrive/d/irun/libexec/gcc/i686-pc-cygwin/4.0.0/f951.exe point.f90 -quiet -
du
mpbase point.f90 -mtune=pentiumpro -auxbase point -version -
o /cygdrive/c/DOCUME
~1/PAULTH~1/LOCALS~1/Temp/cc6mI8lv.s
GNU F95 version 4.0.0 20050117 (experimental) (i686-pc-cygwin)
compiled by GNU C version 3.3.1 (cygming special).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
point.f90: In function 'MAIN__':
point.f90:16: internal compiler error: tree check: expected record_type or
union
_type or qual_union_type, have pointer_type in find_compatible_field, at
tree.c:
5995
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19561