This is the continuation of the work on the readability of errors
context.
For example, what used to be:
input.y:1.9-29: invalid value for %define variable 'foo' : 'bar'
input.y:1.9-29: accepted value: 'most'
is now:
input.y:1.9-29: invalid value for %define variable 'foo' : 'bar'
input.y:1.9-29: accepted value: 'most'
* src/muscle-tab.c (muscle_percent_define_check_values): Use
complain_at_indent to output with increased indentation level.
* tests/input:at: Apply this change.
---
src/muscle-tab.c | 11 +++++++----
tests/input.at | 7 ++++---
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/src/muscle-tab.c b/src/muscle-tab.c
index d187f82..37a0f0e 100644
--- a/src/muscle-tab.c
+++ b/src/muscle-tab.c
@@ -593,12 +593,15 @@ muscle_percent_define_check_values (char const * const
*values)
}
if (!*values)
{
+ unsigned i = 0;
location loc = muscle_percent_define_get_loc (*variablep);
- complain_at(loc,
- _("invalid value for %%define variable %s: %s"),
- quote (*variablep), quote_n (1, value));
+ complain_at_indent (loc, &i,
+ _("invalid value for %%define variable %s:
%s"),
+ quote (*variablep), quote_n (1, value));
+ i += SUB_INDENT;
for (values = variablep + 1; *values; ++values)
- complain_at (loc, _("accepted value: %s"), quote (*values));
+ complain_at_indent (loc, &i, _("accepted value: %s"),
+ quote (*values));
}
else
{
diff --git a/tests/input.at b/tests/input.at
index 2facf9e..f208b5f 100644
--- a/tests/input.at
+++ b/tests/input.at
@@ -1033,12 +1033,13 @@ start: ;
]])
AT_BISON_CHECK([[input.y]], [[1]], [[]],
[[input.y:1.9-29: invalid value for %define variable 'lr.default-reductions':
'bogus'
-input.y:1.9-29: accepted value: 'most'
-input.y:1.9-29: accepted value: 'consistent'
-input.y:1.9-29: accepted value: 'accepting'
+input.y:1.9-29: accepted value: 'most'
+input.y:1.9-29: accepted value: 'consistent'
+input.y:1.9-29: accepted value: 'accepting'
]])
# Back-end.
+# FIXME: these should be indented, but we shouldn't mess with the m4 yet
AT_DATA([[input.y]],
[[%define api.push-pull neither
%%
--
1.7.10