Compiler Error C2687
'type' : exception-declaration cannot be 'void' or denote an incomplete type or pointer or reference to an incomplete type
For a type to be part of an exception declaration, it must be defined and not void.
The following sample generates C2687:
// C2687.cpp
class C;
int main() {
try {}
catch (C) {} // C2687 error
}
Possible resolution:
// C2687b.cpp
// compile with: /EHsc
class C {};
int main() {
try {}
catch (C) {}
}