public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "juergen.reuter at desy dot de" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/59198] New: ICE on cyclically dependent polymorphic types
Date: Wed, 20 Nov 2013 02:30:00 -0000	[thread overview]
Message-ID: <bug-59198-4@http.gcc.gnu.org/bugzilla/> (raw)

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

            Bug ID: 59198
           Summary: ICE on cyclically dependent polymorphic types
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: juergen.reuter at desy dot de

Created attachment 31254
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31254&action=edit
Code triggering the ICE

Triggers ICE with gfortran 4.9.0 v204344. It compiles with gfortran 4.6.3 (but
in our setup produces seg faults in the final code), ICE is present in 4.6.4,
4.7.3, 4.8.1.
This is the code O(60) lines, also attached:
module decays
  abstract interface
     function obs_unary_int ()
     end function obs_unary_int
  end interface

  type, abstract :: any_config_t
   contains
     procedure (any_config_final), deferred :: final
  end type any_config_t

  type :: decay_term_t
     type(unstable_t), dimension(:), pointer :: unstable_product => null ()
  end type decay_term_t

  type, abstract :: decay_gen_t
     type(decay_term_t), dimension(:), allocatable :: term
     procedure(obs_unary_int),   nopass, pointer :: obs1_int  => null ()     
  end type decay_gen_t

  type, extends (decay_gen_t) :: decay_root_t
   contains
     procedure :: final => decay_root_final
  end type decay_root_t

  type, abstract :: rng_t
  end type rng_t

  type, extends (decay_gen_t) :: decay_t
     class(rng_t), allocatable :: rng
   contains
     procedure :: final => decay_final
  end type decay_t

  type, extends (any_config_t) :: unstable_config_t
   contains
     procedure :: final => unstable_config_final
  end type unstable_config_t

  type :: unstable_t
     type(unstable_config_t), pointer :: config => null ()
     type(decay_t), dimension(:), allocatable :: decay
  end type unstable_t

  interface
     subroutine any_config_final (object)
       import
       class(any_config_t), intent(inout) :: object
     end subroutine any_config_final
  end interface

contains
  subroutine decay_root_final (object)
    class(decay_root_t), intent(inout) :: object
  end subroutine decay_root_final    

  recursive subroutine decay_final (object)
    class(decay_t), intent(inout) :: object
  end subroutine decay_final

  recursive subroutine unstable_config_final (object)
    class(unstable_config_t), intent(inout) :: object
  end subroutine unstable_config_final

end module decays


             reply	other threads:[~2013-11-20  2:30 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-20  2:30 juergen.reuter at desy dot de [this message]
2013-11-20 14:40 ` [Bug fortran/59198] [4.7/4.8/4.9 Regression] " janus at gcc dot gnu.org
2013-11-20 15:55 ` janus at gcc dot gnu.org
2013-12-19 15:20 ` rguenth at gcc dot gnu.org
2013-12-19 15:33 ` rguenth at gcc dot gnu.org
2014-01-19 21:31 ` mikael at gcc dot gnu.org
2014-02-09 17:50 ` janus at gcc dot gnu.org
2014-02-22 13:35 ` pault at gcc dot gnu.org
2014-02-22 15:35 ` burnus at gcc dot gnu.org
2014-02-22 16:02 ` paul.richard.thomas at gmail dot com
2014-02-24  9:20 ` paul.richard.thomas at gmail dot com
2014-02-25  9:31 ` pault at gcc dot gnu.org
2014-02-25 13:44 ` paul.richard.thomas at gmail dot com
2014-02-25 20:23 ` pault at gcc dot gnu.org
2014-06-12 13:46 ` [Bug fortran/59198] [4.7/4.8/4.9/4.10 " rguenth at gcc dot gnu.org
2014-12-19 13:40 ` [Bug fortran/59198] [4.8/4.9/5 " jakub at gcc dot gnu.org
2014-12-26 15:59 ` paul.richard.thomas at gmail dot com
2014-12-26 16:25 ` dominiq at lps dot ens.fr
2015-02-17  9:39 ` dominiq at lps dot ens.fr
2015-03-16  8:45 ` pault at gcc dot gnu.org
2015-03-16 11:26 ` juergen.reuter at desy dot de
2015-03-17  5:20 ` pault at gcc dot gnu.org
2015-03-18 20:22 ` [Bug fortran/59198] [4.8/4.9 " anlauf at gmx dot de
2015-03-18 21:19 ` pault at gcc dot gnu.org
2015-03-19 22:23 ` pault at gcc dot gnu.org
2015-06-23  8:47 ` [Bug fortran/59198] [4.8 " rguenth at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-59198-4@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).