changeset 557:aef77ae1d32c

Enable unwind code on darwin.
author Christian Kamm <kamm incasoftware de>
date Fri, 29 Aug 2008 14:16:18 +0200
parents c23f4cfe4f2b
children 02fb65cddc3e
files runtime/internal/eh.d
diffstat 1 files changed, 9 insertions(+), 5 deletions(-) [+]
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