Fixed passing of structs and static arrays into functions.

Not sure if it is correct, though.
This commit is contained in:
Alexey Prokhin 2011-01-06 17:07:44 +03:00
parent 81e0203a6c
commit e9dacd97e2
2 changed files with 10 additions and 2 deletions

View file

@ -752,8 +752,11 @@ void DtoDefineFunction(FuncDeclaration* fd)
bool refout = vd->storage_class & (STCref | STCout);
bool lazy = vd->storage_class & STClazy;
#if DMDV2
if (!refout)
#else
if (!refout && (!f->fty.args[i]->byref || lazy))
#endif
{
// alloca a stack slot for this first class value arg
const LLType* argt;