ATF-log archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

org.NetBSD.atf.src: 3becdd597a7f5f996eeceebf06ac7f77aaa7c30c



revision:            3becdd597a7f5f996eeceebf06ac7f77aaa7c30c
date:                2010-07-06T17:58:04
author:              jmmv%NetBSD.org@localhost
branch:              org.NetBSD.atf.src
changelog:
Catch and report unhandled exceptions before they propagate to C land

The C++ interface to run test cases goes like this:

    1) C++ run function -> 2) C run function -> 3) C++ wrapper for
    test case -> 4) test case head/body/cleanup

The previous code caught and reported unhandled exceptions in 1).
However, such approach does not seem to work everywhere.  It fails,
for example, in NetBSD/i386 but works in NetBSD/amd64.  I am not sure
which platform implementation is correct nor if there even _is_ a
defined behavior.  No matter what, it feels wrong and clunky.

Move the last-resort exception catching to happen in 3) so that
exceptions don't propagate back to C.

Fixes the test-programs/result_test:result_exception test case in
NetBSD/i386 5.99.34.

manifest:
format_version "1"

new_manifest [607a836ae46bd3334b56a3fcbc759a50836ad406]

old_revision [931f5eb4b58de1365fecc230d3c255f3a05fa28e]

patch "atf-c++/tests.cpp"
 from [6944e3e69a59974c5e1cf1c6d020f723e38c92ae]
   to [df0173eee84884c5426e8198e5bbf4ad791a3e11]


Home | Main Index | Thread Index | Old Index