digitalmars.D.bugs - [Issue 17711] New: std.array.byPair should be usable with const AA
- via Digitalmars-d-bugs (28/28) Aug 01 2017 https://issues.dlang.org/show_bug.cgi?id=17711
https://issues.dlang.org/show_bug.cgi?id=17711 Issue ID: 17711 Summary: std.array.byPair should be usable with const AA Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P1 Component: phobos Assignee: nobody puremagic.com Reporter: hsteoh quickfur.ath.cx Code: ------ import std.array; const(int[string]) aa = [ "abc": 123 ]; auto r = aa.byPair; ------ This code ought to compile, but doesn't, because const(int[string]) does not match the function declaration `auto byPair(K,V)(Value[Key] aa)`. However, the implementation actually supports iterating over const AA's just fine. We just need to declare the function differently so that it will match a const AA type: ------ auto byPair(AA : V[K], V, K)(AA aa) ------ --
Aug 01 2017