Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gfortran.dg/substr_5.f90 @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 84e7813d76e9 |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 ! { dg-do run } | |
2 ! | |
3 character(*), parameter :: chrs = '-+.0123456789eEdD' | |
4 character(*), parameter :: expr = '-+.0123456789eEdD' | |
5 integer :: i | |
6 | |
7 if (index(chrs(:), expr) /= 1) call abort | |
8 if (index(chrs(14:), expr) /= 0) call abort | |
9 if (index(chrs(:12), expr) /= 0) call abort | |
10 if (index(chrs, expr(:)) /= 1) call abort | |
11 if (index(chrs, expr(1:)) /= 1) call abort | |
12 if (index(chrs, expr(:1)) /= 1) call abort | |
13 | |
14 if (foo(expr) /= 1) call abort | |
15 if (foo(expr) /= 1) call abort | |
16 if (foo(expr) /= 1) call abort | |
17 if (foo(expr(:)) /= 1) call abort | |
18 if (foo(expr(1:)) /= 1) call abort | |
19 if (foo(expr(:1)) /= 1) call abort | |
20 | |
21 call bar(expr) | |
22 | |
23 contains | |
24 subroutine bar(expr) | |
25 character(*), intent(in) :: expr | |
26 character(*), parameter :: chrs = '-+.0123456789eEdD' | |
27 integer :: foo | |
28 | |
29 if (index(chrs(:), expr) /= 1) call abort | |
30 if (index(chrs(14:), expr) /= 0) call abort | |
31 if (index(chrs(:12), expr) /= 0) call abort | |
32 if (index(chrs, expr(:)) /= 1) call abort | |
33 if (index(chrs, expr(1:)) /= 1) call abort | |
34 if (index(chrs, expr(:1)) /= 1) call abort | |
35 end subroutine bar | |
36 | |
37 integer function foo(expr) | |
38 character(*), intent(in) :: expr | |
39 character(*), parameter :: chrs = '-+.0123456789eEdD' | |
40 | |
41 foo = index(chrs, expr) | |
42 end function foo | |
43 | |
44 end |