[Issue 7512] Associative arrays with dstring as key do not work correctly

2012-02-27 Thread d-bugmail
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 }

[Issue 7512] Associative arrays with dstring as key do not work correctly

2012-02-27 Thread d-bugmail
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

[Issue 7512] Associative arrays with dstring as key do not work correctly

2012-02-27 Thread d-bugmail
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];

[Issue 7512] Associative arrays with dstring as key do not work correctly

2012-02-27 Thread d-bugmail
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[]]