An exception specification is not considered part of the type of a function. Therefore, you cannot declare two distinct functions that differ only in their exception specification:
void f(int) throw (Y);void f(int) throw (Z); //error; redefinition of 'void f(int)'
For the same reason, declaring a typedef that contains an exception specification is also an error:
typedef void (*PF) (int) throw(Excexption); //compile time error