llvm-capstone/clang/test/SemaTemplate
antangelo fed4e3a6eb
[clang] Exclude non-template classes when checking if constraint refers to containing template arguments (#74265)
When checking if the constraint uses any enclosing template parameters
for [temp.friend]p9, if a containing record is used as argument, we
assume that the constraint depends on enclosing template parameters
without checking if the record is templated. The reproducer from the bug
is included as a test case.

Fixes #71595
2023-12-06 20:17:59 -05:00
..
ackermann.cpp
address_space-dependent.cpp [clang][WebAssembly] Initial support for reference type funcref in clang 2023-03-17 18:31:44 +01:00
address-spaces.cpp
aggregate-deduction-candidate.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
alias-church-numerals.cpp
alias-nested-nontag.cpp
alias-template-nondependent.cpp
alias-template-template-param.cpp
alias-templates.cpp
alignas.cpp
ambiguous-ovl-print.cpp
anonymous-union.cpp
argument-dependent-lookup.cpp
array-redeclaration.cpp
array-to-pointer-decay.cpp
atomics.cpp
attributes.cpp Complete the implementation of P2361 Unevaluated string literals 2023-08-15 14:13:13 +02:00
canonical-expr-type-0x.cpp
canonical-expr-type.cpp
class-template-ctor-initializer.cpp
class-template-decl.cpp
class-template-id-2.cpp
class-template-id.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
class-template-noexcept.cpp
class-template-spec.cpp
concepts-friends.cpp [Clang][Sema] Fix comparison of constraint expressions 2023-05-09 18:14:39 +00:00
concepts-GH53354.cpp
concepts-inherited-ctor.cpp [clang] Try to fix check-clang after f539b6ffc2 2023-04-27 10:12:39 -04:00
concepts-lambda.cpp GH60642: Fix ICE when checking a lambda defined in a concept definition 2023-02-17 06:09:52 -08:00
concepts-no-early-substitution.cpp [Clang][Sema] Substitute constraints only for declarations with different lexical contexts 2023-05-17 21:24:44 +00:00
concepts-out-of-line-def.cpp Diagnose use of VLAs in C++ by default 2023-10-20 13:10:03 -04:00
concepts-PR54629.cpp
concepts-recovery-expr.cpp
concepts-recursive-inst.cpp Fix recursive error for constraints depending on itself incorrectly 2023-01-27 11:11:53 -08:00
concepts-using-decl.cpp
concepts.cpp Revert "[clang][SemaCXX] Diagnose tautological uses of consteval if and is_constant_evaluated" 2023-09-27 18:58:01 +02:00
constexpr-instantiate.cpp
constraints.cpp
constructor-template.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
copy-ctor-assign.cpp
crash-8204126.cpp
crash-10438657.cpp
crash-unparsed-exception.cpp
crash.cpp
ctad.cpp
current-instantiation.cpp
cxx1z-decomposition.cpp
cxx1z-fold-expressions.cpp [Clang] Fix crash when visting a fold expression in a default argument (#67514) 2023-09-28 12:20:22 -07:00
cxx1z-using-declaration.cpp [Sema] Lambdas are not part of immediate context for deduction 2023-05-09 12:06:33 +02:00
cxx2a-constraint-caching.cpp Revert "[clang] Instantiate concepts with sugared template arguments" 2023-01-17 07:29:31 -08:00
cxx2a-constraint-exprs.cpp
cxx17-inline-variables.cpp
deduction-crash.cpp
deduction-guide-partial-ordering.cpp
deduction-guide.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
deduction.cpp Diagnose use of VLAs in C++ by default 2023-10-20 13:10:03 -04:00
default-arguments-ast-print.cpp
default-arguments-cxx0x.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
default-arguments.cpp
default-expr-arguments-2.cpp
default-expr-arguments-3.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
default-expr-arguments.cpp
default-member-init.cpp
defaulted-destructor-in-temporary.cpp
defaulted.cpp
deferred-concept-inst.cpp
delegating-constructors.cpp
dependent-base-classes.cpp [clang] Fix a bug with qualified name lookup into current instantiation (#73018) 2023-11-30 10:46:35 +01:00
dependent-base-member-init.cpp
dependent-class-member-operator.cpp
dependent-expr.cpp [Clang] Fix dependence handling of nttp for variable templates (#69075) 2023-10-16 22:23:28 -07:00
dependent-names-no-std.cpp
dependent-names.cpp [clang][TypePrinter] Teach isSubstitutedDefaultArgument about integral types 2022-12-16 11:38:51 +00:00
dependent-sized_array.cpp
dependent-template-recover.cpp
dependent-type-identity.cpp
dependent-typos-recovery.cpp
derived.cpp
destructor-template.cpp
diagnose-enable-if-t.cpp
elaborated-type-specifier.cpp
enum-argument.cpp
enum-bool.cpp
enum-forward.cpp
equivalence.cpp Fix profiling of overloaded postincrement / postdecrement. 2023-07-11 08:41:21 -07:00
example-typelist.cpp
exception-spec-crash.cpp
explicit-instantiation.cpp
explicit-specialization-member.cpp
ext_ms_template_spec.cpp
ext-vector-type.cpp
extension-sfinae.cpp
extern-templates.cpp
fibonacci.cpp
find-unexpanded-packs.cpp
friend-template.cpp
friend.cpp [Clang] Fix buildbots after Fix filtering of inline namespaces for friend functions commit 2023-04-07 09:18:15 -07:00
fun-template-def.cpp
function-decl-nested-type-alias.cpp [clang] Bail out if the result of function template instantiation is not a function type. (#69459) 2023-10-18 15:22:40 +02:00
function-pointer-qualifier.cpp
function-template-specialization-noreturn.cpp
function-template-specialization.cpp
generic-lambda.cpp
gh57362.cpp
gh57943.cpp
gh61159.cpp [clang] Fix specialization of non-templated member classes of class templates 2023-07-24 09:36:58 -07:00
GH71595.cpp [clang] Exclude non-template classes when checking if constraint refers to containing template arguments (#74265) 2023-12-06 20:17:59 -05:00
implicit-instantiation-1.cpp
inject-templated-friend-post.cpp
inject-templated-friend.cpp
injected-class-name.cpp
instantiate-abbreviated-template.cpp
instantiate-after-fatal-cxx17.cpp
instantiate-anonymous-union.cpp
instantiate-array.cpp
instantiate-attr.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
instantiate-c99.cpp
instantiate-call.cpp
instantiate-case.cpp
instantiate-cast.cpp
instantiate-clang.cpp
instantiate-complete.cpp
instantiate-decl-dtor.cpp
instantiate-decl-init.cpp
instantiate-declref-ice.cpp
instantiate-declref.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
instantiate-deeply.cpp
instantiate-default-assignment-operator.cpp
instantiate-dependent-nested-name.cpp
instantiate-elab-type-specifier.cpp
instantiate-enum-2.cpp
instantiate-enum.cpp
instantiate-exception-spec-cxx11.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiate-exception-spec.cpp
instantiate-expanded-type-constraint.cpp
instantiate-explicitly-after-fatal.cpp
instantiate-expr-1.cpp
instantiate-expr-2.cpp
instantiate-expr-3.cpp
instantiate-expr-4.cpp
instantiate-expr-5.cpp
instantiate-expr-6.cpp
instantiate-expr-basic.cpp
instantiate-field.cpp
instantiate-friend-class.cpp
instantiate-friend-function.cpp
instantiate-function-1.cpp
instantiate-function-1.mm
instantiate-function-2.cpp
instantiate-function-params.cpp
instantiate-incomplete-typo-suggested-error-limit.cpp
instantiate-init.cpp
instantiate-invalid.cpp
instantiate-local-class.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
instantiate-member-class.cpp
instantiate-member-expr.cpp
instantiate-member-initializers.cpp
instantiate-member-pointers.cpp
instantiate-member-specialization.cpp
instantiate-member-template.cpp
instantiate-method.cpp [clang] remove ClassScopeFunctionSpecializationDecl (#66636) 2023-10-07 10:55:31 +04:00
instantiate-non-dependent-types.cpp
instantiate-non-type-template-parameter.cpp
instantiate-objc-1.mm
instantiate-overload-candidates.cpp
instantiate-overloaded-arrow.cpp
instantiate-partial-spec.cpp
instantiate-requires-clause.cpp
instantiate-requires-expr.cpp Revert "[clang] Instantiate concepts with sugared template arguments" 2023-01-17 07:29:31 -08:00
instantiate-scope.cpp
instantiate-self.cpp
instantiate-sizeof.cpp Diagnose use of VLAs in C++ by default 2023-10-20 13:10:03 -04:00
instantiate-static-local.cpp
instantiate-static-var.cpp
instantiate-subscript.cpp [clang] Use -std=c++23 instead of -std=c++2b 2023-05-04 19:19:52 +02:00
instantiate-template-argument.cpp
instantiate-template-template-parm.cpp
instantiate-try-catch.cpp
instantiate-type.cpp
instantiate-typedef.cpp
instantiate-typeof.cpp Diagnose use of VLAs in C++ by default 2023-10-20 13:10:03 -04:00
instantiate-using-decl.cpp
instantiate-var-template.cpp [Clang] Implement CWG2518 - static_assert(false) 2023-02-28 17:21:40 +01:00
instantiation-backtrace.cpp
instantiation-default-1.cpp
instantiation-default-2.cpp
instantiation-default-3.cpp
instantiation-dependence.cpp [clang] Use -std=c++23 instead of -std=c++2b 2023-05-04 19:19:52 +02:00
instantiation-depth-defarg.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-depth-default.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-depth-exception-spec.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-depth-subst-2.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-depth-subst.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-depth.cpp [Driver] Change some Separate CC1 options to use the Joined = form 2023-06-06 13:50:04 -07:00
instantiation-order.cpp
issue150.cpp
lambda-capture-pack.cpp
late-parsing-eager-instantiation.cpp
lookup-dependent-bases.cpp
make_integer_seq.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
matrix-type.cpp
member-access-ambig.cpp
member-access-expr.cpp
member-function-template.cpp
member-inclass-init-value-dependent.cpp
member-initializers.cpp
member-specialization.cpp
member-template-access-expr.cpp
metafun-apply.cpp
missing-class-keyword-crash.cpp
missing-typename.cpp
ms-class-specialization-class-scope.cpp
ms-class-specialization-duplicate.cpp
ms-delayed-default-template-args.cpp
ms-function-specialization-class-scope.cpp
ms-if-exists.cpp
ms-lookup-template-base-classes.cpp
ms-sizeof-missing-typename.cpp [clang][Sema] Fix a crash when instantiating a non-type template argument in a dependent scope. 2023-05-24 21:46:31 +08:00
ms-unqualified-base-class.cpp
nested-deduction-guides.cpp Reland "[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes" (#73087) 2023-11-25 14:26:44 -05:00
nested-implicit-deduction-guides.cpp Reland "[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes" (#73087) 2023-11-25 14:26:44 -05:00
nested-incomplete-class.cpp
nested-linkage.cpp
nested-name-spec-template.cpp
nested-template.cpp
non-integral-switch-cond.cpp
nss-recovery.cpp
operator-function-id-template.cpp
operator-template.cpp
overload-candidates.cpp
overload-uneval.cpp
overloaded-functions.cpp
pack-deduction.cpp Revert two patches to fix GH58452 regression 2023-03-09 09:16:53 -08:00
partial-order.cpp
partial-spec-instantiate.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
pr47676.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
pr52909.cpp [clang] Use -std=c++23 instead of -std=c++2b 2023-05-04 19:19:52 +02:00
pr52970.cpp Revert "[clang] Instantiate concepts with sugared template arguments" 2023-01-17 07:29:31 -08:00
pragma-ms_struct.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
qualified-id.cpp
qualified-names-diag.cpp
rdar9173693.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
recovery-crash.cpp
recovery-tree-transform-crash.cpp
recovery-tree-transform.cpp
recursive-template-instantiation.cpp
resolve-single-template-id.cpp
self-comparison.cpp
sizeof-pack.cpp
stack-exhaustion.cpp
stmt-expr.cpp
subst-into-subst.cpp
sugar-crashes.cpp Fix one of the regressions found in revert of concept sugaring 2023-01-25 06:01:44 -08:00
temp_arg_enum_printing_more.cpp
temp_arg_enum_printing.cpp
temp_arg_nontype_cxx1z.cpp [Clang] Correctly handle callees whose type is a Record type when classifying expressions (#68078) 2023-10-03 19:38:45 +02:00
temp_arg_nontype_cxx2c.cpp [Clang] Implement P2308R1 - Template Parameter Initialization. (#73103) 2023-12-01 17:44:22 +01:00
temp_arg_nontype_cxx11.cpp
temp_arg_nontype_cxx20.cpp [Clang] Implement P2308R1 - Template Parameter Initialization. (#73103) 2023-12-01 17:44:22 +01:00
temp_arg_nontype_diagnostic_cxx17.cpp
temp_arg_nontype.cpp [clang] Remove rdar links; NFC 2023-08-28 12:13:42 -04:00
temp_arg_pack.cpp
temp_arg_string_printing.cpp
temp_arg_template_cxx1z.cpp
temp_arg_template.cpp
temp_arg_type.cpp
temp_arg.cpp
temp_class_order.cpp
temp_class_spec_blocks.cpp
temp_class_spec_neg.cpp
temp_class_spec.cpp
temp_explicit_cxx0x.cpp
temp_explicit.cpp
temp_func_order.cpp
temp-param-subst-linear.cpp
temp.cpp
template-class-traits.cpp
template-decl-fail.cpp
template-friend-definition-in-template.cpp [Sema]Select correct lexical context during template instantiate 2023-04-27 00:29:13 +02:00
template-id-expr.cpp
template-id-printing.cpp
trailing-return-short-circuit.cpp
type_pack_element.cpp [AST] Only dump desugared type when visibly different (#65214) 2023-10-26 19:28:28 +01:00
typename-specifier-2.cpp
typename-specifier-3.cpp
typename-specifier-4.cpp
typename-specifier.cpp
typo-dependent-name.cpp
typo-template-name.cpp
typo-variadic.cpp
undeclared-template.cpp
undefined-template.cpp
unresolved-construct.cpp
unused-variables.cpp
using-decl.cpp
value-dependent-bitfield-cond.cpp
value-dependent-null-pointer-constant.cpp
virtual-member-functions.cpp [clang] Correct source locations for instantiations of function templates. 2023-09-18 12:51:45 -07:00
warn-thread-safety-analysis.cpp