It seams that the whole ArrayType + ArrayDimension is based on the
assemption that array bounds cannot be negative !
e.g:
if (dim.UpperBound > 0)
shape.NumSizes++;
OR
if (dim.UpperBound > 0)
shape.Sizes [i] = dim.UpperBound - dim.LowerBound + 1;
..etc.
Further more, an array dimension is supposed to be undefined if
(m_upperBound == 0) which is wrong.
Just take the case : int[-2...0]
--~--~---------~--~----~------------~-------~--~----~
--
mono-cecil
-~----------~----~----~----~------~----~------~--~---