Commit 3fe99aa5 by Fabien Chêne

class.c (find_abi_tags_r): Check for the return of warning before emitting a note.

2014-04-04  Fabien Chêne  <fabien@gcc.gnu.org>

	* class.c (find_abi_tags_r): Check for the return of warning
	before emitting a note.
	(one_inherited_ctor): Likewise.

From-SVN: r209118
parent 610c8ef0
2014-04-04 Fabien Chêne <fabien@gcc.gnu.org> 2014-04-04 Fabien Chêne <fabien@gcc.gnu.org>
* class.c (find_abi_tags_r): Check for the return of warning
before emitting a note.
(one_inherited_ctor): Likewise.
2014-04-04 Fabien Chêne <fabien@gcc.gnu.org>
* decl.c (duplicate_decls): Check for the return of permerror * decl.c (duplicate_decls): Check for the return of permerror
before emitting a note. before emitting a note.
......
...@@ -1385,19 +1385,21 @@ find_abi_tags_r (tree *tp, int *walk_subtrees, void *data) ...@@ -1385,19 +1385,21 @@ find_abi_tags_r (tree *tp, int *walk_subtrees, void *data)
/* Otherwise we're diagnosing missing tags. */ /* Otherwise we're diagnosing missing tags. */
else if (TYPE_P (p->subob)) else if (TYPE_P (p->subob))
{ {
warning (OPT_Wabi_tag, "%qT does not have the %E abi tag " if (warning (OPT_Wabi_tag, "%qT does not have the %E abi tag "
"that base %qT has", p->t, tag, p->subob); "that base %qT has", p->t, tag, p->subob))
inform (location_of (p->subob), "%qT declared here", inform (location_of (p->subob), "%qT declared here",
p->subob); p->subob);
} }
else else
{ {
warning (OPT_Wabi_tag, "%qT does not have the %E abi tag " if (warning (OPT_Wabi_tag, "%qT does not have the %E abi tag "
"that %qT (used in the type of %qD) has", "that %qT (used in the type of %qD) has",
p->t, tag, *tp, p->subob); p->t, tag, *tp, p->subob))
inform (location_of (p->subob), "%qD declared here", {
p->subob); inform (location_of (p->subob), "%qD declared here",
inform (location_of (*tp), "%qT declared here", *tp); p->subob);
inform (location_of (*tp), "%qT declared here", *tp);
}
} }
} }
} }
...@@ -3083,9 +3085,9 @@ one_inherited_ctor (tree ctor, tree t) ...@@ -3083,9 +3085,9 @@ one_inherited_ctor (tree ctor, tree t)
one_inheriting_sig (t, ctor, new_parms, i); one_inheriting_sig (t, ctor, new_parms, i);
if (parms == NULL_TREE) if (parms == NULL_TREE)
{ {
warning (OPT_Winherited_variadic_ctor, if (warning (OPT_Winherited_variadic_ctor,
"the ellipsis in %qD is not inherited", ctor); "the ellipsis in %qD is not inherited", ctor))
inform (DECL_SOURCE_LOCATION (ctor), "%qD declared here", ctor); inform (DECL_SOURCE_LOCATION (ctor), "%qD declared here", ctor);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment