mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
cgen: minor cleanup of gen_assert_stmt() (#8018)
This commit is contained in:
parent
cc17f145c5
commit
72317975fc
@ -78,7 +78,7 @@ mut:
|
|||||||
stmt_path_pos []int // positions of each statement start, for inserting C statements before the current statement
|
stmt_path_pos []int // positions of each statement start, for inserting C statements before the current statement
|
||||||
skip_stmt_pos bool // for handling if expressions + autofree (since both prepend C statements)
|
skip_stmt_pos bool // for handling if expressions + autofree (since both prepend C statements)
|
||||||
right_is_opt bool
|
right_is_opt bool
|
||||||
is_autofree bool // false, inside the bodies of fns marked with [manualfree], otherwise === g.pref.autofree
|
is_autofree bool // false, inside the bodies of fns marked with [manualfree], otherwise === g.pref.autofree
|
||||||
indent int
|
indent int
|
||||||
empty_line bool
|
empty_line bool
|
||||||
is_test bool
|
is_test bool
|
||||||
@ -1464,12 +1464,12 @@ fn (mut g Gen) gen_assert_stmt(original_assert_statement ast.AssertStmt) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
g.inside_ternary++
|
g.inside_ternary++
|
||||||
g.write('if (')
|
|
||||||
g.expr(a.expr)
|
|
||||||
g.write(')')
|
|
||||||
g.decrement_inside_ternary()
|
|
||||||
if g.is_test {
|
if g.is_test {
|
||||||
g.writeln('{')
|
g.write('if (')
|
||||||
|
g.expr(a.expr)
|
||||||
|
g.write(')')
|
||||||
|
g.decrement_inside_ternary()
|
||||||
|
g.writeln(' {')
|
||||||
g.writeln('\tg_test_oks++;')
|
g.writeln('\tg_test_oks++;')
|
||||||
metaname_ok := g.gen_assert_metainfo(a)
|
metaname_ok := g.gen_assert_metainfo(a)
|
||||||
g.writeln('\tmain__cb_assertion_ok(&$metaname_ok);')
|
g.writeln('\tmain__cb_assertion_ok(&$metaname_ok);')
|
||||||
@ -1481,14 +1481,18 @@ fn (mut g Gen) gen_assert_stmt(original_assert_statement ast.AssertStmt) {
|
|||||||
g.writeln('\t// TODO')
|
g.writeln('\t// TODO')
|
||||||
g.writeln('\t// Maybe print all vars in a test function if it fails?')
|
g.writeln('\t// Maybe print all vars in a test function if it fails?')
|
||||||
g.writeln('}')
|
g.writeln('}')
|
||||||
return
|
} else {
|
||||||
|
g.write('if (!(')
|
||||||
|
g.expr(a.expr)
|
||||||
|
g.write('))')
|
||||||
|
g.decrement_inside_ternary()
|
||||||
|
g.writeln(' {')
|
||||||
|
metaname_panic := g.gen_assert_metainfo(a)
|
||||||
|
g.writeln('\t__print_assert_failure(&$metaname_panic);')
|
||||||
|
g.writeln('\tv_panic(_SLIT("Assertion failed..."));')
|
||||||
|
g.writeln('\texit(1);')
|
||||||
|
g.writeln('}')
|
||||||
}
|
}
|
||||||
g.writeln(' {} else {')
|
|
||||||
metaname_panic := g.gen_assert_metainfo(a)
|
|
||||||
g.writeln('\t__print_assert_failure(&$metaname_panic);')
|
|
||||||
g.writeln('\tv_panic(_SLIT("Assertion failed..."));')
|
|
||||||
g.writeln('\texit(1);')
|
|
||||||
g.writeln('}')
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn cnewlines(s string) string {
|
fn cnewlines(s string) string {
|
||||||
|
Loading…
Reference in New Issue
Block a user