www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 15823] New: opIndex doesn't work for const std.variant.Variant

https://issues.dlang.org/show_bug.cgi?id=15823

          Issue ID: 15823
           Summary: opIndex doesn't work for const std.variant.Variant
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P1
         Component: phobos
          Assignee: nobody puremagic.com
          Reporter: maximzms gmail.com

Test:
----------
import std.variant;

void main()
{
    const v = Variant([1, 2, 3]);
    auto f = v[1]; // <--- ERROR
}
----------

Output:
----------
test.d(6): Error: template std.variant.VariantN!32LU.VariantN.opIndex cannot
deduce function from argument types !()(int) const, candidates are:
/usr/include/dmd/phobos/std/variant.d(1082):       
std.variant.VariantN!32LU.VariantN.opIndex(K)(K i)
----------

--
Mar 23 2016