blob: 31ed49804b8e8b22f55af3dc320cff458c04681a [file] [edit]
// RUN: %clang_cc1 -verify -std=c++2c -emit-llvm -triple %itanium_abi_triple -o - %s -fclang-abi-compat=latest | FileCheck %s
// expected-no-diagnostics
// FIXME: Is the empty case case correct? These are not defined by the itanium ABI yet.
namespace GH218820 {
// CHECK: define {{.*}}@_ZN8GH2188201fITpTtTyEJEEEvvQfraa1CIiE(
// CHECK: define {{.*}}@_ZN8GH2188201fIJNS_1CEEEEvvQfraa1CIiE(
template <template <typename> concept... C>
void f() requires (C<int> && ...) {}
// CHECK: define {{.*}}@_ZN8GH2188201gITpTtTyEJEEEvvQfraa1VIiE(
// CHECK: define {{.*}}@_ZN8GH2188201gIJNS_1VEEEEvvQfraa1VIiE(
template <template <typename> auto... V>
void g() requires (V<int> && ...) {}
template <typename T>
concept C = true;
template <typename T>
constexpr auto V = true;
void h() {
f<>();
f<C>();
g<>();
g<V>();
}
}