www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 13129] New: Equality between compatible but differently typed

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

          Issue ID: 13129
           Summary: Equality between compatible but differently typed
                    associative arrays
           Product: D
           Version: D2
          Hardware: x86
                OS: Windows
            Status: NEW
          Keywords: rejects-valid
          Severity: enhancement
          Priority: P1
         Component: DMD
          Assignee: nobody puremagic.com
          Reporter: bearophile_hugs eml.cc

void main() {
    uint[] a = [1, 2];
    byte[] b = [1, 2];
    auto r1 = a == b;         // OK
    uint[int] aa1 = [10: 20];
    byte[int] aa2 = [10: 20];
    auto r2 = aa1 == aa2;     // Error
}


DMD 2.066beta3 gives:

temp.d(7,15): Error: incompatible types for ((aa1) == (aa2)): 'uint[int]' and
'byte[int]'

--
Jul 14 2014