[Issue 670] _argptr is char *

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Mar 27 07:38:55 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=670


Iain Buclaw <ibuclaw at ubuntu.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


--- Comment #8 from Iain Buclaw <ibuclaw at ubuntu.com> 2011-03-27 07:35:26 PDT ---
https://bitbucket.org/goshawk/gdc/changeset/9a8cbe47da29
https://bitbucket.org/goshawk/gdc/changeset/521dce459f71#chg-d/d-builtins2.cc
https://bitbucket.org/goshawk/gdc/changeset/d553b62db8e6#chg-d/d-builtins2.cc
https://bitbucket.org/goshawk/gdc/changeset/ae8524183c6f

Required some nasty frontend hacks to trick the GCC backend into thinking it
was dealing with a C ABI va_list type (and to not ICE it's way to Budapest and
back), but pretty much done now.


- va_list treated is as void*
- __va_list is the C ABI va_list.


I'd not be too surprised if architectures where va_list is neither a pointer or
array are broken now (such as ARM, where I'd imagine there'd be a nop cast from
void* to struct) - but see how it goes when it hits the Debian repository...

Closing this report as fixed, and *don't* raise a bug about 64bit va_args,
va_argsave, or whatever. As that ugly mess will never be implemented ( on my
watch :)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the D.gnu mailing list