digitalmars.D.bugs - Typesafe variadic function typo...
I made a typo testing the new typesafe variadic functions, which crashed
the compiler with this message:
test.d(8): function test2.test (int...) does not match argument types
(int[])
Assertion failure: '0' on line 272 in file 'expression.c'
The code in question is:
void test(int i ...)
{
}
int main()
{
const int[] i = [1];
test(i);
return 0;
}
The code is of course wrong, the first line should be:
void test(int[] i ...)
Or test should be called with exactly one int parameter - no more, no less.
But that doesn't mean a crash is in order ;). Looking at the code, I
would guess some errors for other cases of the switch would fix it.
-[Unknown]
Jun 11 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Unknown W. Brackets schrieb am Sat, 11 Jun 2005 19:25:28 -0700:I made a typo testing the new typesafe variadic functions, which crashed the compiler with this message: test.d(8): function test2.test (int...) does not match argument types (int[]) Assertion failure: '0' on line 272 in file 'expression.c' The code in question is: void test(int i ...) { } int main() { const int[] i = [1]; test(i); return 0; } The code is of course wrong, the first line should be: void test(int[] i ...) Or test should be called with exactly one int parameter - no more, no less. But that doesn't mean a crash is in order ;). Looking at the code, I would guess some errors for other cases of the switch would fix it.
Added to DStress as http://dstress.kuehne.cn/nocompile/v/variadic_argument_06_A.d http://dstress.kuehne.cn/nocompile/v/variadic_argument_06_B.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCs91+3w+/yD4P9tIRAjgZAJ911k148DDQgMbM71WuOIntBztP6gCgoAug 5rb/VzaittFxKvVJXMEuV1M= =Qp2j -----END PGP SIGNATURE-----
Jun 18 2005








Thomas Kuehne <thomas-dloop kuehne.this-is-spam.cn>