+ try {
+ return func(object);
+ }
+ catch (libtest::__skipped)
+ {
+ return TEST_SKIPPED;
+ }
+ catch (libtest::__failure e)
+ {
+ libtest::stream::make_cerr(e.file(), e.line(), e.func()) << e.what();
+ return TEST_FAILURE;
+ }
+ catch (libtest::__success)
+ {
+ return TEST_SUCCESS;
+ }