[Issue 13] New: ARM: can't cast _argptr / va_list to pointer

gdc-bugzilla at gdcproject.org gdc-bugzilla at gdcproject.org
Tue Sep 25 05:00:24 PDT 2012


http://gdcproject.org/bugzilla/show_bug.cgi?id=13

             Bug #: 13
           Summary: ARM: can't cast _argptr / va_list to pointer
    Classification: Unclassified
           Product: GDC
           Version: development
          Platform: ARM
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gdc
        AssignedTo: ibuclaw at gdcproject.org
        ReportedBy: johannespfau at gmail.com


----
import core.vararg;

void foo31(...)
{
    byte b = *cast(byte*)_argptr;
    assert(b == 8);
}

void main()
{
    byte b = 8;
    foo31(b);
}
----
test20.d: In function ‘foo31’:
test20.d:5: error: cannot convert to a pointer type

The test suite test cases runnable/test20.d and runnable/testdstress.d fail
because of this. Should I document this as a difference between x86 and ARM and
fix that test suite code to only run on x86? I guess this isn't portable code
anyway?

Or should we somehow fix that in the compiler / druntime? AFAIK va_list is a
structure on ARM, but it contains a void* which would probably work just like
the va_list on x86?

-- 
Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all issue changes.


More information about the D.gnu mailing list