diff dmd/mtype.c @ 723:55f6c2e454d7

Implemented correct parameter order according to x86-32 ABI documentation. Changed AA types to just a void* .
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sat, 25 Oct 2008 06:03:28 +0200
parents e177ae483f8e
children 1ae94fb1dbbd
line wrap: on
line diff
--- a/dmd/mtype.c	Thu Oct 23 19:42:55 2008 +0200
+++ b/dmd/mtype.c	Sat Oct 25 06:03:28 2008 +0200
@@ -2673,6 +2673,8 @@
     this->usesNest = false;
     this->retAttrs = 0;
     this->thisAttrs = 0;
+    this->reverseParams = false;
+    this->reverseIndex = 0;
 }
 
 Type *TypeFunction::syntaxCopy()
@@ -2685,6 +2687,8 @@
     t->usesNest = usesNest;
     t->retAttrs = retAttrs;
     t->thisAttrs = thisAttrs;
+    t->reverseParams = reverseParams;
+    t->reverseIndex = reverseIndex;
     return t;
 }
 
@@ -2794,6 +2798,10 @@
 	case LINKwindows:	mc = 'W';	break;
 	case LINKpascal:	mc = 'V';	break;
 	case LINKcpp:		mc = 'R';	break;
+
+    // LDC
+    case LINKintrinsic: mc = 'Q';   break;
+
 	default:
 	    assert(0);
     }
@@ -2826,6 +2834,10 @@
 	    case LINKwindows:	p = "Windows ";	break;
 	    case LINKpascal:	p = "Pascal ";	break;
 	    case LINKcpp:	p = "C++ ";	break;
+
+        // LDC
+        case LINKintrinsic: p = "Intrinsic"; break;
+
 	    default:
 		assert(0);
 	}
@@ -2861,6 +2873,10 @@
 	    case LINKwindows:	p = "Windows ";	break;
 	    case LINKpascal:	p = "Pascal ";	break;
 	    case LINKcpp:	p = "C++ ";	break;
+
+        // LDC
+        case LINKintrinsic: p = "Intrinsic"; break;
+
 	    default:
 		assert(0);
 	}