public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/102112] New: Cannot associate with component of associate target
@ 2021-08-27 23:01 everythingfunctional at protonmail dot com
  2023-06-01  8:14 ` [Bug fortran/102112] " pault at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: everythingfunctional at protonmail dot com @ 2021-08-27 23:01 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 102112
           Summary: Cannot associate with component of associate target
           Product: gcc
           Version: 11.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: everythingfunctional at protonmail dot com
  Target Milestone: ---

I'm using version Ubuntu 11.1.0-1ubuntu1~21.04 on Pop!OS.

The compiler is rejecting valid code using associate, in this instance when
trying to associate to a component of a target in an associate. Note that this
also occurs when calling a type-bound procedure of the target.

program main
    implicit none

    type :: sub_t
        integer :: val
    end type

    type :: obj_t
        type(sub_t) :: sub_obj
    end type

    associate(initial_sub => sub_t(42))
        associate(obj => obj_t(initial_sub))
            associate(sub_obj => obj%sub_obj)
            end associate
        end associate
    end associate
end program

gives

app/main.f90:14:33:

   14 |             associate(sub_obj => obj%sub_obj)
      |                                 1
Error: Invalid association target at (1)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug fortran/102112] Cannot associate with component of associate target
  2021-08-27 23:01 [Bug fortran/102112] New: Cannot associate with component of associate target everythingfunctional at protonmail dot com
@ 2023-06-01  8:14 ` pault at gcc dot gnu.org
  2023-06-02  7:42 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: pault at gcc dot gnu.org @ 2023-06-01  8:14 UTC (permalink / raw)
  To: gcc-bugs

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

Paul Thomas <pault at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2023-06-01
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
           Assignee|unassigned at gcc dot gnu.org      |pault at gcc dot gnu.org

--- Comment #1 from Paul Thomas <pault at gcc dot gnu.org> ---
I have a fix but, at present, it breaks several other associate tests.

Paul

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug fortran/102112] Cannot associate with component of associate target
  2021-08-27 23:01 [Bug fortran/102112] New: Cannot associate with component of associate target everythingfunctional at protonmail dot com
  2023-06-01  8:14 ` [Bug fortran/102112] " pault at gcc dot gnu.org
@ 2023-06-02  7:42 ` cvs-commit at gcc dot gnu.org
  2023-06-02  8:41 ` pault at gcc dot gnu.org
  2023-08-27  8:51 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-06-02  7:42 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Paul Thomas <pault@gcc.gnu.org>:

https://gcc.gnu.org/g:3c2eba4b7a2355ed5099e35332388206c484744d

commit r14-1487-g3c2eba4b7a2355ed5099e35332388206c484744d
Author: Paul Thomas <pault@gcc.gnu.org>
Date:   Fri Jun 2 08:41:45 2023 +0100

    Fortran: Fix some problems blocking associate meta-bug [PR87477]

    2023-06-02  Paul Thomas  <pault@gcc.gnu.org>

    gcc/fortran
            PR fortran/87477
            * parse.cc (parse_associate): Replace the existing evaluation
            of the target rank with calls to gfc_resolve_ref and
            gfc_expression_rank. Identify untyped target function results
            with structure constructors by finding the appropriate derived
            type.
            * resolve.cc (resolve_symbol): Allow associate variables to be
            assumed shape.

    gcc/testsuite/
            PR fortran/87477
            * gfortran.dg/associate_54.f90 : Cope with extra error.

            PR fortran/102109
            * gfortran.dg/pr102109.f90 : New test.

            PR fortran/102112
            * gfortran.dg/pr102112.f90 : New test.

            PR fortran/102190
            * gfortran.dg/pr102190.f90 : New test.

            PR fortran/102532
            * gfortran.dg/pr102532.f90 : New test.

            PR fortran/109948
            * gfortran.dg/pr109948.f90 : New test.

            PR fortran/99326
            * gfortran.dg/pr99326.f90 : New test.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug fortran/102112] Cannot associate with component of associate target
  2021-08-27 23:01 [Bug fortran/102112] New: Cannot associate with component of associate target everythingfunctional at protonmail dot com
  2023-06-01  8:14 ` [Bug fortran/102112] " pault at gcc dot gnu.org
  2023-06-02  7:42 ` cvs-commit at gcc dot gnu.org
@ 2023-06-02  8:41 ` pault at gcc dot gnu.org
  2023-08-27  8:51 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: pault at gcc dot gnu.org @ 2023-06-02  8:41 UTC (permalink / raw)
  To: gcc-bugs

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

Paul Thomas <pault at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #3 from Paul Thomas <pault at gcc dot gnu.org> ---
Hi Brad,

This is fixed on trunk (14-branch). I am going to close the PR for housekeeping
purposes but will be sure to include the patch in a cumulative backport.

Thanks for the report.

Paul

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug fortran/102112] Cannot associate with component of associate target
  2021-08-27 23:01 [Bug fortran/102112] New: Cannot associate with component of associate target everythingfunctional at protonmail dot com
                   ` (2 preceding siblings ...)
  2023-06-02  8:41 ` pault at gcc dot gnu.org
@ 2023-08-27  8:51 ` cvs-commit at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-08-27  8:51 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-13 branch has been updated by Paul Thomas <pault@gcc.gnu.org>:

https://gcc.gnu.org/g:d6997a5aab7aaa325946a6283bfee8ac2bd9f540

commit r13-7761-gd6997a5aab7aaa325946a6283bfee8ac2bd9f540
Author: Paul Thomas <pault@gcc.gnu.org>
Date:   Sun Aug 27 09:51:32 2023 +0100

    Fortran: Fix some problems blocking associate meta-bug [PR87477]

    2023-08-27  Paul Thomas  <pault@gcc.gnu.org>

    gcc/fortran
            PR fortran/87477
            * parse.cc (parse_associate): Replace the existing evaluation
            of the target rank with calls to gfc_resolve_ref and
            gfc_expression_rank. Identify untyped target function results
            with structure constructors by finding the appropriate derived
            type.
            * resolve.cc (resolve_symbol): Allow associate variables to be
            assumed shape.

    gcc/testsuite/
            PR fortran/87477
            * gfortran.dg/associate_54.f90 : Cope with extra error.

            PR fortran/102109
            * gfortran.dg/pr102109.f90 : New test.

            PR fortran/102112
            * gfortran.dg/pr102112.f90 : New test.

            PR fortran/102190
            * gfortran.dg/pr102190.f90 : New test.

            PR fortran/102532
            * gfortran.dg/pr102532.f90 : New test.

            PR fortran/109948
            * gfortran.dg/pr109948.f90 : New test.

            PR fortran/99326
            * gfortran.dg/pr99326.f90 : New test.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-08-27  8:51 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-27 23:01 [Bug fortran/102112] New: Cannot associate with component of associate target everythingfunctional at protonmail dot com
2023-06-01  8:14 ` [Bug fortran/102112] " pault at gcc dot gnu.org
2023-06-02  7:42 ` cvs-commit at gcc dot gnu.org
2023-06-02  8:41 ` pault at gcc dot gnu.org
2023-08-27  8:51 ` cvs-commit at gcc dot gnu.org

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).