diff dmd2/expression.c @ 1523:833337c65fd3

Fixed some unmerged parts of the D2 frontend. Removed the automatic linker flags for D2 (temp). Renamed a runtime function for D2.
author Robert Clipsham <robert@octarineparrot.com>
date Mon, 06 Jul 2009 23:54:02 +0100
parents dd72f56ad211
children 54b3c1394d62
line wrap: on
line diff
--- a/dmd2/expression.c	Mon Jun 22 19:31:25 2009 +0200
+++ b/dmd2/expression.c	Mon Jul 06 23:54:02 2009 +0100
@@ -8746,8 +8746,11 @@
     typeCombine(sc);
     e1->checkIntegral();
     e2 = e2->checkIntegral();
-    //e2 = e2->castTo(sc, Type::tshiftcnt);
-    e2 = e2->castTo(sc, e1->type); // LDC
+#if IN_DMD
+    e2 = e2->castTo(sc, Type::tshiftcnt);
+#elif IN_LLVM
+    e2 = e2->castTo(sc, e1->type);
+#endif
     return this;
 }
 
@@ -8775,8 +8778,11 @@
     typeCombine(sc);
     e1->checkIntegral();
     e2 = e2->checkIntegral();
-    //e2 = e2->castTo(sc, Type::tshiftcnt);
-    e2 = e2->castTo(sc, e1->type); // LDC
+#if IN_DMD
+    e2 = e2->castTo(sc, Type::tshiftcnt);
+#elif IN_LLVM
+    e2 = e2->castTo(sc, e1->type);
+#endif
     return this;
 }
 
@@ -9343,7 +9349,8 @@
 	e1 = e1->checkIntegral();
 	e2 = e2->checkIntegral();
 	e1 = e1->integralPromotions(sc);
-	e2 = e2->castTo(sc, Type::tshiftcnt);
+	//e2 = e2->castTo(sc, Type::tshiftcnt);
+    e2 = e2->castTo(sc, e1->type); // LDC
 	type = e1->type;
     }
     return this;
@@ -9367,7 +9374,8 @@
 	e1 = e1->checkIntegral();
 	e2 = e2->checkIntegral();
 	e1 = e1->integralPromotions(sc);
-	e2 = e2->castTo(sc, Type::tshiftcnt);
+	//e2 = e2->castTo(sc, Type::tshiftcnt);
+    e2 = e2->castTo(sc, e1->type); // LDC
 	type = e1->type;
     }
     return this;