public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "alipasha.celeris at gmail dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/102287] New: optional allocatable array arguments (intent out) of derived types with allocatable components are not properly passed to subroutines.
Date: Sat, 11 Sep 2021 00:37:06 +0000	[thread overview]
Message-ID: <bug-102287-4@http.gcc.gnu.org/bugzilla/> (raw)

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102287

            Bug ID: 102287
           Summary: optional allocatable array arguments (intent out) of
                    derived types with allocatable components are not
                    properly passed to subroutines.
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: alipasha.celeris at gmail dot com
  Target Milestone: ---

Created attachment 51437
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51437&action=edit
minimum test case for the observed bug.  Segfaults on the call to "b" inside
"a".

In a chain of subroutine calls, where there is an allocatable optional array
argument, with intent (out), of a derived type with an allocatable component, 
if the argument is omitted in any of the calls (i.e. it is not present inside
the called routine) then the next call (inside the called routine) causes a
segfault.

This behavior is not observed when
  - the derived type has only non-allocatable components,
  - the optional dummy argument is scalar, or
  - the intent is not OUT.

The only factor that can cause the segfault seems to be the presence of an
allocatable component in the derived type, when the dummy argument is an
allocatable array.

             reply	other threads:[~2021-09-11  0:37 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-11  0:37 alipasha.celeris at gmail dot com [this message]
2021-09-13 19:37 ` [Bug fortran/102287] " anlauf at gcc dot gnu.org
2021-09-13 20:55 ` anlauf at gcc dot gnu.org
2021-09-14 19:05 ` anlauf at gcc dot gnu.org
2021-09-16 18:12 ` cvs-commit at gcc dot gnu.org
2021-09-19 19:19 ` cvs-commit at gcc dot gnu.org
2021-09-21 18:51 ` cvs-commit at gcc dot gnu.org
2021-09-21 19:06 ` cvs-commit at gcc dot gnu.org
2021-09-21 19:10 ` anlauf 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-102287-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).