OSDN Git Service

/cp
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 9 Jul 2008 20:52:45 +0000 (20:52 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 9 Jul 2008 20:52:45 +0000 (20:52 +0000)
2008-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/36760
* pt.c (tsubst_function_type): Remove warning for type qualifiers
on function return type.

/testsuite
2008-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/36760
* g++.dg/warn/Wreturn-type-4.C: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@137672 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/cp/pt.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/warn/Wreturn-type-4.C

index b68a795..2143fe2 100644 (file)
@@ -1,6 +1,12 @@
 2008-07-09  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/36760
+       * pt.c (tsubst_function_type): Remove warning for type qualifiers
+       on function return type.
+
+2008-07-09  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/36760
        * pt.c (tsubst_function_type): Don't warn for type qualifiers
        on function return type in case of system header.
 
index 3fee994..b54c9d1 100644 (file)
@@ -8765,14 +8765,6 @@ tsubst_function_type (tree t,
   if (arg_types == error_mark_node)
     return error_mark_node;
 
-  if (TYPE_QUALS (return_type) != TYPE_UNQUALIFIED
-      && in_decl != NULL_TREE
-      && !TREE_NO_WARNING (in_decl)
-      && !DECL_IN_SYSTEM_HEADER (in_decl)
-      && (SCALAR_TYPE_P (return_type) || VOID_TYPE_P (return_type)))
-    warning (OPT_Wignored_qualifiers,
-            "type qualifiers ignored on function return type");
-
   /* Construct a new type node and return it.  */
   if (TREE_CODE (t) == FUNCTION_TYPE)
     fntype = build_function_type (return_type, arg_types);
index a71c1cc..1ddae4e 100644 (file)
@@ -1,3 +1,8 @@
+2008-07-09  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/36760
+       * g++.dg/warn/Wreturn-type-4.C: Adjust.
+
 2008-07-09  Richard Sandiford  <rdsandiford@googlemail.com>
 
        PR target/35802
index 20c34a8..4f02678 100644 (file)
@@ -16,7 +16,7 @@ template<typename T> const T getfoo(const T def) /* { dg-bogus "type qualifiers
 template<typename T> class Pair
 {
     public:
-        T getLeft() const { return T(); }   /* { dg-warning "type qualifiers ignored" } */
+        T getLeft() const { return T(); }   /* { dg-bogus "type qualifiers ignored" } */
         const T getRight() const { return T(); } /* { dg-bogus "type qualifiers ignored" } */
 };