From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andreas.Krakowczyk@fujitsu-siemens.com To: gcc-gnats@gcc.gnu.org Cc: Joachim.Canisius@fujitsu-siemens.com, Erwin.Unruh@fujitsu-siemens.com Subject: optimization/3438: 'g++ -O2' fails, throw/catch with objects of type 'char' Date: Wed, 27 Jun 2001 06:36:00 -0000 Message-id: <20010627133530.13817.qmail@sourceware.cygnus.com> X-SW-Source: 2001-06/msg01121.html List-Id: >Number: 3438 >Category: optimization >Synopsis: 'g++ -O2' fails, throw/catch with objects of type 'char' >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed Jun 27 06:36:02 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Andreas Krakowczyk >Release: gcc-3.0 >Organization: >Environment: sparc-sun-solaris2.8 >Description: Test fails if compiled with option '-O2' and objects of type 'char', 'unsigned char', 'short', 'unsigned short'. It passes with lower opimization and/or objects of type 'int'. >How-To-Repeat: g++ -O2 bug9.c && ./a.out or for i in int short ushort char uchar; \ do g++ -O2 -DOBJTYPE="$i" bug9.c && ./a.out; done >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/x-unknown-content-type-c_auto_file; name="bug9.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bug9.c" I2luY2x1ZGUgPHN0ZGlvLmg+Cgpib29sICBvazsKdm9pZCBkb190aHJvdyAodm9pZCk7CmJvb2wg dGVzdCAgKGludCB6ZXJvID0gMCwgaW50IG9uZSA9IDEpOwp0eXBlZGVmICAgdW5zaWduZWQgc2hv cnQgICAgICAgdXNob3J0OyAKdHlwZWRlZiAgIHVuc2lnbmVkIGNoYXIgICAgICAgIHVjaGFyOwoj aWZuZGVmIE9CSlRZUEUKI2RlZmluZSBPQkpUWVBFIHNob3J0CQkvLyAnaW50JyB3b3JrcywgYnV0 ICdzaG9ydCcsICd1c2hvcnQnLCAnY2hhcicsIGFuZCAndWNoYXInIGZhaWxzCiNlbmRpZgojZGVm aW5lIHNzKHgpICN4CiNkZWZpbmUgcyh4KSBzcyh4KQoKaW50IG1haW4gKGludCBhcmdjLCBjaGFy ICphcmd2IFtdKQp7CiAgICBpZiAoISB0ZXN0KCkgICkgeyBwcmludGYgKCIlLTI0cyAlcywgJXNc biIsIGFyZ3ZbMF0sICJGQUlMRUQiLCBzKE9CSlRZUEUpKTsgcmV0dXJuIDE7IH0KICAgIGVsc2Ug ICAgICAgICAgICB7IHByaW50ZiAoIiUtMjRzICVzLCAlc1xuIiwgYXJndlswXSwgInBhc3NlZCIs IHMoT0JKVFlQRSkpOyByZXR1cm4gMDsgfQp9CgpjbGFzcyBDOAp7CnB1YmxpYzoKICAgT0JKVFlQ RSBvYmo7CiAgIEM4IChpbnQgemVybywgaW50IG9uZSkgeyBvYmogPSBvbmUgKyB6ZXJvOyB9CiAg IHZvaWQgZiAoKSAgICAgICAgICAgICAgeyBvYmorKzsgfQogIH5DOCAoKSAgICAgICAgICAgICAg ICAgIHsgb2sgID0gKG9iaiA9PSAxKTsgfQp9OwoKYm9vbCB0ZXN0IChpbnQgemVybywgaW50IG9u ZSkKewogICBvayA9IDA7CiAgIHRyeQogICB7CiAgICAgIEM4IGM4ICh6ZXJvLCBvbmUpOwogICAg ICBkb190aHJvdyAoKTsKICAgICAgYzguZiAoKTsKICAgfQoKICAgY2F0Y2ggKC4uLikgeyB9CiAg IHJldHVybiAob2spOwp9Cgp2b2lkIGRvX3Rocm93ICgpIHsgdGhyb3cgImV4Y2VwdGlvbiI7IH0K