Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
September 25, 2012 [Issue 13] ARM: can't cast _argptr / va_list to pointer | ||||
---|---|---|---|---|
| ||||
http://gdcproject.org/bugzilla/show_bug.cgi?id=13 --- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> 2012-09-25 20:31:59 UTC --- ARM va_list type is void* ARM EABI va_list type is {void*} As such, you need to be a little more creative about getting it's value the x86-way. byte *p = *cast(byte**)&argptr; byte b = *p; Works for both the old and embedded ABI's. -- Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all issue changes. |
September 26, 2012 [Issue 13] ARM: can't cast _argptr / va_list to pointer | ||||
---|---|---|---|---|
| ||||
http://gdcproject.org/bugzilla/show_bug.cgi?id=13 --- Comment #2 from Johannes Pfau <johannespfau@gmail.com> 2012-09-26 09:26:55 UTC --- So D doesn't make any guarantees that casting va_list to a pointer is portable, right? But what does that mean for the test suite? Change it to use the portable va_arg or is that test meant to be platform specific and we should add a version(ARM) block to test the ARM behaviour? https://github.com/D-Programming-GDC/GDC/blob/master/gcc/testsuite/gdc.test/runnable/test20.d#L595 https://github.com/D-Programming-GDC/GDC/blob/master/gcc/testsuite/gdc.test/runnable/testdstress.d#L209 -- Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all issue changes. |
September 26, 2012 [Issue 13] ARM: can't cast _argptr / va_list to pointer | ||||
---|---|---|---|---|
| ||||
http://gdcproject.org/bugzilla/show_bug.cgi?id=13 --- Comment #3 from Iain Buclaw <ibuclaw@gdcproject.org> 2012-09-26 13:34:12 UTC --- (In reply to comment #2) > So D doesn't make any guarantees that casting va_list to a pointer is portable, right? > > But what does that mean for the test suite? Change it to use the portable va_arg or is that test meant to be platform specific and we should add a version(ARM) block to test the ARM behaviour? > > https://github.com/D-Programming-GDC/GDC/blob/master/gcc/testsuite/gdc.test/runnable/test20.d#L595 https://github.com/D-Programming-GDC/GDC/blob/master/gcc/testsuite/gdc.test/runnable/testdstress.d#L209 Both look fishy... how it is passing for 64bit, I do not know. -- Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all issue changes. |
September 27, 2012 [Issue 13] ARM: can't cast _argptr / va_list to pointer | ||||
---|---|---|---|---|
| ||||
http://gdcproject.org/bugzilla/show_bug.cgi?id=13 Johannes Pfau <johannespfau@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED AssignedTo|ibuclaw@gdcproject.org |johannespfau@gmail.com --- Comment #4 from Johannes Pfau <johannespfau@gmail.com> 2012-09-27 18:02:33 UTC --- https://github.com/D-Programming-Language/dmd/pull/1149 -- Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all issue changes. |
October 27, 2012 [Issue 13] ARM: can't cast _argptr / va_list to pointer | ||||
---|---|---|---|---|
| ||||
http://gdcproject.org/bugzilla/show_bug.cgi?id=13 Johannes Pfau <johannespfau@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED --- Comment #5 from Johannes Pfau <johannespfau@gmail.com> 2012-10-27 17:53:41 UTC --- Fixed in upstream dmd: https://github.com/D-Programming-Language/dmd/commit/f804036586e3c5a363c29f47f1e9407304c75f9e -- Configure issuemail: http://gdcproject.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all issue changes. |
Copyright © 1999-2021 by the D Language Foundation