prog.cpp:14:57: error: macro "assert" passed 2 arguments, but takes just 1
assert(dynamic_cast<Foo<pair<int, int>>*>(test) != NULL);
^
prog.cpp: In function 'int main()':
prog.cpp:14:2: error: 'assert' was not declared in this scope
assert(dynamic_cast<Foo<pair<int, int>>*>(test) != NULL);
^