From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas.Krakowczyk@fujitsu-siemens.com To: gcc-gnats@gcc.gnu.org Cc: Erwin.Unruh@fujitsu-siemens.com, Jochen.Canisius@fujitsu-siemens.com Subject: c/3326: wrong code with bitfields and integer division operator Date: Thu, 21 Jun 2001 06:06:00 -0000 Message-id: <20010621130222.6339.qmail@sourceware.cygnus.com> X-SW-Source: 2001-06/msg00894.html List-Id: >Number: 3326 >Category: c >Synopsis: wrong code with bitfields and integer division operator >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Thu Jun 21 06:06:03 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Andreas Krakowczyk >Release: gcc-3.0 >Organization: >Environment: sun-sparc-solaris2.8 >Description: division operator with bitfields and signed / unsigned fails same operation with variables succeeds >How-To-Repeat: gcc bug4.c && ./a.out >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/x-unknown-content-type-c_auto_file; name="bug4.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bug4.c" bWFpbihhcmdjLGFyZ3YpIGludCAgYXJnYyA7IGNoYXIgKmFyZ3ZbXSA7CnsKCXN0cnVjdCB4IHsK CQkJIGludCBmaWVsZCAgOiA3OwoJCXVuc2lnbmVkIGludCB1ZmllbGQgOiA2OwoJfSBiaXQ7CgoJ aW50IGV4aXR2YWwgPSAwOwoJdW5zaWduZWQgaW50IHVyZWYgPSAodW5zaWduZWQgaW50KSg3MDQw OTI5OSk7CgliaXQudWZpZWxkICA9ICh1bnNpZ25lZCBpbnQpKDYxKTsgCgliaXQuZmllbGQgICA9 IChpbnQpKC0xMyk7CgkKCXVuc2lnbmVkIGludCBjX3VmaWVsZCAgPSAodW5zaWduZWQgaW50KSg2 MSk7IAoJaW50ICAgICAgICAgIGNfZmllbGQgICA9IChpbnQpKC0xMyk7CgkKCWlmKChjX2ZpZWxk IC8gKHVuc2lnbmVkIGludCkoY191ZmllbGQpKSA9PSB1cmVmKSBwcmludGYgKCJjaGVjayB3aXRo IHZhcmlhYmxlcyBpcyBvLmsuXG4iKTsKCglpZigoYml0LmZpZWxkIC8gKHVuc2lnbmVkIGludCko Yml0LnVmaWVsZCkpID09IHVyZWYpIHByaW50ZiAoImJpdGZpZWxkcyBvLmsuLCB0b29cbiIpOwoJ ZWxzZSB7IHByaW50ZiAoIi4uLiBidXQgZGl2aXNvbiB3aXRoIGJpdGZpZWxkcyBmYWlsXG4iKTsg ZXhpdHZhbCsrOyB9CgkJCQoJZXhpdChleGl0dmFsKTsKfQo=