www.digitalmars.com         C & C++   DMDScript  

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

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


           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 gdcproject.org
        ReportedBy: johannespfau gmail.com


----
import core.vararg;

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

void main()
{
    byte b =3D 8;
    foo31(b);
}
----
test20.d: In function =E2=80=98foo31=E2=80=99:
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 co=
de
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 li=
ke
the va_list on x86?

--=20
Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=3Dema=
il
------- You are receiving this mail because: -------
You are watching all issue changes.=
Sep 25 2012