c-decl.c (grokdeclarator): Disable warnings for anonymous bitfields.
gcc/ChangeLog: * c-decl.c (grokdeclarator): Disable warnings for anonymous bitfields. * tree-sra.c (instantiate_element): Propagate disabled warnings from the element itself to the created variable. gcc/cp/ChangeLog: * decl.c (grokdeclarator): Disable warnings for anonymous bitfields. From-SVN: r122684
This commit is contained in:
parent
cd265edd7b
commit
ab53bae286
5 changed files with 20 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
|||
2007-03-08 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* c-decl.c (grokdeclarator): Disable warnings for anonymous
|
||||
bitfields.
|
||||
* tree-sra.c (instantiate_element): Propagate disabled warnings
|
||||
from the element itself to the created variable.
|
||||
|
||||
2007-03-07 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR target/30848
|
||||
|
|
|
@ -4748,6 +4748,8 @@ grokdeclarator (const struct c_declarator *declarator,
|
|||
type = c_build_qualified_type (type, type_quals);
|
||||
decl = build_decl (FIELD_DECL, declarator->u.id, type);
|
||||
DECL_NONADDRESSABLE_P (decl) = bitfield;
|
||||
if (bitfield && !declarator->u.id)
|
||||
TREE_NO_WARNING (decl) = 1;
|
||||
|
||||
if (size_varies)
|
||||
C_DECL_VARIABLE_SIZE (decl) = 1;
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2007-03-08 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* decl.c (grokdeclarator): Disable warnings for anonymous
|
||||
bitfields.
|
||||
|
||||
2007-03-05 Volker Reichelt <reichelt@netcologne.de>
|
||||
|
||||
* typeck2.c (readonly_error): Always emit a hard error.
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* Process declarations and variables for C++ compiler.
|
||||
Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||
2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
|
||||
Contributed by Michael Tiemann (tiemann@cygnus.com)
|
||||
|
||||
This file is part of GCC.
|
||||
|
@ -8539,6 +8539,9 @@ grokdeclarator (const cp_declarator *declarator,
|
|||
{
|
||||
decl = build_decl (FIELD_DECL, unqualified_id, type);
|
||||
DECL_NONADDRESSABLE_P (decl) = bitfield;
|
||||
if (bitfield && !unqualified_id)
|
||||
TREE_NO_WARNING (decl) = 1;
|
||||
|
||||
if (storage_class == sc_mutable)
|
||||
{
|
||||
DECL_MUTABLE_P (decl) = 1;
|
||||
|
|
|
@ -1241,6 +1241,8 @@ instantiate_element (struct sra_elt *elt)
|
|||
|
||||
DECL_IGNORED_P (var) = 0;
|
||||
TREE_NO_WARNING (var) = TREE_NO_WARNING (base);
|
||||
if (elt->element && TREE_NO_WARNING (elt->element))
|
||||
TREE_NO_WARNING (var) = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue