KJK::Hyperion schrieb:
I'm not convinced this can work, and delimiting scopes is only half the
battle. How will you generate landing pads? or __finally blocks that are
safe to call from RtlUnwind?
This just shows your lack of imagination.
For example nested functions would do the trick. They also make sure all
variables are made volatile as needed like on msvc. And it produces no
overhead if done right.
No, nested function *do not* put code on the stack on x64!
Oh, I can already hear you whining... oh noes that doesn't conform to
C89 standards, it's not portable, lalala
And..? Who cares? PSEH is a fucking compiler hack, 'cause gcc doesn't
support it natively.
Any other compiler that can compile reactos and has no native SEH? No?
Ok, so what?
Also being compatible with Windows unwind mechanisms is not just fancy
or nice to have. It's needed for 3rd party software/driver compatability.
I think I'll work on a PSEH port on my own
So you want to port SEH from x86? Using sjlj? Cool, dude. Now YOU
explain me how you implement a longjmp on x64 without unwinding tables?
Doh!
Timo