diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2006-01-11 16:31:44 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2006-01-11 16:31:44 +0000 |
commit | 758333d566eedc849236c5900d579bd03e67a5fd (patch) | |
tree | 27c1785e1bb01184081dad1d367630a12ee70fe0 /gcc | |
parent | 167c295d846e0859eb016d76b1ca69ad37ccea96 (diff) | |
download | gcc-758333d566eedc849236c5900d579bd03e67a5fd.zip gcc-758333d566eedc849236c5900d579bd03e67a5fd.tar.gz gcc-758333d566eedc849236c5900d579bd03e67a5fd.tar.bz2 |
tree.c (lvalue_p_1): Any part of a COMPONENT_REF affects packedness.
* tree.c (lvalue_p_1): Any part of a COMPONENT_REF affects
packedness.
* g++.dg/ext/packed3.C: Add expected packed error.
From-SVN: r109590
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/tree.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/ext/packed3.C | 2 |
4 files changed, 10 insertions, 4 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 0680fed..180c926 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2006-01-11 Nathan Sidwell <nathan@codesourcery.com> + + * tree.c (lvalue_p_1): Any part of a COMPONENT_REF affects + packedness. + 2006-01-06 Gabriel Dos Reis <gdr@integrablesolutions.net> * parser.c (cp_parser_primary_expression): Document the grammar diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index df59f50..96b461c 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -87,9 +87,6 @@ lvalue_p_1 (tree ref, case COMPONENT_REF: op1_lvalue_kind = lvalue_p_1 (TREE_OPERAND (ref, 0), treat_class_rvalues_as_lvalues); - /* In an expression of the form "X.Y", the packed-ness of the - expression does not depend on "X". */ - op1_lvalue_kind &= ~clk_packed; /* Look at the member designator. */ if (!op1_lvalue_kind /* The "field" can be a FUNCTION_DECL or an OVERLOAD in some diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 202512c..efd6594e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2006-01-11 Nathan Sidwell <nathan@codesourcery.com> + + * g++.dg/ext/packed3.C: Add expected packed error. + 2006-01-11 Hans-Peter Nilsson <hp@axis.com> PR target/25706 diff --git a/gcc/testsuite/g++.dg/ext/packed3.C b/gcc/testsuite/g++.dg/ext/packed3.C index 3494ff4..880b5d9 100644 --- a/gcc/testsuite/g++.dg/ext/packed3.C +++ b/gcc/testsuite/g++.dg/ext/packed3.C @@ -20,6 +20,6 @@ struct __attribute__ ((packed)) Packed void Foo (Packed &p) { Ref (p.i); // { dg-error "cannot bind packed field" "" { target { ! default_packed } } } - Ref (p.u.i); + Ref (p.u.i); // { dg-error "cannot bind packed field" "" { target { ! default_packed } } } Ref (p.u); // { dg-error "cannot bind packed field" "" { target { ! default_packed } } } } |