diff dmd/backend/OPER.d @ 14:2cc604139636

Implemented Linux support for ddmd. Some parts are a bit hacky to just "get it working", that said, druntime and phobos compile, and unittests pass.
author Robert Clipsham <robert@octarineparrot.com>
date Sun, 04 Apr 2010 02:06:32 +0100
parents 10317f0c89a5
children 5c9b78899f5d
line wrap: on
line diff
--- a/dmd/backend/OPER.d	Wed Mar 31 16:29:36 2010 +0400
+++ b/dmd/backend/OPER.d	Sun Apr 04 02:06:32 2010 +0100
@@ -282,10 +282,20 @@
 
 enum RELOPMIN = cast(int)OPER.OPle;
 
-extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab1;
-extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab2;
-extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab3;
-extern(C++) extern __gshared const ubyte[OPER.OPMAX] opcost;
+version (Windows)
+{
+	extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab1;
+	extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab2;
+	extern(C++) extern __gshared const ubyte[OPER.OPMAX] optab3;
+	extern(C++) extern __gshared const ubyte[OPER.OPMAX] opcost;
+}
+else
+{
+	extern(C++) __gshared const ubyte[OPER.OPMAX] optab1;
+	extern(C++) __gshared const ubyte[OPER.OPMAX] optab2;
+	extern(C++) __gshared const ubyte[OPER.OPMAX] optab3;
+	extern(C++) __gshared const ubyte[OPER.OPMAX] opcost;
+}
 
 enum _OT
 {
@@ -355,4 +365,4 @@
 +/
 
 import dmd.EnumUtils;
-mixin(BringToCurrentScope!(OPER));
\ No newline at end of file
+mixin(BringToCurrentScope!(OPER));