llvm-for-llvmta/tools/clang/test/CXX/basic/basic.lookup/basic.lookup.classref/p3.cpp

32 lines
659 B
C++

// RUN: %clang_cc1 -fsyntax-only -verify %s
// expected-no-diagnostics
// C++0x [basic.lookup.classref]p3:
// If the unqualified-id is ~type-name, the type-name is looked up in the
// context of the entire postfix-expression. If the type T of the object
// expression is of a class type C, the type-name is also looked up in the
// scope of class C. At least one of the lookups shall find a name that
// refers to (possibly cv-qualified) T.
// From core issue 305
struct A {
};
struct C {
struct A {};
void f ();
};
void C::f () {
::A *a;
a->~A ();
}
// From core issue 414
struct X {};
void f() {
X x;
struct X {};
x.~X();
}