69 lines · plain
1! RUN: %python %S/../test_symbols.py %s %flang_fc1 -fopenmp2 3! Test clauses that accept list.4! 2.1 Directive Format5! A list consists of a comma-separated collection of one or more list items.6! A list item is a variable, array section or common block name (enclosed in7! slashes).8 9!DEF: /md Module10module md11 !DEF: /md/myty PUBLIC DerivedType12 type :: myty13 !DEF: /md/myty/a ObjectEntity REAL(4)14 real :: a15 !DEF: /md/myty/b ObjectEntity INTEGER(4)16 integer :: b17 end type myty18end module md19!DEF: /MM MainProgram20program MM21 !REF: /md22 use :: md23 !DEF: /MM/c CommonBlockDetails24 !DEF: /MM/x (InCommonBlock) ObjectEntity REAL(4)25 !DEF: /MM/y (InCommonBlock) ObjectEntity REAL(4)26 common /c/x, y27 !REF: /MM/x28 !REF: /MM/y29 real x, y30 !DEF: /MM/myty Use31 !DEF: /MM/t ObjectEntity TYPE(myty)32 type(myty) :: t33 !DEF: /MM/b ObjectEntity INTEGER(4)34 integer b(10)35 !REF: /MM/t36 !REF: /md/myty/a37 t%a = 3.1438 !REF: /MM/t39 !REF: /md/myty/b40 t%b = 141 !REF: /MM/b42 b = 243 !DEF: /MM/a (Implicit) ObjectEntity REAL(4)44 a = 1.045 !DEF: /MM/c (Implicit) ObjectEntity REAL(4)46 c = 2.047!$omp parallel do private(a,t,/c/) shared(c)48 !DEF: /MM/OtherConstruct1/i (OmpPrivate, OmpPreDetermined) HostAssoc INTEGER(4)49 do i=1,1050 !DEF: /MM/OtherConstruct1/a (OmpPrivate, OmpExplicit) HostAssoc REAL(4)51 !DEF: /MM/OtherConstruct1/b (OmpShared) HostAssoc INTEGER(4)52 !REF: /MM/OtherConstruct1/i53 a = a+b(i)54 !DEF: /MM/OtherConstruct1/t (OmpPrivate, OmpExplicit) HostAssoc TYPE(myty)55 !REF: /md/myty/a56 !REF: /MM/OtherConstruct1/i57 t%a = i58 !DEF: /MM/OtherConstruct1/y (OmpPrivate, OmpExplicit) HostAssoc REAL(4)59 y = 0.60 !DEF: /MM/OtherConstruct1/x (OmpPrivate, OmpExplicit) HostAssoc REAL(4)61 !REF: /MM/OtherConstruct1/a62 !REF: /MM/OtherConstruct1/i63 !REF: /MM/OtherConstruct1/y64 x = a+i+y65 !DEF: /MM/OtherConstruct1/c (OmpShared, OmpExplicit) HostAssoc REAL(4)66 c = 3.067 end do68end program69