digitalmars.D.bugs - [Regression] Misplaced initialisers in static rectangular array
- Stewart Gordon <smjg_1998 yahoo.com> Jun 14 2005
- "Walter" <newshound digitalmars.com> Jun 16 2005
- Thomas Kuehne <thomas-dloop kuehne.this-is-spam.cn> Jun 18 2005
Using DMD 0.126, Windows 98SE.
The spec contradicts itself on whether this is valid D. But whether it
is or not, it certainly shouldn't be doing what it's doing. Which seems
to be skipping only one byte instead of three for the uninitialised
elements.
----------
import std.stdio;
const char[3][13] month = [
1: "Jan", "Feb", "Mar", "Apr", "May", "Jun",
8: "Aug", "Sep", "Oct", "Nov", "Dec"
];
void main() {
writefln(month[1]);
writefln(month[2]);
writefln(month[5]);
writefln(month[7]);
writefln(month[8]);
writefln(month[6]);
}
----------
nFe
bMa
yJu
ugS
epO
nError: 4invalid UTF-8 sequence
----------
My vote goes to the sentence
"If any members of an array are initialized, they all must be."
being the correct one, in which case this should be a compile error.
Stewart.
--
My e-mail is valid but not my primary mailbox. Please keep replies on
the 'group where everyone may benefit.
Jun 14 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Stewart Gordon schrieb am Tue, 14 Jun 2005 10:26:20 +0100:Using DMD 0.126, Windows 98SE. The spec contradicts itself on whether this is valid D. But whether it is or not, it certainly shouldn't be doing what it's doing. Which seems to be skipping only one byte instead of three for the uninitialised elements. ---------- import std.stdio; const char[3][13] month = [ 1: "Jan", "Feb", "Mar", "Apr", "May", "Jun", 8: "Aug", "Sep", "Oct", "Nov", "Dec" ]; void main() { writefln(month[1]); writefln(month[2]); writefln(month[5]); writefln(month[7]); writefln(month[8]); writefln(month[6]); } ---------- nFe bMa yJu ugS epO nError: 4invalid UTF-8 sequence ----------
Added to DStress as http://dstress.kuehne.cn/run/a/array_initialization_17_A.d http://dstress.kuehne.cn/run/a/array_initialization_17_B.d http://dstress.kuehne.cn/run/a/array_initialization_17_C.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCs9t33w+/yD4P9tIRAlMnAKCiGiYGayK+S0uHDNUq9UrAkVRDJgCfU1ac ksQxWinc8EYlVsq1/bPC420= =dbnV -----END PGP SIGNATURE-----
Jun 18 2005









"Walter" <newshound digitalmars.com> 