* Build an "invocation" of a binary operation. */
| 557 | * Build an "invocation" of a binary operation. |
| 558 | */ |
| 559 | FunctionInvocation * |
| 560 | FunctionInvocation::make_binary(CGContext &cg_context, eBinaryOps op, |
| 561 | Expression *lhs, Expression *rhs) |
| 562 | { |
| 563 | DEPTH_GUARD_BY_TYPE_RETURN(dtFunctionInvocationBinary, NULL); |
| 564 | SafeOpFlags *flags = SafeOpFlags::make_random_binary(NULL, &(lhs->get_type()), &(rhs->get_type()), sOpBinary, op); |
| 565 | ERROR_GUARD(NULL); |
| 566 | FunctionInvocation *fi = FunctionInvocationBinary::CreateFunctionInvocationBinary(cg_context, op, flags); |
| 567 | fi->param_value.push_back(lhs); |
| 568 | fi->param_value.push_back(rhs); |
| 569 | |
| 570 | return fi; |
| 571 | } |
| 572 | |
| 573 | /* |
| 574 | * |