Test of an EH working case using the original TCU library
UnwindableObj ctor for 0x0012FF20 // d ctor
DerivedObj ctor for 0x0012FF20 // d ctor
In foo() ...
UnwindableObj ctor for 0x0012FE94 // foo1 ctor
UnwindableObj ctor for 0x0012FE84 // foo2 ctor
UnwindableObj ctor for 0x0012FE54 // Exception ( local to foo() ) ctor
ExcBase ctor for 0x0012FE50 // Exception ( local to foo() ) ctor
ExcDerived ctor for 0x0012FE50 // Exception ( local to foo() ) ctor
UnwindableObj copy ctor for 0x003019F4 // Exception on the heap copy ctor
ExcBase copy ctor for 0x003019F0 // Exception on the heap copy ctor
ExcDerived copy ctor for 0x003019F0 // Exception on the heap copy ctor
ExcDerived dtor for 0x0012FE50 // Exception ( local to foo() ) dtor
ExcBase dtor for 0x0012FE50 // Exception ( local to foo() ) dtor
UnwindableObj dtor for 0x0012FE54 // Exception ( local to foo() ) dtor
UnwindableObj dtor for 0x0012FE84 // foo2 dtor
UnwindableObj dtor for 0x0012FE94 // foo1 dtor
DerivedObj dtor for 0x0012FF20 // d dtor
UnwindableObj dtor for 0x0012FF20 // d dtor
ExcDerived caught: Derived exception (0x003019F0)
ExcDerived dtor for 0x003019F0 // Exception on the heap dtor
ExcBase dtor for 0x003019F0 // Exception on the heap dtor
UnwindableObj dtor for 0x003019F4 // Exception on the heap dtor
RTTI test
UnwindableObj ctor for 0x00301D00
DerivedObj ctor for 0x00301D00
pD = 0x00301D00
DerivedMethod()
TypeId test: 1
DerivedObj dtor for 0x00301D00
UnwindableObj dtor for 0x00301D00
Press Enter to exit

Figure 2: Annotated output of a program run.

Back to Article