Compiler Warning (level 1) C4286
'type1' : is caught by base class ('type2') on line number
The specified exception type is handled by a previous handler. The type for the second catch is derived from the type of the first. Exceptions for a base class catch exceptions for a derived class.
Example
//C4286.cpp
// compile with: /W1
#include <eh.h>
class C {};
class D : public C {};
int main()
{
try
{
throw "ooops!";
}
catch( C ) {}
catch( D ) {} // warning C4286, D is derived from C
}