|
@@ -907,11 +907,19 @@ Type TParser Extends TGenProcessor
|
|
|
|
|
|
' replaces While CParse( "[]" ) sections, with support for multi-dimension arrays
|
|
' replaces While CParse( "[]" ) sections, with support for multi-dimension arrays
|
|
Method ParseArrayType:TType(ty:TType)
|
|
Method ParseArrayType:TType(ty:TType)
|
|
|
|
+
|
|
While True
|
|
While True
|
|
Local dims:Int = 1
|
|
Local dims:Int = 1
|
|
|
|
|
|
If CParse("[]") Then
|
|
If CParse("[]") Then
|
|
ty=New TArrayType.Create( ty )
|
|
ty=New TArrayType.Create( ty )
|
|
|
|
+
|
|
|
|
+ ' test for array of arrays
|
|
|
|
+ Local toker:TToker=New TToker.Copy(_toker)
|
|
|
|
+ If CParseToker(toker, "[") Or CParseToker(toker, "[]") Then
|
|
|
|
+ Continue
|
|
|
|
+ End If
|
|
|
|
+
|
|
Exit
|
|
Exit
|
|
End If
|
|
End If
|
|
|
|
|
|
@@ -926,6 +934,13 @@ Type TParser Extends TGenProcessor
|
|
Parse "]"
|
|
Parse "]"
|
|
|
|
|
|
ty=New TArrayType.Create( ty, dims )
|
|
ty=New TArrayType.Create( ty, dims )
|
|
|
|
+
|
|
|
|
+ ' test for array of arrays
|
|
|
|
+ Local toker:TToker=New TToker.Copy(_toker)
|
|
|
|
+ If CParseToker(toker, "[") Or CParseToker(toker, "[]") Then
|
|
|
|
+ Continue
|
|
|
|
+ End If
|
|
|
|
+
|
|
Exit
|
|
Exit
|
|
Wend
|
|
Wend
|
|
Return ty
|
|
Return ty
|