diff gen/functions.cpp @ 455:d3d3519b72e8

Fixed inserting an AA entry with 'this' as key. Fixed debug info for aggregate parameters. Only seems to work on byval arguments.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sat, 02 Aug 2008 17:24:10 +0200
parents 283d113d4753
children d82ebdba4191
line wrap: on
line diff
--- a/gen/functions.cpp	Sat Aug 02 02:54:57 2008 +0200
+++ b/gen/functions.cpp	Sat Aug 02 17:24:10 2008 +0200
@@ -612,8 +612,9 @@
             else if (DtoIsPassedByRef(vd->type))
             {
                 Logger::println("skipping arg storage for aggregate (%s) %s ", vd->loc.toChars(), vd->toChars());
-                if (global.params.symdebug)
-                    DtoDwarfLocalVariable(vd->ir.getIrValue(), vd);
+                LLValue* vdirval = vd->ir.getIrValue();
+                if (global.params.symdebug && !(isaArgument(vdirval) && !isaArgument(vdirval)->hasByValAttr()))
+                    DtoDwarfLocalVariable(vdirval, vd);
                 continue;
             }