! RUN: %flang_fc1 -fdebug-unparse %s 2>&1 | FileCheck %s ! Tests handling of easily-misparsed substrings and substring ! type parameter inquiries. subroutine foo(j) integer, intent(in) :: j character*4 sc, ac(1) type t character*4 sc, ac(1) end type type(t) st, at(1) !CHECK: PRINT *, sc(1_8:int(j,kind=8)) print *, sc(1:j) !CHECK: PRINT *, ac(1_8)(1_8:int(j,kind=8)) print *, ac(1)(1:j) !CHECK: PRINT *, st%sc(1_8:int(j,kind=8)) print *, st%sc(1:j) !CHECK: PRINT *, st%ac(1_8)(1_8:int(j,kind=8)) print *, st%ac(1)(1:j) !CHECK: PRINT *, at(1_8)%sc(1_8:int(j,kind=8)) print *, at(1)%sc(1:j) !CHECK: PRINT *, at(1_8)%ac(1_8)(1_8:int(j,kind=8)) print *, at(1)%ac(1)(1:j) !CHECK: PRINT *, 1_4 print *, sc(1:j)%kind !CHECK: PRINT *, 1_4 print *, ac(1)(1:j)%kind !CHECK: PRINT *, 1_4 print *, st%sc(1:j)%kind !CHECK: PRINT *, 1_4 print *, st%ac(1)(1:j)%kind !CHECK: PRINT *, 1_4 print *, at(1)%sc(1:j)%kind !CHECK: PRINT *, 1_4 print *, at(1)%ac(1)(1:j)%kind !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, sc(1:j)%len !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, ac(1)(1:j)%len !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, st%sc(1:j)%len !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, st%ac(1)(1:j)%len !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, at(1)%sc(1:j)%len !CHECK: PRINT *, int(max(0_8,int(j,kind=8)-1_8+1_8),kind=4) print *, at(1)%ac(1)(1:j)%len end