reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // RUN: %clang_cc1 -fsyntax-only -verify %s // PR9615 struct Resource { void doit(); }; template<int x> struct Lock { ~Lock() { int a[x]; } // expected-error {{declared as an array with a negative size}} Resource* operator->() { return 0; } }; struct Accessor { Lock<-1> operator->(); }; // Make sure we try to instantiate the destructor for Lock here void f() { Accessor acc; acc->doit(); } // expected-note {{requested here}} |