diff options
author | Richard Guenther <rguenther@suse.de> | 2008-01-25 12:06:31 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2008-01-25 12:06:31 +0000 |
commit | 57e2aff267801c94a26098f7cb7b1e9bc054b854 (patch) | |
tree | 5710bf6fd996dbfb4ebf091c78d3a355aab1b6ee /gcc/cp | |
parent | f84fe9b6f7ef38e8c68edd1a64f260521c251dbf (diff) | |
download | gcc-57e2aff267801c94a26098f7cb7b1e9bc054b854.zip gcc-57e2aff267801c94a26098f7cb7b1e9bc054b854.tar.gz gcc-57e2aff267801c94a26098f7cb7b1e9bc054b854.tar.bz2 |
re PR c++/33887 (Reference to bitfield gets wrong value when optimizing)
2008-01-25 Richard Guenther <rguenther@suse.de>
PR c++/33887
* cp-lang.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Define
to true.
* g++.dg/torture/pr33887-1.C: New testcase.
* g++.dg/torture/pr33887-2.C: Likewise.
* g++.dg/torture/pr33887-3.C: Likewise.
* gcc.c-torture/execute/20071211-1.c: Likewise.
From-SVN: r131823
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/cp-lang.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index d842f77..4dca2f1 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2008-01-25 Richard Guenther <rguenther@suse.de> + + PR c++/33887 + * cp-lang.c (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Define + to true. + 2008-01-24 Paolo Carlini <pcarlini@suse.de> PR c++/34603 diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c index 7070929..b35f7f3 100644 --- a/gcc/cp/cp-lang.c +++ b/gcc/cp/cp-lang.c @@ -57,6 +57,8 @@ static enum classify_record cp_classify_record (tree type); #define LANG_HOOKS_FOLD_OBJ_TYPE_REF cp_fold_obj_type_ref #undef LANG_HOOKS_INIT_TS #define LANG_HOOKS_INIT_TS cp_init_ts +#undef LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS +#define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS true /* Each front end provides its own lang hook initializer. */ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; |