// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-value -verify %s template void f() { T t; t = 17; } // PR5407 struct A { A(); }; struct B { ~B(); }; void f() { A a; B b; } // PR5531 namespace PR5531 { struct A { }; struct B { B(int); }; struct C { ~C(); }; void test() { A(); B(17); C(); } } struct X { int foo() __attribute__((warn_unused_result)); }; void bah() { X x, *x2; x.foo(); // expected-warning {{ignoring return value of function declared with warn_unused_result attribute}} x2->foo(); // expected-warning {{ignoring return value of function declared with warn_unused_result attribute}} } template struct X0 { }; template void test_dependent_init(T *p) { X0 i(p); (void)i; } namespace PR6948 { template class X; void f() { X str (read_from_file()); // expected-error{{use of undeclared identifier 'read_from_file'}} } }