// RUN: %clang_cc1 -std=c++11 -verify %s
namespacePR40329{structA{A(int);friendintoperator->*(A, A);};structB:A{B();enumE{ e };};// Associated classes for B are {B, A}
// Associated classes for B::E are {B} (non-transitive in this case)
//// If we search B::E first, we must not mark B "visited" and shortcircuit
// visiting it later, or we won't find the associated class A.
int k0 = B::e ->* B::e;// expected-error {{non-pointer-to-member type}}
int k1 = B::e ->* B();int k2 =B()->* B::e;}