cgen: cleanup in if_expr() (#13754)

pull/13763/head
yuyi 2022-03-17 07:09:49 +08:00 committed by GitHub
parent 7a4715288c
commit 136f39a2d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 67 additions and 72 deletions

View File

@ -115,9 +115,7 @@ fn (mut g Gen) if_expr(node ast.IfExpr) {
cvar_name := guard_vars[guard_idx]
g.writeln('\tIError err = ${cvar_name}.err;')
}
} else {
match branch.cond {
ast.IfGuardExpr {
} else if branch.cond is ast.IfGuardExpr {
mut var_name := guard_vars[i]
mut short_opt := false
if var_name == '' {
@ -176,8 +174,7 @@ fn (mut g Gen) if_expr(node ast.IfExpr) {
}
}
}
}
else {
} else {
mut no_needs_par := false
if branch.cond is ast.InfixExpr {
if branch.cond.op == .key_in && branch.cond.left !is ast.InfixExpr
@ -197,8 +194,6 @@ fn (mut g Gen) if_expr(node ast.IfExpr) {
g.writeln(') {')
}
}
}
}
if needs_tmp_var {
if node.is_expr && g.table.sym(node.typ).kind == .sum_type {
g.expected_cast_type = node.typ