Bug 9259 – Passing an array of pointers to a typesafe vararg is broken
Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-01-02T17:58:00Z
Last change time
2013-01-21T02:17:26Z
Keywords
pull, wrong-code
Assigned to
nobody
Creator
siegelords_abode
Comments
Comment #0 by siegelords_abode — 2013-01-02T17:58:24Z
Worked fine with 2.060, broken in 2.061. Happens both with -m32 and -m64, but the compiler itself is 64 bit. It has to be an array of pointers, has to be passed to a function with typesafe varargs.
void test(int*[] arr...)
{
assert(*arr[0] == 5); // This assertion fails
}
void main()
{
int a = 5;
test([&a]);
}