annotate gcc/testsuite/gfortran.dg/associate_41.f90 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 ! { dg-do run }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 !
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 ! Test the fix for PR86372 in which the associate name string length was
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 ! not being set, thereby causing a segfault.
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 !
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 ! Contributed by Janus Weil <janus@gcc.gnu.org>
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 !
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 program xxx
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 character(len=50) :: s
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 s = repeat ('*', len(s))
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 call sub(s)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 if (s .ne. '**'//'123'//repeat ('*', len(s) - 5)) stop 1
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 contains
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 subroutine sub(str)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 character(len=*), intent(inout) :: str
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 associate (substr => str(3:5))
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 substr = '123'
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 end associate
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 end subroutine
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 end