浏览代码

we don't need casts in python and we don't have to handle the inner expr with is_value=true

frabbit 11 年之前
父节点
当前提交
b81ebcac98
共有 1 个文件被更改,包括 3 次插入3 次删除
  1. 3 3
      genpy.ml

+ 3 - 3
genpy.ml

@@ -750,9 +750,9 @@ module Transformer = struct
 			let exprs = List.map (fun (v) -> v.a_expr) values in
 			let exprs = List.map (fun (v) -> v.a_expr) values in
 			let r = { a_expr with eexpr = TArrayDecl exprs } in
 			let r = { a_expr with eexpr = TArrayDecl exprs } in
 			lift_expr ~blocks:blocks r
 			lift_expr ~blocks:blocks r
-		| (_, TCast(e,t)) ->
-			let e = trans true [] e in
-			let r = { a_expr with eexpr = TCast(e.a_expr, t) } in
+		| (is_value, TCast(e,t)) ->
+			let e = trans is_value [] e in
+			let r = { a_expr with eexpr = e.a_expr.eexpr } in
 			lift_expr ~blocks:e.a_blocks r
 			lift_expr ~blocks:e.a_blocks r
 		| (_, TField(e,f)) ->
 		| (_, TField(e,f)) ->
 			let e = trans true [] e in
 			let e = trans true [] e in