[Issue 20771] va_arg doesn't work for structs with postblits
    d-bugmail at puremagic.com 
    d-bugmail at puremagic.com
       
    Sun Apr 26 17:24:29 UTC 2020
    
    
  
https://issues.dlang.org/show_bug.cgi?id=20771
kinke <kinke at gmx.net> changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kinke at gmx.net
--- Comment #2 from kinke <kinke at gmx.net> ---
(In reply to Iain Buclaw from comment #1)
> The compiler sets __argTypes differently for structs with postblits vs. structs without
Which is correct, as only PODs are passed in registers, so an empty argTypes
tuple for non-PODs is fine.
DMD passes non-PODs on the stack; C++ and LDC pass them indirectly by value
(pointer to caller-allocated copy). The current SysV va_arg implementation in
druntime assumes DMD's ABI in this regard.
--
    
    
More information about the Digitalmars-d-bugs
mailing list