õ Õ° writes: > Hi, > > Here is My test function : > > class A > { > public: > private: > char string[SIZE]; > }; > > void test1(void) > { > A obj; > > try > { > throw obj; > } > catch (A &e) > { > printf("exception ! \n"); > } > } > > when SIZE <= 68,"__cxa_allocate_exception" allocates space for the > exception successfully,after "__cxa_throw" is called,"__cxa_begin_catch" is > called,and the statement "printf..." in the catch block can be executed. > when SIZE > 68, ,"__cxa_allocate_exception" also allocates space for the > exception successfully,but after "__cxz_throw" is called,"__cxa_end_catch" > is called,and the program crashed. Works for me. What arch, what compiler version, etc. Andrew.