Mercurial > projects > ldc
diff runtime/internal/eh.d @ 557:aef77ae1d32c
Enable unwind code on darwin.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Fri, 29 Aug 2008 14:16:18 +0200 |
parents | d94655ccbe4d |
children | 6aaa3d3c1183 |
line wrap: on
line diff
--- a/runtime/internal/eh.d Fri Aug 29 14:11:20 2008 +0200 +++ b/runtime/internal/eh.d Fri Aug 29 14:16:18 2008 +0200 @@ -9,8 +9,12 @@ // debug = EH_personality; -// current EH implementation works on x86 linux only -version(X86) version(linux) version=X86_LINUX; +// current EH implementation works on x86 +// if it has a working unwind runtime +version(X86) { + version(linux) version=X86_UNWIND; + version(darwin) version=X86_UNWIND; +} private extern(C) void abort(); private extern(C) int printf(char*, ...); @@ -57,7 +61,7 @@ int private_2; } -version(X86_LINUX) +version(X86_UNWIND) { void _Unwind_Resume(_Unwind_Exception*); _Unwind_Reason_Code _Unwind_RaiseException(_Unwind_Exception*); @@ -161,10 +165,10 @@ // -// x86 Linux specific implementation of personality function +// x86 unwind specific implementation of personality function // and helpers // -version(X86_LINUX) +version(X86_UNWIND) { // the personality routine gets called by the unwind handler and is responsible for