diff lphobos/internal/aaA.d @ 127:facc562f5674 trunk

[svn r131] Fixed #11 All associative array properties now work as they should. Fixed problems with some cases of array.length and array.ptr. Fixed some problems with array properties. Fixed 'in' contracts.
author lindquist
date Fri, 30 Nov 2007 12:56:52 +0100
parents 5ab8e92611f9
children 373489eeaf90
line wrap: on
line diff
--- a/lphobos/internal/aaA.d	Wed Nov 28 05:04:38 2007 +0100
+++ b/lphobos/internal/aaA.d	Fri Nov 30 12:56:52 2007 +0100
@@ -98,8 +98,9 @@
 
 size_t aligntsize(size_t tsize)
 {
-    // Is pointer alignment on the x64 4 bytes or 8?
-    return (tsize + size_t.sizeof - 1) & ~(size_t.sizeof - 1);
+    // Is pointer alignment on the x86-64 4 bytes or 8?
+    //return (tsize + size_t.sizeof - 1) & ~(size_t.sizeof - 1);
+    return (tsize + 3) & (~3);
 }
 
 extern (C):
@@ -742,7 +743,8 @@
  * length pairs of key/value pairs.
  */
 
-extern (C)
+version(none) // not used, C variadics can't be implemented in LLVM on x86-64
+{
 BB* _d_assocarrayliteralT(TypeInfo_AssociativeArray ti, size_t length, ...)
 {
     auto valuesize = ti.next.tsize();		// value size
@@ -819,5 +821,5 @@
     }
     return result;
 }
+}
 
-