mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-05-13 06:28:52 +03:00
Fixed debug info and lazy arguments.
This commit is contained in:
parent
41d6279a64
commit
00072e5fd0
1 changed files with 3 additions and 1 deletions
|
@ -595,8 +595,10 @@ void DtoDefineFunc(FuncDeclaration* fd)
|
||||||
VarDeclaration* vd = argsym->isVarDeclaration();
|
VarDeclaration* vd = argsym->isVarDeclaration();
|
||||||
assert(vd);
|
assert(vd);
|
||||||
|
|
||||||
|
bool refoutlazy = vd->storage_class & (STCref | STCout | STClazy);
|
||||||
|
|
||||||
// FIXME: llvm seems to want an alloca/byval for debug info
|
// FIXME: llvm seems to want an alloca/byval for debug info
|
||||||
if (!vd->needsStorage || vd->nestedref || vd->isRef() || vd->isOut())
|
if (!vd->needsStorage || vd->nestedref || refoutlazy)
|
||||||
{
|
{
|
||||||
Logger::println("skipping arg storage for (%s) %s ", vd->loc.toChars(), vd->toChars());
|
Logger::println("skipping arg storage for (%s) %s ", vd->loc.toChars(), vd->toChars());
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue