[Bug fortran/56047] [4.8 Regression] [OOP] ICE in in gfc_conv_expr_op

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Jan 20 11:03:00 GMT 2013


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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |janus at gcc dot gnu.org
            Summary|[4.8 Regression] ICE in in  |[4.8 Regression] [OOP] ICE
                   |gfc_conv_expr_op            |in in gfc_conv_expr_op

--- Comment #3 from janus at gcc dot gnu.org 2013-01-20 11:03:07 UTC ---
(In reply to comment #2)
> And the culprit is... 
> ... not me!  Though I was not very far. :-)
> 
> http://gcc.gnu.org/viewcvs?view=revision&revision=190420

Ouch. Why is it always gonna have to be me? ;)


Reduced test case, which removes the dependence on iso_varying_string, and
gives the same ICE as comment 0:


module process_libraries

  implicit none

  type :: string_t
  end type

  type :: process_variant_def_t
   contains
     procedure, nopass :: type_string
  end type

contains

  function type_string () result (string)
    type(string_t) :: string
  end function

  subroutine process_variant_def_allocate_by_name
    type(string_t) :: name
    class(process_variant_def_t), allocatable :: variant_def
    associate (template => variant_def)
      if (template%type_string () == name) return
    end associate
  end subroutine

end module



More information about the Gcc-bugs mailing list