------- Comment #5 from burnus at gcc dot gnu dot org 2010-04-01 09:26 -------
(In reply to comment #3)
> Reduced test:
[...]
(In reply to comment #4)
> Further reduced test that does not give an ICE, but several errors:
> Although gfortran should not give an ICE, I have doubts about the validity of
> the code.
Well, using
type omega_procedures
procedure(number_particles_out), nopass, pointer :: number_particles_out
=> NULL()
end type omega_procedures
is definitely wrong: You tell that the procedure pointer has the interface of
itself. By itself, gfortran also properly diagnoses this:
Error: Interface 'number_particles_out' of procedure pointer component
'number_particles_out' at (1) must be explicit
But seemingly, this resolution comes too late - the ICE happens earlier. That's
definitely an ICE-on-invalid-code bug.
* * *
However, if I compile the real, 7479 line program with ifort, I do not get any
error message. I try now to reduce - using delta - the big program, under the
constraint that it still compiles without any error with ifort. Let's see where
that leads to.
Cf. http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction
--
burnus at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-invalid-code
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43591