wwdump: fail ast mode on parser errors
This commit is contained in:
@@ -114,6 +114,7 @@ export fn main(argc: i32, argv: **u8) i32 = {
|
||||
parserinit(&ps, &l);
|
||||
let f: *node = parsefile(&ps);
|
||||
astprint(1i32, f);
|
||||
if (ps.errs > 0) { return 1; };
|
||||
} else { if (mode == 114) { // '-r' — name resolve report
|
||||
let ps: parser;
|
||||
parserinit(&ps, &l);
|
||||
|
||||
@@ -135,6 +135,10 @@ fn dumprow(td: str, name: str, mode: str, src: str,
|
||||
"package main;\nexport fn main() i32 = { return 0; };\n");
|
||||
|
||||
let co: testenv.commandout;
|
||||
dumprow(td, "bad_a", "-a", badp, &co);
|
||||
if (co.code == 0) {
|
||||
fail("bad_a", "AST dump returned rc=0 on parse-errored input");
|
||||
};
|
||||
dumprow(td, "bad_c", "-c", badp, &co);
|
||||
if (co.code == 0 || co.stdout.len != 0) {
|
||||
fail("bad_c",
|
||||
|
||||
Reference in New Issue
Block a user