// RUN: %clang_cc1 -fsyntax-only -verify -Wall %s
namespacetest1{staticint abc =42;// expected-warning {{variable 'abc' is not needed and will not be emitted}}
namespace{template<typename T>int abc_template =0;template<>int abc_template<int>=0;// expected-warning {{variable 'abc_template<int>' is not needed and will not be emitted}}
}// namespace
template<typename T>intfoo(void){return abc + abc_template<int>+ abc_template<long>;}}namespacetest2{structbah{};namespace{structfoo:bah{staticchar bar;virtualvoidzed();};voidfoo::zed(){
bar++;}char foo::bar=0;}
bah *getfoo(){returnnewfoo();}}