assign
This commit is contained in:
parent
f7cb77a02c
commit
33784871ec
|
@ -995,9 +995,11 @@ static AstNode *trans_binary_operator(Context *c, bool result_used, AstNode *blo
|
|||
// TODO: int vs bool
|
||||
return trans_create_bin_op(c, block, stmt->getLHS(), BinOpTypeBoolOr, stmt->getRHS());
|
||||
case BO_Assign:
|
||||
(void)result_used;
|
||||
emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_Assign");
|
||||
return nullptr;
|
||||
if (result_used) {
|
||||
emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_Assign with result_used");
|
||||
return nullptr;
|
||||
}
|
||||
return trans_create_bin_op(c, block, stmt->getLHS(), BinOpTypeAssign, stmt->getRHS());
|
||||
case BO_MulAssign:
|
||||
emit_warning(c, stmt->getLocStart(), "TODO handle more C binary operators: BO_MulAssign");
|
||||
return nullptr;
|
||||
|
|
|
@ -415,6 +415,18 @@ pub fn addCases(cases: &tests.ParseCContext) {
|
|||
\\}
|
||||
);
|
||||
|
||||
cases.add("assign",
|
||||
\\int max(int a) {
|
||||
\\ int tmp;
|
||||
\\ tmp = a;
|
||||
\\}
|
||||
,
|
||||
\\export fn max(a: c_int) -> c_int {
|
||||
\\ var tmp: c_int;
|
||||
\\ tmp = a;
|
||||
\\}
|
||||
);
|
||||
|
||||
cases.add("shift right assign with a fixed size type",
|
||||
\\#include <stdint.h>
|
||||
\\int log2(uint32_t a) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user