From c5f914a3c76702ed085f8bb753e594af8903699a Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Wed, 15 Jun 2016 20:13:39 +0000 Subject: [PATCH] decl.c (wrapup_globals_for_namespace): Use DECL_SOURCE_LOCATION and "%qF" in warning_at instead of "%q+F" in warning. 2016-06-15 Paolo Carlini * decl.c (wrapup_globals_for_namespace): Use DECL_SOURCE_LOCATION and "%qF" in warning_at instead of "%q+F" in warning. (check_redeclaration_exception_specification): Likewise in pedwarn (and error, inform, for consistency). * call.c (joust): Likewise. From-SVN: r237496 --- gcc/cp/ChangeLog | 8 ++++++++ gcc/cp/call.c | 8 ++++---- gcc/cp/decl.c | 17 ++++++++++------- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7e68d054197..d62ab39d438 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,11 @@ +2016-06-15 Paolo Carlini + + * decl.c (wrapup_globals_for_namespace): Use DECL_SOURCE_LOCATION and + "%qF" in warning_at instead of "%q+F" in warning. + (check_redeclaration_exception_specification): Likewise in pedwarn + (and error, inform, for consistency). + * call.c (joust): Likewise. + 2016-06-15 Paolo Carlini PR c++/70202 diff --git a/gcc/cp/call.c b/gcc/cp/call.c index e2b89b8a2c4..475b380a5f0 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -9495,10 +9495,10 @@ joust (struct z_candidate *cand1, struct z_candidate *cand2, bool warn, "default argument mismatch in " "overload resolution")) { - inform (input_location, - " candidate 1: %q+#F", cand1->fn); - inform (input_location, - " candidate 2: %q+#F", cand2->fn); + inform (DECL_SOURCE_LOCATION (cand1->fn), + " candidate 1: %q#F", cand1->fn); + inform (DECL_SOURCE_LOCATION (cand2->fn), + " candidate 2: %q#F", cand2->fn); } } else diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 1aa5e523cb3..830b3f523dc 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -914,8 +914,9 @@ wrapup_globals_for_namespace (tree name_space, void* data ATTRIBUTE_UNUSED) && !DECL_ARTIFICIAL (decl) && !TREE_NO_WARNING (decl)) { - warning (OPT_Wunused_function, - "%q+F declared % but never defined", decl); + warning_at (DECL_SOURCE_LOCATION (decl), + OPT_Wunused_function, + "%qF declared % but never defined", decl); TREE_NO_WARNING (decl) = 1; } } @@ -1233,18 +1234,20 @@ check_redeclaration_exception_specification (tree new_decl, && !comp_except_specs (new_exceptions, old_exceptions, ce_normal)) { const char *msg - = "declaration of %q+F has a different exception specifier"; + = "declaration of %qF has a different exception specifier"; bool complained = true; + location_t new_loc = DECL_SOURCE_LOCATION (new_decl); if (DECL_IN_SYSTEM_HEADER (old_decl)) - complained = pedwarn (0, OPT_Wsystem_headers, msg, new_decl); + complained = pedwarn (new_loc, OPT_Wsystem_headers, msg, new_decl); else if (!flag_exceptions) /* We used to silently permit mismatched eh specs with -fno-exceptions, so make them a pedwarn now. */ - complained = pedwarn (0, OPT_Wpedantic, msg, new_decl); + complained = pedwarn (new_loc, OPT_Wpedantic, msg, new_decl); else - error (msg, new_decl); + error_at (new_loc, msg, new_decl); if (complained) - inform (0, "from previous declaration %q+F", old_decl); + inform (DECL_SOURCE_LOCATION (old_decl), + "from previous declaration %qF", old_decl); } } -- 2.30.2