* typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Feb 2000 11:15:24 +0000 (11:15 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 8 Feb 2000 11:15:24 +0000 (11:15 +0000)
strip array element qualifiers too.

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

gcc/cp/ChangeLog
gcc/cp/typeck.c

index 82faae3..e632672 100644 (file)
@@ -1,3 +1,8 @@
+2000-02-08  Nathan Sidwell  <nathan@acm.org>
+
+       * typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to
+       strip array element qualifiers too.
+
 2000-02-07  Mark Mitchell  <mark@codesourcery.com>
 
        * decl.c (store_parm_decls): Don't build cleanups for parameters
index c9c1085..1ffd7bc 100644 (file)
@@ -7170,7 +7170,8 @@ casts_away_constness (t1, t2)
 
 /* Returns TYPE with its cv qualifiers removed
    TYPE is T cv* .. *cv where T is not a pointer type,
-   returns T * .. *  */
+   returns T * .. *. (If T is an array type, then the cv qualifiers
+   above are those of the array members.)  */
 
 static tree
 strip_all_pointer_quals (type)
@@ -7179,5 +7180,5 @@ strip_all_pointer_quals (type)
   if (TREE_CODE (type) == POINTER_TYPE)
     return build_pointer_type (strip_all_pointer_quals (TREE_TYPE (type)));
   else
-    return strip_top_quals (type);
+    return TYPE_MAIN_VARIANT (type);
 }