1 #define MOZ_NON_TEMPORARY_CLASS __attribute__((annotate("moz_non_temporary_class")))
2 #define MOZ_STACK_CLASS __attribute__((annotate("moz_stack_class")))
4 class MOZ_NON_TEMPORARY_CLASS MOZ_STACK_CLASS TestClass
{};
6 TestClass foo
; // expected-error {{variable of type 'TestClass' only valid on the stack}} expected-note {{value incorrectly allocated in a global variable}}
14 void gobbleref(const TestClass
&) { }
18 gobbleref(f()); // expected-error {{variable of type 'TestClass' is not valid in a temporary}} expected-note {{value incorrectly allocated in a temporary}}