diff --git a/dmd2/declaration.c b/dmd2/declaration.c index 9a143da3..fdee2e5a 100644 --- a/dmd2/declaration.c +++ b/dmd2/declaration.c @@ -1687,7 +1687,11 @@ Expression *VarDeclaration::callScopeDtor(Scope *sc) if (array) { // Typeinfo.destroy(cast(void*)&v); +#if IN_LLVM + Expression *ea = new AddrExp(loc, new DsymbolExp(loc, this)); +#else Expression *ea = new SymOffExp(loc, this, 0, 0); +#endif ea = new CastExp(loc, ea, Type::tvoid->pointerTo()); Expressions *args = new Expressions(); args->push(ea);