blob: e2ebb3891ecd41a3bdbc76f75ce4c7e9c1cb3324 [file] [edit]
! RUN: %flang_fc1 -emit-llvm -debug-info-kind=standalone %s -o - | \
! RUN: FileCheck %s --check-prefix=LLVM
! Test CHARACTER argument
subroutine char_arg(str1)
character(len=5) :: str1
print *, str1
end subroutine
! Test CHARACTER argument with different length
subroutine char_arg_len10(str2)
character(len=10) :: str2
print *, str2
end subroutine
! Test multiple CHARACTER arguments
subroutine multi_char_args(s1, s2, s3)
character(len=5) :: s1
character(len=8) :: s2
character(len=3) :: s3
print *, s1, s2, s3
end subroutine
! Test mixed argument types (CHARACTER and INTEGER)
subroutine mixed_args(n, str, m)
integer :: n
character(len=7) :: str
integer :: m
print *, n, str, m
end subroutine
program test
call char_arg('hello')
call char_arg_len10('hello test')
call multi_char_args('abc', 'test123', 'xyz')
call mixed_args(1, 'fortran', 2)
end program test
! LLVM-DAG: !DILocalVariable(name: "str1", arg: 1
! LLVM-DAG: !DILocalVariable(name: "str2", arg: 1
! LLVM-DAG: !DILocalVariable(name: "s1", arg: 1
! LLVM-DAG: !DILocalVariable(name: "s2", arg: 2
! LLVM-DAG: !DILocalVariable(name: "s3", arg: 3
! LLVM-DAG: !DILocalVariable(name: "n", arg: 1
! LLVM-DAG: !DILocalVariable(name: "str", arg: 2
! LLVM-DAG: !DILocalVariable(name: "m", arg: 3