www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 17021] New: Invalid code generated for out parameters in

https://issues.dlang.org/show_bug.cgi?id=17021

          Issue ID: 17021
           Summary: Invalid code generated for out parameters in naked asm
                    functions
           Product: D
           Version: D2
          Hardware: x86
                OS: Windows
            Status: NEW
          Severity: major
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: rumbu rumbu.ro

Despite the naked statement, the inline assembler emits initialization code of
out parameters:

void test(out int x)
{
  asm
  {
     naked;
     ret;
  }
}

generated code inside the function:

mov EAX, [EBP -4];
mov dword ptr [EAX], 0;
ret;

--
Dec 23 2016