Hi Marc,
I can't reproduce this bug with OpenBSD 5.2 and the g++ 4.2.1 which comes with it. My guess is that the problem is related to a bug in the versions of g++ you have used. Can you install an older g++ and see if that solves the problem? Can you also try to compile using gcc (i.e. don't use --enable-cplusplus)?
pkg_add g++-4.6.3p6(or just pkg_add http://www.mirrorservice.org/pub/OpenBSD/5.2/packages/amd64/g++-4.6.3p6.tgz )rm /usr/bin/g++ln -s /usr/local/bin/eg++ /usr/bin/g++
[..]> But if so, why is not an uncaught exception error printed at gsc termination on every platform (which is g++'s default behavior)???No, the runtime system should catch this exception in the ___BEGIN_TRY / ___END_TRY macros which are called in lib/setup.c (in only 2 places, so it should be easy to verify that the exception is actually caught by adding some printfs in the code).