public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop
@ 2020-12-31 18:42 ffadrique at gmail dot com
  2020-12-31 18:53 ` [Bug fortran/98490] " dominiq at lps dot ens.fr
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: ffadrique at gmail dot com @ 2020-12-31 18:42 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 98490
           Summary: Unexpected out of bounds in array constructor with
                    implied do loop
           Product: gcc
           Version: 9.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ffadrique at gmail dot com
  Target Milestone: ---

The followinng code, when compiled with -fbounds-check produces a runtime
exception

program test

  implicit none

  call sub( 'Lorem ipsum' )

contains

subroutine sub( text )

  character(len=*), intent(in) :: text

  integer :: i

  write(*,*) [ ( text(i:i), i = 1, len(text) ) ]

end subroutine sub

end program test

Run time error:
At line 18 of file test.f90
Fortran runtime error: Substring out of bounds: lower bound (-2147483648) of
'text' is less than one

Error termination. Backtrace:
#0  0x7f01d0965d3a
#1  0x7f01d0966849
#2  0x7f01d0966ec6
#3  0x5567acbd1269
#4  0x5567acbd14e6
#5  0x5567acbd151e
#6  0x7f01d077a0b2
#7  0x5567acbd10fd
#8  0xffffffffffffffff

It is clear to me that the automatic variable i is not initialised before
invoking the implied do loop. However, the loop should run between 1 and the
length of the input text as given in the loop controls; not evaluate at the
uninitialised value.

The behaviour is as expected when not compiled with the bound check flag. Also
valgrind is not reporting any invalid memory access. The issue may be
associated to the compilation with the bound check flag (that I need to have
enabled in general). The workaround is straightforward.

I have also checked that if there were several statements like the write one in
the example, I would have to control the initial value of i before each implied
loop to make sure that the initial value is not out of the array in the loop.

  i = 1  ! Prevents the exception
  write(*,*) [ ( text1(i:i), i = 1, len(text1) ) ]  ! text1 of length 20

! Next statement triggers the exception unless i is reset again
  write(*,*) [ ( text2(i:i), i = 1, len(text2) ) ]  ! text2 of length 10

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
@ 2020-12-31 18:53 ` dominiq at lps dot ens.fr
  2020-12-31 19:11 ` ffadrique at gmail dot com
                   ` (17 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: dominiq at lps dot ens.fr @ 2020-12-31 18:53 UTC (permalink / raw)
  To: gcc-bugs

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

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2020-12-31

--- Comment #1 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
WORKSFORME fron 7 up to 11. Which revision are you using?

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
  2020-12-31 18:53 ` [Bug fortran/98490] " dominiq at lps dot ens.fr
@ 2020-12-31 19:11 ` ffadrique at gmail dot com
  2020-12-31 19:48 ` kargl at gcc dot gnu.org
                   ` (16 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: ffadrique at gmail dot com @ 2020-12-31 19:11 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Fran Martinez Fadrique <ffadrique at gmail dot com> ---
I am not sure to understand the question

The gfortran version is

gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04) 

It also appear with 

gcc version 11.0.0 20201220 (experimental) (GCC)

also in Ubuntu

In case it was not clear in my initial statement, it only appears when the flag
-fbound-check is used. Otherwise the behaviour seems fine.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
  2020-12-31 18:53 ` [Bug fortran/98490] " dominiq at lps dot ens.fr
  2020-12-31 19:11 ` ffadrique at gmail dot com
@ 2020-12-31 19:48 ` kargl at gcc dot gnu.org
  2020-12-31 19:49 ` kargl at gcc dot gnu.org
                   ` (15 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: kargl at gcc dot gnu.org @ 2020-12-31 19:48 UTC (permalink / raw)
  To: gcc-bugs

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

kargl at gcc dot gnu.org changed:

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

--- Comment #3 from kargl at gcc dot gnu.org ---
Index: gcc/fortran/trans-expr.c
===================================================================
--- gcc/fortran/trans-expr.c    (revision 1050250)
+++ gcc/fortran/trans-expr.c    (working copy)
@@ -2374,7 +2374,8 @@ gfc_conv_substring (gfc_se * se, gfc_ref * ref, int ki
   if (!CONSTANT_CLASS_P (tmp) && !DECL_P (tmp))
     end.expr = gfc_evaluate_now (end.expr, &se->pre);

-  if (gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
+  if ((gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
+      && !ref->u.ss.start->symtree->n.sym->attr.implied_index)
     {
       tree nonempty = fold_build2_loc (input_location, LE_EXPR,
                                       logical_type_node, start.expr,

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (2 preceding siblings ...)
  2020-12-31 19:48 ` kargl at gcc dot gnu.org
@ 2020-12-31 19:49 ` kargl at gcc dot gnu.org
  2021-01-02  4:08 ` jvdelisle at charter dot net
                   ` (14 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: kargl at gcc dot gnu.org @ 2020-12-31 19:49 UTC (permalink / raw)
  To: gcc-bugs

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

kargl at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
             Status|WAITING                     |NEW

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (3 preceding siblings ...)
  2020-12-31 19:49 ` kargl at gcc dot gnu.org
@ 2021-01-02  4:08 ` jvdelisle at charter dot net
  2021-01-02  4:12 ` jvdelisle at charter dot net
                   ` (13 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: jvdelisle at charter dot net @ 2021-01-02  4:08 UTC (permalink / raw)
  To: gcc-bugs

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

Jerry DeLisle <jvdelisle at charter dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jvdelisle at charter dot net

--- Comment #4 from Jerry DeLisle <jvdelisle at charter dot net> ---
With gfortran version 11.0.0 20201227

$ gfc -fbounds-check pr98490.f90 
$ 
$ ./a.out 
At line 15 of file pr98490.f90
Fortran runtime error: Substring out of bounds: lower bound (0) of 'text' is
less than one

After Steves patch:

$ gfc -fbounds-check pr98490.f90 
$ ./a.out 
 Lorem ipsum

Steve would you like me to commit for you? Regression testing now.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (4 preceding siblings ...)
  2021-01-02  4:08 ` jvdelisle at charter dot net
@ 2021-01-02  4:12 ` jvdelisle at charter dot net
  2021-01-02  4:24 ` sgk at troutmask dot apl.washington.edu
                   ` (12 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: jvdelisle at charter dot net @ 2021-01-02  4:12 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Jerry DeLisle <jvdelisle at charter dot net> ---
Patch regresses several test cases.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (5 preceding siblings ...)
  2021-01-02  4:12 ` jvdelisle at charter dot net
@ 2021-01-02  4:24 ` sgk at troutmask dot apl.washington.edu
  2021-01-02 21:03 ` sgk at troutmask dot apl.washington.edu
                   ` (11 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: sgk at troutmask dot apl.washington.edu @ 2021-01-02  4:24 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Steve Kargl <sgk at troutmask dot apl.washington.edu> ---
On Sat, Jan 02, 2021 at 04:12:27AM +0000, jvdelisle at charter dot net wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98490
> 
> --- Comment #5 from Jerry DeLisle <jvdelisle at charter dot net> ---
> Patch regresses several test cases.
> 

I haven't regression tested the patch, but at least
for the testcase in this PR the patch is correct.
You can verify this by looking at -fdump-tree-original
with and without the patch.  The variable 'i' is never
set and never used (unless you use -fcheck=all).

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (6 preceding siblings ...)
  2021-01-02  4:24 ` sgk at troutmask dot apl.washington.edu
@ 2021-01-02 21:03 ` sgk at troutmask dot apl.washington.edu
  2021-01-25 13:40 ` pault at gcc dot gnu.org
                   ` (10 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: sgk at troutmask dot apl.washington.edu @ 2021-01-02 21:03 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Steve Kargl <sgk at troutmask dot apl.washington.edu> ---
On Sat, Jan 02, 2021 at 04:12:27AM +0000, jvdelisle at charter dot net wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98490
> 
> --- Comment #5 from Jerry DeLisle <jvdelisle at charter dot net> ---
> Patch regresses several test cases.
>

This regresses okay.

diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index 14361a10f68..b860f7eaa26 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -2537,7 +2537,9 @@ gfc_conv_substring (gfc_se * se, gfc_ref * ref, int kind,
   if (!CONSTANT_CLASS_P (tmp) && !DECL_P (tmp))
     end.expr = gfc_evaluate_now (end.expr, &se->pre);

-  if (gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
+  if ((gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
+      && (ref->u.ss.start->symtree
+   && !ref->u.ss.start->symtree->n.sym->attr.implied_index))
     {
       tree nonempty = fold_build2_loc (input_location, LE_EXPR,

My test program without the dejagnu stuff.

program test

   implicit none

   call sub('Lorem ipsum')

   contains

      subroutine sub( text )
         character(len=*), intent(in) :: text
         character(len=1), allocatable ::c(:)
         integer :: i
         c = [ ( text(i:i), i = 1, len(text) ) ]
         if (c(1) /= 'L') stop 1
      end subroutine sub

end program test

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (7 preceding siblings ...)
  2021-01-02 21:03 ` sgk at troutmask dot apl.washington.edu
@ 2021-01-25 13:40 ` pault at gcc dot gnu.org
  2021-09-08 20:36 ` anlauf at gcc dot gnu.org
                   ` (9 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: pault at gcc dot gnu.org @ 2021-01-25 13:40 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #8 from Paul Thomas <pault at gcc dot gnu.org> ---
(In reply to Steve Kargl from comment #7)
> On Sat, Jan 02, 2021 at 04:12:27AM +0000, jvdelisle at charter dot net wrote:
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98490
> > 
> > --- Comment #5 from Jerry DeLisle <jvdelisle at charter dot net> ---
> > Patch regresses several test cases.
> >
> 
> This regresses okay.
>  
> diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
> index 14361a10f68..b860f7eaa26 100644
> --- a/gcc/fortran/trans-expr.c
> +++ b/gcc/fortran/trans-expr.c
> @@ -2537,7 +2537,9 @@ gfc_conv_substring (gfc_se * se, gfc_ref * ref, int
> kind,
>    if (!CONSTANT_CLASS_P (tmp) && !DECL_P (tmp))
>      end.expr = gfc_evaluate_now (end.expr, &se->pre);
>  
> -  if (gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
> +  if ((gfc_option.rtcheck & GFC_RTCHECK_BOUNDS)
> +      && (ref->u.ss.start->symtree
> +   && !ref->u.ss.start->symtree->n.sym->attr.implied_index))
>      {
>        tree nonempty = fold_build2_loc (input_location, LE_EXPR,
> 
> My test program without the dejagnu stuff.
> 
> program test
> 
>    implicit none
>  
>    call sub('Lorem ipsum')
> 
>    contains
> 
>       subroutine sub( text )
>          character(len=*), intent(in) :: text
>          character(len=1), allocatable ::c(:)
>          integer :: i
>          c = [ ( text(i:i), i = 1, len(text) ) ]
>          if (c(1) /= 'L') stop 1
>       end subroutine sub
> 
> end program test

Hi Steve and Jerry,

This is OK to commit to master. I would suggest cherry-picking to 9- and
10-branches too.

Cheers

Paul

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (8 preceding siblings ...)
  2021-01-25 13:40 ` pault at gcc dot gnu.org
@ 2021-09-08 20:36 ` anlauf at gcc dot gnu.org
  2021-09-08 20:43 ` kargl at gcc dot gnu.org
                   ` (8 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-08 20:36 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

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

--- Comment #9 from anlauf at gcc dot gnu.org ---
(In reply to Steve Kargl from comment #7)
> This regresses okay.

Still does.  Shall I submit it for review, commit for you, or let it bit-rot?

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (9 preceding siblings ...)
  2021-09-08 20:36 ` anlauf at gcc dot gnu.org
@ 2021-09-08 20:43 ` kargl at gcc dot gnu.org
  2021-09-09 19:34 ` cvs-commit at gcc dot gnu.org
                   ` (7 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: kargl at gcc dot gnu.org @ 2021-09-08 20:43 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from kargl at gcc dot gnu.org ---
(In reply to anlauf from comment #9)
> (In reply to Steve Kargl from comment #7)
> > This regresses okay.
> 
> Still does.  Shall I submit it for review, commit for you, or let it bit-rot?

If you agree with the patch, I think you can commit it without review.
Two sets of eyes (yours and mine) have looked over the patch.  You'll
still need to submit emails.  Just use the "committed as obvious" or
"committed after discussion with Steve" excuse.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (10 preceding siblings ...)
  2021-09-08 20:43 ` kargl at gcc dot gnu.org
@ 2021-09-09 19:34 ` cvs-commit at gcc dot gnu.org
  2021-09-09 19:40 ` anlauf at gcc dot gnu.org
                   ` (6 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-09 19:34 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 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:5fe0865ab788bdc387b284a3ad57e5a95a767b18

commit r12-3432-g5fe0865ab788bdc387b284a3ad57e5a95a767b18
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Thu Sep 9 21:34:01 2021 +0200

    Fortran - out of bounds in array constructor with implied do loop

    gcc/fortran/ChangeLog:

            PR fortran/98490
            * trans-expr.c (gfc_conv_substring): Do not generate substring
            bounds check for implied do loop index variable before it actually
            becomes defined.

    gcc/testsuite/ChangeLog:

            PR fortran/98490
            * gfortran.dg/bounds_check_23.f90: New test.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (11 preceding siblings ...)
  2021-09-09 19:34 ` cvs-commit at gcc dot gnu.org
@ 2021-09-09 19:40 ` anlauf at gcc dot gnu.org
  2021-09-11 19:03 ` cvs-commit at gcc dot gnu.org
                   ` (5 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-09 19:40 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at gcc dot gnu.org      |anlauf at gcc dot gnu.org
             Status|NEW                         |ASSIGNED
           Keywords|                            |wrong-code

--- Comment #12 from anlauf at gcc dot gnu.org ---
Here's the mail to the ML:

https://gcc.gnu.org/pipermail/fortran/2021-September/056494.html

Unless there is fallout, I'll see if this can be backported to open branches.

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (12 preceding siblings ...)
  2021-09-09 19:40 ` anlauf at gcc dot gnu.org
@ 2021-09-11 19:03 ` cvs-commit at gcc dot gnu.org
  2021-09-16 18:30 ` cvs-commit at gcc dot gnu.org
                   ` (4 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-11 19:03 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 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:7ca5bcb0f12380a399c6f88f82fa01b530eb85e5

commit r11-8980-g7ca5bcb0f12380a399c6f88f82fa01b530eb85e5
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Thu Sep 9 21:34:01 2021 +0200

    Fortran - out of bounds in array constructor with implied do loop

    gcc/fortran/ChangeLog:

            PR fortran/98490
            * trans-expr.c (gfc_conv_substring): Do not generate substring
            bounds check for implied do loop index variable before it actually
            becomes defined.

    gcc/testsuite/ChangeLog:

            PR fortran/98490
            * gfortran.dg/bounds_check_23.f90: New test.

    (cherry picked from commit 5fe0865ab788bdc387b284a3ad57e5a95a767b18)

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (13 preceding siblings ...)
  2021-09-11 19:03 ` cvs-commit at gcc dot gnu.org
@ 2021-09-16 18:30 ` cvs-commit at gcc dot gnu.org
  2021-09-30 19:12 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-16 18:30 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #14 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:c38626f7a66dea400e54f671bfe32dc46e11ad44

commit r10-10131-gc38626f7a66dea400e54f671bfe32dc46e11ad44
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Thu Sep 9 21:34:01 2021 +0200

    Fortran - out of bounds in array constructor with implied do loop

    gcc/fortran/ChangeLog:

            PR fortran/98490
            * trans-expr.c (gfc_conv_substring): Do not generate substring
            bounds check for implied do loop index variable before it actually
            becomes defined.

    gcc/testsuite/ChangeLog:

            PR fortran/98490
            * gfortran.dg/bounds_check_23.f90: New test.

    (cherry picked from commit 5fe0865ab788bdc387b284a3ad57e5a95a767b18)

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (14 preceding siblings ...)
  2021-09-16 18:30 ` cvs-commit at gcc dot gnu.org
@ 2021-09-30 19:12 ` cvs-commit at gcc dot gnu.org
  2021-09-30 19:13 ` anlauf at gcc dot gnu.org
                   ` (2 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-30 19:12 UTC (permalink / raw)
  To: gcc-bugs

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

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

https://gcc.gnu.org/g:97a5a41dbfef1722fdaf4dc979e8b9c274b4404d

commit r9-9750-g97a5a41dbfef1722fdaf4dc979e8b9c274b4404d
Author: Harald Anlauf <anlauf@gmx.de>
Date:   Thu Sep 9 21:34:01 2021 +0200

    Fortran - out of bounds in array constructor with implied do loop

    gcc/fortran/ChangeLog:

            PR fortran/98490
            * trans-expr.c (gfc_conv_substring): Do not generate substring
            bounds check for implied do loop index variable before it actually
            becomes defined.

    gcc/testsuite/ChangeLog:

            PR fortran/98490
            * gfortran.dg/bounds_check_23.f90: New test.

    (cherry picked from commit 5fe0865ab788bdc387b284a3ad57e5a95a767b18)

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (15 preceding siblings ...)
  2021-09-30 19:12 ` cvs-commit at gcc dot gnu.org
@ 2021-09-30 19:13 ` anlauf at gcc dot gnu.org
  2021-11-02 18:33 ` anlauf at gcc dot gnu.org
  2022-03-18 19:48 ` anlauf at gcc dot gnu.org
  18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-30 19:13 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED
   Target Milestone|---                         |9.5

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

Thanks for the report!

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (16 preceding siblings ...)
  2021-09-30 19:13 ` anlauf at gcc dot gnu.org
@ 2021-11-02 18:33 ` anlauf at gcc dot gnu.org
  2022-03-18 19:48 ` anlauf at gcc dot gnu.org
  18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-11-02 18:33 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |krefson at gmail dot com

--- Comment #17 from anlauf at gcc dot gnu.org ---
*** Bug 103045 has been marked as a duplicate of this bug. ***

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

* [Bug fortran/98490] Unexpected out of bounds in array constructor with implied do loop
  2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
                   ` (17 preceding siblings ...)
  2021-11-02 18:33 ` anlauf at gcc dot gnu.org
@ 2022-03-18 19:48 ` anlauf at gcc dot gnu.org
  18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2022-03-18 19:48 UTC (permalink / raw)
  To: gcc-bugs

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

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |physiker at toast2 dot net

--- Comment #18 from anlauf at gcc dot gnu.org ---
*** Bug 70994 has been marked as a duplicate of this bug. ***

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

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

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-31 18:42 [Bug fortran/98490] New: Unexpected out of bounds in array constructor with implied do loop ffadrique at gmail dot com
2020-12-31 18:53 ` [Bug fortran/98490] " dominiq at lps dot ens.fr
2020-12-31 19:11 ` ffadrique at gmail dot com
2020-12-31 19:48 ` kargl at gcc dot gnu.org
2020-12-31 19:49 ` kargl at gcc dot gnu.org
2021-01-02  4:08 ` jvdelisle at charter dot net
2021-01-02  4:12 ` jvdelisle at charter dot net
2021-01-02  4:24 ` sgk at troutmask dot apl.washington.edu
2021-01-02 21:03 ` sgk at troutmask dot apl.washington.edu
2021-01-25 13:40 ` pault at gcc dot gnu.org
2021-09-08 20:36 ` anlauf at gcc dot gnu.org
2021-09-08 20:43 ` kargl at gcc dot gnu.org
2021-09-09 19:34 ` cvs-commit at gcc dot gnu.org
2021-09-09 19:40 ` anlauf at gcc dot gnu.org
2021-09-11 19:03 ` cvs-commit at gcc dot gnu.org
2021-09-16 18:30 ` cvs-commit at gcc dot gnu.org
2021-09-30 19:12 ` cvs-commit at gcc dot gnu.org
2021-09-30 19:13 ` anlauf at gcc dot gnu.org
2021-11-02 18:33 ` anlauf at gcc dot gnu.org
2022-03-18 19:48 ` 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).