diff --git a/THANKS b/THANKS
index 95acb1e2..8af0abbe 100644
--- a/THANKS
+++ b/THANKS
@@ -102,6 +102,7 @@ Shura debil_urod@ngs.ru
Stefano Lattarini stefano.lattarini@gmail.com
Steve Murphy murf@parsetree.com
Sum Wu sum@geekhouse.org
+Théophile Ranquet theophile.ranquet@gmail.com
Thiru Ramakrishnan thiru.ramakrishnan@gmail.com
Tim Josling tej@melbpc.org.au
Tim Landscheidt tim@tim-landscheidt.de
@@ -125,6 +126,7 @@ thank them! Please, help us keeping this list up to date.
Local Variables:
mode: text
+coding: utf-8
End:
-----
diff --git a/src/complain.h b/src/complain.h
index b8935645..997d577b 100644
--- a/src/complain.h
+++ b/src/complain.h
@@ -25,6 +25,9 @@
extern "C" {
# endif
+/* Sub-messages indent. */
+#define SUB_INDENT (4)
+
/** Record that a warning is about to be issued, and treat it as an
error if warnings_flag & warnings_error. This is exported
only for the sake of Yacc-compatible conflict reports in conflicts.c.
diff --git a/src/reader.c b/src/reader.c
index 7dd0aaa4..86fde7b2 100644
--- a/src/reader.c
+++ b/src/reader.c
@@ -128,12 +128,16 @@ record_merge_function_type (int merger, uniqstr type, location declaration_loc)
aver (merge_function != NULL && merger_find == merger);
if (merge_function->type != NULL && !UNIQSTR_EQ (merge_function->type, type))
{
- complain_at (declaration_loc,
- _("result type clash on merge function %s: <%s> != <%s>"),
- quote (merge_function->name), type, merge_function->type);
- complain_at (merge_function->type_declaration_location,
- _("previous declaration"));
- }
+ unsigned indent = 0;
+ complain_at_indent (declaration_loc, &indent,
+ _("result type clash on merge function %s: "
+ "<%s> != <%s>"),
+ quote (merge_function->name), type,
+ merge_function->type);
+ indent += SUB_INDENT;
+ complain_at_indent (merge_function->type_declaration_location, &indent,
+ _("previous declaration"));
+ }
merge_function->type = uniqstr_new (type);
merge_function->type_declaration_location = declaration_loc;
}
diff --git a/tests/glr-regression.at b/tests/glr-regression.at
index 07c9fe25..8cea46c9 100644
--- a/tests/glr-regression.at
+++ b/tests/glr-regression.at
@@ -1651,9 +1651,9 @@ AT_BISON_OPTION_POPDEFS
AT_BISON_CHECK([[-o glr-regr18.c glr-regr18.y]], 1, [],
[glr-regr18.y:26.18-24: result type clash on merge function 'merge': !=
-glr-regr18.y:25.18-24: previous declaration
+glr-regr18.y:25.18-24: previous declaration
glr-regr18.y:27.13-19: result type clash on merge function 'merge': !=
-glr-regr18.y:26.18-24: previous declaration
+glr-regr18.y:26.18-24: previous declaration
])
AT_CLEANUP