Files
clang-p2996/clang/test/SemaCXX/PR40395.cpp
Timm Bäder 9b718c0d5d [clang][Interp] Handle CXXUuidofExprs
Allocate storage and initialize it with the given APValue contents.
2024-02-13 13:41:06 +01:00

18 lines
521 B
C++

// RUN: %clang_cc1 -std=c++17 -fms-extensions -triple=x86_64-pc-win32 -verify %s
// RUN: %clang_cc1 -std=c++17 -fms-extensions -triple=x86_64-pc-win32 -verify %s -fexperimental-new-constant-interpreter
// expected-no-diagnostics
// PR40395 - ConstantExpr shouldn't cause the template object to infinitely
// expand.
struct _GUID {};
struct __declspec(uuid("{AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA}")) B {};
template <const _GUID* piid>
struct A {
virtual void baz() { A<piid>(); }
};
void f() {
A<&__uuidof(B)>();
}