[flang-commits] [flang] 58c3f20 - [flang][windows] Run regression tests under Windows. NFCI.
Michael Kruse via flang-commits
flang-commits at lists.llvm.org
Thu Jun 10 03:15:51 PDT 2021
Author: Michael Kruse
Date: 2021-06-10T05:13:44-05:00
New Revision: 58c3f20bbf51f454ffb38ddb700a1d5ad374dc7b
URL: https://github.com/llvm/llvm-project/commit/58c3f20bbf51f454ffb38ddb700a1d5ad374dc7b
DIFF: https://github.com/llvm/llvm-project/commit/58c3f20bbf51f454ffb38ddb700a1d5ad374dc7b.diff
LOG: [flang][windows] Run regression tests under Windows. NFCI.
Allow the lit test suite to run under Windows. This encompasses the following changes:
* Define `lit_tools_dir` for flang's test configuration
* Replace `(<command> || true)` idiom with `not <command>`
* Add `REQUIRES: shell` on tests that invoke a shell script
Reviewed By: awarzynski
Differential Revision: https://reviews.llvm.org/D89368
Added:
Modified:
flang/test/Driver/debug-parsing-log.f90
flang/test/Driver/debug-provenance.f90
flang/test/Evaluate/folding01.f90
flang/test/Evaluate/folding02.f90
flang/test/Evaluate/folding03.f90
flang/test/Evaluate/folding04.f90
flang/test/Evaluate/folding05.f90
flang/test/Evaluate/folding06.f90
flang/test/Evaluate/folding07.f90
flang/test/Evaluate/folding08.f90
flang/test/Evaluate/folding09.f90
flang/test/Evaluate/folding10.f90
flang/test/Evaluate/folding11.f90
flang/test/Evaluate/folding12.f90
flang/test/Evaluate/folding13.f90
flang/test/Evaluate/folding14.f90
flang/test/Evaluate/folding15.f90
flang/test/Evaluate/folding16.f90
flang/test/Evaluate/folding17.f90
flang/test/Evaluate/folding18.f90
flang/test/Preprocessing/pp130.F90
flang/test/Semantics/OpenACC/acc-atomic-validity.f90
flang/test/Semantics/OpenACC/acc-branch.f90
flang/test/Semantics/OpenACC/acc-cache-validity.f90
flang/test/Semantics/OpenACC/acc-canonicalization-validity.f90
flang/test/Semantics/OpenACC/acc-data.f90
flang/test/Semantics/OpenACC/acc-declare-validity.f90
flang/test/Semantics/OpenACC/acc-host-data.f90
flang/test/Semantics/OpenACC/acc-init-validity.f90
flang/test/Semantics/OpenACC/acc-kernels-loop.f90
flang/test/Semantics/OpenACC/acc-kernels.f90
flang/test/Semantics/OpenACC/acc-loop.f90
flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
flang/test/Semantics/OpenACC/acc-parallel.f90
flang/test/Semantics/OpenACC/acc-resolve01.f90
flang/test/Semantics/OpenACC/acc-resolve02.f90
flang/test/Semantics/OpenACC/acc-routine-validity.f90
flang/test/Semantics/OpenACC/acc-serial-loop.f90
flang/test/Semantics/OpenACC/acc-serial.f90
flang/test/Semantics/OpenACC/acc-set-validity.f90
flang/test/Semantics/OpenACC/acc-shutdown-validity.f90
flang/test/Semantics/OpenACC/acc-symbols01.f90
flang/test/Semantics/OpenACC/acc-update-validity.f90
flang/test/Semantics/OpenACC/acc-wait-validity.f90
flang/test/Semantics/allocate01.f90
flang/test/Semantics/allocate02.f90
flang/test/Semantics/allocate03.f90
flang/test/Semantics/allocate04.f90
flang/test/Semantics/allocate05.f90
flang/test/Semantics/allocate06.f90
flang/test/Semantics/allocate07.f90
flang/test/Semantics/allocate08.f90
flang/test/Semantics/allocate09.f90
flang/test/Semantics/allocate10.f90
flang/test/Semantics/allocate11.f90
flang/test/Semantics/allocate12.f90
flang/test/Semantics/allocate13.f90
flang/test/Semantics/altreturn01.f90
flang/test/Semantics/altreturn02.f90
flang/test/Semantics/altreturn03.f90
flang/test/Semantics/altreturn04.f90
flang/test/Semantics/altreturn05.f90
flang/test/Semantics/altreturn06.f90
flang/test/Semantics/array-constr-big.f90
flang/test/Semantics/array-constr-values.f90
flang/test/Semantics/assign01.f90
flang/test/Semantics/assign02.f90
flang/test/Semantics/assign03.f90
flang/test/Semantics/assign04.f90
flang/test/Semantics/assign06.f90
flang/test/Semantics/assign07.f90
flang/test/Semantics/associated.f90
flang/test/Semantics/bad-forward-type.f90
flang/test/Semantics/bind-c01.f90
flang/test/Semantics/bindings01.f90
flang/test/Semantics/block-data01.f90
flang/test/Semantics/blockconstruct01.f90
flang/test/Semantics/blockconstruct02.f90
flang/test/Semantics/blockconstruct03.f90
flang/test/Semantics/boz-literal-constants.f90
flang/test/Semantics/c_f_pointer.f90
flang/test/Semantics/call01.f90
flang/test/Semantics/call02.f90
flang/test/Semantics/call03.f90
flang/test/Semantics/call04.f90
flang/test/Semantics/call05.f90
flang/test/Semantics/call06.f90
flang/test/Semantics/call07.f90
flang/test/Semantics/call08.f90
flang/test/Semantics/call09.f90
flang/test/Semantics/call10.f90
flang/test/Semantics/call11.f90
flang/test/Semantics/call12.f90
flang/test/Semantics/call13.f90
flang/test/Semantics/call14.f90
flang/test/Semantics/call15.f90
flang/test/Semantics/call16.f90
flang/test/Semantics/call18.f90
flang/test/Semantics/case01.f90
flang/test/Semantics/coarrays01.f90
flang/test/Semantics/complex01.f90
flang/test/Semantics/computed-goto01.f90
flang/test/Semantics/computed-goto02.f90
flang/test/Semantics/critical01.f90
flang/test/Semantics/critical02.f90
flang/test/Semantics/critical03.f90
flang/test/Semantics/data01.f90
flang/test/Semantics/data02.f90
flang/test/Semantics/data03.f90
flang/test/Semantics/data04.f90
flang/test/Semantics/data06.f90
flang/test/Semantics/data07.f90
flang/test/Semantics/data10.f90
flang/test/Semantics/deallocate01.f90
flang/test/Semantics/deallocate04.f90
flang/test/Semantics/deallocate05.f90
flang/test/Semantics/deallocate06.f90
flang/test/Semantics/doconcurrent01.f90
flang/test/Semantics/doconcurrent05.f90
flang/test/Semantics/doconcurrent06.f90
flang/test/Semantics/doconcurrent08.f90
flang/test/Semantics/dosemantics01.f90
flang/test/Semantics/dosemantics02.f90
flang/test/Semantics/dosemantics03.f90
flang/test/Semantics/dosemantics04.f90
flang/test/Semantics/dosemantics05.f90
flang/test/Semantics/dosemantics06.f90
flang/test/Semantics/dosemantics07.f90
flang/test/Semantics/dosemantics08.f90
flang/test/Semantics/dosemantics09.f90
flang/test/Semantics/dosemantics10.f90
flang/test/Semantics/dosemantics11.f90
flang/test/Semantics/dosemantics12.f90
flang/test/Semantics/entry01.f90
flang/test/Semantics/equivalence01.f90
flang/test/Semantics/expr-errors01.f90
flang/test/Semantics/expr-errors02.f90
flang/test/Semantics/expr-errors03.f90
flang/test/Semantics/final01.f90
flang/test/Semantics/forall01.f90
flang/test/Semantics/if_arith01.f90
flang/test/Semantics/if_arith02.f90
flang/test/Semantics/if_arith03.f90
flang/test/Semantics/if_arith04.f90
flang/test/Semantics/if_construct01.f90
flang/test/Semantics/if_construct02.f90
flang/test/Semantics/if_stmt01.f90
flang/test/Semantics/if_stmt02.f90
flang/test/Semantics/if_stmt03.f90
flang/test/Semantics/implicit01.f90
flang/test/Semantics/implicit02.f90
flang/test/Semantics/implicit03.f90
flang/test/Semantics/implicit04.f90
flang/test/Semantics/implicit05.f90
flang/test/Semantics/implicit06.f90
flang/test/Semantics/implicit07.f90
flang/test/Semantics/implicit08.f90
flang/test/Semantics/implicit09.f90
flang/test/Semantics/implicit10.f90
flang/test/Semantics/implicit11.f90
flang/test/Semantics/init01.f90
flang/test/Semantics/int-literals.f90
flang/test/Semantics/io01.f90
flang/test/Semantics/io02.f90
flang/test/Semantics/io03.f90
flang/test/Semantics/io04.f90
flang/test/Semantics/io05.f90
flang/test/Semantics/io06.f90
flang/test/Semantics/io07.f90
flang/test/Semantics/io08.f90
flang/test/Semantics/io09.f90
flang/test/Semantics/io10.f90
flang/test/Semantics/io11.f90
flang/test/Semantics/kinds01.f90
flang/test/Semantics/kinds02.f90
flang/test/Semantics/kinds03.f90
flang/test/Semantics/kinds04.f90
flang/test/Semantics/label11.f90
flang/test/Semantics/label16.f90
flang/test/Semantics/misc-declarations.f90
flang/test/Semantics/missing_newline.f90
flang/test/Semantics/modfile01.f90
flang/test/Semantics/modfile02.f90
flang/test/Semantics/modfile03.f90
flang/test/Semantics/modfile04.f90
flang/test/Semantics/modfile05.f90
flang/test/Semantics/modfile06.f90
flang/test/Semantics/modfile07.f90
flang/test/Semantics/modfile08.f90
flang/test/Semantics/modfile09.f90
flang/test/Semantics/modfile10.f90
flang/test/Semantics/modfile11.f90
flang/test/Semantics/modfile12.f90
flang/test/Semantics/modfile13.f90
flang/test/Semantics/modfile14.f90
flang/test/Semantics/modfile15.f90
flang/test/Semantics/modfile16.f90
flang/test/Semantics/modfile17.f90
flang/test/Semantics/modfile18.f90
flang/test/Semantics/modfile19.f90
flang/test/Semantics/modfile20.f90
flang/test/Semantics/modfile21.f90
flang/test/Semantics/modfile22.f90
flang/test/Semantics/modfile23.f90
flang/test/Semantics/modfile24.f90
flang/test/Semantics/modfile25.f90
flang/test/Semantics/modfile26.f90
flang/test/Semantics/modfile27.f90
flang/test/Semantics/modfile28.f90
flang/test/Semantics/modfile29.f90
flang/test/Semantics/modfile30.f90
flang/test/Semantics/modfile31.f90
flang/test/Semantics/modfile32.f90
flang/test/Semantics/modfile33.f90
flang/test/Semantics/modfile34.f90
flang/test/Semantics/modfile35.f90
flang/test/Semantics/modfile36.f90
flang/test/Semantics/modfile37.f90
flang/test/Semantics/modfile38.f90
flang/test/Semantics/modfile39.f90
flang/test/Semantics/modfile40.f90
flang/test/Semantics/namelist01.f90
flang/test/Semantics/null-init.f90
flang/test/Semantics/null01.f90
flang/test/Semantics/nullify01.f90
flang/test/Semantics/nullify02.f90
flang/test/Semantics/num_images.f90
flang/test/Semantics/omp-allocate-directive.f90
flang/test/Semantics/omp-allocate01.f90
flang/test/Semantics/omp-allocate02.f90
flang/test/Semantics/omp-allocate03.f90
flang/test/Semantics/omp-allocate04.f90
flang/test/Semantics/omp-allocate05.f90
flang/test/Semantics/omp-allocate06.f90
flang/test/Semantics/omp-allocate07.f90
flang/test/Semantics/omp-atomic.f90
flang/test/Semantics/omp-atomic01.f90
flang/test/Semantics/omp-clause-validity01.f90
flang/test/Semantics/omp-combined-constructs.f90
flang/test/Semantics/omp-copyin01.f90
flang/test/Semantics/omp-copyin02.f90
flang/test/Semantics/omp-copyin03.f90
flang/test/Semantics/omp-copyin04.f90
flang/test/Semantics/omp-copyin05.f90
flang/test/Semantics/omp-copyprivate01.f90
flang/test/Semantics/omp-copyprivate02.f90
flang/test/Semantics/omp-copyprivate03.f90
flang/test/Semantics/omp-declarative-directive.f90
flang/test/Semantics/omp-default.f90
flang/test/Semantics/omp-default02.f90
flang/test/Semantics/omp-depend01.f90
flang/test/Semantics/omp-depend02.f90
flang/test/Semantics/omp-depend03.f90
flang/test/Semantics/omp-device-constructs.f90
flang/test/Semantics/omp-do-collapse-positivecases.f90
flang/test/Semantics/omp-do-collapse.f90
flang/test/Semantics/omp-do-cycle.f90
flang/test/Semantics/omp-do-ordered-positivecases.f90
flang/test/Semantics/omp-do-ordered.f90
flang/test/Semantics/omp-do-schedule01.f90
flang/test/Semantics/omp-do-schedule02.f90
flang/test/Semantics/omp-do-schedule03.f90
flang/test/Semantics/omp-do-schedule04.f90
flang/test/Semantics/omp-do01-positivecase.f90
flang/test/Semantics/omp-do01.f90
flang/test/Semantics/omp-do03.f90
flang/test/Semantics/omp-do04-positivecase.f90
flang/test/Semantics/omp-do04.f90
flang/test/Semantics/omp-do05-positivecase.f90
flang/test/Semantics/omp-do05.f90
flang/test/Semantics/omp-do06-positivecases.f90
flang/test/Semantics/omp-do06.f90
flang/test/Semantics/omp-do07.f90
flang/test/Semantics/omp-do08.f90
flang/test/Semantics/omp-do09.f90
flang/test/Semantics/omp-do10.f90
flang/test/Semantics/omp-do11.f90
flang/test/Semantics/omp-do12.f90
flang/test/Semantics/omp-do13.f90
flang/test/Semantics/omp-do14.f90
flang/test/Semantics/omp-do15.f90
flang/test/Semantics/omp-do16.f90
flang/test/Semantics/omp-do17.f90
flang/test/Semantics/omp-firstprivate01.f90
flang/test/Semantics/omp-flush01.f90
flang/test/Semantics/omp-flush02.f90
flang/test/Semantics/omp-invalid-branch.f90
flang/test/Semantics/omp-lastprivate01.f90
flang/test/Semantics/omp-lastprivate02.f90
flang/test/Semantics/omp-linear-iter.f90
flang/test/Semantics/omp-loop-association.f90
flang/test/Semantics/omp-loop-simd01.f90
flang/test/Semantics/omp-nested-distribute.f90
flang/test/Semantics/omp-nested-master.f90
flang/test/Semantics/omp-nested-simd.f90
flang/test/Semantics/omp-nested01.f90
flang/test/Semantics/omp-no-dowhile-in-parallel.f90
flang/test/Semantics/omp-ordered-simd.f90
flang/test/Semantics/omp-parallel-private01.f90
flang/test/Semantics/omp-parallel-private02.f90
flang/test/Semantics/omp-parallel-private03.f90
flang/test/Semantics/omp-parallel-private04.f90
flang/test/Semantics/omp-parallel-shared01.f90
flang/test/Semantics/omp-parallel-shared02.f90
flang/test/Semantics/omp-parallel-shared03.f90
flang/test/Semantics/omp-parallel-shared04.f90
flang/test/Semantics/omp-private01.f90
flang/test/Semantics/omp-private02.f90
flang/test/Semantics/omp-private03.f90
flang/test/Semantics/omp-reduction01.f90
flang/test/Semantics/omp-reduction02.f90
flang/test/Semantics/omp-reduction03.f90
flang/test/Semantics/omp-reduction04.f90
flang/test/Semantics/omp-reduction05.f90
flang/test/Semantics/omp-reduction06.f90
flang/test/Semantics/omp-reduction07.f90
flang/test/Semantics/omp-reduction08.f90
flang/test/Semantics/omp-reduction09.f90
flang/test/Semantics/omp-reduction10.f90
flang/test/Semantics/omp-resolve01.f90
flang/test/Semantics/omp-resolve02.f90
flang/test/Semantics/omp-resolve03.f90
flang/test/Semantics/omp-resolve04.f90
flang/test/Semantics/omp-resolve05.f90
flang/test/Semantics/omp-resolve06.f90
flang/test/Semantics/omp-sections01.f90
flang/test/Semantics/omp-simd-aligned.f90
flang/test/Semantics/omp-simd02.f90
flang/test/Semantics/omp-single01.f90
flang/test/Semantics/omp-single02.f90
flang/test/Semantics/omp-symbol01.f90
flang/test/Semantics/omp-symbol02.f90
flang/test/Semantics/omp-symbol03.f90
flang/test/Semantics/omp-symbol04.f90
flang/test/Semantics/omp-symbol05.f90
flang/test/Semantics/omp-symbol06.f90
flang/test/Semantics/omp-symbol07.f90
flang/test/Semantics/omp-symbol08.f90
flang/test/Semantics/omp-taskloop01.f90
flang/test/Semantics/omp-workshare01.f90
flang/test/Semantics/omp-workshare02.f90
flang/test/Semantics/omp-workshare03.f90
flang/test/Semantics/omp-workshare04.f90
flang/test/Semantics/omp-workshare05.f90
flang/test/Semantics/procinterface01.f90
flang/test/Semantics/reshape.f90
flang/test/Semantics/resolve01.f90
flang/test/Semantics/resolve02.f90
flang/test/Semantics/resolve03.f90
flang/test/Semantics/resolve04.f90
flang/test/Semantics/resolve05.f90
flang/test/Semantics/resolve06.f90
flang/test/Semantics/resolve07.f90
flang/test/Semantics/resolve08.f90
flang/test/Semantics/resolve09.f90
flang/test/Semantics/resolve10.f90
flang/test/Semantics/resolve101.f90
flang/test/Semantics/resolve102.f90
flang/test/Semantics/resolve104.f90
flang/test/Semantics/resolve105.f90
flang/test/Semantics/resolve11.f90
flang/test/Semantics/resolve12.f90
flang/test/Semantics/resolve13.f90
flang/test/Semantics/resolve14.f90
flang/test/Semantics/resolve15.f90
flang/test/Semantics/resolve16.f90
flang/test/Semantics/resolve17.f90
flang/test/Semantics/resolve18.f90
flang/test/Semantics/resolve19.f90
flang/test/Semantics/resolve20.f90
flang/test/Semantics/resolve21.f90
flang/test/Semantics/resolve22.f90
flang/test/Semantics/resolve23.f90
flang/test/Semantics/resolve24.f90
flang/test/Semantics/resolve25.f90
flang/test/Semantics/resolve26.f90
flang/test/Semantics/resolve27.f90
flang/test/Semantics/resolve28.f90
flang/test/Semantics/resolve29.f90
flang/test/Semantics/resolve30.f90
flang/test/Semantics/resolve31.f90
flang/test/Semantics/resolve32.f90
flang/test/Semantics/resolve33.f90
flang/test/Semantics/resolve34.f90
flang/test/Semantics/resolve35.f90
flang/test/Semantics/resolve36.f90
flang/test/Semantics/resolve37.f90
flang/test/Semantics/resolve38.f90
flang/test/Semantics/resolve39.f90
flang/test/Semantics/resolve40.f90
flang/test/Semantics/resolve41.f90
flang/test/Semantics/resolve42.f90
flang/test/Semantics/resolve43.f90
flang/test/Semantics/resolve44.f90
flang/test/Semantics/resolve45.f90
flang/test/Semantics/resolve46.f90
flang/test/Semantics/resolve47.f90
flang/test/Semantics/resolve48.f90
flang/test/Semantics/resolve49.f90
flang/test/Semantics/resolve50.f90
flang/test/Semantics/resolve51.f90
flang/test/Semantics/resolve52.f90
flang/test/Semantics/resolve53.f90
flang/test/Semantics/resolve54.f90
flang/test/Semantics/resolve55.f90
flang/test/Semantics/resolve56.f90
flang/test/Semantics/resolve57.f90
flang/test/Semantics/resolve58.f90
flang/test/Semantics/resolve59.f90
flang/test/Semantics/resolve60.f90
flang/test/Semantics/resolve61.f90
flang/test/Semantics/resolve62.f90
flang/test/Semantics/resolve63.f90
flang/test/Semantics/resolve64.f90
flang/test/Semantics/resolve65.f90
flang/test/Semantics/resolve66.f90
flang/test/Semantics/resolve67.f90
flang/test/Semantics/resolve68.f90
flang/test/Semantics/resolve69.f90
flang/test/Semantics/resolve70.f90
flang/test/Semantics/resolve71.f90
flang/test/Semantics/resolve72.f90
flang/test/Semantics/resolve73.f90
flang/test/Semantics/resolve74.f90
flang/test/Semantics/resolve75.f90
flang/test/Semantics/resolve76.f90
flang/test/Semantics/resolve77.f90
flang/test/Semantics/resolve78.f90
flang/test/Semantics/resolve79.f90
flang/test/Semantics/resolve80.f90
flang/test/Semantics/resolve81.f90
flang/test/Semantics/resolve82.f90
flang/test/Semantics/resolve83.f90
flang/test/Semantics/resolve84.f90
flang/test/Semantics/resolve85.f90
flang/test/Semantics/resolve86.f90
flang/test/Semantics/resolve87.f90
flang/test/Semantics/resolve88.f90
flang/test/Semantics/resolve89.f90
flang/test/Semantics/resolve90.f90
flang/test/Semantics/resolve91.f90
flang/test/Semantics/resolve92.f90
flang/test/Semantics/resolve93.f90
flang/test/Semantics/resolve94.f90
flang/test/Semantics/resolve95.f90
flang/test/Semantics/resolve96.f90
flang/test/Semantics/resolve97.f90
flang/test/Semantics/resolve98.f90
flang/test/Semantics/resolve99.f90
flang/test/Semantics/save01.f90
flang/test/Semantics/select-rank.f90
flang/test/Semantics/select-rank02.f90
flang/test/Semantics/selecttype01.f90
flang/test/Semantics/selecttype02.f90
flang/test/Semantics/selecttype03.f90
flang/test/Semantics/separate-mp01.f90
flang/test/Semantics/separate-mp02.f90
flang/test/Semantics/shape.f90
flang/test/Semantics/spec-expr.f90
flang/test/Semantics/stop01.f90
flang/test/Semantics/structconst01.f90
flang/test/Semantics/structconst02.f90
flang/test/Semantics/structconst03.f90
flang/test/Semantics/structconst04.f90
flang/test/Semantics/symbol01.f90
flang/test/Semantics/symbol02.f90
flang/test/Semantics/symbol03.f90
flang/test/Semantics/symbol05.f90
flang/test/Semantics/symbol06.f90
flang/test/Semantics/symbol07.f90
flang/test/Semantics/symbol08.f90
flang/test/Semantics/symbol09.f90
flang/test/Semantics/symbol10.f90
flang/test/Semantics/symbol11.f90
flang/test/Semantics/symbol12.f90
flang/test/Semantics/symbol13.f90
flang/test/Semantics/symbol14.f90
flang/test/Semantics/symbol15.f90
flang/test/Semantics/symbol16.f90
flang/test/Semantics/symbol17.f90
flang/test/Semantics/symbol18.f90
flang/test/Semantics/symbol19.f90
flang/test/lit.site.cfg.py.in
Removed:
################################################################################
diff --git a/flang/test/Driver/debug-parsing-log.f90 b/flang/test/Driver/debug-parsing-log.f90
index f658fa673e86a..ed47684cde2fb 100644
--- a/flang/test/Driver/debug-parsing-log.f90
+++ b/flang/test/Driver/debug-parsing-log.f90
@@ -5,23 +5,23 @@
!-----------------
! Below are just few lines extracted from the dump. The actual output is much _much_ bigger.
-! CHECK: {{.*}}/debug-parsing-log.f90:31:1: IMPLICIT statement
+! CHECK: {{.*[/\\]}}debug-parsing-log.f90:31:1: IMPLICIT statement
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
! CHECK-NEXT: fail 3
-! CHECK-NEXT: {{.*}}/debug-parsing-log.f90:31:1: error: expected 'IMPLICIT NONE'
+! CHECK-NEXT: {{.*[/\\]}}debug-parsing-log.f90:31:1: error: expected 'IMPLICIT NONE'
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
-! CHECK-NEXT: {{.*}}/debug-parsing-log.f90:31:1: in the context: IMPLICIT statement
+! CHECK-NEXT: {{.*[/\\]}}debug-parsing-log.f90:31:1: in the context: IMPLICIT statement
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
-! CHECK-NEXT: {{.*}}/debug-parsing-log.f90:31:1: in the context: implicit part
+! CHECK-NEXT: {{.*[/\\]}}debug-parsing-log.f90:31:1: in the context: implicit part
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
-! CHECK-NEXT: {{.*}}/debug-parsing-log.f90:31:1: in the context: specification part
+! CHECK-NEXT: {{.*[/\\]}}debug-parsing-log.f90:31:1: in the context: specification part
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
-! CHECK-NEXT: {{.*}}/debug-parsing-log.f90:31:1: in the context: main program
+! CHECK-NEXT: {{.*[/\\]}}debug-parsing-log.f90:31:1: in the context: main program
! CHECK-NEXT: END PROGRAM
! CHECK-NEXT: ^
diff --git a/flang/test/Driver/debug-provenance.f90 b/flang/test/Driver/debug-provenance.f90
index c7e79e76ade10..147be87f77721 100644
--- a/flang/test/Driver/debug-provenance.f90
+++ b/flang/test/Driver/debug-provenance.f90
@@ -13,7 +13,7 @@
! CHECK-NEXT: [1..1] (1 bytes) -> compiler '?'(0x3f)
! CHECK-NEXT: [2..2] (1 bytes) -> compiler ' '(0x20)
! CHECK-NEXT: [3..3] (1 bytes) -> compiler '\'(0x5c)
-! CHECK-NEXT: [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> file {{.*}}/debug-provenance.f90
+! CHECK-NEXT: [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> file {{.*[/\\]}}debug-provenance.f90
! CHECK-NEXT: [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> compiler '(after end of source)'
! CHECK-NEXT: CookedSource::provenanceMap_:
! CHECK-NEXT: offsets [{{[0-9]*}}..{{[0-9]*}}] -> provenances [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes)
diff --git a/flang/test/Evaluate/folding01.f90 b/flang/test/Evaluate/folding01.f90
index 2cd855cb4fba2..29708ce1195f1 100644
--- a/flang/test/Evaluate/folding01.f90
+++ b/flang/test/Evaluate/folding01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test intrinsic operation folding
diff --git a/flang/test/Evaluate/folding02.f90 b/flang/test/Evaluate/folding02.f90
index 57a19783baf34..1033c4daa97bb 100644
--- a/flang/test/Evaluate/folding02.f90
+++ b/flang/test/Evaluate/folding02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check intrinsic function folding with host runtime library
module m
diff --git a/flang/test/Evaluate/folding03.f90 b/flang/test/Evaluate/folding03.f90
index 0eaedb2944766..47fab1a490f3c 100644
--- a/flang/test/Evaluate/folding03.f90
+++ b/flang/test/Evaluate/folding03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test operation folding edge case (both expected value and messages)
! These tests make assumptions regarding real(4) and integer(4) extrema.
diff --git a/flang/test/Evaluate/folding04.f90 b/flang/test/Evaluate/folding04.f90
index 626825d1fd1d2..54d1c385a192e 100644
--- a/flang/test/Evaluate/folding04.f90
+++ b/flang/test/Evaluate/folding04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test intrinsic function folding edge case (both expected value and messages)
! These tests make assumptions regarding real(4) extrema.
diff --git a/flang/test/Evaluate/folding05.f90 b/flang/test/Evaluate/folding05.f90
index e7052128238d2..b5e955a4ac708 100644
Binary files a/flang/test/Evaluate/folding05.f90 and b/flang/test/Evaluate/folding05.f90
diff er
diff --git a/flang/test/Evaluate/folding06.f90 b/flang/test/Evaluate/folding06.f90
index 5fc0066579ec7..fe553b89d3387 100644
--- a/flang/test/Evaluate/folding06.f90
+++ b/flang/test/Evaluate/folding06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test transformational intrinsic function folding
module m
diff --git a/flang/test/Evaluate/folding07.f90 b/flang/test/Evaluate/folding07.f90
index d579c197f26ad..edee48355be68 100644
--- a/flang/test/Evaluate/folding07.f90
+++ b/flang/test/Evaluate/folding07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test numeric model inquiry intrinsics
module m
diff --git a/flang/test/Evaluate/folding08.f90 b/flang/test/Evaluate/folding08.f90
index ae9bdf589a8a4..6118e6b14cf08 100644
--- a/flang/test/Evaluate/folding08.f90
+++ b/flang/test/Evaluate/folding08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of LBOUND and UBOUND
module m
diff --git a/flang/test/Evaluate/folding09.f90 b/flang/test/Evaluate/folding09.f90
index 9819bbd2b746b..6f9be6b50bc35 100644
--- a/flang/test/Evaluate/folding09.f90
+++ b/flang/test/Evaluate/folding09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of IS_CONTIGUOUS on simply contiguous items (9.5.4)
! When IS_CONTIGUOUS() is constant, it's .TRUE.
diff --git a/flang/test/Evaluate/folding10.f90 b/flang/test/Evaluate/folding10.f90
index fbc357dcbbddf..c705741191094 100644
--- a/flang/test/Evaluate/folding10.f90
+++ b/flang/test/Evaluate/folding10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests folding of SHAPE(TRANSFER(...))
module m
diff --git a/flang/test/Evaluate/folding11.f90 b/flang/test/Evaluate/folding11.f90
index d5003ca80a12a..4fdb0ba9aa718 100644
--- a/flang/test/Evaluate/folding11.f90
+++ b/flang/test/Evaluate/folding11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
complex, parameter :: z1 = 1. + (2., 3.)
logical, parameter :: test_z1 = z1 == (3., 3.)
diff --git a/flang/test/Evaluate/folding12.f90 b/flang/test/Evaluate/folding12.f90
index 94ecb2d8ff44c..ac74c6ce0e34e 100644
--- a/flang/test/Evaluate/folding12.f90
+++ b/flang/test/Evaluate/folding12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of structure constructors
module m1
type parent_type
diff --git a/flang/test/Evaluate/folding13.f90 b/flang/test/Evaluate/folding13.f90
index fbc37ad36fe4c..92a300998c357 100644
--- a/flang/test/Evaluate/folding13.f90
+++ b/flang/test/Evaluate/folding13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of array constructors with constant implied DO bounds;
! their indices are constant expressions and can be used as such.
module m1
diff --git a/flang/test/Evaluate/folding14.f90 b/flang/test/Evaluate/folding14.f90
index ff1f3ab93c2f9..a76fe23fed735 100644
--- a/flang/test/Evaluate/folding14.f90
+++ b/flang/test/Evaluate/folding14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of isnan() extension
module m1
logical, parameter :: results(*) = isnan([ &
diff --git a/flang/test/Evaluate/folding15.f90 b/flang/test/Evaluate/folding15.f90
index d6894666385d7..658f91f3011e0 100644
--- a/flang/test/Evaluate/folding15.f90
+++ b/flang/test/Evaluate/folding15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of array constructors with duplicate names for the implied
! DO variables
module m1
diff --git a/flang/test/Evaluate/folding16.f90 b/flang/test/Evaluate/folding16.f90
index bb3aee01059e6..a407be31e5154 100644
--- a/flang/test/Evaluate/folding16.f90
+++ b/flang/test/Evaluate/folding16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that lower bounds are accounted for in intrinsic folding;
! this is a regression test for a bug in which they were not
module m
diff --git a/flang/test/Evaluate/folding17.f90 b/flang/test/Evaluate/folding17.f90
index 2880822e1f4ea..51e42589c69ec 100644
--- a/flang/test/Evaluate/folding17.f90
+++ b/flang/test/Evaluate/folding17.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test implementations of STORAGE_SIZE() and SIZEOF() as expression rewrites
module m1
type :: t1
diff --git a/flang/test/Evaluate/folding18.f90 b/flang/test/Evaluate/folding18.f90
index c9cc918e4133c..eda70041ce2ba 100644
--- a/flang/test/Evaluate/folding18.f90
+++ b/flang/test/Evaluate/folding18.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_folding.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test implementations of IEEE inquiry functions
module m
use ieee_arithmetic
diff --git a/flang/test/Preprocessing/pp130.F90 b/flang/test/Preprocessing/pp130.F90
index 8066e28280e1f..fcc3b3958f7f9 100644
--- a/flang/test/Preprocessing/pp130.F90
+++ b/flang/test/Preprocessing/pp130.F90
@@ -1,4 +1,4 @@
-! RUN: (%flang -E %s 2>&1 || true) | FileCheck %s
+! RUN: not %flang -E %s 2>&1 | FileCheck %s
! CHECK: error: bad character ('&') in Fortran token
! #define KWM &, use for continuation w/o pasting (ifort and nag seem to continue #define)
#define KWM &
diff --git a/flang/test/Semantics/OpenACC/acc-atomic-validity.f90 b/flang/test/Semantics/OpenACC/acc-atomic-validity.f90
index 6bf6bda73d1d4..8ebac44bcca37 100644
--- a/flang/test/Semantics/OpenACC/acc-atomic-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-atomic-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.12 Atomic
diff --git a/flang/test/Semantics/OpenACC/acc-branch.f90 b/flang/test/Semantics/OpenACC/acc-branch.f90
index d23d43829a116..b9ca12b0e8923 100644
--- a/flang/test/Semantics/OpenACC/acc-branch.f90
+++ b/flang/test/Semantics/OpenACC/acc-branch.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC restruction in branch in and out of some construct
!
diff --git a/flang/test/Semantics/OpenACC/acc-cache-validity.f90 b/flang/test/Semantics/OpenACC/acc-cache-validity.f90
index b975ced0505be..30c68ef3e1795 100644
--- a/flang/test/Semantics/OpenACC/acc-cache-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-cache-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.10 Cache
diff --git a/flang/test/Semantics/OpenACC/acc-canonicalization-validity.f90 b/flang/test/Semantics/OpenACC/acc-canonicalization-validity.f90
index d2d84f55a180e..bc20aedd9b9f7 100644
--- a/flang/test/Semantics/OpenACC/acc-canonicalization-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-canonicalization-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC canonalization validity for the construct defined below:
! 2.9 Loop
diff --git a/flang/test/Semantics/OpenACC/acc-data.f90 b/flang/test/Semantics/OpenACC/acc-data.f90
index f3fbbb7b84a98..6aa99e71e0bb9 100644
--- a/flang/test/Semantics/OpenACC/acc-data.f90
+++ b/flang/test/Semantics/OpenACC/acc-data.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.6.5 Data
diff --git a/flang/test/Semantics/OpenACC/acc-declare-validity.f90 b/flang/test/Semantics/OpenACC/acc-declare-validity.f90
index 93f460cb728f6..fea97ecfe765d 100644
--- a/flang/test/Semantics/OpenACC/acc-declare-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-declare-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.13 Declare
diff --git a/flang/test/Semantics/OpenACC/acc-host-data.f90 b/flang/test/Semantics/OpenACC/acc-host-data.f90
index 5c1d3a8a06959..877f0021cc5f3 100644
--- a/flang/test/Semantics/OpenACC/acc-host-data.f90
+++ b/flang/test/Semantics/OpenACC/acc-host-data.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.8 host_data
diff --git a/flang/test/Semantics/OpenACC/acc-init-validity.f90 b/flang/test/Semantics/OpenACC/acc-init-validity.f90
index 7f6c89e4724d2..2b2eac51535d2 100644
--- a/flang/test/Semantics/OpenACC/acc-init-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-init-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.14.1 Init
diff --git a/flang/test/Semantics/OpenACC/acc-kernels-loop.f90 b/flang/test/Semantics/OpenACC/acc-kernels-loop.f90
index d526a64a2c0c1..5b3b9c205229b 100644
--- a/flang/test/Semantics/OpenACC/acc-kernels-loop.f90
+++ b/flang/test/Semantics/OpenACC/acc-kernels-loop.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.11 Kernels Loop
diff --git a/flang/test/Semantics/OpenACC/acc-kernels.f90 b/flang/test/Semantics/OpenACC/acc-kernels.f90
index 8bbb9e20ceb54..ccb128a0c9107 100644
--- a/flang/test/Semantics/OpenACC/acc-kernels.f90
+++ b/flang/test/Semantics/OpenACC/acc-kernels.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.5.3 Kernels
diff --git a/flang/test/Semantics/OpenACC/acc-loop.f90 b/flang/test/Semantics/OpenACC/acc-loop.f90
index 75e292ac6ca5e..2cd71751beac8 100644
--- a/flang/test/Semantics/OpenACC/acc-loop.f90
+++ b/flang/test/Semantics/OpenACC/acc-loop.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.9 Loop
diff --git a/flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90 b/flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
index ee2f2fa811365..3dee14733b66e 100644
--- a/flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-parallel-loop-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.11 Parallel Loop
diff --git a/flang/test/Semantics/OpenACC/acc-parallel.f90 b/flang/test/Semantics/OpenACC/acc-parallel.f90
index 738274b5e1b5c..75fb14fccc229 100644
--- a/flang/test/Semantics/OpenACC/acc-parallel.f90
+++ b/flang/test/Semantics/OpenACC/acc-parallel.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.5.1 Parallel
diff --git a/flang/test/Semantics/OpenACC/acc-resolve01.f90 b/flang/test/Semantics/OpenACC/acc-resolve01.f90
index 5fc153fd8848f..c55e02efd14de 100644
--- a/flang/test/Semantics/OpenACC/acc-resolve01.f90
+++ b/flang/test/Semantics/OpenACC/acc-resolve01.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Data-Mapping Attribute Clauses
! 2.15.14 default Clause
diff --git a/flang/test/Semantics/OpenACC/acc-resolve02.f90 b/flang/test/Semantics/OpenACC/acc-resolve02.f90
index 7a9aff33c57fd..b4df4d15bd8a6 100644
--- a/flang/test/Semantics/OpenACC/acc-resolve02.f90
+++ b/flang/test/Semantics/OpenACC/acc-resolve02.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
subroutine compute()
integer :: a(3), c, i
diff --git a/flang/test/Semantics/OpenACC/acc-routine-validity.f90 b/flang/test/Semantics/OpenACC/acc-routine-validity.f90
index c6bde7d4fc48f..18d90ec6f0a9d 100644
--- a/flang/test/Semantics/OpenACC/acc-routine-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-routine-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.15.1 routine
diff --git a/flang/test/Semantics/OpenACC/acc-serial-loop.f90 b/flang/test/Semantics/OpenACC/acc-serial-loop.f90
index 499c9411ad84f..c088bf892e78a 100644
--- a/flang/test/Semantics/OpenACC/acc-serial-loop.f90
+++ b/flang/test/Semantics/OpenACC/acc-serial-loop.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.11 Serial Loop
diff --git a/flang/test/Semantics/OpenACC/acc-serial.f90 b/flang/test/Semantics/OpenACC/acc-serial.f90
index 859be3a1e0079..2f206f5cfa342 100644
--- a/flang/test/Semantics/OpenACC/acc-serial.f90
+++ b/flang/test/Semantics/OpenACC/acc-serial.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.5.2 Serial
diff --git a/flang/test/Semantics/OpenACC/acc-set-validity.f90 b/flang/test/Semantics/OpenACC/acc-set-validity.f90
index cd1981fdb79ee..4bc342e2f38b5 100644
--- a/flang/test/Semantics/OpenACC/acc-set-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-set-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.14.3 Set
diff --git a/flang/test/Semantics/OpenACC/acc-shutdown-validity.f90 b/flang/test/Semantics/OpenACC/acc-shutdown-validity.f90
index 5e8d2851967c2..31fa3c9daf3da 100644
--- a/flang/test/Semantics/OpenACC/acc-shutdown-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-shutdown-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.14.2 Shutdown
diff --git a/flang/test/Semantics/OpenACC/acc-symbols01.f90 b/flang/test/Semantics/OpenACC/acc-symbols01.f90
index bab0aac80379f..f08317ac12bf1 100644
--- a/flang/test/Semantics/OpenACC/acc-symbols01.f90
+++ b/flang/test/Semantics/OpenACC/acc-symbols01.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_symbols.sh %s %t %flang_fc1 -fopenacc
+! REQUIRES: shell
!DEF: /mm MainProgram
program mm
diff --git a/flang/test/Semantics/OpenACC/acc-update-validity.f90 b/flang/test/Semantics/OpenACC/acc-update-validity.f90
index 9dd5d0a997095..fbf90fbbba91c 100644
--- a/flang/test/Semantics/OpenACC/acc-update-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-update-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.14.4 Update
diff --git a/flang/test/Semantics/OpenACC/acc-wait-validity.f90 b/flang/test/Semantics/OpenACC/acc-wait-validity.f90
index ca7ac1add0336..c33bcbdecadca 100644
--- a/flang/test/Semantics/OpenACC/acc-wait-validity.f90
+++ b/flang/test/Semantics/OpenACC/acc-wait-validity.f90
@@ -1,4 +1,5 @@
! RUN: %S/../test_errors.sh %s %t %flang -fopenacc
+! REQUIRES: shell
! Check OpenACC clause validity for the following construct and directive:
! 2.16.13 Wait
diff --git a/flang/test/Semantics/allocate01.f90 b/flang/test/Semantics/allocate01.f90
index 4a6c2d08c99da..257c8750c9585 100644
--- a/flang/test/Semantics/allocate01.f90
+++ b/flang/test/Semantics/allocate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
! Creating a symbol that allocate should accept
diff --git a/flang/test/Semantics/allocate02.f90 b/flang/test/Semantics/allocate02.f90
index 8cc83dd30dc0e..9cf9e888450d2 100644
--- a/flang/test/Semantics/allocate02.f90
+++ b/flang/test/Semantics/allocate02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
diff --git a/flang/test/Semantics/allocate03.f90 b/flang/test/Semantics/allocate03.f90
index ba9845f9d6a4f..c119ac675e1ce 100644
--- a/flang/test/Semantics/allocate03.f90
+++ b/flang/test/Semantics/allocate03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
subroutine C933_a(b1, ca3, ca4, cp3, cp3mold, cp4, cp7, cp8, bsrc)
diff --git a/flang/test/Semantics/allocate04.f90 b/flang/test/Semantics/allocate04.f90
index 8928cc7ea85b2..b881b845e2ee1 100644
--- a/flang/test/Semantics/allocate04.f90
+++ b/flang/test/Semantics/allocate04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
diff --git a/flang/test/Semantics/allocate05.f90 b/flang/test/Semantics/allocate05.f90
index 52fd4a393a993..b33f31606ba7e 100644
--- a/flang/test/Semantics/allocate05.f90
+++ b/flang/test/Semantics/allocate05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
diff --git a/flang/test/Semantics/allocate06.f90 b/flang/test/Semantics/allocate06.f90
index 6a7cf79d41d10..864f17a3c7cd7 100644
--- a/flang/test/Semantics/allocate06.f90
+++ b/flang/test/Semantics/allocate06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
diff --git a/flang/test/Semantics/allocate07.f90 b/flang/test/Semantics/allocate07.f90
index 70636128e0e3f..a948765deb921 100644
--- a/flang/test/Semantics/allocate07.f90
+++ b/flang/test/Semantics/allocate07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
subroutine C936(param_ca_4_assumed, param_ta_4_assumed, param_ca_4_deferred)
diff --git a/flang/test/Semantics/allocate08.f90 b/flang/test/Semantics/allocate08.f90
index 25dc453a26a2f..9223b14aa6427 100644
--- a/flang/test/Semantics/allocate08.f90
+++ b/flang/test/Semantics/allocate08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
subroutine C945_a(srca, srcb, srcc, src_complex, src_logical, &
diff --git a/flang/test/Semantics/allocate09.f90 b/flang/test/Semantics/allocate09.f90
index d351e728131eb..03531a1ad2c58 100644
--- a/flang/test/Semantics/allocate09.f90
+++ b/flang/test/Semantics/allocate09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
subroutine C946(param_ca_4_assumed, param_ta_4_assumed, param_ca_4_deferred)
diff --git a/flang/test/Semantics/allocate10.f90 b/flang/test/Semantics/allocate10.f90
index bb62767423e10..05c73ce8a07df 100644
--- a/flang/test/Semantics/allocate10.f90
+++ b/flang/test/Semantics/allocate10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
!TODO: mixing expr and source-expr?
diff --git a/flang/test/Semantics/allocate11.f90 b/flang/test/Semantics/allocate11.f90
index 3807186abf88c..b07b7a18ff4c6 100644
--- a/flang/test/Semantics/allocate11.f90
+++ b/flang/test/Semantics/allocate11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
! TODO: Function Pointer in allocate and derived types!
diff --git a/flang/test/Semantics/allocate12.f90 b/flang/test/Semantics/allocate12.f90
index 075fa6a79b577..9504142a2cc12 100644
--- a/flang/test/Semantics/allocate12.f90
+++ b/flang/test/Semantics/allocate12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
subroutine C941_C942b_C950(xsrc, x1, a2, b2, cx1, ca2, cb1, cb2, c1, c2)
diff --git a/flang/test/Semantics/allocate13.f90 b/flang/test/Semantics/allocate13.f90
index 8fa2b95279fae..c939d19848ca2 100644
--- a/flang/test/Semantics/allocate13.f90
+++ b/flang/test/Semantics/allocate13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in ALLOCATE statements
module not_iso_fortran_env
diff --git a/flang/test/Semantics/altreturn01.f90 b/flang/test/Semantics/altreturn01.f90
index 8541287de335c..7257eb1e5551e 100644
--- a/flang/test/Semantics/altreturn01.f90
+++ b/flang/test/Semantics/altreturn01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check calls with alt returns
CALL TEST (N, *100, *200 )
diff --git a/flang/test/Semantics/altreturn02.f90 b/flang/test/Semantics/altreturn02.f90
index f3fd9e4c3af46..ad7a4f8bc0614 100644
--- a/flang/test/Semantics/altreturn02.f90
+++ b/flang/test/Semantics/altreturn02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check subroutine with alt return
SUBROUTINE TEST (N, *, *)
diff --git a/flang/test/Semantics/altreturn03.f90 b/flang/test/Semantics/altreturn03.f90
index 2f6c7f28dfacc..703d22bc0b367 100644
--- a/flang/test/Semantics/altreturn03.f90
+++ b/flang/test/Semantics/altreturn03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for various alt return error conditions
SUBROUTINE TEST (N, *, *)
diff --git a/flang/test/Semantics/altreturn04.f90 b/flang/test/Semantics/altreturn04.f90
index 4d2e6957d6b94..116c90acab8a6 100644
--- a/flang/test/Semantics/altreturn04.f90
+++ b/flang/test/Semantics/altreturn04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Functions cannot use alt return
REAL FUNCTION altreturn01(X)
diff --git a/flang/test/Semantics/altreturn05.f90 b/flang/test/Semantics/altreturn05.f90
index aa9fb3691442f..ad4f101cc14fd 100644
--- a/flang/test/Semantics/altreturn05.f90
+++ b/flang/test/Semantics/altreturn05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test extension: RETURN from main program
return !ok
diff --git a/flang/test/Semantics/altreturn06.f90 b/flang/test/Semantics/altreturn06.f90
index 15a33b34f0a6b..4b5b606b9c36c 100644
--- a/flang/test/Semantics/altreturn06.f90
+++ b/flang/test/Semantics/altreturn06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test alternat return argument passing for internal and external subprograms
! Both of the following are OK
call extSubprogram (*100)
diff --git a/flang/test/Semantics/array-constr-big.f90 b/flang/test/Semantics/array-constr-big.f90
index 1e8bd5dd3e1d7..0f44aa125cc83 100644
--- a/flang/test/Semantics/array-constr-big.f90
+++ b/flang/test/Semantics/array-constr-big.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that evaluating a very large array constructor does not crash the
! compiler
program BigArray
diff --git a/flang/test/Semantics/array-constr-values.f90 b/flang/test/Semantics/array-constr-values.f90
index dee5810588ed5..98d90892e6207 100644
--- a/flang/test/Semantics/array-constr-values.f90
+++ b/flang/test/Semantics/array-constr-values.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Confirm enforcement of constraints and restrictions in 7.8
! C7110, C7111, C7112, C7113, C7114, C7115
diff --git a/flang/test/Semantics/assign01.f90 b/flang/test/Semantics/assign01.f90
index 0c34c4e59c4ea..9d47a019b55e4 100644
--- a/flang/test/Semantics/assign01.f90
+++ b/flang/test/Semantics/assign01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 10.2.3.1(2) All masks and LHS of assignments in a WHERE must conform
subroutine s1
diff --git a/flang/test/Semantics/assign02.f90 b/flang/test/Semantics/assign02.f90
index 16e57755fbaa4..76faa6f76f2f1 100644
--- a/flang/test/Semantics/assign02.f90
+++ b/flang/test/Semantics/assign02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Pointer assignment constraints 10.2.2.2
module m1
diff --git a/flang/test/Semantics/assign03.f90 b/flang/test/Semantics/assign03.f90
index 2c60475d185bb..830f17cdb61e5 100644
--- a/flang/test/Semantics/assign03.f90
+++ b/flang/test/Semantics/assign03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Pointer assignment constraints 10.2.2.2 (see also assign02.f90)
module m
diff --git a/flang/test/Semantics/assign04.f90 b/flang/test/Semantics/assign04.f90
index 806256f9b9bcf..acc5ac8c8b156 100644
--- a/flang/test/Semantics/assign04.f90
+++ b/flang/test/Semantics/assign04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 9.4.5
subroutine s1
type :: t(k, l)
diff --git a/flang/test/Semantics/assign06.f90 b/flang/test/Semantics/assign06.f90
index 12ac4e651d77a..406bf2084f9da 100644
--- a/flang/test/Semantics/assign06.f90
+++ b/flang/test/Semantics/assign06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test ASSIGN statement, assigned GOTO, and assigned format labels
! (see subclause 8.2.4 in Fortran 90 (*not* 2018!)
diff --git a/flang/test/Semantics/assign07.f90 b/flang/test/Semantics/assign07.f90
index 7ffcc4fabbc2f..980e4b6067dad 100644
--- a/flang/test/Semantics/assign07.f90
+++ b/flang/test/Semantics/assign07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test ASSIGN statement, assigned GOTO, and assigned format labels
! (see subclause 8.2.4 in Fortran 90 (*not* 2018!)
diff --git a/flang/test/Semantics/associated.f90 b/flang/test/Semantics/associated.f90
index e23cda56c97ed..294035dbaf28d 100644
--- a/flang/test/Semantics/associated.f90
+++ b/flang/test/Semantics/associated.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for the ASSOCIATED() and NULL() intrinsics
subroutine assoc()
diff --git a/flang/test/Semantics/bad-forward-type.f90 b/flang/test/Semantics/bad-forward-type.f90
index 71734cd840dff..875ef95a6dbf9 100644
--- a/flang/test/Semantics/bad-forward-type.f90
+++ b/flang/test/Semantics/bad-forward-type.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Forward references to derived types (error cases)
! C732 A parent-type-name shall be the name of a previously defined
! extensible type (7.5.7).
diff --git a/flang/test/Semantics/bind-c01.f90 b/flang/test/Semantics/bind-c01.f90
index f5a0e67eee394..36726ce7dd19d 100644
--- a/flang/test/Semantics/bind-c01.f90
+++ b/flang/test/Semantics/bind-c01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for multiple symbols being defined with with same BIND(C) name
module m1
diff --git a/flang/test/Semantics/bindings01.f90 b/flang/test/Semantics/bindings01.f90
index c4421b17ef406..fece75ab50c3c 100644
--- a/flang/test/Semantics/bindings01.f90
+++ b/flang/test/Semantics/bindings01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Confirm enforcement of constraints and restrictions in 7.5.7.3
! and C733, C734 and C779, C780, C782, C783, C784, and C785.
diff --git a/flang/test/Semantics/block-data01.f90 b/flang/test/Semantics/block-data01.f90
index 715d6703ae89b..0a775d35a8639 100644
--- a/flang/test/Semantics/block-data01.f90
+++ b/flang/test/Semantics/block-data01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test BLOCK DATA subprogram (14.3)
block data foo
!ERROR: IMPORT is not allowed in a BLOCK DATA subprogram
diff --git a/flang/test/Semantics/blockconstruct01.f90 b/flang/test/Semantics/blockconstruct01.f90
index cd07a413e64e1..a3759d2aea431 100644
--- a/flang/test/Semantics/blockconstruct01.f90
+++ b/flang/test/Semantics/blockconstruct01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1107 -- COMMON, EQUIVALENCE, INTENT, NAMELIST, OPTIONAL, VALUE or
! STATEMENT FUNCTIONS not allow in specification part
diff --git a/flang/test/Semantics/blockconstruct02.f90 b/flang/test/Semantics/blockconstruct02.f90
index 62f55576329d2..cffff31851448 100644
--- a/flang/test/Semantics/blockconstruct02.f90
+++ b/flang/test/Semantics/blockconstruct02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/blockconstruct03.f90 b/flang/test/Semantics/blockconstruct03.f90
index 14077f58451eb..84187508473b1 100644
--- a/flang/test/Semantics/blockconstruct03.f90
+++ b/flang/test/Semantics/blockconstruct03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests implemented for this standard:
! Block Construct
! C1109
diff --git a/flang/test/Semantics/boz-literal-constants.f90 b/flang/test/Semantics/boz-literal-constants.f90
index 766466a0bd7cc..1de7c06fb4e2f 100644
--- a/flang/test/Semantics/boz-literal-constants.f90
+++ b/flang/test/Semantics/boz-literal-constants.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Confirm enforcement of constraints and restrictions in 7.7
! C7107, C7108, C7109
diff --git a/flang/test/Semantics/c_f_pointer.f90 b/flang/test/Semantics/c_f_pointer.f90
index adf427e967c1e..2e7bc9050d174 100644
--- a/flang/test/Semantics/c_f_pointer.f90
+++ b/flang/test/Semantics/c_f_pointer.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Enforce 18.2.3.3
program test
diff --git a/flang/test/Semantics/call01.f90 b/flang/test/Semantics/call01.f90
index 02edfc4017f23..5d6efe839e060 100644
--- a/flang/test/Semantics/call01.f90
+++ b/flang/test/Semantics/call01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Confirm enforcement of constraints and restrictions in 15.6.2.1
non_recursive function f01(n) result(res)
diff --git a/flang/test/Semantics/call02.f90 b/flang/test/Semantics/call02.f90
index 96538d68fd039..2922f5a6168d6 100644
--- a/flang/test/Semantics/call02.f90
+++ b/flang/test/Semantics/call02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 15.5.1 procedure reference constraints and restrictions
subroutine s01(elem, subr)
diff --git a/flang/test/Semantics/call03.f90 b/flang/test/Semantics/call03.f90
index 23e8dc860e54b..db2e2360382e4 100644
--- a/flang/test/Semantics/call03.f90
+++ b/flang/test/Semantics/call03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.5.2.4 constraints and restrictions for non-POINTER non-ALLOCATABLE
! dummy arguments.
diff --git a/flang/test/Semantics/call04.f90 b/flang/test/Semantics/call04.f90
index 95eb0bc58984c..eb4f78f8f541f 100644
--- a/flang/test/Semantics/call04.f90
+++ b/flang/test/Semantics/call04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 8.5.10 & 8.5.18 constraints on dummy argument declarations
module m
diff --git a/flang/test/Semantics/call05.f90 b/flang/test/Semantics/call05.f90
index 90368df8c44c3..ad512197f9a79 100644
--- a/flang/test/Semantics/call05.f90
+++ b/flang/test/Semantics/call05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/call06.f90 b/flang/test/Semantics/call06.f90
index fc31903ad0433..5e2728f69a84a 100644
--- a/flang/test/Semantics/call06.f90
+++ b/flang/test/Semantics/call06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.5.2.6 constraints and restrictions for ALLOCATABLE
! dummy arguments.
diff --git a/flang/test/Semantics/call07.f90 b/flang/test/Semantics/call07.f90
index 996337f5359cf..444331fd17c4f 100644
--- a/flang/test/Semantics/call07.f90
+++ b/flang/test/Semantics/call07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.5.2.7 constraints and restrictions for POINTER dummy arguments.
module m
diff --git a/flang/test/Semantics/call08.f90 b/flang/test/Semantics/call08.f90
index 17396d4d3ba43..5da55d4e04b3e 100644
--- a/flang/test/Semantics/call08.f90
+++ b/flang/test/Semantics/call08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.5.2.8 coarray dummy arguments
module m
diff --git a/flang/test/Semantics/call09.f90 b/flang/test/Semantics/call09.f90
index 8280a82853fde..6ecf07ead581e 100644
--- a/flang/test/Semantics/call09.f90
+++ b/flang/test/Semantics/call09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.5.2.9(2,3,5) dummy procedure requirements
! C843
! An entity with the INTENT attribute shall be a dummy data object or a
diff --git a/flang/test/Semantics/call10.f90 b/flang/test/Semantics/call10.f90
index 5eb5f5ab3b1a9..7fa4a8075a0a3 100644
--- a/flang/test/Semantics/call10.f90
+++ b/flang/test/Semantics/call10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/call11.f90 b/flang/test/Semantics/call11.f90
index 55aefa6e760df..086537f3c6968 100644
--- a/flang/test/Semantics/call11.f90
+++ b/flang/test/Semantics/call11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.7 C1591 & others: contexts requiring pure subprograms
module m
diff --git a/flang/test/Semantics/call12.f90 b/flang/test/Semantics/call12.f90
index 813cc52064039..8838366021185 100644
--- a/flang/test/Semantics/call12.f90
+++ b/flang/test/Semantics/call12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.7 C1594 - prohibited assignments in pure subprograms
module used
diff --git a/flang/test/Semantics/call13.f90 b/flang/test/Semantics/call13.f90
index bb589b5b064c2..47786fa9f9cd6 100644
--- a/flang/test/Semantics/call13.f90
+++ b/flang/test/Semantics/call13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 15.4.2.2 constraints and restrictions for calls to implicit
! interfaces
diff --git a/flang/test/Semantics/call14.f90 b/flang/test/Semantics/call14.f90
index b9002048f0f5d..2bf5d53ec56da 100644
--- a/flang/test/Semantics/call14.f90
+++ b/flang/test/Semantics/call14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 8.5.18 constraints on the VALUE attribute
module m
diff --git a/flang/test/Semantics/call15.f90 b/flang/test/Semantics/call15.f90
index 9879f7336f449..c236ef060bf73 100644
--- a/flang/test/Semantics/call15.f90
+++ b/flang/test/Semantics/call15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/call16.f90 b/flang/test/Semantics/call16.f90
index 944e04cd7d83a..12cab97efcf07 100644
--- a/flang/test/Semantics/call16.f90
+++ b/flang/test/Semantics/call16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that intrinsic functions used as subroutines and vice versa are caught.
diff --git a/flang/test/Semantics/call18.f90 b/flang/test/Semantics/call18.f90
index 9bf7dc6057e7a..ae10ea9c94d94 100644
--- a/flang/test/Semantics/call18.f90
+++ b/flang/test/Semantics/call18.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that references to functions that return pointers can serve as
! "variables" in actual arguments. All of these uses are conforming and
! no errors should be reported.
diff --git a/flang/test/Semantics/case01.f90 b/flang/test/Semantics/case01.f90
index 05e27eb084e1a..e863b71d7332a 100644
--- a/flang/test/Semantics/case01.f90
+++ b/flang/test/Semantics/case01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test SELECT CASE Constraints: C1145, C1146, C1147, C1148, C1149
program selectCaseProg
implicit none
diff --git a/flang/test/Semantics/coarrays01.f90 b/flang/test/Semantics/coarrays01.f90
index 32c4592479d0d..b074c9b990703 100644
--- a/flang/test/Semantics/coarrays01.f90
+++ b/flang/test/Semantics/coarrays01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test selector and team-value in CHANGE TEAM statement
! OK
diff --git a/flang/test/Semantics/complex01.f90 b/flang/test/Semantics/complex01.f90
index 48c6830875fbc..cf7fd9cc2b1fb 100644
--- a/flang/test/Semantics/complex01.f90
+++ b/flang/test/Semantics/complex01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C718 Each named constant in a complex literal constant shall be of type
! integer or real.
subroutine s()
diff --git a/flang/test/Semantics/computed-goto01.f90 b/flang/test/Semantics/computed-goto01.f90
index e8ac2ff7e395b..321d6a1c5c7f7 100644
--- a/flang/test/Semantics/computed-goto01.f90
+++ b/flang/test/Semantics/computed-goto01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check that a basic computed goto compiles
INTEGER, DIMENSION (2) :: B
diff --git a/flang/test/Semantics/computed-goto02.f90 b/flang/test/Semantics/computed-goto02.f90
index 409281f60ab7e..a51e53663b22f 100644
--- a/flang/test/Semantics/computed-goto02.f90
+++ b/flang/test/Semantics/computed-goto02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/critical01.f90 b/flang/test/Semantics/critical01.f90
index 0caf051a77aef..90e8a6e78a875 100644
--- a/flang/test/Semantics/critical01.f90
+++ b/flang/test/Semantics/critical01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!C1117
subroutine test1(a, i)
diff --git a/flang/test/Semantics/critical02.f90 b/flang/test/Semantics/critical02.f90
index 0e18aecd9a829..f7822b7f15688 100644
--- a/flang/test/Semantics/critical02.f90
+++ b/flang/test/Semantics/critical02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!C1118
subroutine test1
diff --git a/flang/test/Semantics/critical03.f90 b/flang/test/Semantics/critical03.f90
index 852d2083f562c..0683a842d8315 100644
--- a/flang/test/Semantics/critical03.f90
+++ b/flang/test/Semantics/critical03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!C1119
subroutine test1(a, i)
diff --git a/flang/test/Semantics/data01.f90 b/flang/test/Semantics/data01.f90
index 7ea0139f36cee..635e7c53e2fdc 100644
--- a/flang/test/Semantics/data01.f90
+++ b/flang/test/Semantics/data01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Test for checking data constraints, C882-C887
module m1
type person
diff --git a/flang/test/Semantics/data02.f90 b/flang/test/Semantics/data02.f90
index 492006fe2f430..eb4d801f6972a 100644
--- a/flang/test/Semantics/data02.f90
+++ b/flang/test/Semantics/data02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check that expressions are analyzed in data statements
subroutine s1
diff --git a/flang/test/Semantics/data03.f90 b/flang/test/Semantics/data03.f90
index 5a5f9dcc163b3..e4ad9956ef86b 100644
--- a/flang/test/Semantics/data03.f90
+++ b/flang/test/Semantics/data03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Testing data constraints : C874 - C875, C878 - C881
module m
integer, target :: modarray(1)
diff --git a/flang/test/Semantics/data04.f90 b/flang/test/Semantics/data04.f90
index 7cfa5ac1f17c8..d69c8d384a38e 100644
--- a/flang/test/Semantics/data04.f90
+++ b/flang/test/Semantics/data04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Testing data constraints : C876, C877
module m
integer :: first
diff --git a/flang/test/Semantics/data06.f90 b/flang/test/Semantics/data06.f90
index 84d875ef9f019..953da87e97819 100644
--- a/flang/test/Semantics/data06.f90
+++ b/flang/test/Semantics/data06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! DATA statement errors
subroutine s1
type :: t1
diff --git a/flang/test/Semantics/data07.f90 b/flang/test/Semantics/data07.f90
index abf875387e7e4..0bf08a964fe34 100644
--- a/flang/test/Semantics/data07.f90
+++ b/flang/test/Semantics/data07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
contains
subroutine s1
diff --git a/flang/test/Semantics/data10.f90 b/flang/test/Semantics/data10.f90
index ab0e12fd13b32..af541fccdccc9 100644
--- a/flang/test/Semantics/data10.f90
+++ b/flang/test/Semantics/data10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
type :: t
integer :: n
end type
diff --git a/flang/test/Semantics/deallocate01.f90 b/flang/test/Semantics/deallocate01.f90
index 5e1af734e698c..95fe128e6cb87 100644
--- a/flang/test/Semantics/deallocate01.f90
+++ b/flang/test/Semantics/deallocate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that DEALLOCATE works
INTEGER, PARAMETER :: maxvalue=1024
diff --git a/flang/test/Semantics/deallocate04.f90 b/flang/test/Semantics/deallocate04.f90
index 8e26f61d3508e..43786dfa11bb7 100644
--- a/flang/test/Semantics/deallocate04.f90
+++ b/flang/test/Semantics/deallocate04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for type errors in DEALLOCATE statements
INTEGER, PARAMETER :: maxvalue=1024
diff --git a/flang/test/Semantics/deallocate05.f90 b/flang/test/Semantics/deallocate05.f90
index 418c6079a64ac..e065f07ab689a 100644
--- a/flang/test/Semantics/deallocate05.f90
+++ b/flang/test/Semantics/deallocate05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in DEALLOCATE statements
Module share
diff --git a/flang/test/Semantics/deallocate06.f90 b/flang/test/Semantics/deallocate06.f90
index 28d8d69210cd7..360091ea8de0d 100644
--- a/flang/test/Semantics/deallocate06.f90
+++ b/flang/test/Semantics/deallocate06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test deallocate of use- and host-associated variables
module m1
diff --git a/flang/test/Semantics/doconcurrent01.f90 b/flang/test/Semantics/doconcurrent01.f90
index ac4be8a6143b1..67294fc76a4db 100644
--- a/flang/test/Semantics/doconcurrent01.f90
+++ b/flang/test/Semantics/doconcurrent01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/doconcurrent05.f90 b/flang/test/Semantics/doconcurrent05.f90
index 4ee4ba2040bac..c8961abbcc71e 100644
--- a/flang/test/Semantics/doconcurrent05.f90
+++ b/flang/test/Semantics/doconcurrent05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/doconcurrent06.f90 b/flang/test/Semantics/doconcurrent06.f90
index e3a8b7a3f07b2..0a990a55e08bb 100644
--- a/flang/test/Semantics/doconcurrent06.f90
+++ b/flang/test/Semantics/doconcurrent06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/doconcurrent08.f90 b/flang/test/Semantics/doconcurrent08.f90
index 1d2e5e9e15839..214a93178324d 100644
--- a/flang/test/Semantics/doconcurrent08.f90
+++ b/flang/test/Semantics/doconcurrent08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/dosemantics01.f90 b/flang/test/Semantics/dosemantics01.f90
index f4da0c2f5ab48..ec5375ff549b0 100644
--- a/flang/test/Semantics/dosemantics01.f90
+++ b/flang/test/Semantics/dosemantics01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1131 -- check valid and invalid DO loop naming
PROGRAM C1131
diff --git a/flang/test/Semantics/dosemantics02.f90 b/flang/test/Semantics/dosemantics02.f90
index 7873f3597cb07..a4c0ce1f5fddb 100644
--- a/flang/test/Semantics/dosemantics02.f90
+++ b/flang/test/Semantics/dosemantics02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/dosemantics03.f90 b/flang/test/Semantics/dosemantics03.f90
index 51097f6a9be59..5aedfcbc41f2d 100644
--- a/flang/test/Semantics/dosemantics03.f90
+++ b/flang/test/Semantics/dosemantics03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -pedantic -Werror
+! REQUIRES: shell
! Issue 458 -- semantic checks for a normal DO loop. The DO variable
! and the initial, final, and step expressions must be INTEGER if the
diff --git a/flang/test/Semantics/dosemantics04.f90 b/flang/test/Semantics/dosemantics04.f90
index fb3af04243b23..6c3cdb8594fec 100644
--- a/flang/test/Semantics/dosemantics04.f90
+++ b/flang/test/Semantics/dosemantics04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1123 -- Expressions in DO CONCURRENT header cannot reference variables
! declared in the same header
PROGRAM dosemantics04
diff --git a/flang/test/Semantics/dosemantics05.f90 b/flang/test/Semantics/dosemantics05.f90
index 38af52ce07e52..ff1b23092cf91 100644
--- a/flang/test/Semantics/dosemantics05.f90
+++ b/flang/test/Semantics/dosemantics05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/dosemantics06.f90 b/flang/test/Semantics/dosemantics06.f90
index f315b0798bbd4..8059b4f9651b6 100644
--- a/flang/test/Semantics/dosemantics06.f90
+++ b/flang/test/Semantics/dosemantics06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/dosemantics07.f90 b/flang/test/Semantics/dosemantics07.f90
index 1c1ecb7665dcd..be1bb9f770524 100644
--- a/flang/test/Semantics/dosemantics07.f90
+++ b/flang/test/Semantics/dosemantics07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!C1132
! If the do-stmt is a nonlabel-do-stmt, the corresponding end-do shall be an
! end-do-stmt.
diff --git a/flang/test/Semantics/dosemantics08.f90 b/flang/test/Semantics/dosemantics08.f90
index 1ceee99d1ed86..005f65b82908d 100644
--- a/flang/test/Semantics/dosemantics08.f90
+++ b/flang/test/Semantics/dosemantics08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1138 --
! A branch (11.2) within a DO CONCURRENT construct shall not have a branch
! target that is outside the construct.
diff --git a/flang/test/Semantics/dosemantics09.f90 b/flang/test/Semantics/dosemantics09.f90
index 933e8b19265a2..4f2c5bf180400 100644
--- a/flang/test/Semantics/dosemantics09.f90
+++ b/flang/test/Semantics/dosemantics09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!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/flang/test/Semantics/dosemantics10.f90 b/flang/test/Semantics/dosemantics10.f90
index 5ba1bb58ee561..a17f82723b6db 100644
--- a/flang/test/Semantics/dosemantics10.f90
+++ b/flang/test/Semantics/dosemantics10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1134 A CYCLE statement must be within a DO construct
!
! C1166 An EXIT statement must be within a DO construct
diff --git a/flang/test/Semantics/dosemantics11.f90 b/flang/test/Semantics/dosemantics11.f90
index 4d241498f7223..e6ab9ebf3f1a3 100644
--- a/flang/test/Semantics/dosemantics11.f90
+++ b/flang/test/Semantics/dosemantics11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/dosemantics12.f90 b/flang/test/Semantics/dosemantics12.f90
index ed516975f26ca..40bb23126f3da 100644
--- a/flang/test/Semantics/dosemantics12.f90
+++ b/flang/test/Semantics/dosemantics12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved.
!
! Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/flang/test/Semantics/entry01.f90 b/flang/test/Semantics/entry01.f90
index 3ef5433c71cac..5189389f0f944 100644
--- a/flang/test/Semantics/entry01.f90
+++ b/flang/test/Semantics/entry01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests valid and invalid ENTRY statements
module m1
diff --git a/flang/test/Semantics/equivalence01.f90 b/flang/test/Semantics/equivalence01.f90
index 5508e02e55134..bab563d7f007c 100644
--- a/flang/test/Semantics/equivalence01.f90
+++ b/flang/test/Semantics/equivalence01.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
integer i, j
real r(2)
diff --git a/flang/test/Semantics/expr-errors01.f90 b/flang/test/Semantics/expr-errors01.f90
index f34a1c725dee0..31aa92c26c52f 100644
--- a/flang/test/Semantics/expr-errors01.f90
+++ b/flang/test/Semantics/expr-errors01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1003 - can't parenthesize function call returning procedure pointer
module m1
type :: dt
diff --git a/flang/test/Semantics/expr-errors02.f90 b/flang/test/Semantics/expr-errors02.f90
index 6c838fdb33015..0008765886810 100644
--- a/flang/test/Semantics/expr-errors02.f90
+++ b/flang/test/Semantics/expr-errors02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test specification expressions
module m
diff --git a/flang/test/Semantics/expr-errors03.f90 b/flang/test/Semantics/expr-errors03.f90
index 55ebf26febb07..6db03a4cbeaaa 100644
--- a/flang/test/Semantics/expr-errors03.f90
+++ b/flang/test/Semantics/expr-errors03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Regression test for subscript error recovery
module m
implicit none
diff --git a/flang/test/Semantics/final01.f90 b/flang/test/Semantics/final01.f90
index bde9bcbf00d0f..71d031af37a00 100644
--- a/flang/test/Semantics/final01.f90
+++ b/flang/test/Semantics/final01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test FINAL subroutine constraints C786-C789
module m1
external :: external
diff --git a/flang/test/Semantics/forall01.f90 b/flang/test/Semantics/forall01.f90
index 59d69cf04486a..97db40850c030 100644
--- a/flang/test/Semantics/forall01.f90
+++ b/flang/test/Semantics/forall01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine forall1
real :: a(9)
!ERROR: 'i' is already declared in this scoping unit
diff --git a/flang/test/Semantics/if_arith01.f90 b/flang/test/Semantics/if_arith01.f90
index 6206f4e554111..b7b039915606d 100644
--- a/flang/test/Semantics/if_arith01.f90
+++ b/flang/test/Semantics/if_arith01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check that a basic arithmetic if compiles.
if ( A ) 100, 200, 300
diff --git a/flang/test/Semantics/if_arith02.f90 b/flang/test/Semantics/if_arith02.f90
index 20f447a8961c4..95af99978dc5f 100644
--- a/flang/test/Semantics/if_arith02.f90
+++ b/flang/test/Semantics/if_arith02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/if_arith03.f90 b/flang/test/Semantics/if_arith03.f90
index 4da057ea560ea..7b55e38df253b 100644
--- a/flang/test/Semantics/if_arith03.f90
+++ b/flang/test/Semantics/if_arith03.f90
@@ -1,5 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
-
+! REQUIRES: shell
!ERROR: Label '600' was not found
if ( A ) 100, 200, 600
diff --git a/flang/test/Semantics/if_arith04.f90 b/flang/test/Semantics/if_arith04.f90
index 5065713f42581..067031af9c44a 100644
--- a/flang/test/Semantics/if_arith04.f90
+++ b/flang/test/Semantics/if_arith04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Make sure arithmetic if expressions are non-complex numeric exprs.
INTEGER I
diff --git a/flang/test/Semantics/if_construct01.f90 b/flang/test/Semantics/if_construct01.f90
index 450cd6715442b..9fb1344ff259d 100644
--- a/flang/test/Semantics/if_construct01.f90
+++ b/flang/test/Semantics/if_construct01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Simple check that if constructs are ok.
if (a < b) then
diff --git a/flang/test/Semantics/if_construct02.f90 b/flang/test/Semantics/if_construct02.f90
index a1cf683380eb2..03fd433f75f7f 100644
--- a/flang/test/Semantics/if_construct02.f90
+++ b/flang/test/Semantics/if_construct02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check that if constructs only accept scalar logical expressions.
! TODO: expand the test to check this restriction for more types.
diff --git a/flang/test/Semantics/if_stmt01.f90 b/flang/test/Semantics/if_stmt01.f90
index 07c2878dc9cb6..64d0b41cea549 100644
--- a/flang/test/Semantics/if_stmt01.f90
+++ b/flang/test/Semantics/if_stmt01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Simple check that if statements are ok.
IF (A > 0.0) A = LOG (A)
diff --git a/flang/test/Semantics/if_stmt02.f90 b/flang/test/Semantics/if_stmt02.f90
index 848210988e090..cb9abe58d1c63 100644
--- a/flang/test/Semantics/if_stmt02.f90
+++ b/flang/test/Semantics/if_stmt02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!ERROR: IF statement is not allowed in IF statement
IF (A > 0.0) IF (B < 0.0) A = LOG (A)
END
diff --git a/flang/test/Semantics/if_stmt03.f90 b/flang/test/Semantics/if_stmt03.f90
index acd67a9036ff7..3d012477389ec 100644
--- a/flang/test/Semantics/if_stmt03.f90
+++ b/flang/test/Semantics/if_stmt03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/implicit01.f90 b/flang/test/Semantics/implicit01.f90
index 3c848b8ea2b61..2ed9e71437c1d 100644
--- a/flang/test/Semantics/implicit01.f90
+++ b/flang/test/Semantics/implicit01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
implicit none
!ERROR: More than one IMPLICIT NONE statement
diff --git a/flang/test/Semantics/implicit02.f90 b/flang/test/Semantics/implicit02.f90
index 168d77907ef4b..a5f2df1309860 100644
--- a/flang/test/Semantics/implicit02.f90
+++ b/flang/test/Semantics/implicit02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
implicit none
!ERROR: IMPLICIT statement after IMPLICIT NONE or IMPLICIT NONE(TYPE) statement
diff --git a/flang/test/Semantics/implicit03.f90 b/flang/test/Semantics/implicit03.f90
index 91e60b61d1d53..0f2aa6ad2de3d 100644
--- a/flang/test/Semantics/implicit03.f90
+++ b/flang/test/Semantics/implicit03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
implicit integer(a-z)
!ERROR: IMPLICIT NONE statement after IMPLICIT statement
diff --git a/flang/test/Semantics/implicit04.f90 b/flang/test/Semantics/implicit04.f90
index 3fb20b22f13d7..fcc438786b5f1 100644
--- a/flang/test/Semantics/implicit04.f90
+++ b/flang/test/Semantics/implicit04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s
parameter(a=1.0)
!ERROR: IMPLICIT NONE statement after PARAMETER statement
diff --git a/flang/test/Semantics/implicit05.f90 b/flang/test/Semantics/implicit05.f90
index eaa7116eed2a7..e5b52812f43ab 100644
--- a/flang/test/Semantics/implicit05.f90
+++ b/flang/test/Semantics/implicit05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s
!ERROR: 'a' does not follow 'b' alphabetically
implicit integer(b-a)
diff --git a/flang/test/Semantics/implicit06.f90 b/flang/test/Semantics/implicit06.f90
index 64053afd656fe..11a2e82638d75 100644
--- a/flang/test/Semantics/implicit06.f90
+++ b/flang/test/Semantics/implicit06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
implicit integer(a-c)
!ERROR: More than one implicit type specified for 'c'
diff --git a/flang/test/Semantics/implicit07.f90 b/flang/test/Semantics/implicit07.f90
index 2eb491eb83460..4a6eadbbf3df1 100644
--- a/flang/test/Semantics/implicit07.f90
+++ b/flang/test/Semantics/implicit07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
implicit none(external)
external x
integer :: f, i
diff --git a/flang/test/Semantics/implicit08.f90 b/flang/test/Semantics/implicit08.f90
index ba75db8645e2c..a4984132d565f 100644
--- a/flang/test/Semantics/implicit08.f90
+++ b/flang/test/Semantics/implicit08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
block
!ERROR: IMPLICIT statement is not allowed in a BLOCK construct
diff --git a/flang/test/Semantics/implicit09.f90 b/flang/test/Semantics/implicit09.f90
index 21bb9ace797cf..bda24f6f81b0a 100644
--- a/flang/test/Semantics/implicit09.f90
+++ b/flang/test/Semantics/implicit09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fimplicit-none-type-never
+! REQUIRES: shell
subroutine s1
implicit none
i = j + k ! would be error without -fimplicit-none-type-never
diff --git a/flang/test/Semantics/implicit10.f90 b/flang/test/Semantics/implicit10.f90
index 84edfb3cf9667..c1ef7b1f83a69 100644
--- a/flang/test/Semantics/implicit10.f90
+++ b/flang/test/Semantics/implicit10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fimplicit-none
+! REQUIRES: shell
!ERROR: No explicit type declared for 'f'
function f()
diff --git a/flang/test/Semantics/implicit11.f90 b/flang/test/Semantics/implicit11.f90
index 9598db972c018..0a52e1ac9d26f 100644
--- a/flang/test/Semantics/implicit11.f90
+++ b/flang/test/Semantics/implicit11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test use of implicitly declared variable in specification expression
diff --git a/flang/test/Semantics/init01.f90 b/flang/test/Semantics/init01.f90
index 8e99c491970e2..89b2c41a99c0b 100644
--- a/flang/test/Semantics/init01.f90
+++ b/flang/test/Semantics/init01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Initializer error tests
subroutine objectpointers(j)
diff --git a/flang/test/Semantics/int-literals.f90 b/flang/test/Semantics/int-literals.f90
index a0951acefeda7..09d0914f1eef1 100644
--- a/flang/test/Semantics/int-literals.f90
+++ b/flang/test/Semantics/int-literals.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/io01.f90 b/flang/test/Semantics/io01.f90
index e5a0b23a97ef0..14cdd1c980c53 100644
--- a/flang/test/Semantics/io01.f90
+++ b/flang/test/Semantics/io01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
character(len=20) :: access = "direcT"
character(len=20) :: access_(2) = (/"direcT", "streaM"/)
character(len=20) :: action_(2) = (/"reaD ", "writE"/)
diff --git a/flang/test/Semantics/io02.f90 b/flang/test/Semantics/io02.f90
index f818a74f240a1..3ff06cc15a8a3 100644
--- a/flang/test/Semantics/io02.f90
+++ b/flang/test/Semantics/io02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
integer :: unit10 = 10
integer :: unit11 = 11
integer, parameter :: const_stat = 6666
diff --git a/flang/test/Semantics/io03.f90 b/flang/test/Semantics/io03.f90
index a2071e3192974..69f591493ac7f 100644
--- a/flang/test/Semantics/io03.f90
+++ b/flang/test/Semantics/io03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
character(kind=1,len=50) internal_file
character(kind=2,len=50) internal_file2
character(kind=4,len=50) internal_file4
diff --git a/flang/test/Semantics/io04.f90 b/flang/test/Semantics/io04.f90
index 67feda835186f..e7baa54c0c117 100644
--- a/flang/test/Semantics/io04.f90
+++ b/flang/test/Semantics/io04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
character(kind=1,len=50) internal_file
character(kind=1,len=100) msg
character(20) sign
diff --git a/flang/test/Semantics/io05.f90 b/flang/test/Semantics/io05.f90
index 9a7885330a1d6..ad80f93ec0161 100644
--- a/flang/test/Semantics/io05.f90
+++ b/flang/test/Semantics/io05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
character*20 c(25), cv
character(kind=1,len=59) msg
character, parameter :: const_round = "c'est quoi?"
diff --git a/flang/test/Semantics/io06.f90 b/flang/test/Semantics/io06.f90
index be073191e7d70..e9068630e08e3 100644
--- a/flang/test/Semantics/io06.f90
+++ b/flang/test/Semantics/io06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
character(kind=1,len=100) msg1
character(kind=2,len=200) msg2
character, parameter :: const_msg = 'doof'
diff --git a/flang/test/Semantics/io07.f90 b/flang/test/Semantics/io07.f90
index fbb54ffd38101..121eff8ae9c81 100644
--- a/flang/test/Semantics/io07.f90
+++ b/flang/test/Semantics/io07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
1001 format(A)
!ERROR: Format statement must be labeled
diff --git a/flang/test/Semantics/io08.f90 b/flang/test/Semantics/io08.f90
index 7496f32b1447a..7c9f924e26f96 100644
--- a/flang/test/Semantics/io08.f90
+++ b/flang/test/Semantics/io08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
write(*,*)
write(*,'()')
write(*,'(A)')
diff --git a/flang/test/Semantics/io09.f90 b/flang/test/Semantics/io09.f90
index 6b331776e88d3..c9b1948ad79b2 100644
--- a/flang/test/Semantics/io09.f90
+++ b/flang/test/Semantics/io09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!ERROR: String edit descriptor in READ format expression
read(*,'("abc")')
diff --git a/flang/test/Semantics/io10.f90 b/flang/test/Semantics/io10.f90
index e037b6ebdf3e7..6322073b94ea8 100644
--- a/flang/test/Semantics/io10.f90
+++ b/flang/test/Semantics/io10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -pedantic
+! REQUIRES: shell
write(*, '(B0)')
write(*, '(B3)')
diff --git a/flang/test/Semantics/io11.f90 b/flang/test/Semantics/io11.f90
index a20b51fdcb39f..4de8b52bdebbc 100644
--- a/flang/test/Semantics/io11.f90
+++ b/flang/test/Semantics/io11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for defined input/output. See 12.6.4.8 and 15.4.3.2, and C777
module m1
diff --git a/flang/test/Semantics/kinds01.f90 b/flang/test/Semantics/kinds01.f90
index 89a69cf503035..ef6edfb683195 100644
--- a/flang/test/Semantics/kinds01.f90
+++ b/flang/test/Semantics/kinds01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /MainProgram1/jk1 ObjectEntity INTEGER(1)
integer(kind=1) jk1
!DEF: /MainProgram1/js1 ObjectEntity INTEGER(1)
diff --git a/flang/test/Semantics/kinds02.f90 b/flang/test/Semantics/kinds02.f90
index e5f930025a72d..46cd6ebcc2911 100644
--- a/flang/test/Semantics/kinds02.f90
+++ b/flang/test/Semantics/kinds02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/kinds03.f90 b/flang/test/Semantics/kinds03.f90
index 9554e8757781f..cd81b28ab2381 100644
--- a/flang/test/Semantics/kinds03.f90
+++ b/flang/test/Semantics/kinds03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /MainProgram1/ipdt DerivedType
!DEF: /MainProgram1/ipdt/k TypeParam INTEGER(4)
type :: ipdt(k)
diff --git a/flang/test/Semantics/kinds04.f90 b/flang/test/Semantics/kinds04.f90
index e87ec671a690d..f03126d98b0a7 100644
--- a/flang/test/Semantics/kinds04.f90
+++ b/flang/test/Semantics/kinds04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/label11.f90 b/flang/test/Semantics/label11.f90
index c1902f31765b7..6c45edc251f2d 100644
--- a/flang/test/Semantics/label11.f90
+++ b/flang/test/Semantics/label11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C739 If END TYPE is followed by a type-name, the type-name shall be the
! same as that in the corresponding derived-type-stmt.
! C1401 The program-name shall not be included in the end-program-stmt unless
diff --git a/flang/test/Semantics/label16.f90 b/flang/test/Semantics/label16.f90
index 71afeee56ac82..f6cb3d49f38f9 100644
--- a/flang/test/Semantics/label16.f90
+++ b/flang/test/Semantics/label16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine x(n)
call x1(n)
diff --git a/flang/test/Semantics/misc-declarations.f90 b/flang/test/Semantics/misc-declarations.f90
index 564e211b09f7e..081a497afa0a8 100644
--- a/flang/test/Semantics/misc-declarations.f90
+++ b/flang/test/Semantics/misc-declarations.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/missing_newline.f90 b/flang/test/Semantics/missing_newline.f90
index bca90652112d3..7261ac824bedb 100644
--- a/flang/test/Semantics/missing_newline.f90
+++ b/flang/test/Semantics/missing_newline.f90
@@ -2,3 +2,4 @@
! RUN: %flang_fc1 -fsyntax-only %t.f90
! RUN: echo -ne "\rend program" > %t.f90
! RUN: %flang_fc1 -fsyntax-only %t.f90
+! REQUIRES: shell
diff --git a/flang/test/Semantics/modfile01.f90 b/flang/test/Semantics/modfile01.f90
index dc1ecbc069476..6316399477d03 100644
--- a/flang/test/Semantics/modfile01.f90
+++ b/flang/test/Semantics/modfile01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check correct modfile generation for type with private component.
module m
integer :: i
diff --git a/flang/test/Semantics/modfile02.f90 b/flang/test/Semantics/modfile02.f90
index 8532370f1f6aa..b48f7e28d7902 100644
--- a/flang/test/Semantics/modfile02.f90
+++ b/flang/test/Semantics/modfile02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile generation for private type in public API.
module m
diff --git a/flang/test/Semantics/modfile03.f90 b/flang/test/Semantics/modfile03.f90
index c602e9d9532c9..0d15e09087b1d 100644
--- a/flang/test/Semantics/modfile03.f90
+++ b/flang/test/Semantics/modfile03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile generation with use-association.
module m1
diff --git a/flang/test/Semantics/modfile04.f90 b/flang/test/Semantics/modfile04.f90
index 72858c9745608..8cd60978b750f 100644
--- a/flang/test/Semantics/modfile04.f90
+++ b/flang/test/Semantics/modfile04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! modfile with subprograms
module m1
diff --git a/flang/test/Semantics/modfile05.f90 b/flang/test/Semantics/modfile05.f90
index d3fff34df450c..da81866d4f597 100644
--- a/flang/test/Semantics/modfile05.f90
+++ b/flang/test/Semantics/modfile05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Use-association with VOLATILE or ASYNCHRONOUS
module m1
diff --git a/flang/test/Semantics/modfile06.f90 b/flang/test/Semantics/modfile06.f90
index 0f47d6877cf2b..8a3373afc41cd 100644
--- a/flang/test/Semantics/modfile06.f90
+++ b/flang/test/Semantics/modfile06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile generation for external interface
module m
interface
diff --git a/flang/test/Semantics/modfile07.f90 b/flang/test/Semantics/modfile07.f90
index df5b4b820344e..c1100f04f80bb 100644
--- a/flang/test/Semantics/modfile07.f90
+++ b/flang/test/Semantics/modfile07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile generation for generic interfaces
module m1
interface foo
diff --git a/flang/test/Semantics/modfile08.f90 b/flang/test/Semantics/modfile08.f90
index 3fa3be04413bb..d5bd3a20225a9 100644
--- a/flang/test/Semantics/modfile08.f90
+++ b/flang/test/Semantics/modfile08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile generation for external declarations
module m
real, external :: a
diff --git a/flang/test/Semantics/modfile09.f90 b/flang/test/Semantics/modfile09.f90
index eb8ea3de9c875..b0893c4c32a27 100644
--- a/flang/test/Semantics/modfile09.f90
+++ b/flang/test/Semantics/modfile09.f90
@@ -1 +1,2 @@
!RUN: %S/test_modfile.sh '%S/Inputs/modfile09-*' %t %flang_fc1
+!REQUIRES: shell
diff --git a/flang/test/Semantics/modfile10.f90 b/flang/test/Semantics/modfile10.f90
index d5eb7eee07e96..857b9c96d8857 100644
--- a/flang/test/Semantics/modfile10.f90
+++ b/flang/test/Semantics/modfile10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test writing procedure bindings in a derived type.
module m
diff --git a/flang/test/Semantics/modfile11.f90 b/flang/test/Semantics/modfile11.f90
index e347a1620eea0..ecb49e0e38107 100644
--- a/flang/test/Semantics/modfile11.f90
+++ b/flang/test/Semantics/modfile11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
type t1(a, b, c)
integer, kind :: a
diff --git a/flang/test/Semantics/modfile12.f90 b/flang/test/Semantics/modfile12.f90
index 6171e893ca27b..1a662c6e4da4d 100644
--- a/flang/test/Semantics/modfile12.f90
+++ b/flang/test/Semantics/modfile12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
integer(8), parameter :: a = 1, b = 2_8
parameter(n=3,l=-3,e=1.0/3.0)
diff --git a/flang/test/Semantics/modfile13.f90 b/flang/test/Semantics/modfile13.f90
index f3882ce1004da..0d0de2370b11d 100644
--- a/flang/test/Semantics/modfile13.f90
+++ b/flang/test/Semantics/modfile13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
character(2) :: z
character(len=3) :: y
diff --git a/flang/test/Semantics/modfile14.f90 b/flang/test/Semantics/modfile14.f90
index 0f8c375a0f379..87c07eab36a1e 100644
--- a/flang/test/Semantics/modfile14.f90
+++ b/flang/test/Semantics/modfile14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
type t1
contains
diff --git a/flang/test/Semantics/modfile15.f90 b/flang/test/Semantics/modfile15.f90
index 1ea58f0810983..fdf0e55f855de 100644
--- a/flang/test/Semantics/modfile15.f90
+++ b/flang/test/Semantics/modfile15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
type :: t
procedure(a), pointer, pass :: c
diff --git a/flang/test/Semantics/modfile16.f90 b/flang/test/Semantics/modfile16.f90
index 8b51f1bf407ee..8acb8a6a7b73b 100644
--- a/flang/test/Semantics/modfile16.f90
+++ b/flang/test/Semantics/modfile16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
character(2), parameter :: prefix = 'c_'
integer, bind(c, name='c_a') :: a
diff --git a/flang/test/Semantics/modfile17.f90 b/flang/test/Semantics/modfile17.f90
index 1cae92f632202..c15765e8aa01a 100644
--- a/flang/test/Semantics/modfile17.f90
+++ b/flang/test/Semantics/modfile17.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests parameterized derived type instantiation with KIND parameters
module m
diff --git a/flang/test/Semantics/modfile18.f90 b/flang/test/Semantics/modfile18.f90
index c85f47841f4cd..0fcb90d260a13 100644
--- a/flang/test/Semantics/modfile18.f90
+++ b/flang/test/Semantics/modfile18.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests folding of array constructors
module m
diff --git a/flang/test/Semantics/modfile19.f90 b/flang/test/Semantics/modfile19.f90
index 41185ac5f4247..6507b34808fe3 100644
--- a/flang/test/Semantics/modfile19.f90
+++ b/flang/test/Semantics/modfile19.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
implicit complex(8)(z)
real :: x
diff --git a/flang/test/Semantics/modfile20.f90 b/flang/test/Semantics/modfile20.f90
index 44ac419330d18..127618a13819e 100644
--- a/flang/test/Semantics/modfile20.f90
+++ b/flang/test/Semantics/modfile20.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test modfiles for entities with initialization
module m
integer, parameter :: k8 = 8
diff --git a/flang/test/Semantics/modfile21.f90 b/flang/test/Semantics/modfile21.f90
index 87fdc9b831daa..886f5bd945a05 100644
--- a/flang/test/Semantics/modfile21.f90
+++ b/flang/test/Semantics/modfile21.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
logical b
bind(C) :: /cb2/
diff --git a/flang/test/Semantics/modfile22.f90 b/flang/test/Semantics/modfile22.f90
index 5b76445e6dda6..73efdb65afa3b 100644
--- a/flang/test/Semantics/modfile22.f90
+++ b/flang/test/Semantics/modfile22.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test character length conversions in constructors
module m
diff --git a/flang/test/Semantics/modfile23.f90 b/flang/test/Semantics/modfile23.f90
index 25ca61eca234c..46cec24a77f3f 100644
--- a/flang/test/Semantics/modfile23.f90
+++ b/flang/test/Semantics/modfile23.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that subprogram interfaces get all of the symbols that they need.
module m1
diff --git a/flang/test/Semantics/modfile24.f90 b/flang/test/Semantics/modfile24.f90
index f51f3d8775d2e..46b1ced84c8af 100644
--- a/flang/test/Semantics/modfile24.f90
+++ b/flang/test/Semantics/modfile24.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test declarations with coarray-spec
! Different ways of declaring the same coarray.
diff --git a/flang/test/Semantics/modfile25.f90 b/flang/test/Semantics/modfile25.f90
index 6f8c156cb9d5a..f17fd22d78d2d 100644
--- a/flang/test/Semantics/modfile25.f90
+++ b/flang/test/Semantics/modfile25.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test compile-time analysis of shapes.
module m1
diff --git a/flang/test/Semantics/modfile26.f90 b/flang/test/Semantics/modfile26.f90
index 196c3565190de..28eeeb8d49cd6 100644
--- a/flang/test/Semantics/modfile26.f90
+++ b/flang/test/Semantics/modfile26.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Intrinsics SELECTED_INT_KIND, SELECTED_REAL_KIND, PRECISION, RANGE,
! RADIX, DIGITS
diff --git a/flang/test/Semantics/modfile27.f90 b/flang/test/Semantics/modfile27.f90
index 87a3e4a3b0347..db3adc1b34e1a 100644
--- a/flang/test/Semantics/modfile27.f90
+++ b/flang/test/Semantics/modfile27.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test folding of combined array references and structure component
! references.
diff --git a/flang/test/Semantics/modfile28.f90 b/flang/test/Semantics/modfile28.f90
index 59c0b8748c79b..aa6eb36c6adb8 100644
--- a/flang/test/Semantics/modfile28.f90
+++ b/flang/test/Semantics/modfile28.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test UTF-8 support in character literals
! Note: Module files are encoded in UTF-8.
diff --git a/flang/test/Semantics/modfile29.f90 b/flang/test/Semantics/modfile29.f90
index e0898759ee6df..c7d8038500dfe 100644
--- a/flang/test/Semantics/modfile29.f90
+++ b/flang/test/Semantics/modfile29.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check that implicitly typed entities get a type in the module file.
module m
diff --git a/flang/test/Semantics/modfile30.f90 b/flang/test/Semantics/modfile30.f90
index 97161f44340da..8681f356087f2 100644
--- a/flang/test/Semantics/modfile30.f90
+++ b/flang/test/Semantics/modfile30.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Verify miscellaneous bugs
! The function result must be declared after the dummy arguments
diff --git a/flang/test/Semantics/modfile31.f90 b/flang/test/Semantics/modfile31.f90
index 3dca7ad94899a..f37f2ffbc95bf 100644
--- a/flang/test/Semantics/modfile31.f90
+++ b/flang/test/Semantics/modfile31.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test 7.6 enum values
module m1
diff --git a/flang/test/Semantics/modfile32.f90 b/flang/test/Semantics/modfile32.f90
index b2013bc5205e9..9586b91bd363c 100644
--- a/flang/test/Semantics/modfile32.f90
+++ b/flang/test/Semantics/modfile32.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/modfile33.f90 b/flang/test/Semantics/modfile33.f90
index 5925778d51753..69145ce0f0c41 100644
--- a/flang/test/Semantics/modfile33.f90
+++ b/flang/test/Semantics/modfile33.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1 -flogical-abbreviations -fxor-operator
+! REQUIRES: shell
! Resolution of user-defined operators in expressions.
! Test by using generic function in a specification expression that needs
diff --git a/flang/test/Semantics/modfile34.f90 b/flang/test/Semantics/modfile34.f90
index 717c135e4da8a..b035662a93d23 100644
--- a/flang/test/Semantics/modfile34.f90
+++ b/flang/test/Semantics/modfile34.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test resolution of type-bound generics.
module m1
diff --git a/flang/test/Semantics/modfile35.f90 b/flang/test/Semantics/modfile35.f90
index 89a7acf06c62b..207eee002a65f 100644
--- a/flang/test/Semantics/modfile35.f90
+++ b/flang/test/Semantics/modfile35.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
type :: t1
contains
diff --git a/flang/test/Semantics/modfile36.f90 b/flang/test/Semantics/modfile36.f90
index 86d134943ffe7..c4dd89b64a062 100644
--- a/flang/test/Semantics/modfile36.f90
+++ b/flang/test/Semantics/modfile36.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check modfile that contains import of use-assocation of another use-association.
diff --git a/flang/test/Semantics/modfile37.f90 b/flang/test/Semantics/modfile37.f90
index 22742532ad5e5..6da1ab9f4ac58 100644
--- a/flang/test/Semantics/modfile37.f90
+++ b/flang/test/Semantics/modfile37.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that a dummy procedure's interface's imports
! appear in the module file.
diff --git a/flang/test/Semantics/modfile38.f90 b/flang/test/Semantics/modfile38.f90
index dde0ea97a5759..d40074360f6e7 100644
--- a/flang/test/Semantics/modfile38.f90
+++ b/flang/test/Semantics/modfile38.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that an interface with the same name as a derived type
! does not cause that shadowed name to be emitted later than its
diff --git a/flang/test/Semantics/modfile39.f90 b/flang/test/Semantics/modfile39.f90
index 6489cc843754e..9638ec535e535 100644
--- a/flang/test/Semantics/modfile39.f90
+++ b/flang/test/Semantics/modfile39.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Resolution of specification expression references to generic interfaces
! that resolve to private specific functions.
diff --git a/flang/test/Semantics/modfile40.f90 b/flang/test/Semantics/modfile40.f90
index a4825ffed1fb1..6f3a4dcf85962 100644
--- a/flang/test/Semantics/modfile40.f90
+++ b/flang/test/Semantics/modfile40.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_modfile.sh %s %t %flang_fc1
+! REQUIRES: shell
! Ensure that intrinsics in module files retain their 'private' attribute,
! if they are private.
diff --git a/flang/test/Semantics/namelist01.f90 b/flang/test/Semantics/namelist01.f90
index a3f0683bb5491..d52e5dbd62d66 100644
--- a/flang/test/Semantics/namelist01.f90
+++ b/flang/test/Semantics/namelist01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test for checking namelist constraints, C8103-C8105
module dup
diff --git a/flang/test/Semantics/null-init.f90 b/flang/test/Semantics/null-init.f90
index 46bb04c380b78..d5ed4d12f8094 100644
--- a/flang/test/Semantics/null-init.f90
+++ b/flang/test/Semantics/null-init.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests valid and invalid NULL initializers
module m1
diff --git a/flang/test/Semantics/null01.f90 b/flang/test/Semantics/null01.f90
index 7c2af0b288ce4..65af2d91a988a 100644
--- a/flang/test/Semantics/null01.f90
+++ b/flang/test/Semantics/null01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! NULL() intrinsic function error tests
subroutine test
diff --git a/flang/test/Semantics/nullify01.f90 b/flang/test/Semantics/nullify01.f90
index 0940410a1c9aa..3fdf5d4fead0a 100644
--- a/flang/test/Semantics/nullify01.f90
+++ b/flang/test/Semantics/nullify01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that NULLIFY works
Module share
diff --git a/flang/test/Semantics/nullify02.f90 b/flang/test/Semantics/nullify02.f90
index 9700e3f05faec..bccc1740cebc3 100644
--- a/flang/test/Semantics/nullify02.f90
+++ b/flang/test/Semantics/nullify02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in NULLIFY statements
INTEGER, PARAMETER :: maxvalue=1024
diff --git a/flang/test/Semantics/num_images.f90 b/flang/test/Semantics/num_images.f90
index 260d819b7807a..f77fc83f714f0 100644
--- a/flang/test/Semantics/num_images.f90
+++ b/flang/test/Semantics/num_images.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check for semantic errors in num_images() function calls
subroutine test
diff --git a/flang/test/Semantics/omp-allocate-directive.f90 b/flang/test/Semantics/omp-allocate-directive.f90
index 5904188e34e95..4eb1669a35e88 100644
--- a/flang/test/Semantics/omp-allocate-directive.f90
+++ b/flang/test/Semantics/omp-allocate-directive.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! Check OpenMP Allocate directive
use omp_lib
diff --git a/flang/test/Semantics/omp-allocate01.f90 b/flang/test/Semantics/omp-allocate01.f90
index 6531879c67411..73d37013c2e92 100644
--- a/flang/test/Semantics/omp-allocate01.f90
+++ b/flang/test/Semantics/omp-allocate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! The allocate directive must appear in the same scope as the declarations of
diff --git a/flang/test/Semantics/omp-allocate02.f90 b/flang/test/Semantics/omp-allocate02.f90
index 0e3120698dcc4..1abc7b5781861 100644
--- a/flang/test/Semantics/omp-allocate02.f90
+++ b/flang/test/Semantics/omp-allocate02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! At most one allocator clause can appear on the allocate directive.
diff --git a/flang/test/Semantics/omp-allocate03.f90 b/flang/test/Semantics/omp-allocate03.f90
index 4b423876d0fd6..8d3c0cca494a7 100644
--- a/flang/test/Semantics/omp-allocate03.f90
+++ b/flang/test/Semantics/omp-allocate03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! A variable that is part of another variable (as an array or
diff --git a/flang/test/Semantics/omp-allocate04.f90 b/flang/test/Semantics/omp-allocate04.f90
index cf0c5be604dd1..9f5e0caaaf041 100644
--- a/flang/test/Semantics/omp-allocate04.f90
+++ b/flang/test/Semantics/omp-allocate04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! Only the allocator clause is allowed on the allocate directive
diff --git a/flang/test/Semantics/omp-allocate05.f90 b/flang/test/Semantics/omp-allocate05.f90
index 1d493ba051305..f128358ab39af 100644
--- a/flang/test/Semantics/omp-allocate05.f90
+++ b/flang/test/Semantics/omp-allocate05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! allocate directives that appear in a target region must specify an allocator
diff --git a/flang/test/Semantics/omp-allocate06.f90 b/flang/test/Semantics/omp-allocate06.f90
index a6f8d6633d791..aa75d47b9acf8 100644
--- a/flang/test/Semantics/omp-allocate06.f90
+++ b/flang/test/Semantics/omp-allocate06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! List items specified in the allocate directive must not have the ALLOCATABLE attribute unless the directive is associated with an
diff --git a/flang/test/Semantics/omp-allocate07.f90 b/flang/test/Semantics/omp-allocate07.f90
index b8125152b2e9b..2c791280fd716 100644
--- a/flang/test/Semantics/omp-allocate07.f90
+++ b/flang/test/Semantics/omp-allocate07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 5.0
! 2.11.3 allocate Directive
! A type parameter inquiry cannot appear in an allocate directive.
diff --git a/flang/test/Semantics/omp-atomic.f90 b/flang/test/Semantics/omp-atomic.f90
index da1d585823555..6fc500ca3fd8e 100644
--- a/flang/test/Semantics/omp-atomic.f90
+++ b/flang/test/Semantics/omp-atomic.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
use omp_lib
! Check OpenMP 2.13.6 atomic Construct
diff --git a/flang/test/Semantics/omp-atomic01.f90 b/flang/test/Semantics/omp-atomic01.f90
index 7a61b5132df04..8a8fa4211314d 100644
--- a/flang/test/Semantics/omp-atomic01.f90
+++ b/flang/test/Semantics/omp-atomic01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! Semantic checks for OpenMP 5.0 standard 2.17.7 atomic Construct.
use omp_lib
diff --git a/flang/test/Semantics/omp-clause-validity01.f90 b/flang/test/Semantics/omp-clause-validity01.f90
index a2de8e7206602..fe0bcf8f4e854 100644
--- a/flang/test/Semantics/omp-clause-validity01.f90
+++ b/flang/test/Semantics/omp-clause-validity01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
use omp_lib
! Check OpenMP clause validity for the following directives:
!
diff --git a/flang/test/Semantics/omp-combined-constructs.f90 b/flang/test/Semantics/omp-combined-constructs.f90
index 48d4683f20feb..c43713083e875 100644
--- a/flang/test/Semantics/omp-combined-constructs.f90
+++ b/flang/test/Semantics/omp-combined-constructs.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
program main
implicit none
diff --git a/flang/test/Semantics/omp-copyin01.f90 b/flang/test/Semantics/omp-copyin01.f90
index 4f665cbafc790..389e0f7c8f5f0 100644
--- a/flang/test/Semantics/omp-copyin01.f90
+++ b/flang/test/Semantics/omp-copyin01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.1 copyin Clause
! A list item that appears in a copyin clause must be threadprivate
diff --git a/flang/test/Semantics/omp-copyin02.f90 b/flang/test/Semantics/omp-copyin02.f90
index 289ed14a1c383..f1d02ff030a31 100644
--- a/flang/test/Semantics/omp-copyin02.f90
+++ b/flang/test/Semantics/omp-copyin02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.1 copyin Clause
! A common block name that appears in a copyin clause must be declared to be
diff --git a/flang/test/Semantics/omp-copyin03.f90 b/flang/test/Semantics/omp-copyin03.f90
index be8638a70f8c1..2d856c769feb1 100644
--- a/flang/test/Semantics/omp-copyin03.f90
+++ b/flang/test/Semantics/omp-copyin03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.1 copyin Clause
! A list item that appears in a copyin clause must be threadprivate.
diff --git a/flang/test/Semantics/omp-copyin04.f90 b/flang/test/Semantics/omp-copyin04.f90
index 4432cf2887221..c73c62816b1ff 100644
--- a/flang/test/Semantics/omp-copyin04.f90
+++ b/flang/test/Semantics/omp-copyin04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.1 copyin Clause
! A list item that appears in a copyin clause must be threadprivate
diff --git a/flang/test/Semantics/omp-copyin05.f90 b/flang/test/Semantics/omp-copyin05.f90
index 72e346f8a7f50..5d05a92d0cabd 100644
--- a/flang/test/Semantics/omp-copyin05.f90
+++ b/flang/test/Semantics/omp-copyin05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.1 copyin Clause
! A common block name that appears in a copyin clause must be declared to be
diff --git a/flang/test/Semantics/omp-copyprivate01.f90 b/flang/test/Semantics/omp-copyprivate01.f90
index cbdc89f96933f..75c9d4aacc891 100644
--- a/flang/test/Semantics/omp-copyprivate01.f90
+++ b/flang/test/Semantics/omp-copyprivate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.2 copyprivate Clause
! A list item that appears in a copyprivate clause may not appear in a
diff --git a/flang/test/Semantics/omp-copyprivate02.f90 b/flang/test/Semantics/omp-copyprivate02.f90
index 3fc3dcbd52e83..fe62eae473e1b 100644
--- a/flang/test/Semantics/omp-copyprivate02.f90
+++ b/flang/test/Semantics/omp-copyprivate02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.2 copyprivate Clause
! Pointers with the INTENT(IN) attribute may not appear in a copyprivate clause.
diff --git a/flang/test/Semantics/omp-copyprivate03.f90 b/flang/test/Semantics/omp-copyprivate03.f90
index 0b0de025cf9c4..b19e69795b985 100644
--- a/flang/test/Semantics/omp-copyprivate03.f90
+++ b/flang/test/Semantics/omp-copyprivate03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.4.2 copyprivate Clause
! All list items that appear in the copyprivate clause must be either
diff --git a/flang/test/Semantics/omp-declarative-directive.f90 b/flang/test/Semantics/omp-declarative-directive.f90
index 5ad56a590c2f6..dca3d897bb7b0 100644
--- a/flang/test/Semantics/omp-declarative-directive.f90
+++ b/flang/test/Semantics/omp-declarative-directive.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Check OpenMP declarative directives
diff --git a/flang/test/Semantics/omp-default.f90 b/flang/test/Semantics/omp-default.f90
index 4189ca6036930..5955a3a5facd1 100644
--- a/flang/test/Semantics/omp-default.f90
+++ b/flang/test/Semantics/omp-default.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.1 default Clause
program omp_default
diff --git a/flang/test/Semantics/omp-default02.f90 b/flang/test/Semantics/omp-default02.f90
index 001551e435eb3..b95e673ed34c3 100644
--- a/flang/test/Semantics/omp-default02.f90
+++ b/flang/test/Semantics/omp-default02.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.1 default Clause - a positive test case.
diff --git a/flang/test/Semantics/omp-depend01.f90 b/flang/test/Semantics/omp-depend01.f90
index f8e159239b8aa..bb420563ed36b 100644
--- a/flang/test/Semantics/omp-depend01.f90
+++ b/flang/test/Semantics/omp-depend01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.13.9 Depend Clause
! List items used in depend clauses cannot be zero-length array sections.
diff --git a/flang/test/Semantics/omp-depend02.f90 b/flang/test/Semantics/omp-depend02.f90
index 9bc710410d9ed..aa30da4278037 100644
--- a/flang/test/Semantics/omp-depend02.f90
+++ b/flang/test/Semantics/omp-depend02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.13.9 Depend Clause
! A variable that is part of another variable
diff --git a/flang/test/Semantics/omp-depend03.f90 b/flang/test/Semantics/omp-depend03.f90
index d4b228f7e92bb..68cff43b53d53 100644
--- a/flang/test/Semantics/omp-depend03.f90
+++ b/flang/test/Semantics/omp-depend03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.13.9 Depend Clause
! Coarrays are not supported in depend clause
diff --git a/flang/test/Semantics/omp-device-constructs.f90 b/flang/test/Semantics/omp-device-constructs.f90
index 1db7bfd19d73e..301b102b2ca7a 100644
--- a/flang/test/Semantics/omp-device-constructs.f90
+++ b/flang/test/Semantics/omp-device-constructs.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Check OpenMP clause validity for the following directives:
! 2.10 Device constructs
program main
diff --git a/flang/test/Semantics/omp-do-collapse-positivecases.f90 b/flang/test/Semantics/omp-do-collapse-positivecases.f90
index 0c09013c6547b..3959a3579c93d 100644
--- a/flang/test/Semantics/omp-do-collapse-positivecases.f90
+++ b/flang/test/Semantics/omp-do-collapse-positivecases.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Collapse Clause Positive cases
diff --git a/flang/test/Semantics/omp-do-collapse.f90 b/flang/test/Semantics/omp-do-collapse.f90
index aa010884c6dad..c2af35b189bdd 100644
--- a/flang/test/Semantics/omp-do-collapse.f90
+++ b/flang/test/Semantics/omp-do-collapse.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Collapse Clause
program omp_doCollapse
diff --git a/flang/test/Semantics/omp-do-cycle.f90 b/flang/test/Semantics/omp-do-cycle.f90
index 0d9cf52e6f5ae..f3bc7bf29c221 100644
--- a/flang/test/Semantics/omp-do-cycle.f90
+++ b/flang/test/Semantics/omp-do-cycle.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Check for cycle statements leaving an OpenMP structured block
diff --git a/flang/test/Semantics/omp-do-ordered-positivecases.f90 b/flang/test/Semantics/omp-do-ordered-positivecases.f90
index 751e6954dc3ec..bb571bb79daca 100644
--- a/flang/test/Semantics/omp-do-ordered-positivecases.f90
+++ b/flang/test/Semantics/omp-do-ordered-positivecases.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Ordered Clause positive cases.
diff --git a/flang/test/Semantics/omp-do-ordered.f90 b/flang/test/Semantics/omp-do-ordered.f90
index 04967cf317465..adcfa693caa7d 100644
--- a/flang/test/Semantics/omp-do-ordered.f90
+++ b/flang/test/Semantics/omp-do-ordered.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Ordered Clause
diff --git a/flang/test/Semantics/omp-do-schedule01.f90 b/flang/test/Semantics/omp-do-schedule01.f90
index 598877f1ea94b..f513e5f98f831 100644
--- a/flang/test/Semantics/omp-do-schedule01.f90
+++ b/flang/test/Semantics/omp-do-schedule01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Schedule Clause
program omp_doSchedule
diff --git a/flang/test/Semantics/omp-do-schedule02.f90 b/flang/test/Semantics/omp-do-schedule02.f90
index 3699d3401e87c..6272f749ff13d 100644
--- a/flang/test/Semantics/omp-do-schedule02.f90
+++ b/flang/test/Semantics/omp-do-schedule02.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Schedule Clause
program omp_doSchedule
diff --git a/flang/test/Semantics/omp-do-schedule03.f90 b/flang/test/Semantics/omp-do-schedule03.f90
index dd14aa90c93b5..1f7445497c062 100644
--- a/flang/test/Semantics/omp-do-schedule03.f90
+++ b/flang/test/Semantics/omp-do-schedule03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Schedule Clause
! Test that does not catch non constant integer expressions like xx - xx.
diff --git a/flang/test/Semantics/omp-do-schedule04.f90 b/flang/test/Semantics/omp-do-schedule04.f90
index 6226c6eeac9eb..b3fcd65720ef1 100644
--- a/flang/test/Semantics/omp-do-schedule04.f90
+++ b/flang/test/Semantics/omp-do-schedule04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Schedule Clause
! Test that does not catch non constant integer expressions like xx - yy.
diff --git a/flang/test/Semantics/omp-do01-positivecase.f90 b/flang/test/Semantics/omp-do01-positivecase.f90
index 43eebbcce7da4..f77104d11a952 100644
--- a/flang/test/Semantics/omp-do01-positivecase.f90
+++ b/flang/test/Semantics/omp-do01-positivecase.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The loop iteration variable may not appear in a firstprivate directive.
diff --git a/flang/test/Semantics/omp-do01.f90 b/flang/test/Semantics/omp-do01.f90
index ce9d5e684f973..deb0d506ef545 100644
--- a/flang/test/Semantics/omp-do01.f90
+++ b/flang/test/Semantics/omp-do01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The loop iteration variable may not appear in a firstprivate directive.
diff --git a/flang/test/Semantics/omp-do03.f90 b/flang/test/Semantics/omp-do03.f90
index f1fcc9ea17932..67002e924dac8 100644
--- a/flang/test/Semantics/omp-do03.f90
+++ b/flang/test/Semantics/omp-do03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
diff --git a/flang/test/Semantics/omp-do04-positivecase.f90 b/flang/test/Semantics/omp-do04-positivecase.f90
index c6e7147545d60..c9ef67752d8b8 100644
--- a/flang/test/Semantics/omp-do04-positivecase.f90
+++ b/flang/test/Semantics/omp-do04-positivecase.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Do Loop Constructs
diff --git a/flang/test/Semantics/omp-do04.f90 b/flang/test/Semantics/omp-do04.f90
index 511bdc51f42d4..41709dd6d2a3c 100644
--- a/flang/test/Semantics/omp-do04.f90
+++ b/flang/test/Semantics/omp-do04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The loop iteration variable may not appear in a threadprivate directive.
diff --git a/flang/test/Semantics/omp-do05-positivecase.f90 b/flang/test/Semantics/omp-do05-positivecase.f90
index c186b3a1edbee..1886da987cc81 100644
--- a/flang/test/Semantics/omp-do05-positivecase.f90
+++ b/flang/test/Semantics/omp-do05-positivecase.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct restrictions on single directive.
! A positive case
diff --git a/flang/test/Semantics/omp-do05.f90 b/flang/test/Semantics/omp-do05.f90
index fb9281c4d946d..3bf76707ddf35 100644
--- a/flang/test/Semantics/omp-do05.f90
+++ b/flang/test/Semantics/omp-do05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct restrictions on single directive.
diff --git a/flang/test/Semantics/omp-do06-positivecases.f90 b/flang/test/Semantics/omp-do06-positivecases.f90
index 418ddedbe05db..5cb8268dc6373 100644
--- a/flang/test/Semantics/omp-do06-positivecases.f90
+++ b/flang/test/Semantics/omp-do06-positivecases.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The ordered clause must be present on the loop construct if any ordered
diff --git a/flang/test/Semantics/omp-do06.f90 b/flang/test/Semantics/omp-do06.f90
index d687679047519..f39b0cd319255 100644
--- a/flang/test/Semantics/omp-do06.f90
+++ b/flang/test/Semantics/omp-do06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The ordered clause must be present on the loop construct if any ordered
diff --git a/flang/test/Semantics/omp-do07.f90 b/flang/test/Semantics/omp-do07.f90
index 5b3eb28c17e7f..44fe5f86045ac 100644
--- a/flang/test/Semantics/omp-do07.f90
+++ b/flang/test/Semantics/omp-do07.f90
@@ -1,4 +1,5 @@
! RUN: not %flang -fsyntax-only -fopenmp %s 2>&1 | FileCheck %s
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! No statement in the associated loops other than the DO statements
diff --git a/flang/test/Semantics/omp-do08.f90 b/flang/test/Semantics/omp-do08.f90
index 3ec7ac30b2432..65e94df67dea2 100644
--- a/flang/test/Semantics/omp-do08.f90
+++ b/flang/test/Semantics/omp-do08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
diff --git a/flang/test/Semantics/omp-do09.f90 b/flang/test/Semantics/omp-do09.f90
index 147b1790ab9d0..2c781da17693b 100644
--- a/flang/test/Semantics/omp-do09.f90
+++ b/flang/test/Semantics/omp-do09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The do-loop cannot be a DO WHILE or a DO loop without loop control.
diff --git a/flang/test/Semantics/omp-do10.f90 b/flang/test/Semantics/omp-do10.f90
index 4cb644ea9262f..0c61de2b95900 100644
--- a/flang/test/Semantics/omp-do10.f90
+++ b/flang/test/Semantics/omp-do10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
! The DO loop iteration variable must be of type integer.
diff --git a/flang/test/Semantics/omp-do11.f90 b/flang/test/Semantics/omp-do11.f90
index 5ed097f05aebc..f5e800058d226 100644
--- a/flang/test/Semantics/omp-do11.f90
+++ b/flang/test/Semantics/omp-do11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Do Loop Constructs
diff --git a/flang/test/Semantics/omp-do12.f90 b/flang/test/Semantics/omp-do12.f90
index 05614e36e15d8..264eb15df8cad 100644
--- a/flang/test/Semantics/omp-do12.f90
+++ b/flang/test/Semantics/omp-do12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Do Loop constructs.
diff --git a/flang/test/Semantics/omp-do13.f90 b/flang/test/Semantics/omp-do13.f90
index b1081e9ac26d0..6e3ac626360c5 100644
--- a/flang/test/Semantics/omp-do13.f90
+++ b/flang/test/Semantics/omp-do13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
diff --git a/flang/test/Semantics/omp-do14.f90 b/flang/test/Semantics/omp-do14.f90
index 3eef90ee5ef5b..f49a29f8e9aa9 100644
--- a/flang/test/Semantics/omp-do14.f90
+++ b/flang/test/Semantics/omp-do14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Do Loop constructs.
diff --git a/flang/test/Semantics/omp-do15.f90 b/flang/test/Semantics/omp-do15.f90
index 6862ba3fe1c52..4cdc2bd914718 100644
--- a/flang/test/Semantics/omp-do15.f90
+++ b/flang/test/Semantics/omp-do15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
diff --git a/flang/test/Semantics/omp-do16.f90 b/flang/test/Semantics/omp-do16.f90
index 80807ec0b2788..2af5ed454cf93 100644
--- a/flang/test/Semantics/omp-do16.f90
+++ b/flang/test/Semantics/omp-do16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Loop Construct
diff --git a/flang/test/Semantics/omp-do17.f90 b/flang/test/Semantics/omp-do17.f90
index 89b3386b0381a..fb23176309b50 100644
--- a/flang/test/Semantics/omp-do17.f90
+++ b/flang/test/Semantics/omp-do17.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.1 Do Loop constructs.
diff --git a/flang/test/Semantics/omp-firstprivate01.f90 b/flang/test/Semantics/omp-firstprivate01.f90
index 4eb1e47bce237..d03cfc253c22f 100644
--- a/flang/test/Semantics/omp-firstprivate01.f90
+++ b/flang/test/Semantics/omp-firstprivate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.4 firstprivate Clause
! Variables that appear in a firstprivate clause on a distribute or
diff --git a/flang/test/Semantics/omp-flush01.f90 b/flang/test/Semantics/omp-flush01.f90
index b189642feb691..03b0268083187 100644
--- a/flang/test/Semantics/omp-flush01.f90
+++ b/flang/test/Semantics/omp-flush01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! 2.17.8 Flush construct [OpenMP 5.0]
! memory-order-clause ->
diff --git a/flang/test/Semantics/omp-flush02.f90 b/flang/test/Semantics/omp-flush02.f90
index 705019f69855c..b9602def87253 100644
--- a/flang/test/Semantics/omp-flush02.f90
+++ b/flang/test/Semantics/omp-flush02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! Check OpenMP 5.0 - 2.17.8 flush Construct
! Restriction -
diff --git a/flang/test/Semantics/omp-invalid-branch.f90 b/flang/test/Semantics/omp-invalid-branch.f90
index 535a89fa51f52..ed9e4d268f65a 100644
--- a/flang/test/Semantics/omp-invalid-branch.f90
+++ b/flang/test/Semantics/omp-invalid-branch.f90
@@ -1,4 +1,5 @@
! RUN: not %flang -fsyntax-only -fopenmp %s 2>&1 | FileCheck %s
+! REQUIRES: shell
! OpenMP Version 4.5
! Check invalid branches into or out of OpenMP structured blocks.
diff --git a/flang/test/Semantics/omp-lastprivate01.f90 b/flang/test/Semantics/omp-lastprivate01.f90
index f69f041f5e6c2..e9a4be6730b82 100644
--- a/flang/test/Semantics/omp-lastprivate01.f90
+++ b/flang/test/Semantics/omp-lastprivate01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.5 lastprivate Clause
! A variable that appears in a lastprivate clause must be definable.
diff --git a/flang/test/Semantics/omp-lastprivate02.f90 b/flang/test/Semantics/omp-lastprivate02.f90
index 1d2c0890e7697..b17031875884d 100644
--- a/flang/test/Semantics/omp-lastprivate02.f90
+++ b/flang/test/Semantics/omp-lastprivate02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.5 lastprivate Clause
! A list item that is private within a parallel region, or that appears in
diff --git a/flang/test/Semantics/omp-linear-iter.f90 b/flang/test/Semantics/omp-linear-iter.f90
index c8932d32a55fd..bb9dbcb4fae40 100644
--- a/flang/test/Semantics/omp-linear-iter.f90
+++ b/flang/test/Semantics/omp-linear-iter.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Various checks with the ordered construct
diff --git a/flang/test/Semantics/omp-loop-association.f90 b/flang/test/Semantics/omp-loop-association.f90
index ef04073c3df23..5e7dce6241359 100644
--- a/flang/test/Semantics/omp-loop-association.f90
+++ b/flang/test/Semantics/omp-loop-association.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Check the association between OpenMPLoopConstruct and DoConstruct
diff --git a/flang/test/Semantics/omp-loop-simd01.f90 b/flang/test/Semantics/omp-loop-simd01.f90
index 202e27556c999..09d812a0403ee 100644
--- a/flang/test/Semantics/omp-loop-simd01.f90
+++ b/flang/test/Semantics/omp-loop-simd01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.8.3 Loop simd Construct
diff --git a/flang/test/Semantics/omp-nested-distribute.f90 b/flang/test/Semantics/omp-nested-distribute.f90
index 873dc6b554d19..92a121659f202 100644
--- a/flang/test/Semantics/omp-nested-distribute.f90
+++ b/flang/test/Semantics/omp-nested-distribute.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Check OpenMP clause validity for the following directives:
! 2.10 Device constructs
program main
diff --git a/flang/test/Semantics/omp-nested-master.f90 b/flang/test/Semantics/omp-nested-master.f90
index 7353127532d81..cb391d568ba20 100644
--- a/flang/test/Semantics/omp-nested-master.f90
+++ b/flang/test/Semantics/omp-nested-master.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Various checks with the nesting of MASTER construct
diff --git a/flang/test/Semantics/omp-nested-simd.f90 b/flang/test/Semantics/omp-nested-simd.f90
index b17614cce45f3..1b5bb9c5cceeb 100644
--- a/flang/test/Semantics/omp-nested-simd.f90
+++ b/flang/test/Semantics/omp-nested-simd.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Various checks with the nesting of SIMD construct
diff --git a/flang/test/Semantics/omp-nested01.f90 b/flang/test/Semantics/omp-nested01.f90
index 010b5fd4ade70..a24a99ff1a902 100644
--- a/flang/test/Semantics/omp-nested01.f90
+++ b/flang/test/Semantics/omp-nested01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Check OpenMP 2.17 Nesting of Regions
diff --git a/flang/test/Semantics/omp-no-dowhile-in-parallel.f90 b/flang/test/Semantics/omp-no-dowhile-in-parallel.f90
index bb66c8435bcb8..b5bf947a76a65 100644
--- a/flang/test/Semantics/omp-no-dowhile-in-parallel.f90
+++ b/flang/test/Semantics/omp-no-dowhile-in-parallel.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
subroutine bug48308(x,i)
real :: x(:)
diff --git a/flang/test/Semantics/omp-ordered-simd.f90 b/flang/test/Semantics/omp-ordered-simd.f90
index 753ff7816fc86..84ff7407e5c9d 100644
--- a/flang/test/Semantics/omp-ordered-simd.f90
+++ b/flang/test/Semantics/omp-ordered-simd.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Various checks with the ordered construct
diff --git a/flang/test/Semantics/omp-parallel-private01.f90 b/flang/test/Semantics/omp-parallel-private01.f90
index c05a7307a4420..504b32250656a 100644
--- a/flang/test/Semantics/omp-parallel-private01.f90
+++ b/flang/test/Semantics/omp-parallel-private01.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 parallel private Clause
program omp_parallel_private
diff --git a/flang/test/Semantics/omp-parallel-private02.f90 b/flang/test/Semantics/omp-parallel-private02.f90
index 4fb8df36d9a42..f1bfeb5fc1a16 100644
--- a/flang/test/Semantics/omp-parallel-private02.f90
+++ b/flang/test/Semantics/omp-parallel-private02.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 parallel private Clause
program omp_parallel_private
diff --git a/flang/test/Semantics/omp-parallel-private03.f90 b/flang/test/Semantics/omp-parallel-private03.f90
index 60af823b4f1dc..c76ce169f7f4e 100644
--- a/flang/test/Semantics/omp-parallel-private03.f90
+++ b/flang/test/Semantics/omp-parallel-private03.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 parallel private Clause
program omp_parallel_private
diff --git a/flang/test/Semantics/omp-parallel-private04.f90 b/flang/test/Semantics/omp-parallel-private04.f90
index d14b51c1fb954..1b4bed568f5ed 100644
--- a/flang/test/Semantics/omp-parallel-private04.f90
+++ b/flang/test/Semantics/omp-parallel-private04.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 parallel private Clause
program omp_parallel_private
diff --git a/flang/test/Semantics/omp-parallel-shared01.f90 b/flang/test/Semantics/omp-parallel-shared01.f90
index a35b68b5eb59d..e5e3004f5f4cb 100644
--- a/flang/test/Semantics/omp-parallel-shared01.f90
+++ b/flang/test/Semantics/omp-parallel-shared01.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.2 parallel shared Clause
program omp_parallel_shared
diff --git a/flang/test/Semantics/omp-parallel-shared02.f90 b/flang/test/Semantics/omp-parallel-shared02.f90
index 332faa831124a..e91e47fbc87a2 100644
--- a/flang/test/Semantics/omp-parallel-shared02.f90
+++ b/flang/test/Semantics/omp-parallel-shared02.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.2 parallel shared Clause
program omp_parallel_shared
diff --git a/flang/test/Semantics/omp-parallel-shared03.f90 b/flang/test/Semantics/omp-parallel-shared03.f90
index e9b42587597f3..48465f08422f5 100644
--- a/flang/test/Semantics/omp-parallel-shared03.f90
+++ b/flang/test/Semantics/omp-parallel-shared03.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.2 parallel shared Clause
program omp_parallel_shared
diff --git a/flang/test/Semantics/omp-parallel-shared04.f90 b/flang/test/Semantics/omp-parallel-shared04.f90
index b2ca559cc5475..cb63e45cd5cf2 100644
--- a/flang/test/Semantics/omp-parallel-shared04.f90
+++ b/flang/test/Semantics/omp-parallel-shared04.f90
@@ -1,4 +1,5 @@
!RUN: %S/test_errors.sh %s %t %flang -fopenmp
+!REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.2 parallel shared Clause
program omp_parallel_shared
diff --git a/flang/test/Semantics/omp-private01.f90 b/flang/test/Semantics/omp-private01.f90
index 64c7c5bcac0d9..32887def09e6d 100644
--- a/flang/test/Semantics/omp-private01.f90
+++ b/flang/test/Semantics/omp-private01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 private Clause
! Pointers with the INTENT(IN) attribute may not appear in a private clause.
diff --git a/flang/test/Semantics/omp-private02.f90 b/flang/test/Semantics/omp-private02.f90
index 0ff49c32c0ed7..db8c733cf9b36 100644
--- a/flang/test/Semantics/omp-private02.f90
+++ b/flang/test/Semantics/omp-private02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.3 private Clause
! Variables that appear in namelist statements may not appear in a private clause.
diff --git a/flang/test/Semantics/omp-private03.f90 b/flang/test/Semantics/omp-private03.f90
index 61b35ec344f32..addca116a5b58 100644
--- a/flang/test/Semantics/omp-private03.f90
+++ b/flang/test/Semantics/omp-private03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! Variables that appear in expressions for statement function definitions
! may not appear in private, firstprivate or lastprivate clauses.
diff --git a/flang/test/Semantics/omp-reduction01.f90 b/flang/test/Semantics/omp-reduction01.f90
index d58e1fa9f7ece..b7793b9a3ae96 100644
--- a/flang/test/Semantics/omp-reduction01.f90
+++ b/flang/test/Semantics/omp-reduction01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
program omp_reduction
diff --git a/flang/test/Semantics/omp-reduction02.f90 b/flang/test/Semantics/omp-reduction02.f90
index 1806e35dfaf9d..8cac4fb9f07c8 100644
--- a/flang/test/Semantics/omp-reduction02.f90
+++ b/flang/test/Semantics/omp-reduction02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
program omp_reduction
diff --git a/flang/test/Semantics/omp-reduction03.f90 b/flang/test/Semantics/omp-reduction03.f90
index 08dca8c051ae7..0019d44fc1e18 100644
--- a/flang/test/Semantics/omp-reduction03.f90
+++ b/flang/test/Semantics/omp-reduction03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
diff --git a/flang/test/Semantics/omp-reduction04.f90 b/flang/test/Semantics/omp-reduction04.f90
index aed5b65040c10..75ff094cff26f 100644
--- a/flang/test/Semantics/omp-reduction04.f90
+++ b/flang/test/Semantics/omp-reduction04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
program omp_Reduction
diff --git a/flang/test/Semantics/omp-reduction05.f90 b/flang/test/Semantics/omp-reduction05.f90
index cd58f7c45f8f0..1e1f7f13ead97 100644
--- a/flang/test/Semantics/omp-reduction05.f90
+++ b/flang/test/Semantics/omp-reduction05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
diff --git a/flang/test/Semantics/omp-reduction06.f90 b/flang/test/Semantics/omp-reduction06.f90
index e8ca1a5cb5b2a..6b71bd620133f 100644
--- a/flang/test/Semantics/omp-reduction06.f90
+++ b/flang/test/Semantics/omp-reduction06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
diff --git a/flang/test/Semantics/omp-reduction07.f90 b/flang/test/Semantics/omp-reduction07.f90
index 9cf79210de336..e1f1d86d61366 100644
--- a/flang/test/Semantics/omp-reduction07.f90
+++ b/flang/test/Semantics/omp-reduction07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
program omp_reduction
diff --git a/flang/test/Semantics/omp-reduction08.f90 b/flang/test/Semantics/omp-reduction08.f90
index cb64750a969bf..1e6c56d62d675 100644
--- a/flang/test/Semantics/omp-reduction08.f90
+++ b/flang/test/Semantics/omp-reduction08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause Positive cases
diff --git a/flang/test/Semantics/omp-reduction09.f90 b/flang/test/Semantics/omp-reduction09.f90
index 1a215f6ca0757..e93699f596f1f 100644
--- a/flang/test/Semantics/omp-reduction09.f90
+++ b/flang/test/Semantics/omp-reduction09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause Positive cases.
!DEF: /omp_reduction MainProgram
diff --git a/flang/test/Semantics/omp-reduction10.f90 b/flang/test/Semantics/omp-reduction10.f90
index ba8c6a0f8de55..9c733dadbc655 100644
--- a/flang/test/Semantics/omp-reduction10.f90
+++ b/flang/test/Semantics/omp-reduction10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.15.3.6 Reduction Clause
program omp_reduction
diff --git a/flang/test/Semantics/omp-resolve01.f90 b/flang/test/Semantics/omp-resolve01.f90
index 04a0f1b04dfc1..daa558265d72f 100644
--- a/flang/test/Semantics/omp-resolve01.f90
+++ b/flang/test/Semantics/omp-resolve01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! 2.4 An array section designates a subset of the elements in an array. Although
! Substring shares similar syntax but cannot be treated as valid array section.
diff --git a/flang/test/Semantics/omp-resolve02.f90 b/flang/test/Semantics/omp-resolve02.f90
index b5cd5b4c94312..f16c51afdf37d 100644
--- a/flang/test/Semantics/omp-resolve02.f90
+++ b/flang/test/Semantics/omp-resolve02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! Test the effect to name resolution from illegal clause
diff --git a/flang/test/Semantics/omp-resolve03.f90 b/flang/test/Semantics/omp-resolve03.f90
index 71648a2025b45..6efb70d2d3d12 100644
--- a/flang/test/Semantics/omp-resolve03.f90
+++ b/flang/test/Semantics/omp-resolve03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! 2.15.3 Although variables in common blocks can be accessed by use association
! or host association, common block names cannot. As a result, a common block
diff --git a/flang/test/Semantics/omp-resolve04.f90 b/flang/test/Semantics/omp-resolve04.f90
index 1e1c35b9ee035..60822761bc810 100644
--- a/flang/test/Semantics/omp-resolve04.f90
+++ b/flang/test/Semantics/omp-resolve04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! 2.15.3 Data-Sharing Attribute Clauses
! A list item that specifies a given variable may not appear in more than
diff --git a/flang/test/Semantics/omp-resolve05.f90 b/flang/test/Semantics/omp-resolve05.f90
index f1e7903d2d63e..580f8a14c81e3 100644
--- a/flang/test/Semantics/omp-resolve05.f90
+++ b/flang/test/Semantics/omp-resolve05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! 2.15.3 Data-Sharing Attribute Clauses
! 2.15.3.1 default Clause
diff --git a/flang/test/Semantics/omp-resolve06.f90 b/flang/test/Semantics/omp-resolve06.f90
index 543a438ae2208..87191b659bdb5 100644
--- a/flang/test/Semantics/omp-resolve06.f90
+++ b/flang/test/Semantics/omp-resolve06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
use omp_lib
!2.11.4 Allocate Clause
!For any list item that is specified in the allocate
diff --git a/flang/test/Semantics/omp-sections01.f90 b/flang/test/Semantics/omp-sections01.f90
index e2db71aecf5f4..0a40337685ee0 100644
--- a/flang/test/Semantics/omp-sections01.f90
+++ b/flang/test/Semantics/omp-sections01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.2 sections Construct
diff --git a/flang/test/Semantics/omp-simd-aligned.f90 b/flang/test/Semantics/omp-simd-aligned.f90
index 5626608114d53..f4424aa5c46e9 100644
--- a/flang/test/Semantics/omp-simd-aligned.f90
+++ b/flang/test/Semantics/omp-simd-aligned.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.8.1 simd Construct
diff --git a/flang/test/Semantics/omp-simd02.f90 b/flang/test/Semantics/omp-simd02.f90
index 09f1c36af3416..dcaed43fb2ffc 100644
--- a/flang/test/Semantics/omp-simd02.f90
+++ b/flang/test/Semantics/omp-simd02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.8.1 simd Construct
diff --git a/flang/test/Semantics/omp-single01.f90 b/flang/test/Semantics/omp-single01.f90
index 7abc0a2c1b3cc..07b827bba2b52 100644
--- a/flang/test/Semantics/omp-single01.f90
+++ b/flang/test/Semantics/omp-single01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.3 single Construct
! Symbol present on multiple clauses
diff --git a/flang/test/Semantics/omp-single02.f90 b/flang/test/Semantics/omp-single02.f90
index 04a1cc2f6a078..e39ce2538e3cd 100644
--- a/flang/test/Semantics/omp-single02.f90
+++ b/flang/test/Semantics/omp-single02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.3 single Construct
! Copyprivate variable is not thread private or private in outer context
diff --git a/flang/test/Semantics/omp-symbol01.f90 b/flang/test/Semantics/omp-symbol01.f90
index 0246ed84dacc8..377af74ea54e5 100644
--- a/flang/test/Semantics/omp-symbol01.f90
+++ b/flang/test/Semantics/omp-symbol01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! Test clauses that accept list.
! 2.1 Directive Format
diff --git a/flang/test/Semantics/omp-symbol02.f90 b/flang/test/Semantics/omp-symbol02.f90
index f838146968e78..35047015c4e32 100644
--- a/flang/test/Semantics/omp-symbol02.f90
+++ b/flang/test/Semantics/omp-symbol02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 1.4.1 Structure of the OpenMP Memory Model
diff --git a/flang/test/Semantics/omp-symbol03.f90 b/flang/test/Semantics/omp-symbol03.f90
index 38e30a4f7a574..33dfe27582bbe 100644
--- a/flang/test/Semantics/omp-symbol03.f90
+++ b/flang/test/Semantics/omp-symbol03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 1.4.1 Structure of the OpenMP Memory Model
! In the inner OpenMP region, SHARED `a` refers to the `a` in the outer OpenMP
diff --git a/flang/test/Semantics/omp-symbol04.f90 b/flang/test/Semantics/omp-symbol04.f90
index 673e11d17875a..0f18b8b595d43 100644
--- a/flang/test/Semantics/omp-symbol04.f90
+++ b/flang/test/Semantics/omp-symbol04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 2.15.3 Data-Sharing Attribute Clauses
! Both PARALLEL and DO (worksharing) directives need to create new scope,
diff --git a/flang/test/Semantics/omp-symbol05.f90 b/flang/test/Semantics/omp-symbol05.f90
index 7ca28de5566c5..50e1d91cb91a6 100644
--- a/flang/test/Semantics/omp-symbol05.f90
+++ b/flang/test/Semantics/omp-symbol05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 2.15.2 threadprivate Directive
! The threadprivate directive specifies that variables are replicated,
diff --git a/flang/test/Semantics/omp-symbol06.f90 b/flang/test/Semantics/omp-symbol06.f90
index 14a652e2c1417..5a8325d9a096a 100644
--- a/flang/test/Semantics/omp-symbol06.f90
+++ b/flang/test/Semantics/omp-symbol06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 2.15.3 Data-Sharing Attribute Clauses
! A list item that specifies a given variable may not appear in more than
diff --git a/flang/test/Semantics/omp-symbol07.f90 b/flang/test/Semantics/omp-symbol07.f90
index eef7caafafcbd..f333e572fe2d1 100644
--- a/flang/test/Semantics/omp-symbol07.f90
+++ b/flang/test/Semantics/omp-symbol07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! Generic tests
! 1. subroutine or function calls should not be fixed for DSA or DMA
diff --git a/flang/test/Semantics/omp-symbol08.f90 b/flang/test/Semantics/omp-symbol08.f90
index 61ea5c3e8a4df..4fd01e718fd52 100644
--- a/flang/test/Semantics/omp-symbol08.f90
+++ b/flang/test/Semantics/omp-symbol08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1 -fopenmp
+! REQUIRES: shell
! 2.15.1.1 Predetermined rules for associated do-loops index variable
! a) The loop iteration variable(s) in the associated do-loop(s) of a do,
diff --git a/flang/test/Semantics/omp-taskloop01.f90 b/flang/test/Semantics/omp-taskloop01.f90
index c3870047b8eda..699d4c9087cd0 100644
--- a/flang/test/Semantics/omp-taskloop01.f90
+++ b/flang/test/Semantics/omp-taskloop01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.9.2 taskloop Construct
diff --git a/flang/test/Semantics/omp-workshare01.f90 b/flang/test/Semantics/omp-workshare01.f90
index 2f8a48b613d21..0b6a3a1cdf496 100644
--- a/flang/test/Semantics/omp-workshare01.f90
+++ b/flang/test/Semantics/omp-workshare01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.4 workshare Construct
! Invalid do construct inside !$omp workshare
diff --git a/flang/test/Semantics/omp-workshare02.f90 b/flang/test/Semantics/omp-workshare02.f90
index 14402e1faff66..996c384303fb7 100644
--- a/flang/test/Semantics/omp-workshare02.f90
+++ b/flang/test/Semantics/omp-workshare02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.4 workshare Construct
! The !omp workshare construct must not contain any user defined
diff --git a/flang/test/Semantics/omp-workshare03.f90 b/flang/test/Semantics/omp-workshare03.f90
index be7586f90ac3f..1c6e00d5d8321 100644
--- a/flang/test/Semantics/omp-workshare03.f90
+++ b/flang/test/Semantics/omp-workshare03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.4 workshare Construct
! All array assignments, scalar assignments, and masked array assignments
diff --git a/flang/test/Semantics/omp-workshare04.f90 b/flang/test/Semantics/omp-workshare04.f90
index ab8ec039a01c6..745dc9f4d49a6 100644
--- a/flang/test/Semantics/omp-workshare04.f90
+++ b/flang/test/Semantics/omp-workshare04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.4 workshare Construct
! Checks for OpenMP Workshare construct
diff --git a/flang/test/Semantics/omp-workshare05.f90 b/flang/test/Semantics/omp-workshare05.f90
index 372df32a5a558..5f731193e45e3 100644
--- a/flang/test/Semantics/omp-workshare05.f90
+++ b/flang/test/Semantics/omp-workshare05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -fopenmp
+! REQUIRES: shell
! OpenMP Version 4.5
! 2.7.4 workshare Construct
! Checks for OpenMP Parallel constructs enclosed in Workshare constructs
diff --git a/flang/test/Semantics/procinterface01.f90 b/flang/test/Semantics/procinterface01.f90
index 63c83afa67fa9..3e794b1270084 100644
--- a/flang/test/Semantics/procinterface01.f90
+++ b/flang/test/Semantics/procinterface01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for "proc-interface" semantics.
! These cases are all valid.
diff --git a/flang/test/Semantics/reshape.f90 b/flang/test/Semantics/reshape.f90
index 6fee2fdd90780..4077e72209895 100644
--- a/flang/test/Semantics/reshape.f90
+++ b/flang/test/Semantics/reshape.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Tests for RESHAPE
program reshaper
diff --git a/flang/test/Semantics/resolve01.f90 b/flang/test/Semantics/resolve01.f90
index a29a0e09025f3..09066a2ab91a3 100644
--- a/flang/test/Semantics/resolve01.f90
+++ b/flang/test/Semantics/resolve01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
integer :: x
!ERROR: The type of 'x' has already been declared
real :: x
diff --git a/flang/test/Semantics/resolve02.f90 b/flang/test/Semantics/resolve02.f90
index 8df7c1d9a9305..a66e8b59da2c6 100644
--- a/flang/test/Semantics/resolve02.f90
+++ b/flang/test/Semantics/resolve02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s
!ERROR: Declaration of 'x' conflicts with its use as internal procedure
real :: x
diff --git a/flang/test/Semantics/resolve03.f90 b/flang/test/Semantics/resolve03.f90
index d14fb79f9e4a2..4fbc6164a71c4 100644
--- a/flang/test/Semantics/resolve03.f90
+++ b/flang/test/Semantics/resolve03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
implicit none
integer :: x
!ERROR: No explicit type declared for 'y'
diff --git a/flang/test/Semantics/resolve04.f90 b/flang/test/Semantics/resolve04.f90
index 53f1bed227ca1..3bcd614811dc5 100644
--- a/flang/test/Semantics/resolve04.f90
+++ b/flang/test/Semantics/resolve04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!ERROR: No explicit type declared for 'f'
function f()
implicit none
diff --git a/flang/test/Semantics/resolve05.f90 b/flang/test/Semantics/resolve05.f90
index 365ae715bd922..34c88a7b7a73d 100644
--- a/flang/test/Semantics/resolve05.f90
+++ b/flang/test/Semantics/resolve05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
program p
integer :: p ! this is ok
end
diff --git a/flang/test/Semantics/resolve06.f90 b/flang/test/Semantics/resolve06.f90
index e2dfecaf5fbc3..b2a385b05b3fa 100644
--- a/flang/test/Semantics/resolve06.f90
+++ b/flang/test/Semantics/resolve06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
implicit none
allocatable :: x
integer :: x
diff --git a/flang/test/Semantics/resolve07.f90 b/flang/test/Semantics/resolve07.f90
index 5c1722415b921..e5dda5b28c063 100644
--- a/flang/test/Semantics/resolve07.f90
+++ b/flang/test/Semantics/resolve07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
integer :: x(2)
!ERROR: The dimensions of 'x' have already been declared
diff --git a/flang/test/Semantics/resolve08.f90 b/flang/test/Semantics/resolve08.f90
index abe25030ef51b..2a7f68d07c9f6 100644
--- a/flang/test/Semantics/resolve08.f90
+++ b/flang/test/Semantics/resolve08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
integer :: g(10)
f(i) = i + 1 ! statement function
g(i) = i + 2 ! mis-parsed array assignment
diff --git a/flang/test/Semantics/resolve09.f90 b/flang/test/Semantics/resolve09.f90
index acb9df4759711..e92eaf7fde509 100644
--- a/flang/test/Semantics/resolve09.f90
+++ b/flang/test/Semantics/resolve09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
integer :: y
procedure() :: a
procedure(real) :: b
diff --git a/flang/test/Semantics/resolve10.f90 b/flang/test/Semantics/resolve10.f90
index 5d00f7e9494f5..740195d228ddc 100644
--- a/flang/test/Semantics/resolve10.f90
+++ b/flang/test/Semantics/resolve10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
public
type t
diff --git a/flang/test/Semantics/resolve101.f90 b/flang/test/Semantics/resolve101.f90
index 0c9964f4895b0..359807e3155b3 100644
--- a/flang/test/Semantics/resolve101.f90
+++ b/flang/test/Semantics/resolve101.f90
@@ -1,4 +1,6 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
+
! Ensure that spurious errors do not arise from FinishSpecificationPart
! checking on a nested specification part.
real, save :: x
diff --git a/flang/test/Semantics/resolve102.f90 b/flang/test/Semantics/resolve102.f90
index 6b2a794976875..aae461d108d81 100644
--- a/flang/test/Semantics/resolve102.f90
+++ b/flang/test/Semantics/resolve102.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for circularly defined procedures
!ERROR: Procedure 'sub' is recursively defined. Procedures in the cycle: 'sub', 'p2'
diff --git a/flang/test/Semantics/resolve104.f90 b/flang/test/Semantics/resolve104.f90
index 90449daeb20b3..48fe9653c821e 100644
--- a/flang/test/Semantics/resolve104.f90
+++ b/flang/test/Semantics/resolve104.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test constant folding of type parameter values both a base value and a
! parameter name are supplied.
!
diff --git a/flang/test/Semantics/resolve105.f90 b/flang/test/Semantics/resolve105.f90
index 5402452511648..2e2feb8d80d5a 100644
--- a/flang/test/Semantics/resolve105.f90
+++ b/flang/test/Semantics/resolve105.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test instantiation of components that are procedure pointers.
!
program test
diff --git a/flang/test/Semantics/resolve11.f90 b/flang/test/Semantics/resolve11.f90
index 0cfd9f2ca594d..ec967279c12f1 100644
--- a/flang/test/Semantics/resolve11.f90
+++ b/flang/test/Semantics/resolve11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
public i
integer, private :: j
diff --git a/flang/test/Semantics/resolve12.f90 b/flang/test/Semantics/resolve12.f90
index a66d22d1aab6d..a04d7e6dd1575 100644
--- a/flang/test/Semantics/resolve12.f90
+++ b/flang/test/Semantics/resolve12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
end
diff --git a/flang/test/Semantics/resolve13.f90 b/flang/test/Semantics/resolve13.f90
index b3b6c94165d2b..a5647d0d417ab 100644
--- a/flang/test/Semantics/resolve13.f90
+++ b/flang/test/Semantics/resolve13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
integer :: x
integer, private :: y
diff --git a/flang/test/Semantics/resolve14.f90 b/flang/test/Semantics/resolve14.f90
index c0ac4e1e49659..c69b4d6681815 100644
--- a/flang/test/Semantics/resolve14.f90
+++ b/flang/test/Semantics/resolve14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
integer :: x
integer :: y
diff --git a/flang/test/Semantics/resolve15.f90 b/flang/test/Semantics/resolve15.f90
index b7a3e8023cecb..f3bc8befd351f 100644
--- a/flang/test/Semantics/resolve15.f90
+++ b/flang/test/Semantics/resolve15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
real :: var
interface i
diff --git a/flang/test/Semantics/resolve16.f90 b/flang/test/Semantics/resolve16.f90
index f60e41f41d677..775af3876def7 100644
--- a/flang/test/Semantics/resolve16.f90
+++ b/flang/test/Semantics/resolve16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
interface
subroutine sub0
diff --git a/flang/test/Semantics/resolve17.f90 b/flang/test/Semantics/resolve17.f90
index 425cc00146246..064340d1b7617 100644
--- a/flang/test/Semantics/resolve17.f90
+++ b/flang/test/Semantics/resolve17.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
integer :: foo
!Note: PGI, Intel, and GNU allow this; NAG and Sun do not
diff --git a/flang/test/Semantics/resolve18.f90 b/flang/test/Semantics/resolve18.f90
index 76632b9d53596..c917a68f92d24 100644
--- a/flang/test/Semantics/resolve18.f90
+++ b/flang/test/Semantics/resolve18.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
implicit none
contains
diff --git a/flang/test/Semantics/resolve19.f90 b/flang/test/Semantics/resolve19.f90
index 75f143dde53a5..7f2252ef7e9b5 100644
--- a/flang/test/Semantics/resolve19.f90
+++ b/flang/test/Semantics/resolve19.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
interface a
subroutine s(x)
diff --git a/flang/test/Semantics/resolve20.f90 b/flang/test/Semantics/resolve20.f90
index 2bb78c660e34a..6908aeb575a58 100644
--- a/flang/test/Semantics/resolve20.f90
+++ b/flang/test/Semantics/resolve20.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
abstract interface
subroutine foo
diff --git a/flang/test/Semantics/resolve21.f90 b/flang/test/Semantics/resolve21.f90
index 73634de7c7c58..bee368c4e669a 100644
--- a/flang/test/Semantics/resolve21.f90
+++ b/flang/test/Semantics/resolve21.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
type :: t
integer :: i
diff --git a/flang/test/Semantics/resolve22.f90 b/flang/test/Semantics/resolve22.f90
index 4176fd68c7383..c35f0574fce97 100644
--- a/flang/test/Semantics/resolve22.f90
+++ b/flang/test/Semantics/resolve22.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
!OK: interface followed by type with same name
interface t
diff --git a/flang/test/Semantics/resolve23.f90 b/flang/test/Semantics/resolve23.f90
index 28c97547ced9e..8a876b0b1d8ad 100644
--- a/flang/test/Semantics/resolve23.f90
+++ b/flang/test/Semantics/resolve23.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
type :: t
real :: y
diff --git a/flang/test/Semantics/resolve24.f90 b/flang/test/Semantics/resolve24.f90
index 985eebc558ea0..c6306fbea5944 100644
--- a/flang/test/Semantics/resolve24.f90
+++ b/flang/test/Semantics/resolve24.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine test1
!ERROR: Generic interface 'foo' has both a function and a subroutine
interface foo
diff --git a/flang/test/Semantics/resolve25.f90 b/flang/test/Semantics/resolve25.f90
index e31d8940bd3b6..e3fd2c267b4aa 100644
--- a/flang/test/Semantics/resolve25.f90
+++ b/flang/test/Semantics/resolve25.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
interface foo
real function s1(x)
diff --git a/flang/test/Semantics/resolve26.f90 b/flang/test/Semantics/resolve26.f90
index 1650c06577c00..96c7eef1df5b7 100644
--- a/flang/test/Semantics/resolve26.f90
+++ b/flang/test/Semantics/resolve26.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
interface
module subroutine s()
diff --git a/flang/test/Semantics/resolve27.f90 b/flang/test/Semantics/resolve27.f90
index ceb062fee315f..83ad4081881c1 100644
--- a/flang/test/Semantics/resolve27.f90
+++ b/flang/test/Semantics/resolve27.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
interface
module subroutine s()
diff --git a/flang/test/Semantics/resolve28.f90 b/flang/test/Semantics/resolve28.f90
index f11c9900420a7..2b5cc2fe5842d 100644
--- a/flang/test/Semantics/resolve28.f90
+++ b/flang/test/Semantics/resolve28.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s
type t
end type
diff --git a/flang/test/Semantics/resolve29.f90 b/flang/test/Semantics/resolve29.f90
index dbcae4109e7df..96ec9d7b7a59d 100644
--- a/flang/test/Semantics/resolve29.f90
+++ b/flang/test/Semantics/resolve29.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
type t1
end type
diff --git a/flang/test/Semantics/resolve30.f90 b/flang/test/Semantics/resolve30.f90
index 2e923284b51da..ecf488a7d1fb3 100644
--- a/flang/test/Semantics/resolve30.f90
+++ b/flang/test/Semantics/resolve30.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
integer x
block
diff --git a/flang/test/Semantics/resolve31.f90 b/flang/test/Semantics/resolve31.f90
index e6cc9e20968ec..b99d081b7c900 100644
--- a/flang/test/Semantics/resolve31.f90
+++ b/flang/test/Semantics/resolve31.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C735 If EXTENDS appears, SEQUENCE shall not appear.
! C738 The same private-or-sequence shall not appear more than once in a
! given derived-type-def .
diff --git a/flang/test/Semantics/resolve32.f90 b/flang/test/Semantics/resolve32.f90
index 43ba45a7c7f74..542cd7e734c78 100644
--- a/flang/test/Semantics/resolve32.f90
+++ b/flang/test/Semantics/resolve32.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m2
public s2, s4
private s3
diff --git a/flang/test/Semantics/resolve33.f90 b/flang/test/Semantics/resolve33.f90
index 79c2f096896c0..114479294c9da 100644
--- a/flang/test/Semantics/resolve33.f90
+++ b/flang/test/Semantics/resolve33.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Derived type parameters
! C731 The same type-param-name shall not appear more than once in a given
! derived-type-stmt.
diff --git a/flang/test/Semantics/resolve34.f90 b/flang/test/Semantics/resolve34.f90
index 4497a30ad77af..9d816e5cfa0e1 100644
--- a/flang/test/Semantics/resolve34.f90
+++ b/flang/test/Semantics/resolve34.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Extended derived types
module m1
diff --git a/flang/test/Semantics/resolve35.f90 b/flang/test/Semantics/resolve35.f90
index 9dfba8e8586af..bbefe2791a49a 100644
--- a/flang/test/Semantics/resolve35.f90
+++ b/flang/test/Semantics/resolve35.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Construct names
subroutine s1
diff --git a/flang/test/Semantics/resolve36.f90 b/flang/test/Semantics/resolve36.f90
index 55017ffc767a2..ac8595c2deff9 100644
--- a/flang/test/Semantics/resolve36.f90
+++ b/flang/test/Semantics/resolve36.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1568 The procedure-name shall have been declared to be a separate module
! procedure in the containing program unit or an ancestor of that program unit.
diff --git a/flang/test/Semantics/resolve37.f90 b/flang/test/Semantics/resolve37.f90
index a33b0a3541b50..19c09fb9ba12f 100644
--- a/flang/test/Semantics/resolve37.f90
+++ b/flang/test/Semantics/resolve37.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve38.f90 b/flang/test/Semantics/resolve38.f90
index 2a4e88e1e32f4..44f5f771d6298 100644
--- a/flang/test/Semantics/resolve38.f90
+++ b/flang/test/Semantics/resolve38.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C772
module m1
type t1
diff --git a/flang/test/Semantics/resolve39.f90 b/flang/test/Semantics/resolve39.f90
index c3eca9fa274ff..6f27ab22e2ceb 100644
--- a/flang/test/Semantics/resolve39.f90
+++ b/flang/test/Semantics/resolve39.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
implicit none
real(8) :: x = 2.0
diff --git a/flang/test/Semantics/resolve40.f90 b/flang/test/Semantics/resolve40.f90
index eb8150d0f59bf..32d247df4db8b 100644
--- a/flang/test/Semantics/resolve40.f90
+++ b/flang/test/Semantics/resolve40.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
namelist /nl/x
block
diff --git a/flang/test/Semantics/resolve41.f90 b/flang/test/Semantics/resolve41.f90
index de864cea210d2..15eb1b95fa924 100644
--- a/flang/test/Semantics/resolve41.f90
+++ b/flang/test/Semantics/resolve41.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
implicit none
real, parameter :: a = 8.0
diff --git a/flang/test/Semantics/resolve42.f90 b/flang/test/Semantics/resolve42.f90
index f4063970287e7..6138a3ebdc530 100644
--- a/flang/test/Semantics/resolve42.f90
+++ b/flang/test/Semantics/resolve42.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1
!ERROR: Array 'z' without ALLOCATABLE or POINTER attribute must have explicit shape
common x, y(4), z(:)
diff --git a/flang/test/Semantics/resolve43.f90 b/flang/test/Semantics/resolve43.f90
index 1cd97f9cf6f61..27677de89d004 100644
--- a/flang/test/Semantics/resolve43.f90
+++ b/flang/test/Semantics/resolve43.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve44.f90 b/flang/test/Semantics/resolve44.f90
index f11f6a5eefd5f..34c4d815cbcdf 100644
--- a/flang/test/Semantics/resolve44.f90
+++ b/flang/test/Semantics/resolve44.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Error tests for recursive use of derived types.
! C744 If neither the POINTER nor the ALLOCATABLE attribute is specified, the
! declaration-type-spec in the component-def-stmt shall specify an intrinsic
diff --git a/flang/test/Semantics/resolve45.f90 b/flang/test/Semantics/resolve45.f90
index 4b0b4d93c14f0..fb9ef37e628f4 100644
--- a/flang/test/Semantics/resolve45.f90
+++ b/flang/test/Semantics/resolve45.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
function f1(x, y)
integer x
!ERROR: SAVE attribute may not be applied to dummy argument 'x'
diff --git a/flang/test/Semantics/resolve46.f90 b/flang/test/Semantics/resolve46.f90
index dcce05ebd5f0f..c762435d63ab8 100644
--- a/flang/test/Semantics/resolve46.f90
+++ b/flang/test/Semantics/resolve46.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C1030 - pointers to intrinsic procedures
program main
intrinsic :: cos ! a specific & generic intrinsic name
diff --git a/flang/test/Semantics/resolve47.f90 b/flang/test/Semantics/resolve47.f90
index 723754bfe9c30..339fc6126fccd 100644
--- a/flang/test/Semantics/resolve47.f90
+++ b/flang/test/Semantics/resolve47.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
!ERROR: Logical constant '.true.' may not be used as a defined operator
interface operator(.TRUE.)
diff --git a/flang/test/Semantics/resolve48.f90 b/flang/test/Semantics/resolve48.f90
index f6928d72d7167..66e1eaabb12be 100644
--- a/flang/test/Semantics/resolve48.f90
+++ b/flang/test/Semantics/resolve48.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test correct use-association of a derived type.
module m1
implicit none
diff --git a/flang/test/Semantics/resolve49.f90 b/flang/test/Semantics/resolve49.f90
index 2c0df6ba752c9..424f99ac2440e 100644
--- a/flang/test/Semantics/resolve49.f90
+++ b/flang/test/Semantics/resolve49.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test section subscript
program p1
real :: a(10,10)
diff --git a/flang/test/Semantics/resolve50.f90 b/flang/test/Semantics/resolve50.f90
index 1889a5a2fe8e0..a23cd195aa010 100644
--- a/flang/test/Semantics/resolve50.f90
+++ b/flang/test/Semantics/resolve50.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test coarray association in CHANGE TEAM statement
subroutine s1
diff --git a/flang/test/Semantics/resolve51.f90 b/flang/test/Semantics/resolve51.f90
index 08ff4d133b175..4e8ab5ea3c496 100644
--- a/flang/test/Semantics/resolve51.f90
+++ b/flang/test/Semantics/resolve51.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test SELECT TYPE errors: C1157
subroutine s1()
diff --git a/flang/test/Semantics/resolve52.f90 b/flang/test/Semantics/resolve52.f90
index 2e7484065fc1f..c69fa68f874c2 100644
--- a/flang/test/Semantics/resolve52.f90
+++ b/flang/test/Semantics/resolve52.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve53.f90 b/flang/test/Semantics/resolve53.f90
index 89d07cb2a7b93..357a9d067c7ba 100644
--- a/flang/test/Semantics/resolve53.f90
+++ b/flang/test/Semantics/resolve53.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 15.4.3.4.5 Restrictions on generic declarations
! Specific procedures of generic interfaces must be distinguishable.
diff --git a/flang/test/Semantics/resolve54.f90 b/flang/test/Semantics/resolve54.f90
index f0a07403b819f..bb53d056811f1 100644
--- a/flang/test/Semantics/resolve54.f90
+++ b/flang/test/Semantics/resolve54.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests based on examples in C.10.6
! C.10.6(10)
diff --git a/flang/test/Semantics/resolve55.f90 b/flang/test/Semantics/resolve55.f90
index 80aad3c261578..b66099dc1dfb1 100644
--- a/flang/test/Semantics/resolve55.f90
+++ b/flang/test/Semantics/resolve55.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve56.f90 b/flang/test/Semantics/resolve56.f90
index 29585c4d37b13..0de93ef6c4567 100644
--- a/flang/test/Semantics/resolve56.f90
+++ b/flang/test/Semantics/resolve56.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve57.f90 b/flang/test/Semantics/resolve57.f90
index 0ce006c3235f1..2b917b81fe206 100644
--- a/flang/test/Semantics/resolve57.f90
+++ b/flang/test/Semantics/resolve57.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve58.f90 b/flang/test/Semantics/resolve58.f90
index ea814bd99eac7..744437992f72d 100644
--- a/flang/test/Semantics/resolve58.f90
+++ b/flang/test/Semantics/resolve58.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1(x, y)
!ERROR: Array pointer 'x' must have deferred shape or assumed rank
real, pointer :: x(1:) ! C832
diff --git a/flang/test/Semantics/resolve59.f90 b/flang/test/Semantics/resolve59.f90
index 76f619cd4e5ef..09085fa221ffb 100644
--- a/flang/test/Semantics/resolve59.f90
+++ b/flang/test/Semantics/resolve59.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Testing 15.6.2.2 point 4 (What function-name refers to depending on the
! presence of RESULT).
diff --git a/flang/test/Semantics/resolve60.f90 b/flang/test/Semantics/resolve60.f90
index a03079f3bac78..336d8e91c057b 100644
--- a/flang/test/Semantics/resolve60.f90
+++ b/flang/test/Semantics/resolve60.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Testing 7.6 enum
! OK
diff --git a/flang/test/Semantics/resolve61.f90 b/flang/test/Semantics/resolve61.f90
index 3df186106ea5c..031aee29e9816 100644
--- a/flang/test/Semantics/resolve61.f90
+++ b/flang/test/Semantics/resolve61.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
program p1
integer(8) :: a, b, c, d
pointer(a, b)
diff --git a/flang/test/Semantics/resolve62.f90 b/flang/test/Semantics/resolve62.f90
index 7314a5fe6ec48..7de82d401f77e 100644
--- a/flang/test/Semantics/resolve62.f90
+++ b/flang/test/Semantics/resolve62.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Resolve generic based on number of arguments
subroutine s1
interface f
diff --git a/flang/test/Semantics/resolve63.f90 b/flang/test/Semantics/resolve63.f90
index 7ae6458a691fd..2d38e90d6175b 100644
--- a/flang/test/Semantics/resolve63.f90
+++ b/flang/test/Semantics/resolve63.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Invalid operand types when user-defined operator is available
module m1
type :: t
diff --git a/flang/test/Semantics/resolve64.f90 b/flang/test/Semantics/resolve64.f90
index 829c49accf60d..40d16ce27980e 100644
--- a/flang/test/Semantics/resolve64.f90
+++ b/flang/test/Semantics/resolve64.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang -flogical-abbreviations -fxor-operator
+! REQUIRES: shell
! Like m4 in resolve63 but compiled with
diff erent options.
! Alternate operators are enabled so treat these as intrinsic.
diff --git a/flang/test/Semantics/resolve65.f90 b/flang/test/Semantics/resolve65.f90
index 14e8715fbf6a5..701c53a17cd3c 100644
--- a/flang/test/Semantics/resolve65.f90
+++ b/flang/test/Semantics/resolve65.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test restrictions on what subprograms can be used for defined assignment.
module m1
diff --git a/flang/test/Semantics/resolve66.f90 b/flang/test/Semantics/resolve66.f90
index f812cfba61991..7474f7fb6c055 100644
--- a/flang/test/Semantics/resolve66.f90
+++ b/flang/test/Semantics/resolve66.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that user-defined assignment is used in the right places
module m1
diff --git a/flang/test/Semantics/resolve67.f90 b/flang/test/Semantics/resolve67.f90
index ce5ae8b5f5803..2c554af29c8c7 100644
--- a/flang/test/Semantics/resolve67.f90
+++ b/flang/test/Semantics/resolve67.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test restrictions on what subprograms can be used for defined operators.
! See: 15.4.3.4.2
diff --git a/flang/test/Semantics/resolve68.f90 b/flang/test/Semantics/resolve68.f90
index 67eb1a31bd53d..a88ab007f8382 100644
--- a/flang/test/Semantics/resolve68.f90
+++ b/flang/test/Semantics/resolve68.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test resolution of type-bound generics.
module m1
diff --git a/flang/test/Semantics/resolve69.f90 b/flang/test/Semantics/resolve69.f90
index ecf1077ee01f2..f6ce5c70d1e70 100644
--- a/flang/test/Semantics/resolve69.f90
+++ b/flang/test/Semantics/resolve69.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1()
! C701 (R701) The type-param-value for a kind type parameter shall be a
! constant expression.
diff --git a/flang/test/Semantics/resolve70.f90 b/flang/test/Semantics/resolve70.f90
index 6fe50081e8ef5..60c488d4b52ac 100644
--- a/flang/test/Semantics/resolve70.f90
+++ b/flang/test/Semantics/resolve70.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve71.f90 b/flang/test/Semantics/resolve71.f90
index bcebd7c269e5f..5bdbbda306ab4 100644
--- a/flang/test/Semantics/resolve71.f90
+++ b/flang/test/Semantics/resolve71.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve72.f90 b/flang/test/Semantics/resolve72.f90
index 4b955f3f43a9c..6f70e9ae256d7 100644
--- a/flang/test/Semantics/resolve72.f90
+++ b/flang/test/Semantics/resolve72.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve73.f90 b/flang/test/Semantics/resolve73.f90
index 4e293468d577a..90656966d4b17 100644
--- a/flang/test/Semantics/resolve73.f90
+++ b/flang/test/Semantics/resolve73.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C721 A type-param-value of * shall be used only
! * to declare a dummy argument,
! * to declare a named constant,
diff --git a/flang/test/Semantics/resolve74.f90 b/flang/test/Semantics/resolve74.f90
index 1dedb189b7db8..12be78fc08c57 100644
--- a/flang/test/Semantics/resolve74.f90
+++ b/flang/test/Semantics/resolve74.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve75.f90 b/flang/test/Semantics/resolve75.f90
index 1f49639a606f8..23269030653ea 100644
--- a/flang/test/Semantics/resolve75.f90
+++ b/flang/test/Semantics/resolve75.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/resolve76.f90 b/flang/test/Semantics/resolve76.f90
index 14afed152d3e5..2e594aa728e64 100644
--- a/flang/test/Semantics/resolve76.f90
+++ b/flang/test/Semantics/resolve76.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 15.6.2.5(3)
diff --git a/flang/test/Semantics/resolve77.f90 b/flang/test/Semantics/resolve77.f90
index e38efab4675fb..3c413848a3baa 100644
--- a/flang/test/Semantics/resolve77.f90
+++ b/flang/test/Semantics/resolve77.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests valid and invalid usage of forward references to procedures
! in specification expressions.
module m
diff --git a/flang/test/Semantics/resolve78.f90 b/flang/test/Semantics/resolve78.f90
index 99b15dbad80e0..296c198b19873 100644
--- a/flang/test/Semantics/resolve78.f90
+++ b/flang/test/Semantics/resolve78.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
! C743 No component-attr-spec shall appear more than once in a
! given component-def-stmt.
diff --git a/flang/test/Semantics/resolve79.f90 b/flang/test/Semantics/resolve79.f90
index 822e1f8642424..8f828fcbe8b86 100644
--- a/flang/test/Semantics/resolve79.f90
+++ b/flang/test/Semantics/resolve79.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
! C755 The same proc-component-attr-spec shall not appear more than once in a
! given proc-component-def-stmt.
diff --git a/flang/test/Semantics/resolve80.f90 b/flang/test/Semantics/resolve80.f90
index 01797182d6d91..dcc544f117c2f 100644
--- a/flang/test/Semantics/resolve80.f90
+++ b/flang/test/Semantics/resolve80.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
!C778 The same binding-attr shall not appear more than once in a given
!binding-attr-list.
diff --git a/flang/test/Semantics/resolve81.f90 b/flang/test/Semantics/resolve81.f90
index 66b05ca196dcf..cd74e100e4965 100644
--- a/flang/test/Semantics/resolve81.f90
+++ b/flang/test/Semantics/resolve81.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C801 The same attr-spec shall not appear more than once in a given
! type-declaration-stmt.
!
diff --git a/flang/test/Semantics/resolve82.f90 b/flang/test/Semantics/resolve82.f90
index 63ce1dadf7267..461bd3c9a0abd 100644
--- a/flang/test/Semantics/resolve82.f90
+++ b/flang/test/Semantics/resolve82.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C815 An entity shall not be explicitly given any attribute more than once in
! a scoping unit.
!
diff --git a/flang/test/Semantics/resolve83.f90 b/flang/test/Semantics/resolve83.f90
index 2361700abaaf3..8d28f7f25b3ae 100644
--- a/flang/test/Semantics/resolve83.f90
+++ b/flang/test/Semantics/resolve83.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
! For C1543
diff --git a/flang/test/Semantics/resolve84.f90 b/flang/test/Semantics/resolve84.f90
index 251178a4dbd78..6a7ff3ed4e968 100644
--- a/flang/test/Semantics/resolve84.f90
+++ b/flang/test/Semantics/resolve84.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C729 A derived type type-name shall not be DOUBLEPRECISION or the same as
! the name of any intrinsic type defined in this document.
subroutine s()
diff --git a/flang/test/Semantics/resolve85.f90 b/flang/test/Semantics/resolve85.f90
index 59cb3e2db40ec..c1817b9ae6599 100644
--- a/flang/test/Semantics/resolve85.f90
+++ b/flang/test/Semantics/resolve85.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m
! C730 The same type-attr-spec shall not appear more than once in a given
! derived-type-stmt.
diff --git a/flang/test/Semantics/resolve86.f90 b/flang/test/Semantics/resolve86.f90
index b2d116f202721..c4950b40fcf52 100644
--- a/flang/test/Semantics/resolve86.f90
+++ b/flang/test/Semantics/resolve86.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C736 If EXTENDS appears and the type being defined has a coarray ultimate
! component, its parent type shall have a coarray ultimate component.
!
diff --git a/flang/test/Semantics/resolve87.f90 b/flang/test/Semantics/resolve87.f90
index 1eb7662b3d349..abdc388dd9c44 100644
--- a/flang/test/Semantics/resolve87.f90
+++ b/flang/test/Semantics/resolve87.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C737 If EXTENDS appears and the type being defined has a potential
! subobject component of type EVENT_TYPE or LOCK_TYPE from the intrinsic
! module ISO_FORTRAN_ENV, its parent type shall be EVENT_TYPE or LOCK_TYPE
diff --git a/flang/test/Semantics/resolve88.f90 b/flang/test/Semantics/resolve88.f90
index 43e9ea1a2d22e..a0cb96bf0d6bf 100644
--- a/flang/test/Semantics/resolve88.f90
+++ b/flang/test/Semantics/resolve88.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C746, C747, and C748
module m
use ISO_FORTRAN_ENV
diff --git a/flang/test/Semantics/resolve89.f90 b/flang/test/Semantics/resolve89.f90
index e5a595dbe41f5..f37ce1ed9513d 100644
--- a/flang/test/Semantics/resolve89.f90
+++ b/flang/test/Semantics/resolve89.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C750 Each bound in the explicit-shape-spec shall be a specification
! expression in which there are no references to specification functions or
! the intrinsic functions ALLOCATED, ASSOCIATED, EXTENDS_TYPE_OF, PRESENT,
diff --git a/flang/test/Semantics/resolve90.f90 b/flang/test/Semantics/resolve90.f90
index f93850159611e..c0aa420e59eb2 100644
--- a/flang/test/Semantics/resolve90.f90
+++ b/flang/test/Semantics/resolve90.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Testing for pointer constant, along with :
! C751 A component shall not have both the ALLOCATABLE and POINTER attributes.
! C752 If the CONTIGUOUS attribute is specified, the component shall be an
diff --git a/flang/test/Semantics/resolve91.f90 b/flang/test/Semantics/resolve91.f90
index 292dc9eef33d6..44b1dc5e33300 100644
--- a/flang/test/Semantics/resolve91.f90
+++ b/flang/test/Semantics/resolve91.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for duplicate definitions and initializations, mostly of procedures
module m
procedure(real), pointer :: p
diff --git a/flang/test/Semantics/resolve92.f90 b/flang/test/Semantics/resolve92.f90
index f7469d91ac559..4b7e7955471bf 100644
--- a/flang/test/Semantics/resolve92.f90
+++ b/flang/test/Semantics/resolve92.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
implicit none
diff --git a/flang/test/Semantics/resolve93.f90 b/flang/test/Semantics/resolve93.f90
index 78521be4fd466..5454267136dfc 100644
--- a/flang/test/Semantics/resolve93.f90
+++ b/flang/test/Semantics/resolve93.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
subroutine s1()
character(10) str
character(10) str1
diff --git a/flang/test/Semantics/resolve94.f90 b/flang/test/Semantics/resolve94.f90
index ac055d8efeb5b..bec63f3db722f 100644
--- a/flang/test/Semantics/resolve94.f90
+++ b/flang/test/Semantics/resolve94.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! C929 No specifier shall appear more than once in a given
! image-selector-spec-list.
! C930 TEAM and TEAM_NUMBER shall not both appear in the same
diff --git a/flang/test/Semantics/resolve95.f90 b/flang/test/Semantics/resolve95.f90
index e913b59968765..38103c34c3b54 100644
--- a/flang/test/Semantics/resolve95.f90
+++ b/flang/test/Semantics/resolve95.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test SELECT TYPE and ASSOCIATE errors: C1103
subroutine s1()
diff --git a/flang/test/Semantics/resolve96.f90 b/flang/test/Semantics/resolve96.f90
index 21d5983b73ca6..6cb61804e12be 100644
--- a/flang/test/Semantics/resolve96.f90
+++ b/flang/test/Semantics/resolve96.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check distinguishability for specific procedures of defined operators and
! assignment. These are
diff erent from names because there a normal generic
diff --git a/flang/test/Semantics/resolve97.f90 b/flang/test/Semantics/resolve97.f90
index ecdfe593cc746..fff143e9e1c13 100644
--- a/flang/test/Semantics/resolve97.f90
+++ b/flang/test/Semantics/resolve97.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Check errors from illegal (10.1.12 para 2) forward references
! in specification expressions to entities declared later in the
diff --git a/flang/test/Semantics/resolve98.f90 b/flang/test/Semantics/resolve98.f90
index d000ff9cadaac..c5fe44125549b 100644
--- a/flang/test/Semantics/resolve98.f90
+++ b/flang/test/Semantics/resolve98.f90
@@ -1,5 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
-
+! REQUIRES: shell
! Errors when comparing LOGICAL operands
program testCompare
diff --git a/flang/test/Semantics/resolve99.f90 b/flang/test/Semantics/resolve99.f90
index cbd708f31c0fc..ae10d563f9595 100644
--- a/flang/test/Semantics/resolve99.f90
+++ b/flang/test/Semantics/resolve99.f90
@@ -1,5 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
-
+! REQUIRES: shell
! Tests for the index-name of a FORALL statement
module m1
diff --git a/flang/test/Semantics/save01.f90 b/flang/test/Semantics/save01.f90
index 444d927f42655..beffcc98cc55e 100644
--- a/flang/test/Semantics/save01.f90
+++ b/flang/test/Semantics/save01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
MODULE test
SAVE
CONTAINS
diff --git a/flang/test/Semantics/select-rank.f90 b/flang/test/Semantics/select-rank.f90
index 1746c2f906e0a..e8571b81762c1 100644
--- a/flang/test/Semantics/select-rank.f90
+++ b/flang/test/Semantics/select-rank.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Tests for SELECT RANK Construct(R1148)
program select_rank
diff --git a/flang/test/Semantics/select-rank02.f90 b/flang/test/Semantics/select-rank02.f90
index 97265783acd7a..acf789c696410 100644
--- a/flang/test/Semantics/select-rank02.f90
+++ b/flang/test/Semantics/select-rank02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
!Shape analysis related tests for SELECT RANK Construct(R1148)
program select_rank
diff --git a/flang/test/Semantics/selecttype01.f90 b/flang/test/Semantics/selecttype01.f90
index 4bb400f15a0ac..a564bd8c373e1 100644
--- a/flang/test/Semantics/selecttype01.f90
+++ b/flang/test/Semantics/selecttype01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test for checking select type constraints,
module m1
use ISO_C_BINDING
diff --git a/flang/test/Semantics/selecttype02.f90 b/flang/test/Semantics/selecttype02.f90
index 84cbedb2c7725..309425013a779 100644
--- a/flang/test/Semantics/selecttype02.f90
+++ b/flang/test/Semantics/selecttype02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
module m1
use ISO_C_BINDING
type shape
diff --git a/flang/test/Semantics/selecttype03.f90 b/flang/test/Semantics/selecttype03.f90
index e6c21397318e7..c4f4143eb087d 100644
--- a/flang/test/Semantics/selecttype03.f90
+++ b/flang/test/Semantics/selecttype03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test various conditions in C1158.
implicit none
diff --git a/flang/test/Semantics/separate-mp01.f90 b/flang/test/Semantics/separate-mp01.f90
index 0126ffac7e8ce..03b27e1d7b23a 100644
--- a/flang/test/Semantics/separate-mp01.f90
+++ b/flang/test/Semantics/separate-mp01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! case 1: ma_create_new_fun' was not declared a separate module procedure
module m1
diff --git a/flang/test/Semantics/separate-mp02.f90 b/flang/test/Semantics/separate-mp02.f90
index f68ab1bb6e7d5..2c0ac61e9134a 100644
--- a/flang/test/Semantics/separate-mp02.f90
+++ b/flang/test/Semantics/separate-mp02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! When a module subprogram has the MODULE prefix the following must match
! with the corresponding separate module procedure interface body:
diff --git a/flang/test/Semantics/shape.f90 b/flang/test/Semantics/shape.f90
index ec99136817808..00c7bfd46820b 100644
--- a/flang/test/Semantics/shape.f90
+++ b/flang/test/Semantics/shape.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test comparisons that use the intrinsic SHAPE() as an operand
program testShape
contains
diff --git a/flang/test/Semantics/spec-expr.f90 b/flang/test/Semantics/spec-expr.f90
index e9f3442484727..c88483a7c5cf4 100644
--- a/flang/test/Semantics/spec-expr.f90
+++ b/flang/test/Semantics/spec-expr.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Tests for the 14 items that specify a "specification expression" in section
! 10.1.11
diff --git a/flang/test/Semantics/stop01.f90 b/flang/test/Semantics/stop01.f90
index ea041723fb0c8..540cec54f8f12 100644
--- a/flang/test/Semantics/stop01.f90
+++ b/flang/test/Semantics/stop01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
program main
implicit none
integer :: i = -1
diff --git a/flang/test/Semantics/structconst01.f90 b/flang/test/Semantics/structconst01.f90
index 96e2dbc41aa36..c225d26a65c23 100644
--- a/flang/test/Semantics/structconst01.f90
+++ b/flang/test/Semantics/structconst01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/structconst02.f90 b/flang/test/Semantics/structconst02.f90
index b8df1a46e964e..ff523c28c7a29 100644
--- a/flang/test/Semantics/structconst02.f90
+++ b/flang/test/Semantics/structconst02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! Error tests for structure constructors: per-component type
! (in)compatibility.
diff --git a/flang/test/Semantics/structconst03.f90 b/flang/test/Semantics/structconst03.f90
index 221b2cebdd40a..70694f03ad022 100644
--- a/flang/test/Semantics/structconst03.f90
+++ b/flang/test/Semantics/structconst03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/structconst04.f90 b/flang/test/Semantics/structconst04.f90
index 535d20755e9a3..728a4c74d28be 100644
--- a/flang/test/Semantics/structconst04.f90
+++ b/flang/test/Semantics/structconst04.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_errors.sh %s %t %flang_fc1
+! REQUIRES: shell
! 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/flang/test/Semantics/symbol01.f90 b/flang/test/Semantics/symbol01.f90
index 08a4709cf911f..359c183c70472 100644
--- a/flang/test/Semantics/symbol01.f90
+++ b/flang/test/Semantics/symbol01.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test that intent-stmt and subprogram prefix and suffix are resolved.
!DEF: /m Module
diff --git a/flang/test/Semantics/symbol02.f90 b/flang/test/Semantics/symbol02.f90
index fbe39f42ac9cf..b266e70d56eb7 100644
--- a/flang/test/Semantics/symbol02.f90
+++ b/flang/test/Semantics/symbol02.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test host association in module subroutine and internal subroutine.
!DEF: /m Module
diff --git a/flang/test/Semantics/symbol03.f90 b/flang/test/Semantics/symbol03.f90
index 84468dfbb4bfc..93c56d889c0cf 100644
--- a/flang/test/Semantics/symbol03.f90
+++ b/flang/test/Semantics/symbol03.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Test host association in internal subroutine of main program.
!DEF: /main MainProgram
diff --git a/flang/test/Semantics/symbol05.f90 b/flang/test/Semantics/symbol05.f90
index 6142168d3bea0..facaef5e01d54 100644
--- a/flang/test/Semantics/symbol05.f90
+++ b/flang/test/Semantics/symbol05.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Explicit and implicit entities in blocks
!DEF: /s1 (Subroutine) Subprogram
diff --git a/flang/test/Semantics/symbol06.f90 b/flang/test/Semantics/symbol06.f90
index 026d352dad95d..1faa17793bb8d 100644
--- a/flang/test/Semantics/symbol06.f90
+++ b/flang/test/Semantics/symbol06.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /main MainProgram
program main
!DEF: /main/t1 DerivedType
diff --git a/flang/test/Semantics/symbol07.f90 b/flang/test/Semantics/symbol07.f90
index cbc22e5dd2a5f..b4cfbcc0efebc 100644
--- a/flang/test/Semantics/symbol07.f90
+++ b/flang/test/Semantics/symbol07.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /main MainProgram
program main
implicit complex(z)
diff --git a/flang/test/Semantics/symbol08.f90 b/flang/test/Semantics/symbol08.f90
index 0c6c335a605bb..fe2c40b509789 100644
--- a/flang/test/Semantics/symbol08.f90
+++ b/flang/test/Semantics/symbol08.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /main MainProgram
program main
!DEF: /main/x POINTER ObjectEntity REAL(4)
diff --git a/flang/test/Semantics/symbol09.f90 b/flang/test/Semantics/symbol09.f90
index 260f54e41d075..95a142195d77f 100644
--- a/flang/test/Semantics/symbol09.f90
+++ b/flang/test/Semantics/symbol09.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /s1 (Subroutine) Subprogram
subroutine s1
!DEF: /s1/a ObjectEntity REAL(4)
diff --git a/flang/test/Semantics/symbol10.f90 b/flang/test/Semantics/symbol10.f90
index 64849fea44775..ea366789a4fcd 100644
--- a/flang/test/Semantics/symbol10.f90
+++ b/flang/test/Semantics/symbol10.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /m1 Module
module m1
contains
diff --git a/flang/test/Semantics/symbol11.f90 b/flang/test/Semantics/symbol11.f90
index 0dfafcd2555c7..ebdf65f35d658 100644
--- a/flang/test/Semantics/symbol11.f90
+++ b/flang/test/Semantics/symbol11.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
!DEF: /s1 (Subroutine) Subprogram
subroutine s1
implicit none
diff --git a/flang/test/Semantics/symbol12.f90 b/flang/test/Semantics/symbol12.f90
index cffcbdfa7e0b2..ee165cf2d3c11 100644
--- a/flang/test/Semantics/symbol12.f90
+++ b/flang/test/Semantics/symbol12.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Verify that SAVE attribute is propagated by EQUIVALENCE
!DEF: /s1 (Subroutine) Subprogram
diff --git a/flang/test/Semantics/symbol13.f90 b/flang/test/Semantics/symbol13.f90
index 5a4ad6236fcba..17bd99e6ad170 100644
--- a/flang/test/Semantics/symbol13.f90
+++ b/flang/test/Semantics/symbol13.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Old-style "*length" specifiers (R723)
!DEF: /f1 (Function) Subprogram CHARACTER(1_8,1)
diff --git a/flang/test/Semantics/symbol14.f90 b/flang/test/Semantics/symbol14.f90
index 3412500b1d18e..037db56c4478e 100644
--- a/flang/test/Semantics/symbol14.f90
+++ b/flang/test/Semantics/symbol14.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! "Bare" uses of type parameters and components
!DEF: /MainProgram1/t1 DerivedType
diff --git a/flang/test/Semantics/symbol15.f90 b/flang/test/Semantics/symbol15.f90
index b51445507876e..ff534baedb554 100644
--- a/flang/test/Semantics/symbol15.f90
+++ b/flang/test/Semantics/symbol15.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Forward references in pointer initializers and TBP bindings.
!DEF: /m Module
diff --git a/flang/test/Semantics/symbol16.f90 b/flang/test/Semantics/symbol16.f90
index def7dc7bcf4ff..ea198b047bfc3 100644
--- a/flang/test/Semantics/symbol16.f90
+++ b/flang/test/Semantics/symbol16.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Statement functions
!DEF: /p1 MainProgram
diff --git a/flang/test/Semantics/symbol17.f90 b/flang/test/Semantics/symbol17.f90
index 5906a47124370..0b6b930804d91 100644
--- a/flang/test/Semantics/symbol17.f90
+++ b/flang/test/Semantics/symbol17.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Forward references to derived types (non-error cases)
!DEF: /main MainProgram
diff --git a/flang/test/Semantics/symbol18.f90 b/flang/test/Semantics/symbol18.f90
index fee435254307c..44fdcd51b8720 100644
--- a/flang/test/Semantics/symbol18.f90
+++ b/flang/test/Semantics/symbol18.f90
@@ -1,4 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
+! REQUIRES: shell
! Intrinsic function in type declaration statement: type is ignored
diff --git a/flang/test/Semantics/symbol19.f90 b/flang/test/Semantics/symbol19.f90
index 677d0af2055cc..d8f4cd5128d26 100644
--- a/flang/test/Semantics/symbol19.f90
+++ b/flang/test/Semantics/symbol19.f90
@@ -1,5 +1,5 @@
! RUN: %S/test_symbols.sh %s %t %flang_fc1
-
+! REQUIRES: shell
! Test that a procedure is only implicitly resolved as an intrinsic function
! (resp. subroutine) if this is a function (resp. subroutine)
diff --git a/flang/test/lit.site.cfg.py.in b/flang/test/lit.site.cfg.py.in
index 7a59280283813..17822b0b7d2e4 100644
--- a/flang/test/lit.site.cfg.py.in
+++ b/flang/test/lit.site.cfg.py.in
@@ -3,6 +3,7 @@
import sys
config.llvm_tools_dir = "@LLVM_TOOLS_DIR@"
+config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
config.flang_obj_root = "@FLANG_BINARY_DIR@"
config.flang_src_dir = "@FLANG_SOURCE_DIR@"
config.flang_tools_dir = "@FLANG_TOOLS_DIR@"
More information about the flang-commits
mailing list