http://d.puremagic.com/issues/show_bug.cgi?id=7512
--- Comment #1 from hst...@quickfur.ath.cx 2012-02-27 10:29:15 PST ---
Update: wstring keys fail the foreach test too:
int[wstring] map = [abcw: 1, defw: 2];
foreach (key, val; map) {
assert((key in map) !is null); // throws AssertError
}
http://d.puremagic.com/issues/show_bug.cgi?id=7512
--- Comment #2 from hst...@quickfur.ath.cx 2012-02-27 12:42:04 PST ---
OK, I've narrowed down this bug to using an AA literal for when the key is a
non-string array. For some strange reason, the AA literal *appears* to
correctly initialize the
http://d.puremagic.com/issues/show_bug.cgi?id=7512
--- Comment #3 from hst...@quickfur.ath.cx 2012-02-27 13:57:09 PST ---
Even more weirdness:
int[int[]] a7;
const int[] key1 = [1,3,5];
const int[] key2 = [2,4,6];
a7[key1] = 135;
a7[key2] = 246;
int[int[]] a8 = [key1: 135, key2: 246];
http://d.puremagic.com/issues/show_bug.cgi?id=7512
--- Comment #5 from hst...@quickfur.ath.cx 2012-02-27 17:39:10 PST ---
Found cause of problem:
const int[] key = [1,2,3,4];
int[int[]] map1 = [ key: 1234 ];
// map1's internal hashtable has keyti pointing to typeid(const(int)[])
int[int[]]