Fix how the rule is displayed in the error message.

Bug: 204001941
Test: internal
Change-Id: I19c73356cc305ec7a6dfd3bddbde775ef9ca4953
This commit is contained in:
Sasha Smundak
2021-10-24 15:16:59 -07:00
parent 6d852dd16a
commit 2afb9d7722
2 changed files with 18 additions and 1 deletions

View File

@@ -1466,7 +1466,7 @@ func (ctx *parseContext) handleSimpleStatement(node mkparser.Node) bool {
handled = false
}
default:
ctx.errorf(x, "unsupported line %s", x.Dump())
ctx.errorf(x, "unsupported line %s", strings.ReplaceAll(x.Dump(), "\n", "\n#"))
}
return handled
}

View File

@@ -961,6 +961,23 @@ def init(g, handle):
if not _varmod_init:
rblf.mkerror("cannot")
rblf.inherit(handle, _varmod, _varmod_init)
`,
},
{
desc: "Ignore make rules",
mkname: "product.mk",
in: `
foo: foo.c
gcc -o $@ $*`,
expected: `# MK2RBC TRANSLATION ERROR: unsupported line rule: foo: foo.c
#gcc -o $@ $*
# rule: foo: foo.c
# gcc -o $@ $*
load("//build/make/core:product_config.rbc", "rblf")
def init(g, handle):
cfg = rblf.cfg(handle)
rblf.warning("product.mk", "partially successful conversion")
`,
},
}