From: Jason Merrill Date: Thu, 26 Mar 1998 11:16:45 +0000 (+0000) Subject: decl.c (grokdeclarator): Remove const and volatile from type after setting constp... X-Git-Tag: prereleases/egcs-1.1-prerelease~1945 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=18922a6bca05d3b30755004d57f3c37a2af049e4;p=thirdparty%2Fgcc.git decl.c (grokdeclarator): Remove const and volatile from type after setting constp and volatilep. * decl.c (grokdeclarator): Remove const and volatile from type after setting constp and volatilep. * class.c (finish_struct_1): Don't warn about bool bitfield larger than one bit. From-SVN: r18843 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6ca4d8d8f4d5..a25b4415784b 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,11 @@ +Thu Mar 26 11:16:30 1998 Jason Merrill + + * decl.c (grokdeclarator): Remove const and volatile from type after + setting constp and volatilep. + + * class.c (finish_struct_1): Don't warn about bool bitfield larger + than one bit. + Thu Mar 26 10:25:52 1998 Mark Mitchell * pt.c (convert_nontype_argument): STRIP_NOPS where appropriate. diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 337c090535e1..7440a8a71b5a 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -3499,7 +3499,8 @@ finish_struct_1 (t, warn_anon) cp_error_at (" in declaration of `%D'", x); } else if (width > TYPE_PRECISION (TREE_TYPE (x)) - && TREE_CODE (TREE_TYPE (x)) != ENUMERAL_TYPE) + && TREE_CODE (TREE_TYPE (x)) != ENUMERAL_TYPE + && TREE_CODE (TREE_TYPE (x)) != BOOLEAN_TYPE) { cp_warning_at ("width of `%D' exceeds its type", x); } diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 5a3664e96b49..15fa6fb20c5e 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -8397,6 +8397,7 @@ grokdeclarator (declarator, declspecs, decl_context, initialized, attrlist) constp = !! RIDBIT_SETP (RID_CONST, specbits) + TYPE_READONLY (type); volatilep = !! RIDBIT_SETP (RID_VOLATILE, specbits) + TYPE_VOLATILE (type); + type = TYPE_MAIN_VARIANT (type); staticp = 0; inlinep = !! RIDBIT_SETP (RID_INLINE, specbits); virtualp = RIDBIT_SETP (RID_VIRTUAL, specbits);