Mercurial > projects > ldc
diff runtime/internal/invariant.d @ 1440:d7ec997de427
Adjust runtime for recent ABI change on x86-64, since member functions are no
longer equivalent to regular functions with `this` as their first argument.
(They weren't anyway, but it happened to work as long as there was no `sret`
parameter)
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Sun, 31 May 2009 14:27:01 +0200 |
parents | d30c40f1128d |
children |
line wrap: on
line diff
--- a/runtime/internal/invariant.d Sun May 31 10:41:20 2009 +0200 +++ b/runtime/internal/invariant.d Sun May 31 14:27:01 2009 +0200 @@ -18,7 +18,10 @@ { if (c.classInvariant) { - (*c.classInvariant)(o); + void delegate() inv; + inv.ptr = cast(void*) o; + inv.funcptr = c.classInvariant; + inv(); } c = c.base; } while (c);