浏览代码

Added initial support for array concatenation.

woollybah 11 年之前
父节点
当前提交
683b069f54
共有 1 个文件被更改,包括 7 次插入1 次删除
  1. 7 1
      ctranslator.bmx

+ 7 - 1
ctranslator.bmx

@@ -1077,7 +1077,7 @@ Type TCTranslator Extends TTranslator
 
 
 		Local rhs$=stmt.rhs.Trans()
 		Local rhs$=stmt.rhs.Trans()
 		Local lhs$=stmt.lhs.TransVar()
 		Local lhs$=stmt.lhs.TransVar()
-		
+
 		Local s:String
 		Local s:String
 		
 		
 '		If ObjectType( stmt.rhs.exprType )
 '		If ObjectType( stmt.rhs.exprType )
@@ -1110,6 +1110,12 @@ Type TCTranslator Extends TTranslator
 			End If
 			End If
 			
 			
 			s :+ "*" + lhs+TransAssignOp( stmt.op )+rhs
 			s :+ "*" + lhs+TransAssignOp( stmt.op )+rhs
+		Else If TArrayType(stmt.lhs.exprType) Then
+			If stmt.op = "+=" Then
+				s :+ lhs+"=bbArrayConcat("+ TransArrayType(TArrayType(stmt.lhs.exprType).elemType) + "," + lhs+","+rhs+")"
+			Else
+				s :+ lhs+TransAssignOp( stmt.op )+rhs
+			End If
 		Else
 		Else
 			s :+ lhs+TransAssignOp( stmt.op )+rhs
 			s :+ lhs+TransAssignOp( stmt.op )+rhs
 		End If
 		End If