]> git.llucax.com Git - software/druntime.git/blobdiff - src/compiler/dmd/object_.d
Finished flattening D1/D2 differences. Except for one or two lines, all differences...
[software/druntime.git] / src / compiler / dmd / object_.d
index a0ac2a0a5d9558345182a17e17bd9610e1142199..0ffa9fbf00b6fc480ca8572dcc62c30e1d2ebee8 100644 (file)
@@ -216,7 +216,7 @@ struct OffsetTypeInfo
  */
 class TypeInfo
 {
  */
 class TypeInfo
 {
-    hash_t toHash()
+    override hash_t toHash()
     {   hash_t hash;
 
         foreach (char c; this.toString())
     {   hash_t hash;
 
         foreach (char c; this.toString())
@@ -224,7 +224,7 @@ class TypeInfo
         return hash;
     }
 
         return hash;
     }
 
-    int opCmp(Object o)
+    override int opCmp(Object o)
     {
         if (this is o)
             return 0;
     {
         if (this is o)
             return 0;
@@ -234,7 +234,7 @@ class TypeInfo
         return dstrcmp(this.toString(), ti.toString());
     }
 
         return dstrcmp(this.toString(), ti.toString());
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         /* TypeInfo instances are singletons, but duplicates can exist
          * across DLL's. Therefore, comparing for a name match is
     {
         /* TypeInfo instances are singletons, but duplicates can exist
          * across DLL's. Therefore, comparing for a name match is
@@ -286,9 +286,9 @@ class TypeInfo
 
 class TypeInfo_Typedef : TypeInfo
 {
 
 class TypeInfo_Typedef : TypeInfo
 {
-    string toString() { return name; }
+    override string toString() { return name; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Typedef c;
         return this is o ||
     {
         TypeInfo_Typedef c;
         return this is o ||
@@ -297,15 +297,15 @@ class TypeInfo_Typedef : TypeInfo
                 this.base == c.base);
     }
 
                 this.base == c.base);
     }
 
-    hash_t getHash(in void* p) { return base.getHash(p); }
-    equals_t equals(in void* p1, in void* p2) { return base.equals(p1, p2); }
-    int compare(in void* p1, in void* p2) { return base.compare(p1, p2); }
-    size_t tsize() { return base.tsize(); }
-    void swap(void* p1, void* p2) { return base.swap(p1, p2); }
+    override hash_t getHash(in void* p) { return base.getHash(p); }
+    override equals_t equals(in void* p1, in void* p2) { return base.equals(p1, p2); }
+    override int compare(in void* p1, in void* p2) { return base.compare(p1, p2); }
+    override size_t tsize() { return base.tsize(); }
+    override void swap(void* p1, void* p2) { return base.swap(p1, p2); }
 
 
-    TypeInfo next() { return base.next(); }
-    uint flags() { return base.flags(); }
-    void[] init() { return m_init.length ? m_init : base.init(); }
+    override TypeInfo next() { return base.next(); }
+    override uint flags() { return base.flags(); }
+    override void[] init() { return m_init.length ? m_init : base.init(); }
 
     TypeInfo base;
     string   name;
 
     TypeInfo base;
     string   name;
@@ -319,9 +319,9 @@ class TypeInfo_Enum : TypeInfo_Typedef
 
 class TypeInfo_Pointer : TypeInfo
 {
 
 class TypeInfo_Pointer : TypeInfo
 {
-    string toString() { return m_next.toString() ~ "*"; }
+    override string toString() { return m_next.toString() ~ "*"; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Pointer c;
         return this is o ||
     {
         TypeInfo_Pointer c;
         return this is o ||
@@ -329,17 +329,17 @@ class TypeInfo_Pointer : TypeInfo
                  this.m_next == c.m_next);
     }
 
                  this.m_next == c.m_next);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         return cast(hash_t)*cast(void**)p;
     }
 
     {
         return cast(hash_t)*cast(void**)p;
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         return *cast(void**)p1 == *cast(void**)p2;
     }
 
     {
         return *cast(void**)p1 == *cast(void**)p2;
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         if (*cast(void**)p1 < *cast(void**)p2)
             return -1;
     {
         if (*cast(void**)p1 < *cast(void**)p2)
             return -1;
@@ -349,29 +349,29 @@ class TypeInfo_Pointer : TypeInfo
             return 0;
     }
 
             return 0;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return (void*).sizeof;
     }
 
     {
         return (void*).sizeof;
     }
 
-    void swap(void* p1, void* p2)
+    override void swap(void* p1, void* p2)
     {
         void* tmp = *cast(void**)p1;
         *cast(void**)p1 = *cast(void**)p2;
         *cast(void**)p2 = tmp;
     }
 
     {
         void* tmp = *cast(void**)p1;
         *cast(void**)p1 = *cast(void**)p2;
         *cast(void**)p2 = tmp;
     }
 
-    TypeInfo next() { return m_next; }
-    uint flags() { return 1; }
+    override TypeInfo next() { return m_next; }
+    override uint flags() { return 1; }
 
     TypeInfo m_next;
 }
 
 class TypeInfo_Array : TypeInfo
 {
 
     TypeInfo m_next;
 }
 
 class TypeInfo_Array : TypeInfo
 {
-    string toString() { return value.toString() ~ "[]"; }
+    override string toString() { return value.toString() ~ "[]"; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Array c;
         return this is o ||
     {
         TypeInfo_Array c;
         return this is o ||
@@ -379,7 +379,7 @@ class TypeInfo_Array : TypeInfo
                 this.value == c.value);
     }
 
                 this.value == c.value);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         size_t sz = value.tsize();
         hash_t hash = 0;
     {
         size_t sz = value.tsize();
         hash_t hash = 0;
@@ -389,7 +389,7 @@ class TypeInfo_Array : TypeInfo
         return hash;
     }
 
         return hash;
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         void[] a1 = *cast(void[]*)p1;
         void[] a2 = *cast(void[]*)p2;
     {
         void[] a1 = *cast(void[]*)p1;
         void[] a2 = *cast(void[]*)p2;
@@ -404,7 +404,7 @@ class TypeInfo_Array : TypeInfo
         return true;
     }
 
         return true;
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         void[] a1 = *cast(void[]*)p1;
         void[] a2 = *cast(void[]*)p2;
     {
         void[] a1 = *cast(void[]*)p1;
         void[] a2 = *cast(void[]*)p2;
@@ -422,12 +422,12 @@ class TypeInfo_Array : TypeInfo
         return cast(int)a1.length - cast(int)a2.length;
     }
 
         return cast(int)a1.length - cast(int)a2.length;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return (void[]).sizeof;
     }
 
     {
         return (void[]).sizeof;
     }
 
-    void swap(void* p1, void* p2)
+    override void swap(void* p1, void* p2)
     {
         void[] tmp = *cast(void[]*)p1;
         *cast(void[]*)p1 = *cast(void[]*)p2;
     {
         void[] tmp = *cast(void[]*)p1;
         *cast(void[]*)p1 = *cast(void[]*)p2;
@@ -436,23 +436,23 @@ class TypeInfo_Array : TypeInfo
 
     TypeInfo value;
 
 
     TypeInfo value;
 
-    TypeInfo next()
+    override TypeInfo next()
     {
         return value;
     }
 
     {
         return value;
     }
 
-    uint flags() { return 1; }
+    override uint flags() { return 1; }
 }
 
 class TypeInfo_StaticArray : TypeInfo
 {
 }
 
 class TypeInfo_StaticArray : TypeInfo
 {
-    string toString()
+    override string toString()
     {
     {
-        char [10] tmp = void;
-        return value.toString() ~ "[" ~ tmp.intToString(len) ~ "]";
+        char[10] tmp = void;
+        return cast(string)(value.toString() ~ "[" ~ tmp.intToString(len) ~ "]");
     }
 
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_StaticArray c;
         return this is o ||
     {
         TypeInfo_StaticArray c;
         return this is o ||
@@ -461,7 +461,7 @@ class TypeInfo_StaticArray : TypeInfo
                 this.value == c.value);
     }
 
                 this.value == c.value);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         size_t sz = value.tsize();
         hash_t hash = 0;
     {
         size_t sz = value.tsize();
         hash_t hash = 0;
@@ -470,7 +470,7 @@ class TypeInfo_StaticArray : TypeInfo
         return hash;
     }
 
         return hash;
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         size_t sz = value.tsize();
 
     {
         size_t sz = value.tsize();
 
@@ -482,7 +482,7 @@ class TypeInfo_StaticArray : TypeInfo
         return true;
     }
 
         return true;
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         size_t sz = value.tsize();
 
     {
         size_t sz = value.tsize();
 
@@ -495,12 +495,12 @@ class TypeInfo_StaticArray : TypeInfo
         return 0;
     }
 
         return 0;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return len * value.tsize();
     }
 
     {
         return len * value.tsize();
     }
 
-    void swap(void* p1, void* p2)
+    override void swap(void* p1, void* p2)
     {
         void* tmp;
         size_t sz = value.tsize();
     {
         void* tmp;
         size_t sz = value.tsize();
@@ -522,9 +522,9 @@ class TypeInfo_StaticArray : TypeInfo
             delete pbuffer;
     }
 
             delete pbuffer;
     }
 
-    void[] init() { return value.init(); }
-    TypeInfo next() { return value; }
-    uint flags() { return value.flags(); }
+    override void[] init() { return value.init(); }
+    override TypeInfo next() { return value; }
+    override uint flags() { return value.flags(); }
 
     TypeInfo value;
     size_t   len;
 
     TypeInfo value;
     size_t   len;
@@ -532,12 +532,12 @@ class TypeInfo_StaticArray : TypeInfo
 
 class TypeInfo_AssociativeArray : TypeInfo
 {
 
 class TypeInfo_AssociativeArray : TypeInfo
 {
-    string toString()
+    override string toString()
     {
     {
-        return next.toString() ~ "[" ~ key.toString() ~ "]";
+        return cast(string)(next.toString() ~ "[" ~ key.toString() ~ "]");
     }
 
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_AssociativeArray c;
         return this is o ||
     {
         TypeInfo_AssociativeArray c;
         return this is o ||
@@ -548,13 +548,13 @@ class TypeInfo_AssociativeArray : TypeInfo
 
     // BUG: need to add the rest of the functions
 
 
     // BUG: need to add the rest of the functions
 
-    size_t tsize()
+    override size_t tsize()
     {
         return (char[int]).sizeof;
     }
 
     {
         return (char[int]).sizeof;
     }
 
-    TypeInfo next() { return value; }
-    uint flags() { return 1; }
+    override TypeInfo next() { return value; }
+    override uint flags() { return 1; }
 
     TypeInfo value;
     TypeInfo key;
 
     TypeInfo value;
     TypeInfo key;
@@ -562,12 +562,12 @@ class TypeInfo_AssociativeArray : TypeInfo
 
 class TypeInfo_Function : TypeInfo
 {
 
 class TypeInfo_Function : TypeInfo
 {
-    string toString()
+    override string toString()
     {
     {
-        return next.toString() ~ "()";
+        return cast(string)(next.toString() ~ "()");
     }
 
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Function c;
         return this is o ||
     {
         TypeInfo_Function c;
         return this is o ||
@@ -577,7 +577,7 @@ class TypeInfo_Function : TypeInfo
 
     // BUG: need to add the rest of the functions
 
 
     // BUG: need to add the rest of the functions
 
-    size_t tsize()
+    override size_t tsize()
     {
         return 0;       // no size for functions
     }
     {
         return 0;       // no size for functions
     }
@@ -587,12 +587,12 @@ class TypeInfo_Function : TypeInfo
 
 class TypeInfo_Delegate : TypeInfo
 {
 
 class TypeInfo_Delegate : TypeInfo
 {
-    string toString()
+    override string toString()
     {
     {
-        return next.toString() ~ " delegate()";
+        return cast(string)(next.toString() ~ " delegate()");
     }
 
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Delegate c;
         return this is o ||
     {
         TypeInfo_Delegate c;
         return this is o ||
@@ -602,22 +602,22 @@ class TypeInfo_Delegate : TypeInfo
 
     // BUG: need to add the rest of the functions
 
 
     // BUG: need to add the rest of the functions
 
-    size_t tsize()
+    override size_t tsize()
     {
         alias int delegate() dg;
         return dg.sizeof;
     }
 
     {
         alias int delegate() dg;
         return dg.sizeof;
     }
 
-    uint flags() { return 1; }
+    override uint flags() { return 1; }
 
     TypeInfo next;
 }
 
 class TypeInfo_Class : TypeInfo
 {
 
     TypeInfo next;
 }
 
 class TypeInfo_Class : TypeInfo
 {
-    string toString() { return info.name; }
+    override string toString() { return info.name; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Class c;
         return this is o ||
     {
         TypeInfo_Class c;
         return this is o ||
@@ -625,13 +625,13 @@ class TypeInfo_Class : TypeInfo
                  this.info.name == c.classinfo.name);
     }
 
                  this.info.name == c.classinfo.name);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         Object o = *cast(Object*)p;
         return o ? o.toHash() : 0;
     }
 
     {
         Object o = *cast(Object*)p;
         return o ? o.toHash() : 0;
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         Object o1 = *cast(Object*)p1;
         Object o2 = *cast(Object*)p2;
     {
         Object o1 = *cast(Object*)p1;
         Object o2 = *cast(Object*)p2;
@@ -639,7 +639,7 @@ class TypeInfo_Class : TypeInfo
         return (o1 is o2) || (o1 && o1.opEquals(o2));
     }
 
         return (o1 is o2) || (o1 && o1.opEquals(o2));
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         Object o1 = *cast(Object*)p1;
         Object o2 = *cast(Object*)p2;
     {
         Object o1 = *cast(Object*)p1;
         Object o2 = *cast(Object*)p2;
@@ -661,14 +661,14 @@ class TypeInfo_Class : TypeInfo
         return c;
     }
 
         return c;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return Object.sizeof;
     }
 
     {
         return Object.sizeof;
     }
 
-    uint flags() { return 1; }
+    override uint flags() { return 1; }
 
 
-    OffsetTypeInfo[] offTi()
+    override OffsetTypeInfo[] offTi()
     {
         return (info.flags & 4) ? info.offTi : null;
     }
     {
         return (info.flags & 4) ? info.offTi : null;
     }
@@ -678,9 +678,9 @@ class TypeInfo_Class : TypeInfo
 
 class TypeInfo_Interface : TypeInfo
 {
 
 class TypeInfo_Interface : TypeInfo
 {
-    string toString() { return info.name; }
+    override string toString() { return info.name; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Interface c;
         return this is o ||
     {
         TypeInfo_Interface c;
         return this is o ||
@@ -688,7 +688,7 @@ class TypeInfo_Interface : TypeInfo
                  this.info.name == c.classinfo.name);
     }
 
                  this.info.name == c.classinfo.name);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p;
         Object o = cast(Object)(*cast(void**)p - pi.offset);
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p;
         Object o = cast(Object)(*cast(void**)p - pi.offset);
@@ -696,7 +696,7 @@ class TypeInfo_Interface : TypeInfo
         return o.toHash();
     }
 
         return o.toHash();
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p1;
         Object o1 = cast(Object)(*cast(void**)p1 - pi.offset);
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p1;
         Object o1 = cast(Object)(*cast(void**)p1 - pi.offset);
@@ -706,7 +706,7 @@ class TypeInfo_Interface : TypeInfo
         return o1 == o2 || (o1 && o1.opCmp(o2) == 0);
     }
 
         return o1 == o2 || (o1 && o1.opCmp(o2) == 0);
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p1;
         Object o1 = cast(Object)(*cast(void**)p1 - pi.offset);
     {
         Interface* pi = **cast(Interface ***)*cast(void**)p1;
         Object o1 = cast(Object)(*cast(void**)p1 - pi.offset);
@@ -730,21 +730,21 @@ class TypeInfo_Interface : TypeInfo
         return c;
     }
 
         return c;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return Object.sizeof;
     }
 
     {
         return Object.sizeof;
     }
 
-    uint flags() { return 1; }
+    override uint flags() { return 1; }
 
     ClassInfo info;
 }
 
 class TypeInfo_Struct : TypeInfo
 {
 
     ClassInfo info;
 }
 
 class TypeInfo_Struct : TypeInfo
 {
-    string toString() { return name; }
+    override string toString() { return name; }
 
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         TypeInfo_Struct s;
         return this is o ||
     {
         TypeInfo_Struct s;
         return this is o ||
@@ -753,7 +753,7 @@ class TypeInfo_Struct : TypeInfo
                  this.init.length == s.init.length);
     }
 
                  this.init.length == s.init.length);
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         assert(p);
         if (xtoHash)
     {
         assert(p);
         if (xtoHash)
@@ -778,7 +778,7 @@ class TypeInfo_Struct : TypeInfo
         }
     }
 
         }
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         if (p1 == p2)
             return true;
     {
         if (p1 == p2)
             return true;
@@ -791,7 +791,7 @@ class TypeInfo_Struct : TypeInfo
             return memcmp(p1, p2, init.length) == 0;
     }
 
             return memcmp(p1, p2, init.length) == 0;
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         // Regard null references as always being "less than"
         if (p1 != p2)
     {
         // Regard null references as always being "less than"
         if (p1 != p2)
@@ -812,14 +812,14 @@ class TypeInfo_Struct : TypeInfo
         return 0;
     }
 
         return 0;
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         return init.length;
     }
 
     {
         return init.length;
     }
 
-    void[] init() { return m_init; }
+    override void[] init() { return m_init; }
 
 
-    uint flags() { return m_flags; }
+    override uint flags() { return m_flags; }
 
     string name;
     void[] m_init;      // initializer; init.ptr == null if 0 initialize
 
     string name;
     void[] m_init;      // initializer; init.ptr == null if 0 initialize
@@ -836,7 +836,7 @@ class TypeInfo_Tuple : TypeInfo
 {
     TypeInfo[] elements;
 
 {
     TypeInfo[] elements;
 
-    string toString()
+    override string toString()
     {
         string s = "(";
         foreach (i, element; elements)
     {
         string s = "(";
         foreach (i, element; elements)
@@ -849,7 +849,7 @@ class TypeInfo_Tuple : TypeInfo
         return s;
     }
 
         return s;
     }
 
-    equals_t opEquals(Object o)
+    override equals_t opEquals(Object o)
     {
         if (this is o)
             return true;
     {
         if (this is o)
             return true;
@@ -867,27 +867,27 @@ class TypeInfo_Tuple : TypeInfo
         return false;
     }
 
         return false;
     }
 
-    hash_t getHash(in void* p)
+    override hash_t getHash(in void* p)
     {
         assert(0);
     }
 
     {
         assert(0);
     }
 
-    equals_t equals(in void* p1, in void* p2)
+    override equals_t equals(in void* p1, in void* p2)
     {
         assert(0);
     }
 
     {
         assert(0);
     }
 
-    int compare(in void* p1, in void* p2)
+    override int compare(in void* p1, in void* p2)
     {
         assert(0);
     }
 
     {
         assert(0);
     }
 
-    size_t tsize()
+    override size_t tsize()
     {
         assert(0);
     }
 
     {
         assert(0);
     }
 
-    void swap(void* p1, void* p2)
+    override void swap(void* p1, void* p2)
     {
         assert(0);
     }
     {
         assert(0);
     }
@@ -927,7 +927,7 @@ class Exception : Object
         this.info = traceContext();
     }
 
         this.info = traceContext();
     }
 
-    string toString()
+    override string toString()
     {
         return msg;
     }
     {
         return msg;
     }