diff --git a/test-lit/Driver/version_test.f90 b/test/Driver/version_test.f90 similarity index 100% rename from test-lit/Driver/version_test.f90 rename to test/Driver/version_test.f90 diff --git a/test/Evaluate/folding01.f90 b/test/Evaluate/folding01.f90 index 81f59c59a277..8a75a819ff81 100644 --- a/test/Evaluate/folding01.f90 +++ b/test/Evaluate/folding01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test intrinsic operation folding diff --git a/test/Evaluate/folding02.f90 b/test/Evaluate/folding02.f90 index 47c7f6373e4f..b69ff87b5c20 100644 --- a/test/Evaluate/folding02.f90 +++ b/test/Evaluate/folding02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Check intrinsic function folding with host runtime library module m diff --git a/test/Evaluate/folding03.f90 b/test/Evaluate/folding03.f90 index 56a6adffb824..c5e26faf8327 100644 --- a/test/Evaluate/folding03.f90 +++ b/test/Evaluate/folding03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test operation folding edge case (both expected value and messages) ! These tests make assumptions regarding real(4) and integer(4) extrema. diff --git a/test/Evaluate/folding04.f90 b/test/Evaluate/folding04.f90 index 3ced207a742c..a0e207b375b7 100644 --- a/test/Evaluate/folding04.f90 +++ b/test/Evaluate/folding04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test intrinsic function folding edge case (both expected value and messages) ! These tests make assumptions regarding real(4) extrema. diff --git a/test/Evaluate/folding05.f90 b/test/Evaluate/folding05.f90 index 5e5e5c576976..79635e392d77 100644 Binary files a/test/Evaluate/folding05.f90 and b/test/Evaluate/folding05.f90 differ diff --git a/test/Evaluate/folding06.f90 b/test/Evaluate/folding06.f90 index c591989488c3..42dc70d5165e 100644 --- a/test/Evaluate/folding06.f90 +++ b/test/Evaluate/folding06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test transformational intrinsic function folding module m diff --git a/test/Evaluate/folding07.f90 b/test/Evaluate/folding07.f90 index b7e13eb027a3..9c9c0a40ed61 100644 --- a/test/Evaluate/folding07.f90 +++ b/test/Evaluate/folding07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test numeric model inquiry intrinsics module m diff --git a/test/Evaluate/folding08.f90 b/test/Evaluate/folding08.f90 index a5546b9cf2c4..67f435a99f31 100644 --- a/test/Evaluate/folding08.f90 +++ b/test/Evaluate/folding08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test folding of LBOUND and UBOUND module m diff --git a/test/Evaluate/folding09.f90 b/test/Evaluate/folding09.f90 index af89aecf951a..a7510604acca 100644 --- a/test/Evaluate/folding09.f90 +++ b/test/Evaluate/folding09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_folding.sh %s %flang %t ! Test folding of IS_CONTIGUOUS on simply contiguous items (9.5.4) ! When IS_CONTIGUOUS() is constant, it's .TRUE. diff --git a/test-lit/Lower/pre-fir-tree01.f90 b/test/Lower/pre-fir-tree01.f90 similarity index 100% rename from test-lit/Lower/pre-fir-tree01.f90 rename to test/Lower/pre-fir-tree01.f90 diff --git a/test-lit/Lower/pre-fir-tree02.f90 b/test/Lower/pre-fir-tree02.f90 similarity index 100% rename from test-lit/Lower/pre-fir-tree02.f90 rename to test/Lower/pre-fir-tree02.f90 diff --git a/test-lit/Lower/pre-fir-tree03.f90 b/test/Lower/pre-fir-tree03.f90 similarity index 100% rename from test-lit/Lower/pre-fir-tree03.f90 rename to test/Lower/pre-fir-tree03.f90 diff --git a/test-lit/Lower/pre-fir-tree04.f90 b/test/Lower/pre-fir-tree04.f90 similarity index 100% rename from test-lit/Lower/pre-fir-tree04.f90 rename to test/Lower/pre-fir-tree04.f90 diff --git a/test/Semantics/getdefinition03-b.f90 b/test/Semantics/Inputs/getdefinition03-b.f90 similarity index 100% rename from test/Semantics/getdefinition03-b.f90 rename to test/Semantics/Inputs/getdefinition03-b.f90 diff --git a/test/Semantics/getsymbols02-a.f90 b/test/Semantics/Inputs/getsymbols02-a.f90 similarity index 83% rename from test/Semantics/getsymbols02-a.f90 rename to test/Semantics/Inputs/getsymbols02-a.f90 index b9d75fde50af..04786c0bea6d 100644 --- a/test/Semantics/getsymbols02-a.f90 +++ b/test/Semantics/Inputs/getsymbols02-a.f90 @@ -1,4 +1,4 @@ -! RUN: ${F18} -fparse-only %s +! EXEC: ${F18} -fparse-only %s module mm2a implicit none diff --git a/test/Semantics/getsymbols02-b.f90 b/test/Semantics/Inputs/getsymbols02-b.f90 similarity index 86% rename from test/Semantics/getsymbols02-b.f90 rename to test/Semantics/Inputs/getsymbols02-b.f90 index 7ed4cbe0d894..1e6bb8b03a6c 100644 --- a/test/Semantics/getsymbols02-b.f90 +++ b/test/Semantics/Inputs/getsymbols02-b.f90 @@ -1,4 +1,4 @@ -! RUN: ${F18} -fparse-only %s +! EXEC: ${F18} -fparse-only %s module mm2b use mm2a diff --git a/test/Semantics/getsymbols02-c.f90 b/test/Semantics/Inputs/getsymbols02-c.f90 similarity index 70% rename from test/Semantics/getsymbols02-c.f90 rename to test/Semantics/Inputs/getsymbols02-c.f90 index cb66680906bb..52a210b91699 100644 --- a/test/Semantics/getsymbols02-c.f90 +++ b/test/Semantics/Inputs/getsymbols02-c.f90 @@ -7,6 +7,6 @@ PROGRAM helloworld i = callget5() ENDPROGRAM -! RUN: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s ! CHECK:callget5: mm2b ! CHECK:get5: mm2a diff --git a/test/Semantics/getsymbols03-b.f90 b/test/Semantics/Inputs/getsymbols03-b.f90 similarity index 100% rename from test/Semantics/getsymbols03-b.f90 rename to test/Semantics/Inputs/getsymbols03-b.f90 diff --git a/test-lit/Semantics/Inputs/mod-file-changed.f90 b/test/Semantics/Inputs/mod-file-changed.f90 similarity index 100% rename from test-lit/Semantics/Inputs/mod-file-changed.f90 rename to test/Semantics/Inputs/mod-file-changed.f90 diff --git a/test-lit/Semantics/Inputs/mod-file-unchanged.f90 b/test/Semantics/Inputs/mod-file-unchanged.f90 similarity index 100% rename from test-lit/Semantics/Inputs/mod-file-unchanged.f90 rename to test/Semantics/Inputs/mod-file-unchanged.f90 diff --git a/test/Semantics/modfile09-a.f90 b/test/Semantics/Inputs/modfile09-a.f90 similarity index 100% rename from test/Semantics/modfile09-a.f90 rename to test/Semantics/Inputs/modfile09-a.f90 diff --git a/test/Semantics/modfile09-b.f90 b/test/Semantics/Inputs/modfile09-b.f90 similarity index 100% rename from test/Semantics/modfile09-b.f90 rename to test/Semantics/Inputs/modfile09-b.f90 diff --git a/test/Semantics/modfile09-c.f90 b/test/Semantics/Inputs/modfile09-c.f90 similarity index 100% rename from test/Semantics/modfile09-c.f90 rename to test/Semantics/Inputs/modfile09-c.f90 diff --git a/test/Semantics/modfile09-d.f90 b/test/Semantics/Inputs/modfile09-d.f90 similarity index 100% rename from test/Semantics/modfile09-d.f90 rename to test/Semantics/Inputs/modfile09-d.f90 diff --git a/test/Semantics/allocate01.f90 b/test/Semantics/allocate01.f90 index 6944e2b30090..0948230a3ea2 100644 --- a/test/Semantics/allocate01.f90 +++ b/test/Semantics/allocate01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements ! Creating a symbol that allocate should accept diff --git a/test/Semantics/allocate02.f90 b/test/Semantics/allocate02.f90 index 7f1693849b5f..13a68e811a55 100644 --- a/test/Semantics/allocate02.f90 +++ b/test/Semantics/allocate02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements diff --git a/test/Semantics/allocate03.f90 b/test/Semantics/allocate03.f90 index f86b44ceca2e..63598f0786df 100644 --- a/test/Semantics/allocate03.f90 +++ b/test/Semantics/allocate03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements subroutine C933_a(b1, ca3, ca4, cp3, cp3mold, cp4, cp7, cp8, bsrc) diff --git a/test/Semantics/allocate04.f90 b/test/Semantics/allocate04.f90 index 3b7ce25bf00e..40e7562938df 100644 --- a/test/Semantics/allocate04.f90 +++ b/test/Semantics/allocate04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements diff --git a/test/Semantics/allocate05.f90 b/test/Semantics/allocate05.f90 index 5d3f2b58160f..84814b674735 100644 --- a/test/Semantics/allocate05.f90 +++ b/test/Semantics/allocate05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements diff --git a/test/Semantics/allocate06.f90 b/test/Semantics/allocate06.f90 index 606f9cec32fe..1de258ccfb46 100644 --- a/test/Semantics/allocate06.f90 +++ b/test/Semantics/allocate06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements diff --git a/test/Semantics/allocate07.f90 b/test/Semantics/allocate07.f90 index 3641ae62a3c6..14077a24013e 100644 --- a/test/Semantics/allocate07.f90 +++ b/test/Semantics/allocate07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements subroutine C936(param_ca_4_assumed, param_ta_4_assumed, param_ca_4_deferred) diff --git a/test/Semantics/allocate08.f90 b/test/Semantics/allocate08.f90 index 732ce270a78b..3e235fcc9cdc 100644 --- a/test/Semantics/allocate08.f90 +++ b/test/Semantics/allocate08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements subroutine C945_a(srca, srcb, srcc, src_complex, src_logical, & diff --git a/test/Semantics/allocate09.f90 b/test/Semantics/allocate09.f90 index e47cd8134b49..61046fb13ce2 100644 --- a/test/Semantics/allocate09.f90 +++ b/test/Semantics/allocate09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements subroutine C946(param_ca_4_assumed, param_ta_4_assumed, param_ca_4_deferred) diff --git a/test/Semantics/allocate10.f90 b/test/Semantics/allocate10.f90 index b3e5d77da315..c15dc57b4472 100644 --- a/test/Semantics/allocate10.f90 +++ b/test/Semantics/allocate10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements !TODO: mixing expr and source-expr? diff --git a/test/Semantics/allocate11.f90 b/test/Semantics/allocate11.f90 index 45128ac8d69d..b883edc4980a 100644 --- a/test/Semantics/allocate11.f90 +++ b/test/Semantics/allocate11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements ! TODO: Function Pointer in allocate and derived types! diff --git a/test/Semantics/allocate12.f90 b/test/Semantics/allocate12.f90 index 8e46b6ddf3d0..41de8edc83ed 100644 --- a/test/Semantics/allocate12.f90 +++ b/test/Semantics/allocate12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements subroutine C941_C942b_C950(xsrc, x1, a2, b2, cx1, ca2, cb1, cb2, c1) diff --git a/test/Semantics/allocate13.f90 b/test/Semantics/allocate13.f90 index 5e01c3853748..b7010f5b0c89 100644 --- a/test/Semantics/allocate13.f90 +++ b/test/Semantics/allocate13.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in ALLOCATE statements module not_iso_fortran_env diff --git a/test/Semantics/altreturn01.f90 b/test/Semantics/altreturn01.f90 index b227d15b4ba1..0449ff774c36 100644 --- a/test/Semantics/altreturn01.f90 +++ b/test/Semantics/altreturn01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check calls with alt returns CALL TEST (N, *100, *200 ) diff --git a/test/Semantics/altreturn02.f90 b/test/Semantics/altreturn02.f90 index ab59a3246588..74ff96933a83 100644 --- a/test/Semantics/altreturn02.f90 +++ b/test/Semantics/altreturn02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check subroutine with alt return SUBROUTINE TEST (N, *, *) diff --git a/test/Semantics/altreturn03.f90 b/test/Semantics/altreturn03.f90 index 15410e716752..73a63860efc7 100644 --- a/test/Semantics/altreturn03.f90 +++ b/test/Semantics/altreturn03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for various alt return error conditions SUBROUTINE TEST (N, *, *) diff --git a/test/Semantics/altreturn04.f90 b/test/Semantics/altreturn04.f90 index 5e930c781c2b..e3714fb92223 100644 --- a/test/Semantics/altreturn04.f90 +++ b/test/Semantics/altreturn04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Functions cannot use alt return REAL FUNCTION altreturn01(X) diff --git a/test/Semantics/altreturn05.f90 b/test/Semantics/altreturn05.f90 index 6669942d00cc..cbd222cba9e7 100644 --- a/test/Semantics/altreturn05.f90 +++ b/test/Semantics/altreturn05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test extension: RETURN from main program return !ok diff --git a/test/Semantics/assign01.f90 b/test/Semantics/assign01.f90 index b125da87ad22..bd41a5b5cc9f 100644 --- a/test/Semantics/assign01.f90 +++ b/test/Semantics/assign01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! 10.2.3.1(2) All masks and LHS of assignments in a WHERE must conform subroutine s1 diff --git a/test/Semantics/assign02.f90 b/test/Semantics/assign02.f90 index 5b3fa4f6da2b..e97be64d6aab 100644 --- a/test/Semantics/assign02.f90 +++ b/test/Semantics/assign02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Pointer assignment constraints 10.2.2.2 module m1 diff --git a/test/Semantics/assign03.f90 b/test/Semantics/assign03.f90 index 6127de22de4f..5b9fe269addc 100644 --- a/test/Semantics/assign03.f90 +++ b/test/Semantics/assign03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Pointer assignment constraints 10.2.2.2 (see also assign02.f90) module m diff --git a/test/Semantics/assign04.f90 b/test/Semantics/assign04.f90 index e0a02160cba5..40946755b32b 100644 --- a/test/Semantics/assign04.f90 +++ b/test/Semantics/assign04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! 9.4.5 subroutine s1 type :: t(k, l) diff --git a/test/Semantics/bad-forward-type.f90 b/test/Semantics/bad-forward-type.f90 index a8f7a4c64af6..62ad9d4b2b4c 100644 --- a/test/Semantics/bad-forward-type.f90 +++ b/test/Semantics/bad-forward-type.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Forward references to derived types (error cases) !ERROR: The derived type 'undef' was forward-referenced but not defined diff --git a/test/Semantics/bindings01.f90 b/test/Semantics/bindings01.f90 index 72cab0832388..54aaacd2e9f8 100644 --- a/test/Semantics/bindings01.f90 +++ b/test/Semantics/bindings01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Confirm enforcement of constraints and restrictions in 7.5.7.3 ! and C779-C785. diff --git a/test/Semantics/block-data01.f90 b/test/Semantics/block-data01.f90 index 5abd0999c010..164709118f6f 100644 --- a/test/Semantics/block-data01.f90 +++ b/test/Semantics/block-data01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test BLOCK DATA subprogram (14.3) block data foo !ERROR: IMPORT is not allowed in a BLOCK DATA subprogram diff --git a/test/Semantics/blockconstruct01.f90 b/test/Semantics/blockconstruct01.f90 index 727e6ab05eeb..7f7eec5b56c3 100644 --- a/test/Semantics/blockconstruct01.f90 +++ b/test/Semantics/blockconstruct01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1107 -- COMMON, EQUIVALENCE, INTENT, NAMELIST, OPTIONAL, VALUE or ! STATEMENT FUNCTIONS not allow in specification part diff --git a/test/Semantics/blockconstruct02.f90 b/test/Semantics/blockconstruct02.f90 index eb7203052fcf..2a1a95f312bf 100644 --- a/test/Semantics/blockconstruct02.f90 +++ b/test/Semantics/blockconstruct02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1108 -- Save statement in a BLOCK construct shall not conatin a ! saved-entity-list that does not specify a common-block-name diff --git a/test/Semantics/blockconstruct03.f90 b/test/Semantics/blockconstruct03.f90 index cb016bb8080f..df5aff7699ea 100644 --- a/test/Semantics/blockconstruct03.f90 +++ b/test/Semantics/blockconstruct03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Tests implemented for this standard: ! Block Construct ! C1109 diff --git a/test/Semantics/c_f_pointer.f90 b/test/Semantics/c_f_pointer.f90 index 2f48574717b4..1064461c509d 100644 --- a/test/Semantics/c_f_pointer.f90 +++ b/test/Semantics/c_f_pointer.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Enforce 18.2.3.3 program test diff --git a/test/Semantics/call01.f90 b/test/Semantics/call01.f90 index d38fc904cfeb..88274dd42844 100644 --- a/test/Semantics/call01.f90 +++ b/test/Semantics/call01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Confirm enforcement of constraints and restrictions in 15.6.2.1 non_recursive function f01(n) result(res) diff --git a/test/Semantics/call02.f90 b/test/Semantics/call02.f90 index f60eabfd8e1e..2d23274da1b0 100644 --- a/test/Semantics/call02.f90 +++ b/test/Semantics/call02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! 15.5.1 procedure reference constraints and restrictions subroutine s01(elem, subr) diff --git a/test/Semantics/call03.f90 b/test/Semantics/call03.f90 index c994b9fa8519..098106aed45e 100644 --- a/test/Semantics/call03.f90 +++ b/test/Semantics/call03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.4 constraints and restrictions for non-POINTER non-ALLOCATABLE ! dummy arguments. diff --git a/test/Semantics/call04.f90 b/test/Semantics/call04.f90 index a3e727a770c8..3064fee5decc 100644 --- a/test/Semantics/call04.f90 +++ b/test/Semantics/call04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 8.5.10 & 8.5.18 constraints on dummy argument declarations module m diff --git a/test/Semantics/call05.f90 b/test/Semantics/call05.f90 index 368ec59b33b8..80f1874ff2d5 100644 --- a/test/Semantics/call05.f90 +++ b/test/Semantics/call05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.5 constraints and restrictions for POINTER & ALLOCATABLE ! arguments when both sides of the call have the same attributes. diff --git a/test/Semantics/call06.f90 b/test/Semantics/call06.f90 index d9c8a0beee72..eb4bd3755f87 100644 --- a/test/Semantics/call06.f90 +++ b/test/Semantics/call06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.6 constraints and restrictions for ALLOCATABLE ! dummy arguments. diff --git a/test/Semantics/call07.f90 b/test/Semantics/call07.f90 index bd44e43b552c..f596e3600288 100644 --- a/test/Semantics/call07.f90 +++ b/test/Semantics/call07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.7 constraints and restrictions for POINTER dummy arguments. module m diff --git a/test/Semantics/call08.f90 b/test/Semantics/call08.f90 index 7fe42e7bd7ef..88ec7e3b4cca 100644 --- a/test/Semantics/call08.f90 +++ b/test/Semantics/call08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.8 coarray dummy arguments module m diff --git a/test/Semantics/call09.f90 b/test/Semantics/call09.f90 index 06c304af4101..e27c78e4281f 100644 --- a/test/Semantics/call09.f90 +++ b/test/Semantics/call09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.5.2.9(2,3,5) dummy procedure requirements module m diff --git a/test/Semantics/call10.f90 b/test/Semantics/call10.f90 index 00db9cd7319c..52983c9f18a0 100644 --- a/test/Semantics/call10.f90 +++ b/test/Semantics/call10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.7 (C1583-C1590, C1592-C1599) constraints and restrictions ! for pure procedures. ! (C1591 is tested in call11.f90; C1594 in call12.f90.) diff --git a/test/Semantics/call11.f90 b/test/Semantics/call11.f90 index 254566fa38b8..b53b40334e93 100644 --- a/test/Semantics/call11.f90 +++ b/test/Semantics/call11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.7 C1591 & others: contexts requiring pure subprograms module m diff --git a/test/Semantics/call12.f90 b/test/Semantics/call12.f90 index ebcaab6fb903..3ce0812560ac 100644 --- a/test/Semantics/call12.f90 +++ b/test/Semantics/call12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.7 C1594 - prohibited assignments in pure subprograms module used diff --git a/test/Semantics/call13.f90 b/test/Semantics/call13.f90 index 798de8fbf2d9..952a7d0c8b1d 100644 --- a/test/Semantics/call13.f90 +++ b/test/Semantics/call13.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 15.4.2.2 constraints and restrictions for calls to implicit ! interfaces diff --git a/test/Semantics/call14.f90 b/test/Semantics/call14.f90 index d6e94be51996..e25620b2694b 100644 --- a/test/Semantics/call14.f90 +++ b/test/Semantics/call14.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test 8.5.18 constraints on the VALUE attribute module m diff --git a/test/Semantics/call15.f90 b/test/Semantics/call15.f90 index 204a0e6c6237..04ee9e88c153 100644 --- a/test/Semantics/call15.f90 +++ b/test/Semantics/call15.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C711 An assumed-type actual argument that corresponds to an assumed-rank ! dummy argument shall be assumed-shape or assumed-rank. subroutine s(arg1, arg2, arg3) diff --git a/test/Semantics/canondo01.f90 b/test/Semantics/canondo01.f90 index 46c82cba9c1d..51060f8a5f1d 100644 --- a/test/Semantics/canondo01.f90 +++ b/test/Semantics/canondo01.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: end do SUBROUTINE sub00(a,b,n,m) diff --git a/test/Semantics/canondo02.f90 b/test/Semantics/canondo02.f90 index 0389df4d52c8..62dbd4b0a024 100644 --- a/test/Semantics/canondo02.f90 +++ b/test/Semantics/canondo02.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: end do SUBROUTINE sub00(a,b,n,m) diff --git a/test/Semantics/canondo03.f90 b/test/Semantics/canondo03.f90 index f72b1ffd0180..4be30775221e 100644 --- a/test/Semantics/canondo03.f90 +++ b/test/Semantics/canondo03.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: 10 continue ! CHECK: end do diff --git a/test/Semantics/canondo04.f90 b/test/Semantics/canondo04.f90 index 763d62674084..452d77d0559e 100644 --- a/test/Semantics/canondo04.f90 +++ b/test/Semantics/canondo04.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: do [1-9] ! Figure out how to also execute this test. diff --git a/test/Semantics/canondo05.f90 b/test/Semantics/canondo05.f90 index f676eff82219..4550e9849fc4 100644 --- a/test/Semantics/canondo05.f90 +++ b/test/Semantics/canondo05.f90 @@ -1,5 +1,6 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s -! XXXRUN: ${F18} -fopenmp -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! XXXEXEC: ${F18} -fopenmp -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: do *[1-9] program P diff --git a/test/Semantics/canondo06.f90 b/test/Semantics/canondo06.f90 index 1e7235b9dc47..0aea3daed4f9 100644 --- a/test/Semantics/canondo06.f90 +++ b/test/Semantics/canondo06.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -fopenmp -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -fopenmp -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: do *[1-9] ! CHECK: omp simd diff --git a/test/Semantics/canondo07.f90 b/test/Semantics/canondo07.f90 index 59a524275efb..f5a0feef93d0 100644 --- a/test/Semantics/canondo07.f90 +++ b/test/Semantics/canondo07.f90 @@ -1,7 +1,8 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1131 -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: A DO loop should terminate with an END DO or CONTINUE program endDo diff --git a/test/Semantics/canondo08.f90 b/test/Semantics/canondo08.f90 index 7e5c158692b1..c5bfb56f1288 100644 --- a/test/Semantics/canondo08.f90 +++ b/test/Semantics/canondo08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 @@ -5,7 +6,7 @@ ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo09.f90 b/test/Semantics/canondo09.f90 index 98c422124c21..99956a03fe3d 100644 --- a/test/Semantics/canondo09.f90 +++ b/test/Semantics/canondo09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 @@ -5,7 +6,7 @@ ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo10.f90 b/test/Semantics/canondo10.f90 index 0827be6de97f..93d060dd9aaa 100644 --- a/test/Semantics/canondo10.f90 +++ b/test/Semantics/canondo10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 @@ -5,7 +6,7 @@ ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo11.f90 b/test/Semantics/canondo11.f90 index 9019f34ae09f..8e98a24bb87f 100644 --- a/test/Semantics/canondo11.f90 +++ b/test/Semantics/canondo11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 @@ -5,7 +6,7 @@ ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo12.f90 b/test/Semantics/canondo12.f90 index 1809afaedac1..48fde32faf99 100644 --- a/test/Semantics/canondo12.f90 +++ b/test/Semantics/canondo12.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo13.f90 b/test/Semantics/canondo13.f90 index 09a3e4c13fd7..b317d7963aa3 100644 --- a/test/Semantics/canondo13.f90 +++ b/test/Semantics/canondo13.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo14.f90 b/test/Semantics/canondo14.f90 index f6d422ab7436..69bd748212be 100644 --- a/test/Semantics/canondo14.f90 +++ b/test/Semantics/canondo14.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo15.f90 b/test/Semantics/canondo15.f90 index 2726cd914aa6..f58959898345 100644 --- a/test/Semantics/canondo15.f90 +++ b/test/Semantics/canondo15.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo16.f90 b/test/Semantics/canondo16.f90 index e1819c00049e..d5c5db464930 100644 --- a/test/Semantics/canondo16.f90 +++ b/test/Semantics/canondo16.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard -I../../tools/f18/include %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard -I../../tools/f18/include %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo17.f90 b/test/Semantics/canondo17.f90 index e9194b0fd592..a687fb2fefac 100644 --- a/test/Semantics/canondo17.f90 +++ b/test/Semantics/canondo17.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo18.f90 b/test/Semantics/canondo18.f90 index 6760d20622db..3e3f18b05174 100644 --- a/test/Semantics/canondo18.f90 +++ b/test/Semantics/canondo18.f90 @@ -1,10 +1,11 @@ +! RUN: %S/test_any.sh %s %flang %t ! Error test -- DO loop uses obsolete loop termination statement ! See R1131 and C1133 ! By default, this is not an error and label do are rewritten to non-label do. ! A warning is generated with -Mstandard -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do diff --git a/test/Semantics/canondo19.f90 b/test/Semantics/canondo19.f90 index 35da0076422b..82bad39e950f 100644 --- a/test/Semantics/canondo19.f90 +++ b/test/Semantics/canondo19.f90 @@ -1,7 +1,8 @@ +! RUN: %S/test_any.sh %s %flang %t ! Check that if there is a label or a name on an label-do-stmt, ! then it is not lost when rewriting it to an non-label-do-stmt. -! RUN: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols -Mstandard %s 2>&1 | ${FileCheck} %s ! CHECK: end do ! CHECK: 2 do diff --git a/test/Semantics/coarrays01.f90 b/test/Semantics/coarrays01.f90 index 491ebb22cbd8..3e8e1672a47b 100644 --- a/test/Semantics/coarrays01.f90 +++ b/test/Semantics/coarrays01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test selector and team-value in CHANGE TEAM statement ! OK diff --git a/test/Semantics/complex01.f90 b/test/Semantics/complex01.f90 index 4fb46ba56b71..c70f0defad6a 100644 --- a/test/Semantics/complex01.f90 +++ b/test/Semantics/complex01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C718 Each named constant in a complex literal constant shall be of type ! integer or real. subroutine s() diff --git a/test/Semantics/computed-goto01.f90 b/test/Semantics/computed-goto01.f90 index f16838e9ca78..9f24996f41a0 100644 --- a/test/Semantics/computed-goto01.f90 +++ b/test/Semantics/computed-goto01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that a basic computed goto compiles INTEGER, DIMENSION (2) :: B diff --git a/test/Semantics/computed-goto02.f90 b/test/Semantics/computed-goto02.f90 index 7c40c65ec6b0..eea61a827052 100644 --- a/test/Semantics/computed-goto02.f90 +++ b/test/Semantics/computed-goto02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that computed goto express must be a scalar integer expression ! TODO: PGI, for example, accepts a float & converts the value to int. diff --git a/test/Semantics/critical01.f90 b/test/Semantics/critical01.f90 index 89d3337ba536..5ca97ade6998 100644 --- a/test/Semantics/critical01.f90 +++ b/test/Semantics/critical01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !C1117 subroutine test1(a, i) diff --git a/test/Semantics/critical02.f90 b/test/Semantics/critical02.f90 index 2c75ac2ab33e..ba5e0f4c55a7 100644 --- a/test/Semantics/critical02.f90 +++ b/test/Semantics/critical02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !C1118 subroutine test1 diff --git a/test/Semantics/critical03.f90 b/test/Semantics/critical03.f90 index 6bf45531a170..2ab60e5d59a9 100644 --- a/test/Semantics/critical03.f90 +++ b/test/Semantics/critical03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !C1119 subroutine test1(a, i) diff --git a/test/Semantics/critical04.f90 b/test/Semantics/critical04.f90 index 3b5f7e8e1383..136e31baa621 100644 --- a/test/Semantics/critical04.f90 +++ b/test/Semantics/critical04.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: Control flow escapes from CRITICAL subroutine test1(a, i) diff --git a/test/Semantics/data01.f90 b/test/Semantics/data01.f90 index c8af31a50d07..4bdf7ea9dd4a 100644 --- a/test/Semantics/data01.f90 +++ b/test/Semantics/data01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !Test for checking data constraints, C882-C887 module m1 type person diff --git a/test/Semantics/data02.f90 b/test/Semantics/data02.f90 index 4cd593697b23..ac6902622d83 100644 --- a/test/Semantics/data02.f90 +++ b/test/Semantics/data02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that expressions are analyzed in data statements subroutine s1 diff --git a/test/Semantics/deallocate01.f90 b/test/Semantics/deallocate01.f90 index 2bb4236c3b82..8aaf14496d71 100644 --- a/test/Semantics/deallocate01.f90 +++ b/test/Semantics/deallocate01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test that DEALLOCATE works INTEGER, PARAMETER :: maxvalue=1024 diff --git a/test/Semantics/deallocate04.f90 b/test/Semantics/deallocate04.f90 index 7183e2d3ecb8..2a1ad62b9920 100644 --- a/test/Semantics/deallocate04.f90 +++ b/test/Semantics/deallocate04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for type errors in DEALLOCATE statements INTEGER, PARAMETER :: maxvalue=1024 diff --git a/test/Semantics/deallocate05.f90 b/test/Semantics/deallocate05.f90 index 765753ac0c64..fdc66004e2ce 100644 --- a/test/Semantics/deallocate05.f90 +++ b/test/Semantics/deallocate05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in DEALLOCATE statements Module share diff --git a/test/Semantics/doconcurrent01.f90 b/test/Semantics/doconcurrent01.f90 index bba111ad25c2..a4161a5c3073 100644 --- a/test/Semantics/doconcurrent01.f90 +++ b/test/Semantics/doconcurrent01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1141 ! A reference to the procedure IEEE_SET_HALTING_MODE ! from the intrinsic ! module IEEE_EXCEPTIONS, shall not ! appear within a DO CONCURRENT construct. diff --git a/test/Semantics/doconcurrent02.f90 b/test/Semantics/doconcurrent02.f90 index c09977d23228..db120b62bc45 100644 --- a/test/Semantics/doconcurrent02.f90 +++ b/test/Semantics/doconcurrent02.f90 @@ -1,7 +1,8 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative tests: we don't want DO CONCURRENT semantics constraints checked ! when the loops are not DO CONCURRENT -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: image control statement not allowed in DO CONCURRENT ! CHECK-NOT: RETURN not allowed in DO CONCURRENT ! CHECK-NOT: call to impure procedure in DO CONCURRENT not allowed diff --git a/test/Semantics/doconcurrent03.f90 b/test/Semantics/doconcurrent03.f90 index ffaca88b9906..cfefd92cc3b0 100644 --- a/test/Semantics/doconcurrent03.f90 +++ b/test/Semantics/doconcurrent03.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: Control flow escapes from DO CONCURRENT ! CHECK: branch into loop body from outside ! CHECK: the loop branched into diff --git a/test/Semantics/doconcurrent04.f90 b/test/Semantics/doconcurrent04.f90 index 8182477020f0..51ec5737a154 100644 --- a/test/Semantics/doconcurrent04.f90 +++ b/test/Semantics/doconcurrent04.f90 @@ -1,5 +1,6 @@ +! RUN: %S/test_any.sh %s %flang %t ! C1122 The index-name shall be a named scalar variable of type integer. -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: Must have INTEGER type, but is REAL\\(4\\) subroutine do_concurrent_test1(n) diff --git a/test/Semantics/doconcurrent05.f90 b/test/Semantics/doconcurrent05.f90 index 8c46192e915e..d92ef6d18322 100644 --- a/test/Semantics/doconcurrent05.f90 +++ b/test/Semantics/doconcurrent05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1167 -- An exit-stmt shall not appear within a DO CONCURRENT construct if ! it belongs to that construct or an outer construct. diff --git a/test/Semantics/doconcurrent06.f90 b/test/Semantics/doconcurrent06.f90 index 2f181fe9de6b..f178b7a11640 100644 --- a/test/Semantics/doconcurrent06.f90 +++ b/test/Semantics/doconcurrent06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1167 -- An exit-stmt shall not appear within a DO CONCURRENT construct if ! it belongs to that construct or an outer construct. diff --git a/test/Semantics/doconcurrent07.f90 b/test/Semantics/doconcurrent07.f90 index 5cc70c00896a..661d51a71be5 100644 --- a/test/Semantics/doconcurrent07.f90 +++ b/test/Semantics/doconcurrent07.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK-NOT: exit from DO CONCURRENT construct subroutine do_concurrent_test1(n) diff --git a/test/Semantics/doconcurrent08.f90 b/test/Semantics/doconcurrent08.f90 index f6773995e202..91a077fade49 100644 --- a/test/Semantics/doconcurrent08.f90 +++ b/test/Semantics/doconcurrent08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1140 -- A statement that might result in the deallocation of a polymorphic ! entity shall not appear within a DO CONCURRENT construct. module m1 diff --git a/test/Semantics/dosemantics01.f90 b/test/Semantics/dosemantics01.f90 index 6745f1f2740e..2261f184e3cc 100644 --- a/test/Semantics/dosemantics01.f90 +++ b/test/Semantics/dosemantics01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1131 -- check valid and invalid DO loop naming PROGRAM C1131 diff --git a/test/Semantics/dosemantics02.f90 b/test/Semantics/dosemantics02.f90 index 0b3165a88270..96047f0a3678 100644 --- a/test/Semantics/dosemantics02.f90 +++ b/test/Semantics/dosemantics02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1121 -- any procedure referenced in a concurrent header must be pure ! Also, check that the step expressions are not zero. This is prohibited by diff --git a/test/Semantics/dosemantics03.f90 b/test/Semantics/dosemantics03.f90 index 4792ae6572de..c063a7b8c854 100644 --- a/test/Semantics/dosemantics03.f90 +++ b/test/Semantics/dosemantics03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Issue 458 -- semantic checks for a normal DO loop. The DO variable ! and the initial, final, and step expressions must be INTEGER if the ! options for standard conformance and turning warnings into errors diff --git a/test/Semantics/dosemantics04.f90 b/test/Semantics/dosemantics04.f90 index 7c0743517f17..35a3c9493ca2 100644 --- a/test/Semantics/dosemantics04.f90 +++ b/test/Semantics/dosemantics04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1123 -- Expressions in DO CONCURRENT header cannot reference variables ! declared in the same header PROGRAM dosemantics04 diff --git a/test/Semantics/dosemantics05.f90 b/test/Semantics/dosemantics05.f90 index c7e27d53aec4..f565f9b71679 100644 --- a/test/Semantics/dosemantics05.f90 +++ b/test/Semantics/dosemantics05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test DO loop semantics for constraint C1130 -- ! The constraint states that "If the locality-spec DEFAULT ( NONE ) appears in a ! DO CONCURRENT statement; a variable that is a local or construct entity of a diff --git a/test/Semantics/dosemantics06.f90 b/test/Semantics/dosemantics06.f90 index fd5b0a86bab8..41b9598970b5 100644 --- a/test/Semantics/dosemantics06.f90 +++ b/test/Semantics/dosemantics06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1131, C1133 -- check valid and invalid DO loop naming ! C1131 (R1119) If the do-stmt of a do-construct specifies a do-construct-name, ! the corresponding end-do shall be an end-do-stmt specifying the same diff --git a/test/Semantics/dosemantics07.f90 b/test/Semantics/dosemantics07.f90 index 9b871fd6f3e4..f1450dda31eb 100644 --- a/test/Semantics/dosemantics07.f90 +++ b/test/Semantics/dosemantics07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !C1132 ! If the do-stmt is a nonlabel-do-stmt, the corresponding end-do shall be an ! end-do-stmt. diff --git a/test/Semantics/dosemantics08.f90 b/test/Semantics/dosemantics08.f90 index e6e313372ff8..388fb75254f8 100644 --- a/test/Semantics/dosemantics08.f90 +++ b/test/Semantics/dosemantics08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1138 -- ! A branch (11.2) within a DO CONCURRENT construct shall not have a branch ! target that is outside the construct. diff --git a/test/Semantics/dosemantics09.f90 b/test/Semantics/dosemantics09.f90 index 425e71e3db54..46136f29c74e 100644 --- a/test/Semantics/dosemantics09.f90 +++ b/test/Semantics/dosemantics09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !C1129 !A variable that is referenced by the scalar-mask-expr of a !concurrent-header or by any concurrent-limit or concurrent-step in that diff --git a/test/Semantics/dosemantics10.f90 b/test/Semantics/dosemantics10.f90 index 7bd7bbbb7c85..561f9b7fb7ea 100644 --- a/test/Semantics/dosemantics10.f90 +++ b/test/Semantics/dosemantics10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1134 A CYCLE statement must be within a DO construct ! ! C1166 An EXIT statement must be within a DO construct diff --git a/test/Semantics/dosemantics11.f90 b/test/Semantics/dosemantics11.f90 index 50d69608215c..760f9f5f9b60 100644 --- a/test/Semantics/dosemantics11.f90 +++ b/test/Semantics/dosemantics11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1135 A cycle-stmt shall not appear within a CHANGE TEAM, CRITICAL, or DO ! CONCURRENT construct if it belongs to an outer construct. ! diff --git a/test/Semantics/dosemantics12.f90 b/test/Semantics/dosemantics12.f90 index b1ee8a02707d..48ecd14feda5 100644 --- a/test/Semantics/dosemantics12.f90 +++ b/test/Semantics/dosemantics12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved. ! ! Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/test/Semantics/equivalence01.f90 b/test/Semantics/equivalence01.f90 index a6e70e6ab53f..31b561e33b0d 100644 --- a/test/Semantics/equivalence01.f90 +++ b/test/Semantics/equivalence01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 integer i, j real r(2) diff --git a/test/Semantics/expr-errors01.f90 b/test/Semantics/expr-errors01.f90 index 378bd2d2368e..a479e863dcaf 100644 --- a/test/Semantics/expr-errors01.f90 +++ b/test/Semantics/expr-errors01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1003 - can't parenthesize function call returning procedure pointer module m1 type :: dt diff --git a/test/Semantics/expr-errors02.f90 b/test/Semantics/expr-errors02.f90 index 2df05a2cd523..d1aac68bf008 100644 --- a/test/Semantics/expr-errors02.f90 +++ b/test/Semantics/expr-errors02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test specification expressions module m diff --git a/test/Semantics/forall01.f90 b/test/Semantics/forall01.f90 index e90a17f62978..ecb243bc2a09 100644 --- a/test/Semantics/forall01.f90 +++ b/test/Semantics/forall01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine forall1 real :: a(9) !ERROR: 'i' is already declared in this scoping unit diff --git a/test/Semantics/getdefinition01.f90 b/test/Semantics/getdefinition01.f90 index 880e282bca9f..4a2fdd760568 100644 --- a/test/Semantics/getdefinition01.f90 +++ b/test/Semantics/getdefinition01.f90 @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-definition returning source position of symbol definition. - module m1 private :: f contains @@ -16,12 +16,12 @@ recursive pure function f() result(x) end function end module -! RUN: echo %t 1>&2; -! RUN: ${F18} -fget-definition 7 17 18 -fparse-only %s > %t; -! RUN: ${F18} -fget-definition 8 20 23 -fparse-only %s >> %t; -! RUN: ${F18} -fget-definition 15 3 4 -fparse-only %s >> %t; -! RUN: ${F18} -fget-definition -fparse-only %s >> %t 2>&1; -! RUN: cat %t | ${FileCheck} %s +! EXEC: echo %t 1>&2; +! EXEC: ${F18} -fget-definition 7 17 18 -fparse-only %s > %t; +! EXEC: ${F18} -fget-definition 8 20 23 -fparse-only %s >> %t; +! EXEC: ${F18} -fget-definition 15 3 4 -fparse-only %s >> %t; +! EXEC: ${F18} -fget-definition -fparse-only %s >> %t 2>&1; +! EXEC: cat %t | ${FileCheck} %s ! CHECK:x:.*getdefinition01.f90, 6, 21-22 ! CHECK:yyy:.*getdefinition01.f90, 6, 24-27 ! CHECK:x:.*getdefinition01.f90, 14, 24-25 diff --git a/test/Semantics/getdefinition02.f b/test/Semantics/getdefinition02.f index 3f8ac46a1380..58391a27d530 100644 --- a/test/Semantics/getdefinition02.f +++ b/test/Semantics/getdefinition02.f @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-definition with fixed form. - module m2 private :: f contains @@ -17,10 +17,10 @@ recursive pure function f() result(x) end function end module -! RUN: ${F18} -fget-definition 8 9 10 -fparse-only %s > %t; -! RUN: ${F18} -fget-definition 9 26 29 -fparse-only %s >> %t; -! RUN: ${F18} -fget-definition 16 9 10 -fparse-only %s >> %t; -! RUN: cat %t | ${FileCheck} %s +! EXEC: ${F18} -fget-definition 8 9 10 -fparse-only %s > %t; +! EXEC: ${F18} -fget-definition 9 26 29 -fparse-only %s >> %t; +! EXEC: ${F18} -fget-definition 16 9 10 -fparse-only %s >> %t; +! EXEC: cat %t | ${FileCheck} %s ! CHECK:x:.*getdefinition02.f, 6, 27-28 ! CHECK:yyy:.*getdefinition02.f, 6, 30-33 ! CHECK:x:.*getdefinition02.f, 15, 30-31 diff --git a/test/Semantics/getdefinition03-a.f90 b/test/Semantics/getdefinition03-a.f90 index 5b287d28665c..81ad276ec29a 100644 --- a/test/Semantics/getdefinition03-a.f90 +++ b/test/Semantics/getdefinition03-a.f90 @@ -1,6 +1,6 @@ ! Tests -fget-definition with INCLUDE - -INCLUDE "getdefinition03-b.f90" +!RUN: %S/test_any.sh %s %flang %t +INCLUDE "Inputs/getdefinition03-b.f90" program main use m3 @@ -8,8 +8,8 @@ program main x = f end program -! RUN: ${F18} -fget-definition 8 6 7 -fparse-only %s > %t; -! RUN: ${F18} -fget-definition 8 2 3 -fparse-only %s >> %t; -! RUN: cat %t | ${FileCheck} %s; +! EXEC: ${F18} -fget-definition 8 6 7 -fparse-only %s > %t; +! EXEC: ${F18} -fget-definition 8 2 3 -fparse-only %s >> %t; +! EXEC: cat %t | ${FileCheck} %s; ! CHECK:f:.*getdefinition03-b.f90, 2, 12-13 ! CHECK:x:.*getdefinition03-a.f90, 7, 13-14 diff --git a/test/Semantics/getdefinition04.f90 b/test/Semantics/getdefinition04.f90 index 80ace6544386..aa143a161852 100644 --- a/test/Semantics/getdefinition04.f90 +++ b/test/Semantics/getdefinition04.f90 @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-definition with COMMON block with same name as variable. - program main integer :: x integer :: y @@ -7,5 +7,5 @@ program main x = y end program -! RUN: ${F18} -fget-definition 7 3 4 -fparse-only %s | ${FileCheck} %s +! EXEC: ${F18} -fget-definition 7 3 4 -fparse-only %s | ${FileCheck} %s ! CHECK:x:.*getdefinition04.f90, 4, 14-15 diff --git a/test/Semantics/getdefinition05.f90 b/test/Semantics/getdefinition05.f90 index 3ad69778ead0..e1115a245611 100644 --- a/test/Semantics/getdefinition05.f90 +++ b/test/Semantics/getdefinition05.f90 @@ -1,6 +1,6 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-symbols-sources with BLOCK that contains same variable name as ! another in an outer scope. - program main integer :: x integer :: y @@ -13,9 +13,9 @@ program main end program !! Inner x -! RUN: ${F18} -fget-definition 10 5 6 -fparse-only %s > %t; +! EXEC: ${F18} -fget-definition 10 5 6 -fparse-only %s > %t; ! CHECK:x:.*getdefinition05.f90, 8, 16-17 !! Outer y -! RUN: ${F18} -fget-definition 12 7 8 -fparse-only %s >> %t; +! EXEC: ${F18} -fget-definition 12 7 8 -fparse-only %s >> %t; ! CHECK:y:.*getdefinition05.f90, 6, 14-15 -! RUN: cat %t | ${FileCheck} %s; +! EXEC: cat %t | ${FileCheck} %s; diff --git a/test/Semantics/getsymbols01.f90 b/test/Semantics/getsymbols01.f90 index 9f754f9374d0..d102807ed482 100644 --- a/test/Semantics/getsymbols01.f90 +++ b/test/Semantics/getsymbols01.f90 @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-symbols-sources finding all symbols in file. - module mm1 private :: f contains @@ -16,7 +16,7 @@ recursive pure function f() result(x) end function end module -! RUN: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s ! CHECK-ONCE:mm1:.*getsymbols01.f90, 3, 8-11 ! CHECK-ONCE:f:.*getsymbols01.f90, 13, 26-27 ! CHECK-ONCE:s:.*getsymbols01.f90, 6, 18-19 diff --git a/test/Semantics/getsymbols02.f90 b/test/Semantics/getsymbols02.f90 new file mode 100644 index 000000000000..4172b7418f9e --- /dev/null +++ b/test/Semantics/getsymbols02.f90 @@ -0,0 +1 @@ +!RUN: %S/test_any.sh '%S/Inputs/getsymbols02-*' %f18 %t \ No newline at end of file diff --git a/test/Semantics/getsymbols03-a.f90 b/test/Semantics/getsymbols03-a.f90 index 1d6d3b6aaba2..5616f97629ce 100644 --- a/test/Semantics/getsymbols03-a.f90 +++ b/test/Semantics/getsymbols03-a.f90 @@ -1,6 +1,6 @@ ! Tests -fget-symbols with INCLUDE - -INCLUDE "getsymbols03-b.f90" +!RUN: %S/test_any.sh %s %flang %t +INCLUDE "Inputs/getsymbols03-b.f90" program main use mm3 @@ -8,7 +8,7 @@ program main x = f end program -! RUN: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s ! CHECK:mm3:.*getsymbols03-b.f90, 1, 8-11 ! CHECK:f:.*getsymbols03-b.f90, 2, 12-13 ! CHECK:main:.*getsymbols03-a.f90, 5, 9-13 diff --git a/test/Semantics/getsymbols04.f90 b/test/Semantics/getsymbols04.f90 index d4a83aecb5d9..06f739c71137 100644 --- a/test/Semantics/getsymbols04.f90 +++ b/test/Semantics/getsymbols04.f90 @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-symbols-sources with COMMON. - program main integer :: x integer :: y @@ -7,7 +7,7 @@ program main x = y end program -! RUN: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s ! CHECK:x:.*getsymbols04.f90, 4, 14-15 ! CHECK:y:.*getsymbols04.f90, 5, 14-15 ! CHECK:x:.*getsymbols04.f90, 6, 11-12 diff --git a/test/Semantics/getsymbols05.f90 b/test/Semantics/getsymbols05.f90 index c65a2a6f5a99..f905313675cd 100644 --- a/test/Semantics/getsymbols05.f90 +++ b/test/Semantics/getsymbols05.f90 @@ -1,5 +1,5 @@ +!RUN: %S/test_any.sh %s %flang %t ! Tests -fget-symbols-sources with COMMON. - program main integer :: x integer :: y @@ -10,7 +10,7 @@ program main x = y end program -! RUN: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -fget-symbols-sources -fparse-only %s 2>&1 | ${FileCheck} %s ! CHECK:x:.*getsymbols05.f90, 4, 14-15 ! CHECK:y:.*getsymbols05.f90, 5, 14-15 ! CHECK:x:.*getsymbols05.f90, 7, 16-17 diff --git a/test/Semantics/if_arith01.f90 b/test/Semantics/if_arith01.f90 index 43365c64ad3a..5ec06b47485d 100644 --- a/test/Semantics/if_arith01.f90 +++ b/test/Semantics/if_arith01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that a basic arithmetic if compiles. if ( A ) 100, 200, 300 diff --git a/test/Semantics/if_arith02.f90 b/test/Semantics/if_arith02.f90 index fc94e151cf14..f8e24b42dffa 100644 --- a/test/Semantics/if_arith02.f90 +++ b/test/Semantics/if_arith02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that only labels are allowed in arithmetic if statements. ! TODO: Revisit error message "expected 'ASSIGN'" etc. ! TODO: Revisit error message "expected one of '0123456789'" diff --git a/test/Semantics/if_arith03.f90 b/test/Semantics/if_arith03.f90 index fd30eb2ee954..1e5eb67d184c 100644 --- a/test/Semantics/if_arith03.f90 +++ b/test/Semantics/if_arith03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !ERROR: label '600' was not found diff --git a/test/Semantics/if_arith04.f90 b/test/Semantics/if_arith04.f90 index 360d596762b1..9a436cd5eb67 100644 --- a/test/Semantics/if_arith04.f90 +++ b/test/Semantics/if_arith04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Make sure arithmetic if expressions are non-complex numeric exprs. INTEGER I diff --git a/test/Semantics/if_construct01.f90 b/test/Semantics/if_construct01.f90 index 66398def9805..c133b7d8cc9f 100644 --- a/test/Semantics/if_construct01.f90 +++ b/test/Semantics/if_construct01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Simple check that if constructs are ok. if (a < b) then diff --git a/test/Semantics/if_construct02.f90 b/test/Semantics/if_construct02.f90 index 5177f388b493..9ba6caa45355 100644 --- a/test/Semantics/if_construct02.f90 +++ b/test/Semantics/if_construct02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that if constructs only accept scalar logical expressions. ! TODO: expand the test to check this restriction for more types. diff --git a/test/Semantics/if_stmt01.f90 b/test/Semantics/if_stmt01.f90 index e111f6519d26..51454a9d2116 100644 --- a/test/Semantics/if_stmt01.f90 +++ b/test/Semantics/if_stmt01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Simple check that if statements are ok. IF (A > 0.0) A = LOG (A) diff --git a/test/Semantics/if_stmt02.f90 b/test/Semantics/if_stmt02.f90 index 483e92d2c940..71c458381ac2 100644 --- a/test/Semantics/if_stmt02.f90 +++ b/test/Semantics/if_stmt02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !ERROR: IF statement is not allowed in IF statement IF (A > 0.0) IF (B < 0.0) A = LOG (A) END diff --git a/test/Semantics/if_stmt03.f90 b/test/Semantics/if_stmt03.f90 index dd869b2cad0a..2a2595404960 100644 --- a/test/Semantics/if_stmt03.f90 +++ b/test/Semantics/if_stmt03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check that non-logical expressions are not allowed. ! Check that non-scalar expressions are not allowed. ! TODO: Insure all non-logicals are prohibited. diff --git a/test/Semantics/implicit01.f90 b/test/Semantics/implicit01.f90 index 318fe760322c..f0893f7ed33f 100644 --- a/test/Semantics/implicit01.f90 +++ b/test/Semantics/implicit01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 implicit none !ERROR: More than one IMPLICIT NONE statement diff --git a/test/Semantics/implicit02.f90 b/test/Semantics/implicit02.f90 index d77c3f55c6e6..5d2b6e09474f 100644 --- a/test/Semantics/implicit02.f90 +++ b/test/Semantics/implicit02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 implicit none !ERROR: IMPLICIT statement after IMPLICIT NONE or IMPLICIT NONE(TYPE) statement diff --git a/test/Semantics/implicit03.f90 b/test/Semantics/implicit03.f90 index 343471ad5a15..9636743233a3 100644 --- a/test/Semantics/implicit03.f90 +++ b/test/Semantics/implicit03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 implicit integer(a-z) !ERROR: IMPLICIT NONE statement after IMPLICIT statement diff --git a/test/Semantics/implicit04.f90 b/test/Semantics/implicit04.f90 index 004dbe65549d..86adb95f9852 100644 --- a/test/Semantics/implicit04.f90 +++ b/test/Semantics/implicit04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s parameter(a=1.0) !ERROR: IMPLICIT NONE statement after PARAMETER statement diff --git a/test/Semantics/implicit05.f90 b/test/Semantics/implicit05.f90 index 50039a421eaf..7649c228fa44 100644 --- a/test/Semantics/implicit05.f90 +++ b/test/Semantics/implicit05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s !ERROR: 'a' does not follow 'b' alphabetically implicit integer(b-a) diff --git a/test/Semantics/implicit06.f90 b/test/Semantics/implicit06.f90 index 225052cd5e89..3f6672008d53 100644 --- a/test/Semantics/implicit06.f90 +++ b/test/Semantics/implicit06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 implicit integer(a-c) !ERROR: More than one implicit type specified for 'c' diff --git a/test/Semantics/implicit07.f90 b/test/Semantics/implicit07.f90 index 8201c3dcb0e3..68fa37de8ce7 100644 --- a/test/Semantics/implicit07.f90 +++ b/test/Semantics/implicit07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t implicit none(external) external x call x diff --git a/test/Semantics/implicit08.f90 b/test/Semantics/implicit08.f90 index a56382e4154c..44e96d89855e 100644 --- a/test/Semantics/implicit08.f90 +++ b/test/Semantics/implicit08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 block !ERROR: IMPLICIT statement is not allowed in a BLOCK construct diff --git a/test/Semantics/init01.f90 b/test/Semantics/init01.f90 index b160a99dfc2f..1fc1ed877fa3 100644 --- a/test/Semantics/init01.f90 +++ b/test/Semantics/init01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Object pointer initializer error tests subroutine test(j) diff --git a/test/Semantics/int-literals.f90 b/test/Semantics/int-literals.f90 index b3b966996f53..3c48b7e1b7da 100644 --- a/test/Semantics/int-literals.f90 +++ b/test/Semantics/int-literals.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Fortran syntax considers signed int literals in complex literals ! to be a distinct production, not an application of unary +/- to ! an unsigned int literal, so they're used here to test overflow diff --git a/test/Semantics/io01.f90 b/test/Semantics/io01.f90 index c951943a4bc7..81b537d7e4c5 100644 --- a/test/Semantics/io01.f90 +++ b/test/Semantics/io01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t character(len=20) :: access = "direcT" character(len=20) :: access_(2) = (/"direcT", "streaM"/) character(len=20) :: action_(2) = (/"reaD ", "writE"/) diff --git a/test/Semantics/io02.f90 b/test/Semantics/io02.f90 index 65e6b263bb8b..7cb901d34027 100644 --- a/test/Semantics/io02.f90 +++ b/test/Semantics/io02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t integer :: unit10 = 10 integer :: unit11 = 11 diff --git a/test/Semantics/io03.f90 b/test/Semantics/io03.f90 index 71425b8869c5..a6696176b126 100644 --- a/test/Semantics/io03.f90 +++ b/test/Semantics/io03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t character(kind=1,len=50) internal_file character(kind=2,len=50) internal_file2 character(kind=4,len=50) internal_file4 diff --git a/test/Semantics/io04.f90 b/test/Semantics/io04.f90 index 68b217f57a61..09776ef94ab1 100644 --- a/test/Semantics/io04.f90 +++ b/test/Semantics/io04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t character(kind=1,len=50) internal_file character(kind=1,len=100) msg character(20) sign diff --git a/test/Semantics/io05.f90 b/test/Semantics/io05.f90 index 5b36f9ba923e..1df878197237 100644 --- a/test/Semantics/io05.f90 +++ b/test/Semantics/io05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t character*20 c(25), cv character(kind=1,len=59) msg logical*2 v(5), lv diff --git a/test/Semantics/io06.f90 b/test/Semantics/io06.f90 index d4ea73e51154..eba437c86c86 100644 --- a/test/Semantics/io06.f90 +++ b/test/Semantics/io06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t character(kind=1,len=100) msg1 character(kind=2,len=200) msg2 integer(1) stat1 diff --git a/test/Semantics/io07.f90 b/test/Semantics/io07.f90 index 4677be23ec54..9462a099d67e 100644 --- a/test/Semantics/io07.f90 +++ b/test/Semantics/io07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t 1001 format(A) !ERROR: Format statement must be labeled diff --git a/test/Semantics/io08.f90 b/test/Semantics/io08.f90 index db25da188b9f..1b75e8094a9a 100644 --- a/test/Semantics/io08.f90 +++ b/test/Semantics/io08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t write(*,*) write(*,'()') write(*,'(A)') diff --git a/test/Semantics/io09.f90 b/test/Semantics/io09.f90 index dba5ae53692a..5f50e4e0151e 100644 --- a/test/Semantics/io09.f90 +++ b/test/Semantics/io09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !ERROR: String edit descriptor in READ format expression read(*,'("abc")') diff --git a/test/Semantics/io10.f90 b/test/Semantics/io10.f90 index fa38c3d38e3d..90ae8b194330 100644 --- a/test/Semantics/io10.f90 +++ b/test/Semantics/io10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -Mstandard write(*, '(B0)') diff --git a/test/Semantics/kinds01.f90 b/test/Semantics/kinds01.f90 index 3bef1bb39762..388ca2342167 100644 --- a/test/Semantics/kinds01.f90 +++ b/test/Semantics/kinds01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /MainProgram1/jk1 ObjectEntity INTEGER(1) integer(kind=1) jk1 !DEF: /MainProgram1/js1 ObjectEntity INTEGER(1) diff --git a/test/Semantics/kinds02.f90 b/test/Semantics/kinds02.f90 index 9fb921345d85..0983be564738 100644 --- a/test/Semantics/kinds02.f90 +++ b/test/Semantics/kinds02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C712 The value of scalar-int-constant-expr shall be nonnegative and ! shall specify a representation method that exists on the processor. ! C714 The value of kind-param shall be nonnegative. diff --git a/test/Semantics/kinds03.f90 b/test/Semantics/kinds03.f90 index 63239e08d05a..b4ba7e67bb6c 100644 --- a/test/Semantics/kinds03.f90 +++ b/test/Semantics/kinds03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /MainProgram1/ipdt DerivedType !DEF: /MainProgram1/ipdt/k TypeParam INTEGER(4) type :: ipdt(k) diff --git a/test/Semantics/kinds04.f90 b/test/Semantics/kinds04.f90 index ecf3a446cc3d..af6a8965ca65 100644 --- a/test/Semantics/kinds04.f90 +++ b/test/Semantics/kinds04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C716 If both kind-param and exponent-letter appear, exponent-letter ! shall be E. ! C717 The value of kind-param shall specify an approximation method that diff --git a/test/Semantics/label01.F90 b/test/Semantics/label01.F90 index d4fd7331fb5d..e63bd547ee75 100644 --- a/test/Semantics/label01.F90 +++ b/test/Semantics/label01.F90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s -o /dev/null 2>&1 | grep -v 'procedure conflicts' | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s -o /dev/null 2>&1 | grep -v 'procedure conflicts' | ${FileCheck} %s ! CHECK-NOT: error:[[:space:]] ! FIXME: filter out the array/function syntax issues (procedure conflicts) diff --git a/test/Semantics/label02.f90 b/test/Semantics/label02.f90 index f7b61953b630..6aa052d52d66 100644 --- a/test/Semantics/label02.f90 +++ b/test/Semantics/label02.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: label '0' is out of range ! CHECK: label '100000' is out of range ! CHECK: label '123456' is out of range diff --git a/test/Semantics/label03.f90 b/test/Semantics/label03.f90 index 0ee40e95602f..a33b2f33a9b3 100644 --- a/test/Semantics/label03.f90 +++ b/test/Semantics/label03.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: DO loop doesn't properly nest ! CHECK: DO loop conflicts ! CHECK: label '30' cannot be found diff --git a/test/Semantics/label04.f90 b/test/Semantics/label04.f90 index d9de328642cd..a3f3586763ee 100644 --- a/test/Semantics/label04.f90 +++ b/test/Semantics/label04.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: branch into loop body from outside ! CHECK: do 10 i = 1, m ! CHECK: the loop branched into diff --git a/test/Semantics/label05.f90 b/test/Semantics/label05.f90 index 53f99df8fa6b..09bd9fa2b0f0 100644 --- a/test/Semantics/label05.f90 +++ b/test/Semantics/label05.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: label '50' was not found ! CHECK: label '55' is not in scope ! CHECK: '70' not a branch target diff --git a/test/Semantics/label06.f90 b/test/Semantics/label06.f90 index 42f6631f59ab..4e633d3df552 100644 --- a/test/Semantics/label06.f90 +++ b/test/Semantics/label06.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: label '10' is not in scope ! CHECK: label '20' was not found ! CHECK: '30' not a branch target diff --git a/test/Semantics/label07.f90 b/test/Semantics/label07.f90 index 0f6b57c42f5c..62755082e030 100644 --- a/test/Semantics/label07.f90 +++ b/test/Semantics/label07.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: '30' not a branch target ! CHECK: control flow use of '30' ! CHECK: label '10' is not in scope diff --git a/test/Semantics/label08.f90 b/test/Semantics/label08.f90 index db51c6772c34..140ceb33ec68 100644 --- a/test/Semantics/label08.f90 +++ b/test/Semantics/label08.f90 @@ -1,6 +1,7 @@ +! RUN: %S/test_any.sh %s %flang %t ! negative test -- invalid labels, out of range -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: CYCLE construct-name is not in scope ! CHECK: IF construct name unexpected ! CHECK: unnamed IF statement diff --git a/test/Semantics/label09.f90 b/test/Semantics/label09.f90 index 0ec9efabedcb..a74263d58315 100644 --- a/test/Semantics/label09.f90 +++ b/test/Semantics/label09.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: label '60' was not found subroutine s(a) diff --git a/test/Semantics/label10.f90 b/test/Semantics/label10.f90 index 23a0a055cb63..377108c95dd5 100644 --- a/test/Semantics/label10.f90 +++ b/test/Semantics/label10.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: '60' not a FORMAT ! CHECK: data transfer use of '60' diff --git a/test/Semantics/label11.f90 b/test/Semantics/label11.f90 index 5b1866e4b193..924356615e3b 100644 --- a/test/Semantics/label11.f90 +++ b/test/Semantics/label11.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: BLOCK DATA subprogram name mismatch ! CHECK: should be ! CHECK: FUNCTION name mismatch diff --git a/test/Semantics/label12.f90 b/test/Semantics/label12.f90 index bd3455d2fa90..96607bc8e8f0 100644 --- a/test/Semantics/label12.f90 +++ b/test/Semantics/label12.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: expected end of statement subroutine s diff --git a/test/Semantics/label13.f90 b/test/Semantics/label13.f90 index b55ed6d94341..61501804d270 100644 --- a/test/Semantics/label13.f90 +++ b/test/Semantics/label13.f90 @@ -1,4 +1,5 @@ -! RUN: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s +! RUN: %S/test_any.sh %s %flang %t +! EXEC: ${F18} -funparse-with-symbols %s 2>&1 | ${FileCheck} %s ! CHECK: branch into loop body from outside ! CHECK: the loop branched into diff --git a/test/Semantics/label14.f90 b/test/Semantics/label14.f90 index 10a91c755b96..e6eb744f50e3 100644 --- a/test/Semantics/label14.f90 +++ b/test/Semantics/label14.f90 @@ -1,8 +1,9 @@ +! RUN: %S/test_any.sh %s %flang %t ! Tests implemented for this standard ! 11.1.4 - 4 It is permissible to branch to and end-block-stmt only withinh its ! Block Construct -! RUN: ${F18} %s 2>&1 | ${FileCheck} %s +! EXEC: ${F18} %s 2>&1 | ${FileCheck} %s ! CHECK: label '20' is not in scope subroutine s1 diff --git a/test/Semantics/misc-declarations.f90 b/test/Semantics/misc-declarations.f90 index a25e5ffbfbf4..9103ad7bcf7d 100644 --- a/test/Semantics/misc-declarations.f90 +++ b/test/Semantics/misc-declarations.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Miscellaneous constraint and requirement checking on declarations: ! - 8.5.6.2 & 8.5.6.3 constraints on coarrays ! - 8.5.19 constraints on the VOLATILE attribute diff --git a/test-lit/Semantics/mod-file-rewriter.f90 b/test/Semantics/mod-file-rewriter.f90 similarity index 100% rename from test-lit/Semantics/mod-file-rewriter.f90 rename to test/Semantics/mod-file-rewriter.f90 diff --git a/test/Semantics/modfile01.f90 b/test/Semantics/modfile01.f90 index 79f5e570bfce..d3cd5273f853 100644 --- a/test/Semantics/modfile01.f90 +++ b/test/Semantics/modfile01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check correct modfile generation for type with private component. module m integer :: i diff --git a/test/Semantics/modfile02.f90 b/test/Semantics/modfile02.f90 index 0f9ba86feb4b..9f460004415d 100644 --- a/test/Semantics/modfile02.f90 +++ b/test/Semantics/modfile02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check modfile generation for private type in public API. module m diff --git a/test/Semantics/modfile03.f90 b/test/Semantics/modfile03.f90 index eedde939b068..9beb5308bd38 100644 --- a/test/Semantics/modfile03.f90 +++ b/test/Semantics/modfile03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check modfile generation with use-association. module m1 diff --git a/test/Semantics/modfile04.f90 b/test/Semantics/modfile04.f90 index 0b5800387255..9dbd3adfeede 100644 --- a/test/Semantics/modfile04.f90 +++ b/test/Semantics/modfile04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! modfile with subprograms module m1 diff --git a/test/Semantics/modfile05.f90 b/test/Semantics/modfile05.f90 index e56023d191cb..49e3f47d4a68 100644 --- a/test/Semantics/modfile05.f90 +++ b/test/Semantics/modfile05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Use-association with VOLATILE or ASYNCHRONOUS module m1 diff --git a/test/Semantics/modfile06.f90 b/test/Semantics/modfile06.f90 index 94fe384dd094..5924b67c7daa 100644 --- a/test/Semantics/modfile06.f90 +++ b/test/Semantics/modfile06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check modfile generation for external interface module m interface diff --git a/test/Semantics/modfile07.f90 b/test/Semantics/modfile07.f90 index 58734b360c1b..b4a49d9924e3 100644 --- a/test/Semantics/modfile07.f90 +++ b/test/Semantics/modfile07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check modfile generation for generic interfaces module m1 interface foo diff --git a/test/Semantics/modfile08.f90 b/test/Semantics/modfile08.f90 index e23078b34dcd..7a2e20195f2d 100644 --- a/test/Semantics/modfile08.f90 +++ b/test/Semantics/modfile08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check modfile generation for external declarations module m real, external :: a diff --git a/test/Semantics/modfile09.f90 b/test/Semantics/modfile09.f90 new file mode 100644 index 000000000000..ec5813b48e51 --- /dev/null +++ b/test/Semantics/modfile09.f90 @@ -0,0 +1 @@ +!RUN: %S/test_modfile.sh '%S/Inputs/modfile09-*' %f18 %t diff --git a/test/Semantics/modfile10.f90 b/test/Semantics/modfile10.f90 index 2340842b2843..dc91d8734b19 100644 --- a/test/Semantics/modfile10.f90 +++ b/test/Semantics/modfile10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test writing procedure bindings in a derived type. module m diff --git a/test/Semantics/modfile11.f90 b/test/Semantics/modfile11.f90 index 89df7d7a068b..ec4dd2f88099 100644 --- a/test/Semantics/modfile11.f90 +++ b/test/Semantics/modfile11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m type t1(a, b, c) integer, kind :: a diff --git a/test/Semantics/modfile12.f90 b/test/Semantics/modfile12.f90 index 89f43ad350eb..ca43611984a4 100644 --- a/test/Semantics/modfile12.f90 +++ b/test/Semantics/modfile12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m integer(8), parameter :: a = 1, b = 2_8 parameter(n=3,l=-3,e=1.0/3.0) diff --git a/test/Semantics/modfile13.f90 b/test/Semantics/modfile13.f90 index 9205eabf6189..c4fcfe71751b 100644 --- a/test/Semantics/modfile13.f90 +++ b/test/Semantics/modfile13.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m character(2) :: z character(len=3) :: y diff --git a/test/Semantics/modfile14.f90 b/test/Semantics/modfile14.f90 index 16fbbc08b11c..1c4fa0e92076 100644 --- a/test/Semantics/modfile14.f90 +++ b/test/Semantics/modfile14.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m type t1 contains diff --git a/test/Semantics/modfile15.f90 b/test/Semantics/modfile15.f90 index 480ad8e77ab2..4cc8787f5d45 100644 --- a/test/Semantics/modfile15.f90 +++ b/test/Semantics/modfile15.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m type :: t procedure(a), pointer, pass :: c diff --git a/test/Semantics/modfile16.f90 b/test/Semantics/modfile16.f90 index e60106148504..acc17d54a282 100644 --- a/test/Semantics/modfile16.f90 +++ b/test/Semantics/modfile16.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m character(2), parameter :: prefix = 'c_' integer, bind(c, name='c_a') :: a diff --git a/test/Semantics/modfile17.f90 b/test/Semantics/modfile17.f90 index 0b91801e1081..33767a38028c 100644 --- a/test/Semantics/modfile17.f90 +++ b/test/Semantics/modfile17.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Tests parameterized derived type instantiation with KIND parameters module m diff --git a/test/Semantics/modfile18.f90 b/test/Semantics/modfile18.f90 index 39f719e4878a..032b0491045b 100644 --- a/test/Semantics/modfile18.f90 +++ b/test/Semantics/modfile18.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Tests folding of array constructors module m diff --git a/test/Semantics/modfile19.f90 b/test/Semantics/modfile19.f90 index 50d50ee6b1e2..fcb10b54e9d0 100644 --- a/test/Semantics/modfile19.f90 +++ b/test/Semantics/modfile19.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m implicit complex(8)(z) real :: x diff --git a/test/Semantics/modfile20.f90 b/test/Semantics/modfile20.f90 index 8677e3479ad2..90188c177c44 100644 --- a/test/Semantics/modfile20.f90 +++ b/test/Semantics/modfile20.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test modfiles for entities with initialization module m integer, parameter :: k8 = 8 diff --git a/test/Semantics/modfile21.f90 b/test/Semantics/modfile21.f90 index 3618ad0ab027..03349a32682d 100644 --- a/test/Semantics/modfile21.f90 +++ b/test/Semantics/modfile21.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m logical b bind(C) :: /cb2/ diff --git a/test/Semantics/modfile22.f90 b/test/Semantics/modfile22.f90 index deb365a7606c..6279ad78678a 100644 --- a/test/Semantics/modfile22.f90 +++ b/test/Semantics/modfile22.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test character length conversions in constructors module m diff --git a/test/Semantics/modfile23.f90 b/test/Semantics/modfile23.f90 index 8bf33b542ed7..4b5637867e1d 100644 --- a/test/Semantics/modfile23.f90 +++ b/test/Semantics/modfile23.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test that subprogram interfaces get all of the symbols that they need. module m1 diff --git a/test/Semantics/modfile24.f90 b/test/Semantics/modfile24.f90 index dc9c7d52a8df..ec446f9e8d3c 100644 --- a/test/Semantics/modfile24.f90 +++ b/test/Semantics/modfile24.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test declarations with coarray-spec ! Different ways of declaring the same coarray. diff --git a/test/Semantics/modfile25.f90 b/test/Semantics/modfile25.f90 index 5c16ead42951..210935df2515 100644 --- a/test/Semantics/modfile25.f90 +++ b/test/Semantics/modfile25.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test compile-time analysis of shapes. module m1 diff --git a/test/Semantics/modfile26.f90 b/test/Semantics/modfile26.f90 index 44d43c6ca788..5064122a3740 100644 --- a/test/Semantics/modfile26.f90 +++ b/test/Semantics/modfile26.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Intrinsics SELECTED_INT_KIND, SELECTED_REAL_KIND, PRECISION, RANGE, ! RADIX, DIGITS diff --git a/test/Semantics/modfile27.f90 b/test/Semantics/modfile27.f90 index ae577d84985c..2a6e23f6f464 100644 --- a/test/Semantics/modfile27.f90 +++ b/test/Semantics/modfile27.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test folding of combined array references and structure component ! references. diff --git a/test/Semantics/modfile28.f90 b/test/Semantics/modfile28.f90 index c53ab04dfc2d..18a349de5ba1 100644 --- a/test/Semantics/modfile28.f90 +++ b/test/Semantics/modfile28.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test UTF-8 support in character literals ! Note: Module files are encoded in UTF-8. diff --git a/test/Semantics/modfile29.f90 b/test/Semantics/modfile29.f90 index 7753e22d0f3e..7afa55120be1 100644 --- a/test/Semantics/modfile29.f90 +++ b/test/Semantics/modfile29.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Check that implicitly typed entities get a type in the module file. module m diff --git a/test/Semantics/modfile30.f90 b/test/Semantics/modfile30.f90 index 427025b91635..ef05b9395139 100644 --- a/test/Semantics/modfile30.f90 +++ b/test/Semantics/modfile30.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Verify miscellaneous bugs ! The function result must be declared after the dummy arguments diff --git a/test/Semantics/modfile31.f90 b/test/Semantics/modfile31.f90 index ec00f9f0ccb9..a29256fe46a2 100644 --- a/test/Semantics/modfile31.f90 +++ b/test/Semantics/modfile31.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test 7.6 enum values module m1 diff --git a/test/Semantics/modfile32.f90 b/test/Semantics/modfile32.f90 index 6db201e852c0..ea5b55a94d05 100644 --- a/test/Semantics/modfile32.f90 +++ b/test/Semantics/modfile32.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Resolution of generic names in expressions. ! Test by using generic function in a specification expression that needs ! to be written to a .mod file. diff --git a/test/Semantics/modfile33.f90 b/test/Semantics/modfile33.f90 index 23a510bf4008..d5474c799f77 100644 --- a/test/Semantics/modfile33.f90 +++ b/test/Semantics/modfile33.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Resolution of user-defined operators in expressions. ! Test by using generic function in a specification expression that needs ! to be written to a .mod file. diff --git a/test/Semantics/modfile34.f90 b/test/Semantics/modfile34.f90 index 16bacf7ade03..59b0fd1a447f 100644 --- a/test/Semantics/modfile34.f90 +++ b/test/Semantics/modfile34.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t ! Test resolution of type-bound generics. module m1 diff --git a/test/Semantics/modfile35.f90 b/test/Semantics/modfile35.f90 index c1d1c9541b1f..9ef35747e947 100644 --- a/test/Semantics/modfile35.f90 +++ b/test/Semantics/modfile35.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_modfile.sh %s %f18 %t module m1 type :: t1 contains diff --git a/test/Semantics/namelist01.f90 b/test/Semantics/namelist01.f90 index 81acecbfc725..f659c998c7ef 100644 --- a/test/Semantics/namelist01.f90 +++ b/test/Semantics/namelist01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test for checking namelist constraints, C8103-C8105 module dup diff --git a/test/Semantics/null01.f90 b/test/Semantics/null01.f90 index f6f5fa79975e..09c6dce22c48 100644 --- a/test/Semantics/null01.f90 +++ b/test/Semantics/null01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! NULL() intrinsic function error tests subroutine test diff --git a/test/Semantics/nullify01.f90 b/test/Semantics/nullify01.f90 index a8a4c7d1c2b8..9af635f8f08c 100644 --- a/test/Semantics/nullify01.f90 +++ b/test/Semantics/nullify01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test that NULLIFY works Module share diff --git a/test/Semantics/nullify02.f90 b/test/Semantics/nullify02.f90 index 2d611f3b7859..49bcc9ef5d11 100644 --- a/test/Semantics/nullify02.f90 +++ b/test/Semantics/nullify02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Check for semantic errors in NULLIFY statements INTEGER, PARAMETER :: maxvalue=1024 diff --git a/test/Semantics/omp-atomic.f90 b/test/Semantics/omp-atomic.f90 index 9a9d027f82e3..760d1ee4f619 100644 --- a/test/Semantics/omp-atomic.f90 +++ b/test/Semantics/omp-atomic.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! OPTIONS: -fopenmp ! Check OpenMP 2.13.6 atomic Construct diff --git a/test/Semantics/omp-clause-validity01.f90 b/test/Semantics/omp-clause-validity01.f90 index d624564cd20b..523b2eeb6c10 100644 --- a/test/Semantics/omp-clause-validity01.f90 +++ b/test/Semantics/omp-clause-validity01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! OPTIONS: -fopenmp ! Check OpenMP clause validity for the following directives: diff --git a/test/Semantics/omp-declarative-directive.f90 b/test/Semantics/omp-declarative-directive.f90 index 3a7933d25cb7..639ed7d4d895 100644 --- a/test/Semantics/omp-declarative-directive.f90 +++ b/test/Semantics/omp-declarative-directive.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! OPTIONS: -fopenmp ! Check OpenMP declarative directives diff --git a/test/Semantics/omp-device-constructs.f90 b/test/Semantics/omp-device-constructs.f90 index e87cb119dba4..7973dc2ef77f 100644 --- a/test/Semantics/omp-device-constructs.f90 +++ b/test/Semantics/omp-device-constructs.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! OPTIONS: -fopenmp ! Check OpenMP clause validity for the following directives: ! 2.10 Device constructs diff --git a/test/Semantics/omp-loop-association.f90 b/test/Semantics/omp-loop-association.f90 index 65b79fd5b476..22e9365b2f3f 100644 --- a/test/Semantics/omp-loop-association.f90 +++ b/test/Semantics/omp-loop-association.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! OPTIONS: -fopenmp ! Check the association between OpenMPLoopConstruct and DoConstruct diff --git a/test/Semantics/omp-nested01.f90 b/test/Semantics/omp-nested01.f90 index 15b1713f6707..0e7220222217 100644 --- a/test/Semantics/omp-nested01.f90 +++ b/test/Semantics/omp-nested01.f90 @@ -1,3 +1,5 @@ +! RUN: %S/test_errors.sh %s %flang %t +!XFAIL: * ! OPTIONS: -fopenmp ! Check OpenMP 2.17 Nesting of Regions diff --git a/test/Semantics/omp-resolve01.f90 b/test/Semantics/omp-resolve01.f90 index 003de6eae171..528915e88f8d 100644 --- a/test/Semantics/omp-resolve01.f90 +++ b/test/Semantics/omp-resolve01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -fopenmp ! 2.4 An array section designates a subset of the elements in an array. Although diff --git a/test/Semantics/omp-resolve02.f90 b/test/Semantics/omp-resolve02.f90 index 3703c74cfa96..3d341662b2da 100644 --- a/test/Semantics/omp-resolve02.f90 +++ b/test/Semantics/omp-resolve02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -fopenmp ! Test the effect to name resolution from illegal clause diff --git a/test/Semantics/omp-resolve03.f90 b/test/Semantics/omp-resolve03.f90 index 165bfc35773b..a896ef30c9f4 100644 --- a/test/Semantics/omp-resolve03.f90 +++ b/test/Semantics/omp-resolve03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.3 Although variables in common blocks can be accessed by use association diff --git a/test/Semantics/omp-resolve04.f90 b/test/Semantics/omp-resolve04.f90 index d9ea847cb1b8..234013898b87 100644 --- a/test/Semantics/omp-resolve04.f90 +++ b/test/Semantics/omp-resolve04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.3 Data-Sharing Attribute Clauses diff --git a/test/Semantics/omp-resolve05.f90 b/test/Semantics/omp-resolve05.f90 index 0ba4fd816d92..ebc50476b499 100644 --- a/test/Semantics/omp-resolve05.f90 +++ b/test/Semantics/omp-resolve05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.3 Data-Sharing Attribute Clauses diff --git a/test/Semantics/omp-symbol01.f90 b/test/Semantics/omp-symbol01.f90 index bec8e0450dd5..70782f3adf41 100644 --- a/test/Semantics/omp-symbol01.f90 +++ b/test/Semantics/omp-symbol01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! Test clauses that accept list. diff --git a/test/Semantics/omp-symbol02.f90 b/test/Semantics/omp-symbol02.f90 index 3419c61e13db..eddb6865e88c 100644 --- a/test/Semantics/omp-symbol02.f90 +++ b/test/Semantics/omp-symbol02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 1.4.1 Structure of the OpenMP Memory Model diff --git a/test/Semantics/omp-symbol03.f90 b/test/Semantics/omp-symbol03.f90 index a158ee87a425..54072a1e1049 100644 --- a/test/Semantics/omp-symbol03.f90 +++ b/test/Semantics/omp-symbol03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 1.4.1 Structure of the OpenMP Memory Model diff --git a/test/Semantics/omp-symbol04.f90 b/test/Semantics/omp-symbol04.f90 index 4824c78dc92b..052fa859cd32 100644 --- a/test/Semantics/omp-symbol04.f90 +++ b/test/Semantics/omp-symbol04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.3 Data-Sharing Attribute Clauses diff --git a/test/Semantics/omp-symbol05.f90 b/test/Semantics/omp-symbol05.f90 index 7e4e691c5b96..1a4b42e1ce32 100644 --- a/test/Semantics/omp-symbol05.f90 +++ b/test/Semantics/omp-symbol05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.2 threadprivate Directive diff --git a/test/Semantics/omp-symbol06.f90 b/test/Semantics/omp-symbol06.f90 index c1d7581db8be..b8ac0fc06115 100644 --- a/test/Semantics/omp-symbol06.f90 +++ b/test/Semantics/omp-symbol06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.3 Data-Sharing Attribute Clauses diff --git a/test/Semantics/omp-symbol07.f90 b/test/Semantics/omp-symbol07.f90 index 170452959e01..c6cf500b41da 100644 --- a/test/Semantics/omp-symbol07.f90 +++ b/test/Semantics/omp-symbol07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! Generic tests diff --git a/test/Semantics/omp-symbol08.f90 b/test/Semantics/omp-symbol08.f90 index ac09e1690677..3a11933ac023 100644 --- a/test/Semantics/omp-symbol08.f90 +++ b/test/Semantics/omp-symbol08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !OPTIONS: -fopenmp ! 2.15.1.1 Predetermined rules for associated do-loops index variable diff --git a/test/Semantics/procinterface01.f90 b/test/Semantics/procinterface01.f90 index 5ab53d530ef3..b66206e24134 100644 --- a/test/Semantics/procinterface01.f90 +++ b/test/Semantics/procinterface01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Tests for "proc-interface" semantics. ! These cases are all valid. diff --git a/test/Semantics/resolve01.f90 b/test/Semantics/resolve01.f90 index 0c257fe1be9f..eee8d662517f 100644 --- a/test/Semantics/resolve01.f90 +++ b/test/Semantics/resolve01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t integer :: x !ERROR: The type of 'x' has already been declared real :: x diff --git a/test/Semantics/resolve02.f90 b/test/Semantics/resolve02.f90 index ddc419b392c3..0d8e83b0ed29 100644 --- a/test/Semantics/resolve02.f90 +++ b/test/Semantics/resolve02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s !ERROR: Declaration of 'x' conflicts with its use as internal procedure real :: x diff --git a/test/Semantics/resolve03.f90 b/test/Semantics/resolve03.f90 index 63a88f143adc..773aaab3d453 100644 --- a/test/Semantics/resolve03.f90 +++ b/test/Semantics/resolve03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t implicit none integer :: x !ERROR: No explicit type declared for 'y' diff --git a/test/Semantics/resolve04.f90 b/test/Semantics/resolve04.f90 index 8998acdca244..5132b9f780f6 100644 --- a/test/Semantics/resolve04.f90 +++ b/test/Semantics/resolve04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !ERROR: No explicit type declared for 'f' function f() implicit none diff --git a/test/Semantics/resolve05.f90 b/test/Semantics/resolve05.f90 index d485a34b6532..d1960e1808b1 100644 --- a/test/Semantics/resolve05.f90 +++ b/test/Semantics/resolve05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t program p integer :: p ! this is ok end diff --git a/test/Semantics/resolve06.f90 b/test/Semantics/resolve06.f90 index 12e0e2d4b126..276feb3b4ee4 100644 --- a/test/Semantics/resolve06.f90 +++ b/test/Semantics/resolve06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t implicit none allocatable :: x integer :: x diff --git a/test/Semantics/resolve07.f90 b/test/Semantics/resolve07.f90 index 585bf633b2ad..f2e46f42a9d1 100644 --- a/test/Semantics/resolve07.f90 +++ b/test/Semantics/resolve07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 integer :: x(2) !ERROR: The dimensions of 'x' have already been declared diff --git a/test/Semantics/resolve08.f90 b/test/Semantics/resolve08.f90 index 32274ce49df1..7252c79ef033 100644 --- a/test/Semantics/resolve08.f90 +++ b/test/Semantics/resolve08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t integer :: g(10) f(i) = i + 1 ! statement function g(i) = i + 2 ! mis-parsed array assignment diff --git a/test/Semantics/resolve09.f90 b/test/Semantics/resolve09.f90 index f288dad1a965..5104a371a639 100644 --- a/test/Semantics/resolve09.f90 +++ b/test/Semantics/resolve09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t integer :: y procedure() :: a procedure(real) :: b diff --git a/test/Semantics/resolve10.f90 b/test/Semantics/resolve10.f90 index 75a44a4f5e57..9990935899fa 100644 --- a/test/Semantics/resolve10.f90 +++ b/test/Semantics/resolve10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m public type t diff --git a/test/Semantics/resolve11.f90 b/test/Semantics/resolve11.f90 index 1114339a1bdb..d94c0f8c87d1 100644 --- a/test/Semantics/resolve11.f90 +++ b/test/Semantics/resolve11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m public i integer, private :: j diff --git a/test/Semantics/resolve12.f90 b/test/Semantics/resolve12.f90 index 1d2e1c398642..03bad9f5616f 100644 --- a/test/Semantics/resolve12.f90 +++ b/test/Semantics/resolve12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 end diff --git a/test/Semantics/resolve13.f90 b/test/Semantics/resolve13.f90 index c67c59287ac3..6fc03b1e8be0 100644 --- a/test/Semantics/resolve13.f90 +++ b/test/Semantics/resolve13.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 integer :: x integer, private :: y diff --git a/test/Semantics/resolve14.f90 b/test/Semantics/resolve14.f90 index d9693e3a1ffd..326fe8e94894 100644 --- a/test/Semantics/resolve14.f90 +++ b/test/Semantics/resolve14.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 integer :: x integer :: y diff --git a/test/Semantics/resolve15.f90 b/test/Semantics/resolve15.f90 index 6ad7b2534797..1cca8ce3dd7b 100644 --- a/test/Semantics/resolve15.f90 +++ b/test/Semantics/resolve15.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m real :: var interface i diff --git a/test/Semantics/resolve16.f90 b/test/Semantics/resolve16.f90 index 798b88bd8b2d..8ce084a26fe9 100644 --- a/test/Semantics/resolve16.f90 +++ b/test/Semantics/resolve16.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m interface subroutine sub0 diff --git a/test/Semantics/resolve17.f90 b/test/Semantics/resolve17.f90 index 360115333235..f9c9451dcfe2 100644 --- a/test/Semantics/resolve17.f90 +++ b/test/Semantics/resolve17.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m integer :: foo !Note: PGI, Intel, and GNU allow this; NAG and Sun do not diff --git a/test/Semantics/resolve18.f90 b/test/Semantics/resolve18.f90 index ed9d301106eb..dff395f4bc9b 100644 --- a/test/Semantics/resolve18.f90 +++ b/test/Semantics/resolve18.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 implicit none contains diff --git a/test/Semantics/resolve19.f90 b/test/Semantics/resolve19.f90 index 15f902a2ba46..f28f2b45abdf 100644 --- a/test/Semantics/resolve19.f90 +++ b/test/Semantics/resolve19.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m interface a subroutine s(x) diff --git a/test/Semantics/resolve20.f90 b/test/Semantics/resolve20.f90 index 33c67dd24923..38dbd2367fe4 100644 --- a/test/Semantics/resolve20.f90 +++ b/test/Semantics/resolve20.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m abstract interface subroutine foo diff --git a/test/Semantics/resolve21.f90 b/test/Semantics/resolve21.f90 index 38fc699ca018..764537a565f5 100644 --- a/test/Semantics/resolve21.f90 +++ b/test/Semantics/resolve21.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 type :: t integer :: i diff --git a/test/Semantics/resolve22.f90 b/test/Semantics/resolve22.f90 index cc8c9ed75dad..3549ec76e777 100644 --- a/test/Semantics/resolve22.f90 +++ b/test/Semantics/resolve22.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 !OK: interface followed by type with same name interface t diff --git a/test/Semantics/resolve23.f90 b/test/Semantics/resolve23.f90 index 504363b458e1..41644843bf1f 100644 --- a/test/Semantics/resolve23.f90 +++ b/test/Semantics/resolve23.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m type :: t real :: y diff --git a/test/Semantics/resolve24.f90 b/test/Semantics/resolve24.f90 index 87917ba09fbc..c2ce595d9054 100644 --- a/test/Semantics/resolve24.f90 +++ b/test/Semantics/resolve24.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine test1 !ERROR: Generic interface 'foo' has both a function and a subroutine interface foo diff --git a/test/Semantics/resolve25.f90 b/test/Semantics/resolve25.f90 index 62e0ba6ff2d0..4d3ec8c81495 100644 --- a/test/Semantics/resolve25.f90 +++ b/test/Semantics/resolve25.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m interface foo subroutine s1(x) diff --git a/test/Semantics/resolve26.f90 b/test/Semantics/resolve26.f90 index 343ee1eb9160..f39366faaef0 100644 --- a/test/Semantics/resolve26.f90 +++ b/test/Semantics/resolve26.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 interface module subroutine s() diff --git a/test/Semantics/resolve27.f90 b/test/Semantics/resolve27.f90 index 3f04c1aa64fa..b10105ed9e7d 100644 --- a/test/Semantics/resolve27.f90 +++ b/test/Semantics/resolve27.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m interface module subroutine s() diff --git a/test/Semantics/resolve28.f90 b/test/Semantics/resolve28.f90 index 2843c2cbb071..0fd81807c97f 100644 --- a/test/Semantics/resolve28.f90 +++ b/test/Semantics/resolve28.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s type t end type diff --git a/test/Semantics/resolve29.f90 b/test/Semantics/resolve29.f90 index f692b0c0e91d..d328eba594e7 100644 --- a/test/Semantics/resolve29.f90 +++ b/test/Semantics/resolve29.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m type t1 end type diff --git a/test/Semantics/resolve30.f90 b/test/Semantics/resolve30.f90 index 69121e03ec1e..98777124b134 100644 --- a/test/Semantics/resolve30.f90 +++ b/test/Semantics/resolve30.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 integer x block diff --git a/test/Semantics/resolve31.f90 b/test/Semantics/resolve31.f90 index 982cb56ad564..3c61cd0bb9dc 100644 --- a/test/Semantics/resolve31.f90 +++ b/test/Semantics/resolve31.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 integer :: t0 !ERROR: 't0' is not a derived type diff --git a/test/Semantics/resolve32.f90 b/test/Semantics/resolve32.f90 index 6f6ed8fb0bf9..317a0ad9ed12 100644 --- a/test/Semantics/resolve32.f90 +++ b/test/Semantics/resolve32.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m2 public s2, s4 private s3 diff --git a/test/Semantics/resolve33.f90 b/test/Semantics/resolve33.f90 index 214a678eb567..4a37c5fb57aa 100644 --- a/test/Semantics/resolve33.f90 +++ b/test/Semantics/resolve33.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Derived type parameters module m diff --git a/test/Semantics/resolve34.f90 b/test/Semantics/resolve34.f90 index c3b28bb929b8..3405dfea3498 100644 --- a/test/Semantics/resolve34.f90 +++ b/test/Semantics/resolve34.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Extended derived types module m1 diff --git a/test/Semantics/resolve35.f90 b/test/Semantics/resolve35.f90 index 6acd24f49b5e..7f6a8ea9492b 100644 --- a/test/Semantics/resolve35.f90 +++ b/test/Semantics/resolve35.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Construct names subroutine s1 diff --git a/test/Semantics/resolve36.f90 b/test/Semantics/resolve36.f90 index e74d6fb62cbf..438ad1aeca92 100644 --- a/test/Semantics/resolve36.f90 +++ b/test/Semantics/resolve36.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 interface module subroutine sub1(arg1) diff --git a/test/Semantics/resolve37.f90 b/test/Semantics/resolve37.f90 index ccc05f3d1715..a07ebbc6625b 100644 --- a/test/Semantics/resolve37.f90 +++ b/test/Semantics/resolve37.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C701 The type-param-value for a kind type parameter shall be a constant ! expression. This constraint looks like a mistake in the standard. integer, parameter :: k = 8 diff --git a/test/Semantics/resolve38.f90 b/test/Semantics/resolve38.f90 index ebc29b7c8ed8..53e8db813380 100644 --- a/test/Semantics/resolve38.f90 +++ b/test/Semantics/resolve38.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C772 module m1 type t1 diff --git a/test/Semantics/resolve39.f90 b/test/Semantics/resolve39.f90 index a5b50afe2062..d0052f16f863 100644 --- a/test/Semantics/resolve39.f90 +++ b/test/Semantics/resolve39.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 implicit none real(8) :: x = 2.0 diff --git a/test/Semantics/resolve40.f90 b/test/Semantics/resolve40.f90 index 1137126740af..95c2c9e8034c 100644 --- a/test/Semantics/resolve40.f90 +++ b/test/Semantics/resolve40.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 namelist /nl/x block diff --git a/test/Semantics/resolve41.f90 b/test/Semantics/resolve41.f90 index 2f618675de60..e2bf877016ed 100644 --- a/test/Semantics/resolve41.f90 +++ b/test/Semantics/resolve41.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m implicit none real, parameter :: a = 8.0 diff --git a/test/Semantics/resolve42.f90 b/test/Semantics/resolve42.f90 index e71e4c881712..5b6ac9f88b2b 100644 --- a/test/Semantics/resolve42.f90 +++ b/test/Semantics/resolve42.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1 !ERROR: Array 'z' without ALLOCATABLE or POINTER attribute must have explicit shape common x, y(4), z(:) diff --git a/test/Semantics/resolve43.f90 b/test/Semantics/resolve43.f90 index ed2454a535ec..385dfedc34bd 100644 --- a/test/Semantics/resolve43.f90 +++ b/test/Semantics/resolve43.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for structure constructors. ! Errors caught by expression resolution are tested elsewhere; these are the ! errors meant to be caught by name resolution, as well as acceptable use diff --git a/test/Semantics/resolve44.f90 b/test/Semantics/resolve44.f90 index f6e7a89ba5c3..dd082adc89df 100644 --- a/test/Semantics/resolve44.f90 +++ b/test/Semantics/resolve44.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for recursive use of derived types. program main diff --git a/test/Semantics/resolve45.f90 b/test/Semantics/resolve45.f90 index ebc9e21b5137..e28dc33c4e72 100644 --- a/test/Semantics/resolve45.f90 +++ b/test/Semantics/resolve45.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t function f1(x, y) integer x !ERROR: SAVE attribute may not be applied to dummy argument 'x' diff --git a/test/Semantics/resolve46.f90 b/test/Semantics/resolve46.f90 index 8a0385ae28b7..181ccfb5c280 100644 --- a/test/Semantics/resolve46.f90 +++ b/test/Semantics/resolve46.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C1030 - pointers to intrinsic procedures program main intrinsic :: cos ! a specific & generic intrinsic name diff --git a/test/Semantics/resolve47.f90 b/test/Semantics/resolve47.f90 index 2c5f8141b967..04dab5616855 100644 --- a/test/Semantics/resolve47.f90 +++ b/test/Semantics/resolve47.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t module m1 !ERROR: Logical constant '.true.' may not be used as a defined operator interface operator(.TRUE.) diff --git a/test/Semantics/resolve48.f90 b/test/Semantics/resolve48.f90 index ba3dea3c41f1..887505d16442 100644 --- a/test/Semantics/resolve48.f90 +++ b/test/Semantics/resolve48.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test correct use-association of a derived type. module m1 implicit none diff --git a/test/Semantics/resolve49.f90 b/test/Semantics/resolve49.f90 index ac470834ff91..97d2cbdb1267 100644 --- a/test/Semantics/resolve49.f90 +++ b/test/Semantics/resolve49.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test section subscript program p1 real :: a(10,10) diff --git a/test/Semantics/resolve50.f90 b/test/Semantics/resolve50.f90 index 7d3ad7e105a3..34d6f1c1d5d5 100644 --- a/test/Semantics/resolve50.f90 +++ b/test/Semantics/resolve50.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test coarray association in CHANGE TEAM statement subroutine s1 diff --git a/test/Semantics/resolve51.f90 b/test/Semantics/resolve51.f90 index 73dafaa406b5..de763ef49911 100644 --- a/test/Semantics/resolve51.f90 +++ b/test/Semantics/resolve51.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test SELECT TYPE errors: C1157 subroutine s1() diff --git a/test/Semantics/resolve52.f90 b/test/Semantics/resolve52.f90 index 3ee41dd3503f..846b412f05ca 100644 --- a/test/Semantics/resolve52.f90 +++ b/test/Semantics/resolve52.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Tests for C760: ! The passed-object dummy argument shall be a scalar, nonpointer, nonallocatable ! dummy data object with the same declared type as the type being defined; diff --git a/test/Semantics/resolve53.f90 b/test/Semantics/resolve53.f90 index 5cfe16410500..1aee5e79bcc9 100644 --- a/test/Semantics/resolve53.f90 +++ b/test/Semantics/resolve53.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! 15.4.3.4.5 Restrictions on generic declarations ! Specific procedures of generic interfaces must be distinguishable. diff --git a/test/Semantics/resolve54.f90 b/test/Semantics/resolve54.f90 index aed15410ddbc..f9f895fa7f05 100644 --- a/test/Semantics/resolve54.f90 +++ b/test/Semantics/resolve54.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Tests based on examples in C.10.6 ! C.10.6(10) diff --git a/test/Semantics/resolve55.f90 b/test/Semantics/resolve55.f90 index 59f0027d9aef..98006bc0a07b 100644 --- a/test/Semantics/resolve55.f90 +++ b/test/Semantics/resolve55.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Tests for C1128: ! A variable-name that appears in a LOCAL or LOCAL_INIT locality-spec shall not ! have the ALLOCATABLE; INTENT (IN); or OPTIONAL attribute; shall not be of diff --git a/test/Semantics/resolve56.f90 b/test/Semantics/resolve56.f90 index 65d5fa2c84b8..1efa535bd434 100644 --- a/test/Semantics/resolve56.f90 +++ b/test/Semantics/resolve56.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test that associations constructs can be correctly combined. The intrinsic ! functions are not what is tested here, they are only use to reveal the types ! of local variables. diff --git a/test/Semantics/resolve57.f90 b/test/Semantics/resolve57.f90 index c5e8661206ad..265decd3bcde 100644 --- a/test/Semantics/resolve57.f90 +++ b/test/Semantics/resolve57.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Tests for the last sentence of C1128: !A variable-name that is not permitted to appear in a variable definition !context shall not appear in a LOCAL or LOCAL_INIT locality-spec. diff --git a/test/Semantics/resolve58.f90 b/test/Semantics/resolve58.f90 index 00232dc9d843..db11e6779335 100644 --- a/test/Semantics/resolve58.f90 +++ b/test/Semantics/resolve58.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1(x, y) !ERROR: Array pointer 'x' must have deferred shape or assumed rank real, pointer :: x(1:) ! C832 diff --git a/test/Semantics/resolve59.f90 b/test/Semantics/resolve59.f90 index e34fcaea01d2..0e6965a5d165 100644 --- a/test/Semantics/resolve59.f90 +++ b/test/Semantics/resolve59.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Testing 15.6.2.2 point 4 (What function-name refers to depending on the ! presence of RESULT). diff --git a/test/Semantics/resolve60.f90 b/test/Semantics/resolve60.f90 index 843057d758c8..3232bc0fb87a 100644 --- a/test/Semantics/resolve60.f90 +++ b/test/Semantics/resolve60.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Testing 7.6 enum ! OK diff --git a/test/Semantics/resolve61.f90 b/test/Semantics/resolve61.f90 index 727b2643ca5c..eb5ba13a07a3 100644 --- a/test/Semantics/resolve61.f90 +++ b/test/Semantics/resolve61.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t program p1 integer(8) :: a, b, c, d pointer(a, b) diff --git a/test/Semantics/resolve62.f90 b/test/Semantics/resolve62.f90 index 06c3ed1afe63..5de3a45e900f 100644 --- a/test/Semantics/resolve62.f90 +++ b/test/Semantics/resolve62.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Resolve generic based on number of arguments subroutine s1 interface f diff --git a/test/Semantics/resolve63.f90 b/test/Semantics/resolve63.f90 index 49b4e7b0d20d..07ae767d676b 100644 --- a/test/Semantics/resolve63.f90 +++ b/test/Semantics/resolve63.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Invalid operand types when user-defined operator is available module m1 type :: t diff --git a/test/Semantics/resolve64.f90 b/test/Semantics/resolve64.f90 index 360605a000ec..3be2ae14fd5d 100644 --- a/test/Semantics/resolve64.f90 +++ b/test/Semantics/resolve64.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !OPTIONS: -flogical-abbreviations -fxor-operator ! Like m4 in resolve63 but compiled with different options. diff --git a/test/Semantics/resolve65.f90 b/test/Semantics/resolve65.f90 index 8c3264cc36f9..9e1278b66dd5 100644 --- a/test/Semantics/resolve65.f90 +++ b/test/Semantics/resolve65.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test restrictions on what subprograms can be used for defined assignment. module m1 diff --git a/test/Semantics/resolve66.f90 b/test/Semantics/resolve66.f90 index 2b82b5f0ec13..d54fd2bfe66c 100644 --- a/test/Semantics/resolve66.f90 +++ b/test/Semantics/resolve66.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test that user-defined assignment is used in the right places module m1 diff --git a/test/Semantics/resolve67.f90 b/test/Semantics/resolve67.f90 index 3f2b2572ffc0..7a8537a0a65e 100644 --- a/test/Semantics/resolve67.f90 +++ b/test/Semantics/resolve67.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test restrictions on what subprograms can be used for defined operators. ! See: 15.4.3.4.2 diff --git a/test/Semantics/resolve68.f90 b/test/Semantics/resolve68.f90 index 06cd13716d43..6accdafd5263 100644 --- a/test/Semantics/resolve68.f90 +++ b/test/Semantics/resolve68.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Test resolution of type-bound generics. module m1 diff --git a/test/Semantics/resolve69.f90 b/test/Semantics/resolve69.f90 index bf08c3a706b0..3bbc37e3f7aa 100644 --- a/test/Semantics/resolve69.f90 +++ b/test/Semantics/resolve69.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t subroutine s1() ! C701 (R701) The type-param-value for a kind type parameter shall be a ! constant expression. diff --git a/test/Semantics/resolve70.f90 b/test/Semantics/resolve70.f90 index 8824ea4249af..31f33c345b63 100644 --- a/test/Semantics/resolve70.f90 +++ b/test/Semantics/resolve70.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C703 (R702) The derived-type-spec shall not specify an abstract type (7.5.7). ! This constraint refers to the derived-type-spec in a type-spec. A type-spec ! can appear in an ALLOCATE statement, an ac-spec for an array constructor, and diff --git a/test/Semantics/resolve71.f90 b/test/Semantics/resolve71.f90 index d570233d4633..8c1c56fd9b0e 100644 --- a/test/Semantics/resolve71.f90 +++ b/test/Semantics/resolve71.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C708 An entity declared with the CLASS keyword shall be a dummy argument ! or have the ALLOCATABLE or POINTER attribute. subroutine s() diff --git a/test/Semantics/resolve72.f90 b/test/Semantics/resolve72.f90 index 6ff2603b2129..284fb2fc2055 100644 --- a/test/Semantics/resolve72.f90 +++ b/test/Semantics/resolve72.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C709 An assumed-type entity shall be a dummy data object that does not have ! the ALLOCATABLE, CODIMENSION, INTENT (OUT), POINTER, or VALUE attribute and ! is not an explicit-shape array. diff --git a/test/Semantics/resolve73.f90 b/test/Semantics/resolve73.f90 index 191be316b620..35f8429aeacf 100644 --- a/test/Semantics/resolve73.f90 +++ b/test/Semantics/resolve73.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C721 A type-param-value of * shall be used only ! * to declare a dummy argument, ! * to declare a named constant, diff --git a/test/Semantics/resolve74.f90 b/test/Semantics/resolve74.f90 index a674b1f37ac2..60927b198769 100644 --- a/test/Semantics/resolve74.f90 +++ b/test/Semantics/resolve74.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C722 A function name shall not be declared with an asterisk type-param-value ! unless it is of type CHARACTER and is the name of a dummy function or the ! name of the result of an external function. diff --git a/test/Semantics/resolve75.f90 b/test/Semantics/resolve75.f90 index 2c63a36fe523..708ce8ffaeec 100644 --- a/test/Semantics/resolve75.f90 +++ b/test/Semantics/resolve75.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! C726 The length specified for a character statement function or for a ! statement function dummy argument of type character shall be a constant ! expression. diff --git a/test/Semantics/separate-module-procs.f90 b/test/Semantics/separate-module-procs.f90 index ba3b1abcc991..33dfcd557fde 100644 --- a/test/Semantics/separate-module-procs.f90 +++ b/test/Semantics/separate-module-procs.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t !===--- separate-module-procs.f90 - Test separate module procedure ---------=== ! ! Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. diff --git a/test/Semantics/stop01.f90 b/test/Semantics/stop01.f90 index 91112b11a801..2ae8d65a84bb 100644 --- a/test/Semantics/stop01.f90 +++ b/test/Semantics/stop01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t program main implicit none integer :: i = -1 diff --git a/test/Semantics/structconst01.f90 b/test/Semantics/structconst01.f90 index a83286c422ab..68f0261cd85d 100644 --- a/test/Semantics/structconst01.f90 +++ b/test/Semantics/structconst01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for structure constructors. ! Errors caught by name resolution are tested elsewhere; these are the ! errors meant to be caught by expression semantic analysis, as well as diff --git a/test/Semantics/structconst02.f90 b/test/Semantics/structconst02.f90 index 923aa6071b09..22428651fa1c 100644 --- a/test/Semantics/structconst02.f90 +++ b/test/Semantics/structconst02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for structure constructors: per-component type ! (in)compatibility. diff --git a/test/Semantics/structconst03.f90 b/test/Semantics/structconst03.f90 index e637bc08d3e3..776b4d082309 100644 --- a/test/Semantics/structconst03.f90 +++ b/test/Semantics/structconst03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for structure constructors: C1594 violations ! from assigning globally-visible data to POINTER components. ! test/Semantics/structconst04.f90 is this same test without type diff --git a/test/Semantics/structconst04.f90 b/test/Semantics/structconst04.f90 index a2d7421945f4..07a9d69df868 100644 --- a/test/Semantics/structconst04.f90 +++ b/test/Semantics/structconst04.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_errors.sh %s %flang %t ! Error tests for structure constructors: C1594 violations ! from assigning globally-visible data to POINTER components. ! This test is structconst03.f90 with the type parameters removed. diff --git a/test/Semantics/symbol01.f90 b/test/Semantics/symbol01.f90 index 7a6476dddded..9d8cacd3d6b8 100644 --- a/test/Semantics/symbol01.f90 +++ b/test/Semantics/symbol01.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Test that intent-stmt and subprogram prefix and suffix are resolved. !DEF: /m Module diff --git a/test/Semantics/symbol02.f90 b/test/Semantics/symbol02.f90 index ba048a20ef91..8f53c50580ed 100644 --- a/test/Semantics/symbol02.f90 +++ b/test/Semantics/symbol02.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Test host association in module subroutine and internal subroutine. !DEF: /m Module diff --git a/test/Semantics/symbol03.f90 b/test/Semantics/symbol03.f90 index 778794c1a14d..41a7cc26e694 100644 --- a/test/Semantics/symbol03.f90 +++ b/test/Semantics/symbol03.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Test host association in internal subroutine of main program. !DEF: /main MainProgram diff --git a/test/Semantics/symbol05.f90 b/test/Semantics/symbol05.f90 index 4bc42aca6296..678b8f19f55d 100644 --- a/test/Semantics/symbol05.f90 +++ b/test/Semantics/symbol05.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Explicit and implicit entities in blocks !DEF: /s1 (Subroutine) Subprogram diff --git a/test/Semantics/symbol06.f90 b/test/Semantics/symbol06.f90 index 804017bbdf13..b3b3e17b10da 100644 --- a/test/Semantics/symbol06.f90 +++ b/test/Semantics/symbol06.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /main MainProgram program main !DEF: /main/t1 DerivedType diff --git a/test/Semantics/symbol07.f90 b/test/Semantics/symbol07.f90 index 787dfc5b0ec7..b387ec6c673b 100644 --- a/test/Semantics/symbol07.f90 +++ b/test/Semantics/symbol07.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /main MainProgram program main implicit complex(z) diff --git a/test/Semantics/symbol08.f90 b/test/Semantics/symbol08.f90 index e0a65b84e7bb..801f7f449b20 100644 --- a/test/Semantics/symbol08.f90 +++ b/test/Semantics/symbol08.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /main MainProgram program main !DEF: /main/x POINTER ObjectEntity REAL(4) diff --git a/test/Semantics/symbol09.f90 b/test/Semantics/symbol09.f90 index 8dca1332a538..77d4a3416df3 100644 --- a/test/Semantics/symbol09.f90 +++ b/test/Semantics/symbol09.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /s1 (Subroutine) Subprogram subroutine s1 !DEF: /s1/a ObjectEntity REAL(4) diff --git a/test/Semantics/symbol10.f90 b/test/Semantics/symbol10.f90 index c9cf1ce6148a..e487764fa5a2 100644 --- a/test/Semantics/symbol10.f90 +++ b/test/Semantics/symbol10.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /m1 Module module m1 contains diff --git a/test/Semantics/symbol11.f90 b/test/Semantics/symbol11.f90 index d3312eaa293b..e759310c8dcb 100644 --- a/test/Semantics/symbol11.f90 +++ b/test/Semantics/symbol11.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t !DEF: /s1 (Subroutine) Subprogram subroutine s1 implicit none diff --git a/test/Semantics/symbol12.f90 b/test/Semantics/symbol12.f90 index e13c09542720..22350f6c25e2 100644 --- a/test/Semantics/symbol12.f90 +++ b/test/Semantics/symbol12.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Verify that SAVE attribute is propagated by EQUIVALENCE !DEF: /s1 (Subroutine) Subprogram diff --git a/test/Semantics/symbol13.f90 b/test/Semantics/symbol13.f90 index 76235db206da..640066ed76ea 100644 --- a/test/Semantics/symbol13.f90 +++ b/test/Semantics/symbol13.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Old-style "*length" specifiers (R723) !DEF: /f1 (Function) Subprogram CHARACTER(1_8,1) diff --git a/test/Semantics/symbol14.f90 b/test/Semantics/symbol14.f90 index c990665e8d6e..d523e8d6f480 100644 --- a/test/Semantics/symbol14.f90 +++ b/test/Semantics/symbol14.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! "Bare" uses of type parameters and components !DEF: /MainProgram1/t1 DerivedType diff --git a/test/Semantics/symbol15.f90 b/test/Semantics/symbol15.f90 index 4ad09b395ffc..00298cfa1d84 100644 --- a/test/Semantics/symbol15.f90 +++ b/test/Semantics/symbol15.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Forward references in pointer initializers and TBP bindings. !DEF: /m Module diff --git a/test/Semantics/symbol16.f90 b/test/Semantics/symbol16.f90 index a90ab83d2ac1..0650222e0833 100644 --- a/test/Semantics/symbol16.f90 +++ b/test/Semantics/symbol16.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Statement functions !DEF: /p1 MainProgram diff --git a/test/Semantics/symbol17.f90 b/test/Semantics/symbol17.f90 index a861e2f6f260..a99c8245f6d7 100644 --- a/test/Semantics/symbol17.f90 +++ b/test/Semantics/symbol17.f90 @@ -1,3 +1,4 @@ +! RUN: %S/test_symbols.sh %s %flang %t ! Forward references to derived types (non-error cases) !DEF: /main MainProgram