Explorar o código

* Fix most test suite regressions.

git-svn-id: trunk@7931 -
daniel %!s(int64=18) %!d(string=hai) anos
pai
achega
a0da139ec6
Modificáronse 1 ficheiros con 4 adicións e 2 borrados
  1. 4 2
      compiler/nmem.pas

+ 4 - 2
compiler/nmem.pas

@@ -722,8 +722,10 @@ implementation
          if ((right.nodetype<>rangen) and is_integer(right.resultdef)) or (left.resultdef.typ<>arraydef) then
            case left.resultdef.typ of
              arraydef:
-               if ado_IsDynamicArray in Tarraydef(left.resultdef).arrayoptions then 
-                 {Convert indexes into dynamic arrays to aword.}
+//               if ado_IsDynamicArray in Tarraydef(left.resultdef).arrayoptions then 
+               if (Tarraydef(left.resultdef).lowrange=0) and (Tarraydef(left.resultdef).highrange=-1) then
+                 {Arrays without a high bound (dynamic arrays, open arrays) are zero based,
+                  convert indexes into these arrays to aword.}
                  inserttypeconv(right,uinttype)
                else
                  {Convert array indexes to low_bound..high_bound.}