llvm-project/clang/test/PCH
Fangrui Song 83ea47acd7 [test] Make tests pass regardless of gnu++14/gnu++17 default
GCC from 11 onwards defaults to -std=gnu++17 for C++ source files. We want to do the same
(https://discourse.llvm.org/t/c-objc-switch-to-gnu-17-as-the-default-dialect/64360).
Split RUN lines, adjust `-verify`, or add `__cplusplus < 201703L` or `-Wno-dynamic-exception-spec`,
so that tests will pass regardless of gnu++14/gnu++17 default.

We have a desire to mark a test compatible with multiple language standards.
There are ongoing discussions how to add markers in the long term:

* https://discourse.llvm.org/t/iterating-lit-run-lines/62596
* https://discourse.llvm.org/t/lit-run-a-run-line-multiple-times-with-different-replacements/64932

As a workaround in the short term, add lit substitutions `%std_cxx98-`,
`%std_cxx11-14`, etc. They can be used for tests which work across multiple
language standards. If a range has `n` standards, run lit multiple times, with
`LIT_CLANG_STD_GROUP=0`, `LIT_CLANG_STD_GROUP=1`, etc to cover all `n` standards.

Reviewed By: #clang-language-wg, aaron.ballman

Differential Revision: https://reviews.llvm.org/D131464
2022-09-04 05:29:32 +00:00
..
Inputs
__va_list_tag-typedef.c
__va_list_tag.c
aarch64-sve-types.c
aix-pragma-pack.c
arc-blocks.mm
arc.m
asm.c
asm.h
attrs-PR8406.c
attrs.c
badpch.c
block-helpers.cpp
block-helpers.h
blocks.c
blocks.h
btf_type_tag_attr.c
builtin-bit-cast.cpp
builtin-is-constant-evaluated.cpp
builtin-macro.c
builtins.c
builtins.h
captured-stmt.cpp
case-insensitive-include.c
chain-categories.m
chain-categories2.m
chain-class-extension.m
chain-conversion-lookup.cpp
chain-cxx.cpp
chain-decls.c
chain-default-argument-instantiation.cpp
chain-empty-initial-namespace.cpp
chain-ext_vector.c
chain-external-defs.c
chain-friend-instantiation.cpp
chain-implicit-definition.cpp
chain-invalid-code.cpp
chain-late-anonymous-namespace.cpp
chain-macro-override.c
chain-macro.c
chain-openmp-allocate.cpp
chain-openmp-threadprivate.cpp
chain-pending-instantiations.cpp
chain-predecl.h
chain-predecl.m
chain-remap-types.m
chain-selectors.m
chain-staticvar-instantiation.cpp
chain-trivial.c
chain-typo-corrections.cpp
changed-files.c
check-deserializations.cpp
cli-macro.c
cmdline-include.c
cmdline-include1.h
cmdline-include2.h
codegen.cpp
coroutines.cpp
crash-12631281.cpp
cuda-kernel-call.cu
cxx-alias-decl.cpp
cxx-alias-decl.h
cxx-attrs-packexpansion.cpp
cxx-chain-function-template.cpp
cxx-char-literal.cpp
cxx-constexpr.cpp
cxx-dependent-sized-ext-vector.cpp
cxx-explicit-specifier.cpp
cxx-exprs.cpp
cxx-for-range.cpp
cxx-for-range.h
cxx-friends.cpp
cxx-friends.h
cxx-functions.cpp [test] Make tests pass regardless of gnu++14/gnu++17 default 2022-09-04 05:29:32 +00:00
cxx-functions.h
cxx-implicit-moves.cpp
cxx-invalid-destructor.cpp
cxx-invalid-destructor.h
cxx-key-functions.cpp
cxx-mangling.cpp
cxx-member-init.cpp
cxx-method.cpp
cxx-ms-function-specialization-class-scope.cpp
cxx-ms-function-specialization-class-scope.h
cxx-namespaces.cpp
cxx-namespaces.h
cxx-offsetof-base.cpp
cxx-offsetof-base.h
cxx-recovery-expr.cpp
cxx-reference.cpp
cxx-reference.h
cxx-required-decls.cpp
cxx-required-decls.h
cxx-static_assert.cpp Rewording "static_assert" diagnostics 2022-07-25 07:22:54 -04:00
cxx-templates.cpp [clang][sema] Print more information about failed static assertions 2022-08-11 08:44:38 +02:00
cxx-templates.h
cxx-trailing-return.cpp
cxx-traits.cpp
cxx-traits.h
cxx-typeid.cpp
cxx-typeid.h
cxx-using.cpp
cxx-using.h
cxx-variadic-templates-with-default-params.cpp
cxx-variadic-templates.cpp
cxx-variadic-templates.h
cxx0x-default-delete.cpp
cxx0x-delegating-ctors.cpp
cxx1y-decltype-auto.cpp
cxx1y-deduced-return-type.cpp
cxx1y-default-initializer.cpp
cxx1y-init-captures.cpp
cxx1y-lambdas.mm
cxx1y-variable-templates.cpp
cxx1z-aligned-alloc.cpp
cxx1z-decomposition.cpp
cxx1z-init-statement.cpp
cxx1z-init-statement.h
cxx1z-using-declaration.cpp
cxx2a-bitfield-init.cpp
cxx2a-compare.cpp
cxx2a-concept-specialization-expr.cpp
cxx2a-constraints-crash.cpp
cxx2a-constraints.cpp
cxx2a-defaulted-comparison.cpp
cxx2a-for-init-statement.cpp
cxx2a-requires-expr.cpp
cxx2a-template-lambdas.cpp
cxx11-constexpr.cpp
cxx11-enum-template.cpp
cxx11-exception-spec.cpp
cxx11-inheriting-ctors.cpp
cxx11-lambdas.mm
cxx11-statement-attributes.cpp
cxx11-user-defined-literals.cpp
cxx14-decltype-auto.cpp
cxx17-deduction-guide-decl.cpp
cxx20-template-args.cpp
cxx20-unevaluated-lambda.cpp
cxx_exprs.cpp [clang] Implement ElaboratedType sugaring for types written bare 2022-07-27 11:10:54 +02:00
cxx_exprs.h
datetime.c
debug-info-limited-struct.c
debug-info-limited-struct.h
debug-info-pch-container-path.c
debug-info-pch-path.c
decl-attrs.cpp
decl-in-prototype.c
delayed-pch-instantiate.cpp
delayed-template-parsing.cpp
designated-init.c
designated-init.c.h
determinism.cpp
different-diagnostic-level.c
different-linker-version.c
dllexport-default-arg-closure.cpp
emit-dependencies.c
empty-def-fwd-struct.h
empty-with-headers.c
enum.c
enum.h
exprs.c
exprs.h
ext_vector.c
ext_vector.h
external-defs.c
external-defs.h
externally-retained.m
field-designator.c
fixed-point-literal.c
floating-literal.c
for-loop-init-ternary-operator-statement.cpp
format-strings.c
friend-template.cpp
functions.c
functions.h
fuzzy-pch.c
fuzzy-pch.h
headermap.h
headermap.m
headersearch.cpp
implicitly-deleted.cpp
include-stream-type.cpp
include-timestamp.cpp
irgen-rdar13114142.mm
late-parsed-instantiations.cpp
leakfiles.test
line-directive-nofilename.c
line-directive-nofilename.h
line-directive.c
line-directive.h
local_static.cpp
local_static.h
macro-redef.c
macro-undef.cpp
make-integer-seq.cpp
method-redecls.m
method_pool.h
method_pool.m
missing-file.cpp
modified-header-crash.c
modified-header-crash.h
modified-header-error.c
modified-module-dependency.m
modified-module-dependency.module.map
module-hash-difference.m
ms-if-exists.cpp
ms-pch-macro.c
multiple-include-pch.c
multiple_decls.c
multiple_decls.h
namespaces.cpp
no-escaping-block-tail-calls.cpp
no-escaping-block-tail-calls.h
no-validate-pch.cl
non-trivial-c-compound-literal.m
non-trivial-c-union.m
nonvisible-external-defs.c
nonvisible-external-defs.h
objc_boxable.m
objc_boxable_record.h
objc_boxable_record_attr.h
objc_container.h
objc_container.m
objc_exprs.h
objc_exprs.m Strengthen -Wint-conversion to default to an error 2022-07-22 15:24:54 -04:00
objc_import.h
objc_import.m
objc_kindof.m
objc_literals.m
objc_literals.mm
objc_methods.h
objc_methods.m
objc_parameterized_classes.m
objc_property.h
objc_property.m
objc_stmts.h
objc_stmts.m
objcxx-ivar-class.h
objcxx-ivar-class.mm
ocl_types.cl
ocl_types.h
opencl-extensions.cl
pch-dir.c [clang] Require strict matches for defines for PCH in GCC style directories 2022-08-10 22:47:27 +03:00
pch-dir.h
pch-hdrstop-err.cpp
pch-hdrstop-warn.cpp
pch-hdrstop.cpp
pch-instantiate-templates-forward-decl.cpp
pch-instantiate-templates.cpp
pch-no-hdrstop.cpp
pch-output-path-independent.c [Serialization] Remove `ORIGINAL_PCH_DIR` record 2022-08-05 15:40:33 -07:00
pch-through1.cpp
pch-through2.cpp
pch-through3a.cpp
pch-through3b.cpp
pch-through3c.cpp
pch-through4.cpp
pch-through4a.cpp
pch-wasm.c
pch__VA_ARGS__.c
pch__VA_ARGS__.h
pchpch.c
pchpch1.h
pchpch2.h
pending-ids.m
pr4489.c
pr18806.cpp
pr27445.cpp
pragma-comment.c
pragma-cuda-force-host-device.cu
pragma-detect_mismatch.c
pragma-diag-section.cpp
pragma-diag.c
pragma-floatcontrol.c
pragma-loop.cpp
pragma-ms_struct.cpp
pragma-once.c
pragma-optimize.c
pragma-pack.c
pragma-pointers_to_members.cpp
pragma-weak-functional.c
pragma-weak-functional.h
pragma-weak.c
pragma-weak.h
preamble-modules.cpp
preamble.c
pth.h
rdar8852495.c
rdar10830559.cpp
reinclude.cpp
reinclude1.h
reinclude2.h
reloc.c [clang][Darwin] Re-apply "Always set the default C++ Standard Library to libc++" 2022-08-16 09:27:18 -04:00
remap-file-from-pch.cpp
remap-file-from-pch.cpp.h
remap-file-from-pch.cpp.remap.h
replaced-decl.m
selector-warning.h
selector-warning.m
single-token-macro.c
source-manager-stack.c
specialization-after-instantiation.cpp
stmt-attrs.cpp
stmt-openmp_structured_block-bit.cpp
stmts.c
stmts.h
struct.c
struct.h
subscripting-literals.m
suspicious-pragma-pack.c
target-options.c
target-options.h
tentative-defs.c
tentative-defs.h
thread-local.cpp
thread-safety-attrs.cpp
type_pack_element.cpp
types.c
types.h
typo.cpp
typo.m
typo2.cpp
undefined-internal.c
uses-seh.cpp
uuidof.cpp
va_arg.c
va_arg.cpp
va_arg.h
validate-file-content.m
variables.c
variables.h
verify_pch.m
working-directory.cpp
working-directory.h