I have found stuff on the internet about issues with throwing C++
exceptions, and I've run into something which I think is what these
articles are talking about but I'm not 100% sure so I thought I'd ask.
I have some C+ code that is being called as a result of the AppKit
framework updating a view with the message drawRect:rect:
In the C++ code I throw an exception. Outside of this, several steps
down the stack frame, I have a C++ function that has a try catch, but
the catch doesn't ever seem to be called, instead the program just
exits. in Xcode the stack looks like:
#0      0x957a2b9e in __kill
#1      0x957a2b91 in kill$UNIX2003
#2      0x95819ec2 in raise
#3      0x9582947f in abort
#4      0x95123005 in __gnu_cxx::__verbose_terminate_handler
#5      0x9512110c in __gxx_personality_v0
#6      0x9512114b in std::terminate
#7      0x95121261 in __cxa_throw
#8      0x003786fe in VCF::FoundationKit::assertCondition at 
FoundationKit.cpp:205
#9      0x000067b4 in test1Window::paint at main.cpp:78
#10     0x009a9dfe in VCF::OSXWindow::internal_paint at OSXWindow.cpp:1029
#11     0x009a9eac in -[VCFWindowContentView drawRect:] at OSXWindow.cpp:147
#12     0x93c4b984 in -[NSView _drawRect:clip:]
//rest omitted for clarity
#22     0x93c08772 in -[NSWindow makeKeyAndOrderFront:]
#23     0x009a9614 in VCF::OSXWindow::setVisible at OSXWindow.cpp:371
#24     0x008d038f in VCF::Control::setVisible at Control.cpp:598
#25     0x0091eff9 in VCF::Frame::show at Frame.cpp:167
#26     0x00006f6d in test1Window::test1Window at main.cpp:70
#27     0x0000701d in test1Window::test1Window at main.cpp:71
#28     0x00007055 in test1Application::initRunningApplication at main.cpp:99
#29     0x0084ce97 in VCF::Application::internal_main at Application.cpp:162
#30     0x0084d9d9 in VCF::Application::main at Application.cpp:341
#31     0x00002237 in main at main.cpp:128

VCF::FoundationKit::assertCondition calls "throw".
VCF::Application::internal_main has a try/catch block, but I never end
up there. Is this the expected behaviour that people are talking about
when they refer to issues with ObjectiveC++ and C++ exceptions?

Thanks

Jim
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to