[ros-dev] [ros-diffs] [hyperion] 38461: modified tests/pseh2/psehtest.c finally_13 test re-enabled, as it doesn't crash anymore finally_14 test fixed. Now we know how exceptions thrown in a __finally are supposed to be handled PSEH test suite now has 91 tests and passes all of them with both GCC and Visual C++

KJK::Hyperion hackbunny at reactos.com
Tue Dec 30 23:17:39 CET 2008


Timo Kreuzer wrote:
> I just suggest testing real situations instead of hypothetical
> situations.

Every test tests a real situation I encountered during development of
both PSEH 1 and PSEH 2 (infinite loops, stack misalignment, compilation
failures, faulty logic, paths in library code that were never executed,
compile-time constants with vs without side effects). Hypothetical
situations are only situations that haven't happened yet

If you have tests to propose, propose tests

>> The return value of return_positive() is not stored anywhere, and ret
>> remains uninitialized. Congratulations! you found a compiler bug
> No, it's a valid optimisation:

_SEH2EnterFrame is marked returns_twice, GCC should ensure all register
variables to be "dead" (i.e. copied to the stack frame) before calling
it, and warn if they could be clobbered. Trusting the contents of a
register after a call to _SEH2EnterFrame is a bug. Either that, or the
gotos must be confusing GCC's flow control analysis. But the gotos are
necessary for the pretty syntax, so we'll have to pay with yet more
redundant code

>>> After replacing the return_x, ... functions with macros I got 3 errors:
>> I don't. Send me your modifications
> I attached 2 patches.

I believe this is what younger, ruder team members would refer to as
"epic fail". Not me, of course. Me, I just wish I wasn't expected to
find bugs in my bug reports


More information about the Ros-dev mailing list