blob: 2c0269ecdaec54fefec885b230d52fca65e14e5e [file]
// RUN: %clang_cc1 -triple %itanium_abi_triple -std=c++20 -O2 -emit-llvm -o /dev/null %s
// RUN: %clang_cc1 -triple %itanium_abi_triple -std=c++20 -O2 -disable-llvm-passes -emit-llvm -o - %s | FileCheck %s
struct E {
E();
template<typename T>
E(T t);
~E();
};
E::E() {
struct {
// CHECK-DAG: _ZTSN1EC13$_012anotherValueMUlvE_E
int anotherValue = [x = 1] { return x; }();
} obj;
}
template<typename T>
E::E(T t) {
struct {
// CHECK-DAG: _ZTSN1EC1IiEUt_UlvE_E
int anotherValue = [x = 1] { return x; }();
} obj;
}
E::~E() {
struct {
// CHECK-DAG: _ZTSN1ED13$_012anotherValueMUlvE_E
int anotherValue = [x = 2] { return x; }();
} obj;
}
E e(1);