MSVCRT: added support for re-throwing exceptions
Patrik Stridvall
ps at leissner.se
Mon Oct 28 04:29:00 CST 2002
> LICENSE: LGPL
>
> If you compile the following code with Visual C++ using the
> /MD option (so
> that it uses msvcrt.dll)
>
> class CExceptionClass
> {
> public:
> CExceptionClass() {number=0;}
> long number;
> };
>
> void doSomething()
> {
> try {
> throw CExceptionClass();
> } catch(...) {
> throw;
> }
> }
>
> int main(int argc, char* argv[])
> {
> try {
> doSomething();
> } catch(CExceptionClass& e) {
> printf("%d\n",e.number);
> }
> return 0;
> }
>
> and run it under WINE, it will crash.
It would probably be a good idea to submit this as a
test in order to check that this will work in the future.
However this is not a normal test because of two reasons
1. It is a C++ only test
2. It is only meaningful if a binary compiled by MS VC++
is run under Wine.
Anyway, since very recently thanks to ./tools/winapi/msvcmaker
it is possible to compile[1] the Wine tests using MS VC/C++ and
run them under Windows. Obviously the binaries generated should
be able to run under Wine as well...
[1] All tests currenly doesn't compile quite yet, but the
infrastructure is in place. I haven't had much time to look at
it yet. Help would be nice...
More information about the wine-devel
mailing list