public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
@ 2022-09-20 17:35 gscfq@t-online.de
  2022-09-20 19:03 ` [Bug fortran/106986] " anlauf at gcc dot gnu.org
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: gscfq@t-online.de @ 2022-09-20 17:35 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 106986
           Summary: [10/11/12/13 Regression] ICE in
                    simplify_findloc_nodim, at fortran/simplify.cc:5675
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gscfq@t-online.de
  Target Milestone: ---

Started between 20211031 and 20211107 :


$ cat z1.f90
program p
   integer, parameter :: a(:) = [1]
   print *, findloc(a, 1)
end


$ gfortran-13-20220918 -c z1.f90
z1.f90:2:29:

    2 |    integer, parameter :: a(:) = [1]
      |                             1
Error: Parameter array 'a' at (1) cannot be automatic or of deferred shape
f951: internal compiler error: Segmentation fault
0xf3a72f crash_signal
        ../../gcc/toplev.cc:314
0x881fd0 simplify_findloc_nodim
        ../../gcc/fortran/simplify.cc:5675
0x88c259 gfc_simplify_findloc(gfc_expr*, gfc_expr*, gfc_expr*, gfc_expr*,
gfc_expr*, gfc_expr*)
        ../../gcc/fortran/simplify.cc:5941
0x809024 do_simplify
        ../../gcc/fortran/intrinsic.cc:4698
0x813f1a gfc_intrinsic_func_interface(gfc_expr*, int)
        ../../gcc/fortran/intrinsic.cc:5056
0x8695b8 resolve_unknown_f
        ../../gcc/fortran/resolve.cc:2990
0x8695b8 resolve_function
        ../../gcc/fortran/resolve.cc:3347
0x8695b8 gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.cc:7194
0x86f8bc gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.cc:7161
0x86f8bc gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.cc:11974
0x86e34f gfc_resolve_blocks(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.cc:10972
0x86e6a8 gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.cc:11964
0x871457 resolve_codes
        ../../gcc/fortran/resolve.cc:17617
0x87151e gfc_resolve(gfc_namespace*)
        ../../gcc/fortran/resolve.cc:17652
0x8592e4 resolve_all_program_units
        ../../gcc/fortran/parse.cc:6606
0x8592e4 gfc_parse_file()
        ../../gcc/fortran/parse.cc:6862
0x8a7ccf gfc_be_parse_file
        ../../gcc/fortran/f95-lang.cc:229

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
@ 2022-09-20 19:03 ` anlauf at gcc dot gnu.org
  2022-09-20 20:46 ` marxin at gcc dot gnu.org
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: anlauf at gcc dot gnu.org @ 2022-09-20 19:03 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-09-20
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
                 CC|                            |anlauf at gcc dot gnu.org

--- Comment #1 from anlauf at gcc dot gnu.org ---
Confirmed.

Obvious NULL pointer dereference, fixed by:

diff --git a/gcc/fortran/simplify.cc b/gcc/fortran/simplify.cc
index 140c17721a7..5883689066d 100644
--- a/gcc/fortran/simplify.cc
+++ b/gcc/fortran/simplify.cc
@@ -5895,6 +5899,7 @@ gfc_simplify_findloc (gfc_expr *array, gfc_expr *value,
gfc_expr *dim,
   bool back_val = false;

   if (!is_constant_array_expr (array)
+      || array->shape == NULL
       || !gfc_is_constant_expr (dim))
     return NULL;

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
  2022-09-20 19:03 ` [Bug fortran/106986] " anlauf at gcc dot gnu.org
@ 2022-09-20 20:46 ` marxin at gcc dot gnu.org
  2022-09-20 20:50 ` cvs-commit at gcc dot gnu.org
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-09-20 20:46 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marxin at gcc dot gnu.org

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
Btw. started with r12-4967-gbcf3728abe848888.

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
  2022-09-20 19:03 ` [Bug fortran/106986] " anlauf at gcc dot gnu.org
  2022-09-20 20:46 ` marxin at gcc dot gnu.org
@ 2022-09-20 20:50 ` cvs-commit at gcc dot gnu.org
  2022-09-20 20:58 ` anlauf at gcc dot gnu.org
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-09-20 20:50 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Harald Anlauf <anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:5976fbf9d5dd9542fcb82eebb2185886fd52d000

commit r13-2747-g5976fbf9d5dd9542fcb82eebb2185886fd52d000
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Tue Sep 20 22:41:48 2022 +0200

    Fortran: error recovery on invalid ARRAY argument to FINDLOC [PR106986]

    gcc/fortran/ChangeLog:

            PR fortran/106986
            * simplify.cc (gfc_simplify_findloc): Do not try to simplify
            intrinsic FINDLOC when the ARRAY argument has a NULL shape.

    gcc/testsuite/ChangeLog:

            PR fortran/106986
            * gfortran.dg/pr106986.f90: New test.

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (2 preceding siblings ...)
  2022-09-20 20:50 ` cvs-commit at gcc dot gnu.org
@ 2022-09-20 20:58 ` anlauf at gcc dot gnu.org
  2022-09-21  7:50 ` rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: anlauf at gcc dot gnu.org @ 2022-09-20 20:58 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |10.5
           Assignee|unassigned at gcc dot gnu.org      |anlauf at gcc dot gnu.org
             Status|NEW                         |ASSIGNED

--- Comment #4 from anlauf at gcc dot gnu.org ---
Taking.

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (3 preceding siblings ...)
  2022-09-20 20:58 ` anlauf at gcc dot gnu.org
@ 2022-09-21  7:50 ` rguenth at gcc dot gnu.org
  2022-09-22 18:48 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-09-21  7:50 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (4 preceding siblings ...)
  2022-09-21  7:50 ` rguenth at gcc dot gnu.org
@ 2022-09-22 18:48 ` cvs-commit at gcc dot gnu.org
  2022-09-26 18:13 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-09-22 18:48 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:84a34d76a76f27feabd4523e388068c90c2bb2e4

commit r12-8782-g84a34d76a76f27feabd4523e388068c90c2bb2e4
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Tue Sep 20 22:41:48 2022 +0200

    Fortran: error recovery on invalid ARRAY argument to FINDLOC [PR106986]

    gcc/fortran/ChangeLog:

            PR fortran/106986
            * simplify.cc (gfc_simplify_findloc): Do not try to simplify
            intrinsic FINDLOC when the ARRAY argument has a NULL shape.

    gcc/testsuite/ChangeLog:

            PR fortran/106986
            * gfortran.dg/pr106986.f90: New test.

    (cherry picked from commit 5976fbf9d5dd9542fcb82eebb2185886fd52d000)

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (5 preceding siblings ...)
  2022-09-22 18:48 ` cvs-commit at gcc dot gnu.org
@ 2022-09-26 18:13 ` cvs-commit at gcc dot gnu.org
  2022-09-26 18:16 ` cvs-commit at gcc dot gnu.org
  2022-09-26 18:19 ` anlauf at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-09-26 18:13 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

https://gcc.gnu.org/g:50592ed4703d2e1ade2b197c58b72da0b91933cc

commit r11-10274-g50592ed4703d2e1ade2b197c58b72da0b91933cc
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Tue Sep 20 22:41:48 2022 +0200

    Fortran: error recovery on invalid ARRAY argument to FINDLOC [PR106986]

    gcc/fortran/ChangeLog:

            PR fortran/106986
            * simplify.c (gfc_simplify_findloc): Do not try to simplify
            intrinsic FINDLOC when the ARRAY argument has a NULL shape.

    gcc/testsuite/ChangeLog:

            PR fortran/106986
            * gfortran.dg/pr106986.f90: New test.

    (cherry picked from commit 5976fbf9d5dd9542fcb82eebb2185886fd52d000)

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (6 preceding siblings ...)
  2022-09-26 18:13 ` cvs-commit at gcc dot gnu.org
@ 2022-09-26 18:16 ` cvs-commit at gcc dot gnu.org
  2022-09-26 18:19 ` anlauf at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-09-26 18:16 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:

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

commit r10-11004-gf5840677c146e4317d7fd53697dda60c616d3e58
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Tue Sep 20 22:41:48 2022 +0200

    Fortran: error recovery on invalid ARRAY argument to FINDLOC [PR106986]

    gcc/fortran/ChangeLog:

            PR fortran/106986
            * simplify.c (gfc_simplify_findloc): Do not try to simplify
            intrinsic FINDLOC when the ARRAY argument has a NULL shape.

    gcc/testsuite/ChangeLog:

            PR fortran/106986
            * gfortran.dg/pr106986.f90: New test.

    (cherry picked from commit 5976fbf9d5dd9542fcb82eebb2185886fd52d000)

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

* [Bug fortran/106986] [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675
  2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
                   ` (7 preceding siblings ...)
  2022-09-26 18:16 ` cvs-commit at gcc dot gnu.org
@ 2022-09-26 18:19 ` anlauf at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: anlauf at gcc dot gnu.org @ 2022-09-26 18:19 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

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

--- Comment #8 from anlauf at gcc dot gnu.org ---
Fixed on all affected open branches.  Closing.

Thanks for the report!

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

end of thread, other threads:[~2022-09-26 18:19 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-20 17:35 [Bug fortran/106986] New: [10/11/12/13 Regression] ICE in simplify_findloc_nodim, at fortran/simplify.cc:5675 gscfq@t-online.de
2022-09-20 19:03 ` [Bug fortran/106986] " anlauf at gcc dot gnu.org
2022-09-20 20:46 ` marxin at gcc dot gnu.org
2022-09-20 20:50 ` cvs-commit at gcc dot gnu.org
2022-09-20 20:58 ` anlauf at gcc dot gnu.org
2022-09-21  7:50 ` rguenth at gcc dot gnu.org
2022-09-22 18:48 ` cvs-commit at gcc dot gnu.org
2022-09-26 18:13 ` cvs-commit at gcc dot gnu.org
2022-09-26 18:16 ` cvs-commit at gcc dot gnu.org
2022-09-26 18:19 ` anlauf 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).