[LLVM] Fix Maintainers.md formatting (NFC)
[llvm-project.git] / flang / test / Semantics / cuf13.cuf
blobdafcffa5e93bdfdd54be3cf5e2a1c5d4d628e335
1 ! RUN: %flang_fc1 -x cuda -fdebug-unparse %s | FileCheck %s
3 module matching
4   interface sub
5     module procedure sub_host
6     module procedure sub_device
7     module procedure sub_managed
8     module procedure sub_unified
9   end interface
11 contains
12   subroutine sub_host(a)
13     integer :: a(:)
14   end
16   subroutine sub_device(a)
17     integer, device :: a(:)
18   end
20   subroutine sub_managed(a)
21     integer, managed :: a(:)
22   end
24   subroutine sub_unified(a)
25     integer, unified :: a(:)
26   end
27 end module
29 program m
30   use matching
32   integer, pinned, allocatable :: a(:)
33   integer, managed, allocatable :: b(:)
34   integer, unified, allocatable :: u(:)
35   integer, device :: d(10)
36   logical :: plog
37   allocate(a(100), pinned = plog)
38   allocate(b(200))
39   allocate(u(100))
41   call sub(a) ! Should resolve to sub_host
42   call sub(b) ! Should resolve to sub_managed
43   call sub(u) ! Should resolve to sub_unified
44   call sub(d) ! Should resolve to sub_device
46 end
48 ! CHECK: CALL sub_host
49 ! CHECK: CALL sub_managed
50 ! CHECK: CALL sub_unified
51 ! CHECK: CALL sub_device