1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 // expected-no-diagnostics
3
4 // C++0x [basic.lookup.classref]p3:
5 // If the unqualified-id is ~type-name, the type-name is looked up in the
6 // context of the entire postfix-expression. If the type T of the object
7 // expression is of a class type C, the type-name is also looked up in the
8 // scope of class C. At least one of the lookups shall find a name that
9 // refers to (possibly cv-qualified) T.
10
11 // From core issue 305
12 struct A {
13 };
14
15 struct C {
16 struct A {};
17 void f ();
18 };
19
f()20 void C::f () {
21 ::A *a;
22 a->~A ();
23 }
24
25 // From core issue 414
26 struct X {};
f()27 void f() {
28 X x;
29 struct X {};
30 x.~X();
31 }
32