prog.cpp: In function ‘foowrapper<T> print(const foo<T>&)’:
prog.cpp:19: error: expected primary-expression before ‘{’ token
prog.cpp:19: error: expected ‘;’ before ‘{’ token
prog.cpp:19: error: expected `;' before ‘}’ token
prog.cpp: In function ‘std::ostream& operator<<(std::ostream&, const foowrapper<T>&)’:
prog.cpp:24: warning: no return statement in function returning non-void
prog.cpp: In function ‘foowrapper<T> print(const foo<T>&) [with T = std::basic_string<char, std::char_traits<char>, std::allocator<char> >]’:
prog.cpp:29: instantiated from here
prog.cpp:19: warning: statement has no effect
prog.cpp: In function ‘foowrapper<T> print(const foo<T>&) [with T = int]’:
prog.cpp:33: instantiated from here
prog.cpp:19: warning: statement has no effect