tree.c (handle_nodiscard_attribute): Improve warning location.
authorPaolo Carlini <paolo.carlini@oracle.com>
Thu, 3 Jan 2019 10:00:30 +0000 (10:00 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Thu, 3 Jan 2019 10:00:30 +0000 (10:00 +0000)
/cp
2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

* tree.c (handle_nodiscard_attribute): Improve warning location.

/testsuite
2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp1z/nodiscard3.C: Test locations too.

From-SVN: r267547

gcc/cp/ChangeLog
gcc/cp/tree.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp1z/nodiscard3.C

index 1ac5832d4554acc3b8c89c9cebd7ed155bb3f04d..5b94654b10a80cfe9d3977f2c1837aa486e6033a 100644 (file)
@@ -1,3 +1,7 @@
+2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * tree.c (handle_nodiscard_attribute): Improve warning location.
+
 2019-01-02  Marek Polacek  <polacek@redhat.com>
 
        PR c++/88612 - ICE with -Waddress-of-packed-member.
index 6bbad5fb7a9176c2e1aa5df0c1999ed5a3cdd23c..4db89a4e5a65980165e03cf65763f7973cf1ff63 100644 (file)
@@ -4372,8 +4372,9 @@ handle_nodiscard_attribute (tree *node, tree name, tree /*args*/,
   if (TREE_CODE (*node) == FUNCTION_DECL)
     {
       if (VOID_TYPE_P (TREE_TYPE (TREE_TYPE (*node))))
-       warning (OPT_Wattributes, "%qE attribute applied to %qD with void "
-                "return type", name, *node);
+       warning_at (DECL_SOURCE_LOCATION (*node),
+                   OPT_Wattributes, "%qE attribute applied to %qD with void "
+                   "return type", name, *node);
     }
   else if (OVERLOAD_TYPE_P (*node))
     /* OK */;
index 0eb365817e86a3934e81bc845775f0d795668538..c077f7a9a8e257f98a77dbc86bd64305b7d92003 100644 (file)
@@ -1,3 +1,7 @@
+2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * g++.dg/cpp1z/nodiscard3.C: Test locations too.
+
 2019-01-03  Martin Liska  <mliska@suse.cz>
 
        PR testsuite/88436
@@ -14,7 +18,7 @@
        PR c++/81486 - CTAD failing with ().
        * g++.dg/cpp1z/class-deduction60.C: New test.
        * g++.dg/cpp1z/class-deduction61.C: New test.
-       
+
 2019-01-02  Martin Sebor  <msebor@redhat.com>
             Jeff Law  <law@redhat.com>
 
@@ -31,7 +35,7 @@
        messages only on vect_hw_misalign targets.
 
 2019-01-02  Steven G. Kargl  <kargl@gcc.gnu.org>
+
        * gfortran.dg/argument_checking_7.f90: Remove run-on error message.
        * gfortran.dg/dec_d_lines_3.f: Ditto.
        * gfortran.dg/dec_structure_24.f90: Ditto.
index 4d24ce54413debd860d8a9f038adba2bd6427fa8..42485b73972b07af2063c0ada451b56a9d4d2a40 100644 (file)
@@ -13,8 +13,8 @@ typedef struct { char big[1024]; fnt fn; } C;
 struct [[nodiscard]] D { int i; D(); ~D(); };
 
 WUR E check1 (void);
-WUR void check2 (void); /* { dg-warning "nodiscard" } */
-WUR int foo;           /* { dg-warning "nodiscard" } */
+WUR void check2 (void); /* { dg-warning "10:.nodiscard." } */
+WUR int foo;           /* { dg-warning "9:.nodiscard." } */
 int bar (void);
 WURAI E check3 (void) { return (E)bar (); }
 WUR A check4 (void);