forked from OSchip/llvm-project
35 lines
752 B
Fortran
35 lines
752 B
Fortran
! RUN: %flang_fc1 -fdebug-unparse %s 2>&1 | FileCheck %s
|
|
! Ensures that parentheses are preserved with derived types
|
|
module m
|
|
type :: t
|
|
integer :: n
|
|
end type
|
|
contains
|
|
subroutine sub(x)
|
|
type(t), intent(in) :: x
|
|
end subroutine
|
|
function f(m)
|
|
type(t), pointer :: f
|
|
integer, intent(in) :: m
|
|
type(t), save, target :: res
|
|
res%n = m
|
|
f => res
|
|
end function
|
|
subroutine test
|
|
type(t) :: x
|
|
x = t(1)
|
|
!CHECK: CALL sub(t(n=1_4))
|
|
call sub(t(1))
|
|
!CHECK: CALL sub((t(n=1_4)))
|
|
call sub((t(1)))
|
|
!CHECK: CALL sub(x)
|
|
call sub(x)
|
|
!CHECK: CALL sub((x))
|
|
call sub((x))
|
|
!CHECK: CALL sub(f(2_4))
|
|
call sub(f(2))
|
|
!CHECK: CALL sub((f(2_4)))
|
|
call sub((f(2)))
|
|
end subroutine
|
|
end module
|