From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4988 invoked by alias); 5 Dec 2008 17:02:27 -0000 Received: (qmail 19233 invoked by alias); 5 Dec 2008 17:01:04 -0000 Date: Fri, 05 Dec 2008 17:02:00 -0000 Message-ID: <20081205170104.19231.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug c++/35336] Broken diagnostic: 'bit_field_ref' not supported by dump_expr In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "jakub at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2008-12/txt/msg00525.txt.bz2 ------- Comment #7 from jakub at gcc dot gnu dot org 2008-12-05 17:01 ------- Subject: Bug 35336 Author: jakub Date: Fri Dec 5 16:59:34 2008 New Revision: 142484 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=142484 Log: PR middle-end/37248 * fold-const.c (make_bit_field_ref): Change bitpos and bitsize arguments to HOST_WIDE_INT. If type has different signedness than unsignedp or different precision from bitsize, create the right type for BIT_FIELD_REF and cast to type. (fold_truthop): Change first_bit and end_bit to HOST_WIDE_INT. Revert: 2008-03-05 Richard Guenther PR c++/35336 * fold-const.c (fold_truthop): Remove code generating BIT_FIELD_REFs of structure bases. (fold_binary): Likewise. (make_bit_field_ref): Remove. (optimize_bit_field_compare): Remove. (all_ones_mask_p): Remove. * gcc.target/i386/pr37248-1.c: New test. * gcc.target/i386/pr37248-2.c: New test. * gcc.target/i386/pr37248-3.c: New test. Added: trunk/gcc/testsuite/gcc.target/i386/pr37248-1.c trunk/gcc/testsuite/gcc.target/i386/pr37248-2.c trunk/gcc/testsuite/gcc.target/i386/pr37248-3.c Modified: trunk/gcc/ChangeLog trunk/gcc/fold-const.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35336