76 lines · plain
1! RUN: %python %S/../test_errors.py %s %flang -fopenmp2 3! OpenMP Version 4.54! 2.8.1 simd Construct5! Semantic error for correct test case6 7program omp_simd8 integer i, j, k, c, d(100)9 integer, allocatable :: a(:), b(:)10 common /cmn/ c11 12 allocate(a(10))13 allocate(b(10))14 15 !ERROR: List item 'a' present at multiple ALIGNED clauses16 !$omp simd aligned(a, a)17 do i = 1, 1018 a(i) = i19 end do20 !$omp end simd21 22 !ERROR: List item 'a' present at multiple ALIGNED clauses23 !ERROR: List item 'b' present at multiple ALIGNED clauses24 !$omp simd aligned(a,a) aligned(b) aligned(b)25 do i = 1, 1026 a(i) = i27 b(i) = i28 end do29 !$omp end simd30 31 !ERROR: List item 'a' present at multiple ALIGNED clauses32 !$omp simd aligned(a) aligned(a)33 do i = 1, 1034 a(i) = i35 end do36 !$omp end simd37 38 !$omp simd aligned(a) aligned(b)39 do i = 1, 1040 a(i) = i41 b(i) = i42 end do43 !$omp end simd44 45 !ERROR: List item 'a' present at multiple ALIGNED clauses46 !$omp simd aligned(a) private(a) aligned(a)47 do i = 1, 1048 a(i) = i49 b(i) = i50 end do51 !$omp end simd52 53 print *, a54 55 !ERROR: 'c' is a common block name and can not appear in an ALIGNED clause56 !$omp simd aligned(c)57 do i = 1, 1058 c = 559 end do60 !$omp end simd61 62 !ERROR: 'd' in ALIGNED clause must be of type C_PTR, POINTER or ALLOCATABLE63 !WARNING: Alignment is not a power of 2, Aligned clause will be ignored [-Wopen-mp-usage]64 !$omp simd aligned(d:100)65 do i = 1, 10066 d(i) = i67 end do68 69 !WARNING: Alignment is not a power of 2, Aligned clause will be ignored [-Wopen-mp-usage]70 !$omp simd aligned(b:65)71 do i = 1, 10072 b(i) = i73 end do74 75end program omp_simd76