diff options
| author | Josh Wolfe <thejoshwolfe@gmail.com> | 2020-01-03 16:41:32 -0700 |
|---|---|---|
| committer | Josh Wolfe <thejoshwolfe@gmail.com> | 2020-01-03 16:41:32 -0700 |
| commit | 7838031b436fa403c628af46f62c7eb914808fd7 (patch) | |
| tree | 6e2129590c51921c820aac613f4a23a883affaab | |
| parent | b91eaba38c6661b5eb3558b0c0b88a22a50d2a57 (diff) | |
| download | zig-7838031b436fa403c628af46f62c7eb914808fd7.tar.gz zig-7838031b436fa403c628af46f62c7eb914808fd7.zip | |
use @intCast instead of @as for shift rhs
| -rw-r--r-- | src-self-hosted/translate_c.zig | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src-self-hosted/translate_c.zig b/src-self-hosted/translate_c.zig index 0b8fabc6c2..c323bb9b2c 100644 --- a/src-self-hosted/translate_c.zig +++ b/src-self-hosted/translate_c.zig @@ -2778,13 +2778,13 @@ fn transCreateCompoundAssign( try transExpr(rp, scope, rhs, .used, .r_value); if (is_shift) { - const as_node = try transCreateNodeBuiltinFnCall(rp.c, "@as"); + const cast_node = try transCreateNodeBuiltinFnCall(rp.c, "@intCast"); const rhs_type = try qualTypeToLog2IntRef(rp, getExprQualType(rp.c, rhs), loc); - try as_node.params.push(rhs_type); + try cast_node.params.push(rhs_type); _ = try appendToken(rp.c, .Comma, ","); - try as_node.params.push(rhs_node); - as_node.rparen_token = try appendToken(rp.c, .RParen, ")"); - rhs_node = &as_node.base; + try cast_node.params.push(rhs_node); + cast_node.rparen_token = try appendToken(rp.c, .RParen, ")"); + rhs_node = &cast_node.base; } if (scope.id != .Condition) _ = try appendToken(rp.c, .Semicolon, ";"); @@ -2815,13 +2815,13 @@ fn transCreateCompoundAssign( const bin_token = try appendToken(rp.c, bin_tok_id, bin_bytes); var rhs_node = try transExpr(rp, scope, rhs, .used, .r_value); if (is_shift) { - const as_node = try transCreateNodeBuiltinFnCall(rp.c, "@as"); + const cast_node = try transCreateNodeBuiltinFnCall(rp.c, "@intCast"); const rhs_type = try qualTypeToLog2IntRef(rp, getExprQualType(rp.c, rhs), loc); - try as_node.params.push(rhs_type); + try cast_node.params.push(rhs_type); _ = try appendToken(rp.c, .Comma, ","); - try as_node.params.push(rhs_node); - as_node.rparen_token = try appendToken(rp.c, .RParen, ")"); - rhs_node = &as_node.base; + try cast_node.params.push(rhs_node); + cast_node.rparen_token = try appendToken(rp.c, .RParen, ")"); + rhs_node = &cast_node.base; } const rhs_bin = try transCreateNodeInfixOp(rp, scope, ref_node, bin_op, bin_token, rhs_node, .used, false); @@ -3883,20 +3883,20 @@ fn transCreateNodeShiftOp( const lhs = try transExpr(rp, scope, lhs_expr, .used, .l_value); const op_token = try appendToken(rp.c, op_tok_id, bytes); - const as_node = try transCreateNodeBuiltinFnCall(rp.c, "@as"); + const cast_node = try transCreateNodeBuiltinFnCall(rp.c, "@intCast"); const rhs_type = try qualTypeToLog2IntRef(rp, ZigClangBinaryOperator_getType(stmt), rhs_location); - try as_node.params.push(rhs_type); + try cast_node.params.push(rhs_type); _ = try appendToken(rp.c, .Comma, ","); const rhs = try transExprCoercing(rp, scope, rhs_expr, .used, .r_value); - try as_node.params.push(rhs); - as_node.rparen_token = try appendToken(rp.c, .RParen, ")"); + try cast_node.params.push(rhs); + cast_node.rparen_token = try appendToken(rp.c, .RParen, ")"); const node = try rp.c.a().create(ast.Node.InfixOp); node.* = ast.Node.InfixOp{ .op_token = op_token, .lhs = lhs, .op = op, - .rhs = &as_node.base, + .rhs = &cast_node.base, }; return &node.base; |
