#include <iostream> #include <typeinfo> using namespace std; template <class T> class A; template <class T> struct A; template <class T> union A; int main() { return 0; }
Standard input is empty
prog.cpp:7:28: error: ‘union’ tag used in naming ‘struct A<T>’ [-fpermissive] template <class T> union A; ^ prog.cpp:5:26: note: ‘struct A<T>’ was previously declared here template <class T> class A; ^
Standard output is empty