This wont compile:
typedef Exception TypedefException;
void main()
{
try
{
}
catch(TypedefException e)
{
}
}
Gives you:
Error: can only catch class objects, not 'TypedefException'
After a little discussion on IRC it seems there is an inconsistency as a class derived from TypedefException will work just fine. Either both should work or none of them should!