Recursive derived type specifications - PR21458 - a standard question.
Paul Thomas
paulthomas2@wanadoo.fr
Sat Oct 1 15:49:00 GMT 2005
Steve,
>You can get a second opinion from www.lahey.com. IIRC, the last
>listed item is an on-line conformance checker. I'll run the
>code through NAG in a few hours.
>
I had forgotten about the Lahey checker. Here is the result:
Source file : SOURCE.F90
Module "snafu"
(line-no.)(nest)
1 module snafu
2 type :: a
3 type(b), pointer :: i
4 end type a
5 type :: b
6 type(c) :: i
7 end type b
8 type :: c
9 type(a) :: i
10 end type c
11 type (c), pointer :: foo
12 end module snafu
Diagnostic messages: program name(snafu)
1600-S: "SOURCE.F90", line 5: No component defined in derived type
definition for 'b'.
1498-S: "SOURCE.F90", line 6, column 10: 'c' invalid as derived type
name.
... aginst ifort's
[root@localhost mytests]# ifc -c snafu.f90
module SNAFU
type(c) :: i
^
Error 123 at (6:snafu.f90) : This derived type has not been defined
Hmmmmm....
Regards
Paul T
More information about the Fortran
mailing list