- cleanup of the remaining FxBinary operators.
- changed FxCompareEq with strings and other types that can be cast to from a string always convert the string to the other type before comparing.
This commit is contained in:
parent
d9953eb3bd
commit
f71aad4cdd
4 changed files with 256 additions and 259 deletions
|
|
@ -2902,10 +2902,12 @@ FxExpression *ZCCCompiler::ConvertNode(ZCC_TreeNode *ast)
|
|||
case PEX_LeftShift:
|
||||
case PEX_RightShift:
|
||||
case PEX_URightShift:
|
||||
return new FxShift(tok, left, right);
|
||||
|
||||
case PEX_BitAnd:
|
||||
case PEX_BitOr:
|
||||
case PEX_BitXor:
|
||||
return new FxBinaryInt(tok, left, right);
|
||||
return new FxBitOp(tok, left, right);
|
||||
|
||||
case PEX_BoolOr:
|
||||
case PEX_BoolAnd:
|
||||
|
|
@ -2937,10 +2939,12 @@ FxExpression *ZCCCompiler::ConvertNode(ZCC_TreeNode *ast)
|
|||
case PEX_LshAssign:
|
||||
case PEX_RshAssign:
|
||||
case PEX_URshAssign:
|
||||
return ModifyAssign(new FxShift(tok, new FxAssignSelf(*ast), right), left);
|
||||
|
||||
case PEX_AndAssign:
|
||||
case PEX_OrAssign:
|
||||
case PEX_XorAssign:
|
||||
return ModifyAssign(new FxBinaryInt(tok, new FxAssignSelf(*ast), right), left);
|
||||
return ModifyAssign(new FxBitOp(tok, new FxAssignSelf(*ast), right), left);
|
||||
|
||||
case PEX_LTGTEQ:
|
||||
return new FxLtGtEq(left, right);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue