Show the ninja string that failed to parse in errors

So that it's easier to debug what the problem is.

Test: m nothing
Change-Id: I97e81f98f0365e981d34c6b8bec8528de1b7e514
This commit is contained in:
Cole Faust 2023-01-19 14:23:04 -08:00
parent a405cf7f6a
commit c5baf11a2d
2 changed files with 4 additions and 4 deletions

View file

@ -118,7 +118,7 @@ func parseNinjaString(scope scope, str string) (ninjaString, error) {
r := rune(str[i])
state, err = state(parseState, i, r)
if err != nil {
return nil, err
return nil, fmt.Errorf("error parsing ninja string %q: %s", str, err)
}
}

View file

@ -87,7 +87,7 @@ var ninjaParseTestCases = []struct {
strs: []string{"$ ", " "},
}, {
input: "foo $ bar",
err: "invalid character after '$' at byte offset 5",
err: `error parsing ninja string "foo $ bar": invalid character after '$' at byte offset 5`,
},
{
input: "foo $",
@ -95,11 +95,11 @@ var ninjaParseTestCases = []struct {
},
{
input: "foo ${} bar",
err: "empty variable name at byte offset 6",
err: `error parsing ninja string "foo ${} bar": empty variable name at byte offset 6`,
},
{
input: "foo ${abc!} bar",
err: "invalid character in variable name at byte offset 9",
err: `error parsing ninja string "foo ${abc!} bar": invalid character in variable name at byte offset 9`,
},
{
input: "foo ${abc",