YouCompleteMe/cpp/llvm/tools/clang/test/SemaCXX/operator-arrow-temporary.cpp
Strahinja Val Markovic 1f51a89d39 Adding more llvm/clang files
These were ignored by git accidentally. We want ALL OF THEM since they all came
in the llvm/clang source distribution.
2012-07-05 17:55:45 -07:00

20 lines
441 B
C++

// 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}}