// { dg-do assemble }
template<typename T> T baz() { return 0; }
struct foo {
template<typename T> static T staticbar() { return 0; }
template<typename T> T bar() { return 0; }
};
void f()
{
foo t;
int i = baz<int>();
int j = foo::staticbar<int>();
int k = t.bar<int>();
}