Your message dated Sat, 20 Sep 2003 13:47:33 -0400 with message-id <[EMAIL PROTECTED]> and subject line Bug#210848: fixed in gcc-3.3 1:3.3.2ds2-0pre4 has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database) -------------------------------------- Received: (at submit) by bugs.debian.org; 14 Sep 2003 06:37:49 +0000 >From [EMAIL PROTECTED] Sun Sep 14 01:37:45 2003 Return-path: <[EMAIL PROTECTED]> Received: from 12-205-177-212.client.mchsi.com (puetzk) [12.205.177.212] by master.debian.org with esmtp (Exim 3.35 1 (Debian)) id 19yQVx-0006Oh-00; Sun, 14 Sep 2003 01:37:41 -0500 Received: from puetzk by puetzk with local (Exim 3.36 #1 (Debian)) id 19yQVw-00029h-00; Sun, 14 Sep 2003 01:37:40 -0500 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Kevin Puetz <[EMAIL PROTECTED]> To: Debian Bug Tracking System <[EMAIL PROTECTED]> Subject: g++-3.3: Code miscompilation with -O0 -finline (discovered in QT) X-Mailer: reportbug 2.28 Date: Sun, 14 Sep 2003 01:37:40 -0500 Message-Id: <[EMAIL PROTECTED]> Sender: Kevin Puetz <[EMAIL PROTECTED]> Delivered-To: [EMAIL PROTECTED] X-Spam-Status: No, hits=-5.0 required=4.0 tests=HAS_PACKAGE version=2.53-bugs.debian.org_2003_9_13 X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 2.53-bugs.debian.org_2003_9_13 (1.174.2.15-2003-03-30-exp) Package: g++-3.3 Version: 1:3.3.2-0pre3 Severity: grave Tags: security Justification: renders package unusable 3.3.2-0pre3 introduces a very serious miscompilation when inline functions are in the lvalue of conditional expressions (at least, I think that this is the trigger condition). It was introduced sometime between 3.3.2-0pre2 (2003/08/31) and 3.3.2-0pre3 (2003/09/08). It appears to generally generate an infinite loop in which it repeatedly evaluates the inlined function, though I also observed it to manifest in repeated, but terminating evaluation (in which it calculated the left-hand expression two or more times, butr then did perform the assignment). This will break most users of the QT template library container classes (and thus KDE) - probably most other C++ applications if my guess as to the nature of the bug is correct. I discovered it manifesting in the form of my locally-built kbuildsycoca, qt-assistant, and qt-linguist hanging partway through their startups. Chris Cheney (KDE maintainer) is also able to reproduce the behavior in my provided testcase, though his KDE/QT debian have not been rebuilt since 3.3.2-0pre3 was installed. A minimal testcase derived from the QListView::addColumn method (in which I first observed this problem) is available at http://puetzk.org/tmp/testcast.tgz. If compiled with 3.3.2-0pre2 it will run and exit, with 3.3.2-0pre3 it hangs with 100% cpu usage. It will also run in 3.2.3-0pre3 as long as -finline is disabled. I was unable to isolate a small example for the behavior in which it executed more than once the lvalue function (qux) more than once, but not endlessly, though I occasionally saw this behavior as I worked to minimize the testcase. I believe both symptoms are related to the same underlying cause. -- System Information: Debian Release: testing/unstable Architecture: i386 Kernel: Linux puetzk 2.6.0-test4-mm1 #1 SMP Tue Aug 26 22:09:58 CDT 2003 i686 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 Versions of packages g++-3.3 depends on: ii gcc-3.3 1:3.3.2-0pre3 The GNU C compiler ii gcc-3.3-base 1:3.3.2-0pre3 The GNU Compiler Collection (base ii libc6 2.3.2-7 GNU C Library: Shared libraries an ii libstdc++5-3.3-dev 1:3.3.2-0pre3 The GNU Standard C++ Library v3 (d -- no debconf information --------------------------------------- Received: (at 210848-close) by bugs.debian.org; 20 Sep 2003 17:53:30 +0000 >From [EMAIL PROTECTED] Sat Sep 20 12:53:23 2003 Return-path: <[EMAIL PROTECTED]> Received: from auric.debian.org [206.246.226.45] by master.debian.org with esmtp (Exim 3.35 1 (Debian)) id 1A0lv3-0001W1-00; Sat, 20 Sep 2003 12:53:17 -0500 Received: from katie by auric.debian.org with local (Exim 3.35 1 (Debian)) id 1A0lpV-0006Wv-00; Sat, 20 Sep 2003 13:47:33 -0400 From: Ryan Murray <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] X-Katie: $Revision: 1.35 $ Subject: Bug#210848: fixed in gcc-3.3 1:3.3.2ds2-0pre4 Message-Id: <[EMAIL PROTECTED]> Sender: Archive Administrator <[EMAIL PROTECTED]> Date: Sat, 20 Sep 2003 13:47:33 -0400 Delivered-To: [EMAIL PROTECTED] Source: gcc-3.3 Source-Version: 1:3.3.2ds2-0pre4 We believe that the bug you reported is fixed in the latest version of gcc-3.3, which is due to be installed in the Debian FTP archive: cpp-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/cpp-3.3_3.3.2-0pre4_i386.deb fastjar_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/fastjar_3.3.2-0pre4_i386.deb fixincludes_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/fixincludes_3.3.2-0pre4_i386.deb g++-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/g++-3.3_3.3.2-0pre4_i386.deb g77-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/g77-3.3_3.3.2-0pre4_i386.deb gcc-3.3-base_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gcc-3.3-base_3.3.2-0pre4_i386.deb gcc-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gcc-3.3_3.3.2-0pre4_i386.deb gcc-3.3_3.3.2ds2-0pre4.diff.gz to pool/main/g/gcc-3.3/gcc-3.3_3.3.2ds2-0pre4.diff.gz gcc-3.3_3.3.2ds2-0pre4.dsc to pool/main/g/gcc-3.3/gcc-3.3_3.3.2ds2-0pre4.dsc gcj-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gcj-3.3_3.3.2-0pre4_i386.deb gij-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gij-3.3_3.3.2-0pre4_i386.deb gnat-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gnat-3.3_3.3.2-0pre4_i386.deb gobjc-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/gobjc-3.3_3.3.2-0pre4_i386.deb gpc-2.1-3.3_3.3.2.20030830-0pre4_i386.deb to pool/main/g/gcc-3.3/gpc-2.1-3.3_3.3.2.20030830-0pre4_i386.deb libffi2-dev_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libffi2-dev_3.3.2-0pre4_i386.deb libffi2_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libffi2_3.3.2-0pre4_i386.deb libg2c0_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libg2c0_3.3.2-0pre4_i386.deb libgcc1_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libgcc1_3.3.2-0pre4_i386.deb libgcj-common_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libgcj-common_3.3.2-0pre4_i386.deb libgcj4-dev_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libgcj4-dev_3.3.2-0pre4_i386.deb libgcj4_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libgcj4_3.3.2-0pre4_i386.deb libobjc1_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libobjc1_3.3.2-0pre4_i386.deb libstdc++5-3.3-dbg_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libstdc++5-3.3-dbg_3.3.2-0pre4_i386.deb libstdc++5-3.3-dev_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libstdc++5-3.3-dev_3.3.2-0pre4_i386.deb libstdc++5-3.3-pic_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libstdc++5-3.3-pic_3.3.2-0pre4_i386.deb libstdc++5_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/libstdc++5_3.3.2-0pre4_i386.deb protoize_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/protoize_3.3.2-0pre4_i386.deb treelang-3.3_3.3.2-0pre4_i386.deb to pool/main/g/gcc-3.3/treelang-3.3_3.3.2-0pre4_i386.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Ryan Murray <[EMAIL PROTECTED]> (supplier of updated gcc-3.3 package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Fri, 19 Sep 2003 22:51:19 -0600 Source: gcc-3.3 Binary: libgnat3.15 gcc-3.3-nof gcc-3.3 libobjc1 libgcc1 lib64g2c0 libstdc++5-3.3-doc libgcj4 gpc-2.1-3.3-doc libstdc++5 cpp-3.3-doc protoize cpp-3.3 libstdc++5-3.3-dbg g77-3.3-doc gpc-2.1-3.3 g77-3.3 libgcj4-dev gcc-3.3-doc lib64objc1 lib64ffi2 libstdc++5-3.3-dev libffi2-dev gcj-3.3 libgcj-common gobjc-3.3 lib64stdc++5 gcc-3.3-soft-float lib64gcj4 treelang-3.3 libg2c0-dev lib64gcc1 fastjar lib64gnat3.15 fixincludes libg2c0 gij-3.3 libstdc++5-3.3-pic gcc-3.3-base g++-3.3 gnat-3.3 libffi2 gnat-3.3-doc Architecture: i386 source Version: 1:3.3.2ds2-0pre4 Distribution: unstable Urgency: low Maintainer: Ryan Murray <[EMAIL PROTECTED]> Changed-By: Ryan Murray <[EMAIL PROTECTED]> Description: cpp-3.3 - The GNU C preprocessor fastjar - Jar creation utility fixincludes - Fix non-ANSI header files g++-3.3 - The GNU C++ compiler g77-3.3 - The GNU Fortran 77 compiler gcc-3.3 - The GNU C compiler gcc-3.3-base - The GNU Compiler Collection (base package) gcj-3.3 - The GNU compiler for Java(TM) gij-3.3 - The GNU Java bytecode interpreter gnat-3.3 - The GNU Ada compiler gobjc-3.3 - The GNU Objective-C compiler gpc-2.1-3.3 - The GNU Pascal compiler libffi2 - Foreign Function Interface library runtime libffi2-dev - Foreign Function Interface library development libg2c0 - Runtime library for GNU Fortran 77 applications libgcc1 - GCC support library libgcj-common - Java runtime library (common files) libgcj4 - Java runtime library for use with gcj libgcj4-dev - Java development headers and static library for use with gcj libobjc1 - Runtime library for GNU Objective-C applications libstdc++5 - The GNU Standard C++ Library v3 libstdc++5-3.3-dbg - The GNU Standard C++ Library v3 (debugging files) libstdc++5-3.3-dev - The GNU Standard C++ Library v3 (development files) libstdc++5-3.3-pic - The GNU Standard C++ Library v3 (shared library subset kit) protoize - Create/remove ANSI prototypes from C code treelang-3.3 - The GNU Treelang compiler Closes: 210848 Changes: gcc-3.3 (1:3.3.2ds2-0pre4) unstable; urgency=low . * Add gcc-unsharing_lhs patch (closes: #210848) Files: 100b24bbb434ada322f957c1287c187e 1690338 devel optional gcj-3.3_3.3.2-0pre4_i386.deb 125a6e8b1bf106839c1619f13c6c9a46 66522 libs optional libffi2_3.3.2-0pre4_i386.deb 1425fb431353370e61965a15738bf6a4 2220015 devel standard gcc-3.3_3.3.2ds2-0pre4.diff.gz 1a9cd68f4c0f51f7556697b676493279 320830 libdevel extra libstdc++5-3.3-pic_3.3.2-0pre4_i386.deb 24ef6add1ad7f29a06ca26873af370de 766336 libdevel standard libstdc++5-3.3-dev_3.3.2-0pre4_i386.deb 6142973740c8aee15f0b23463cd9e68d 2474 devel standard gcc-3.3_3.3.2ds2-0pre4.dsc 3cea2eec05afdcb518800e66d8f06e06 10842 libdevel optional libffi2-dev_3.3.2-0pre4_i386.deb 41931956d336e1b5f11acad3b799e192 3976398 libs optional libgcj4_3.3.2-0pre4_i386.deb 457df05cc847b0b88eb0c22af762d35d 141100 devel important gcc-3.3-base_3.3.2-0pre4_i386.deb 49c8400b324555b4e5c94c742b32d4d7 107032 devel extra fastjar_3.3.2-0pre4_i386.deb 4e84ec0f191bb468971128891e15fbce 50284 libs optional libg2c0_3.3.2-0pre4_i386.deb 515901f7ad79c4baed17df20b11735a9 1767104 devel standard g++-3.3_3.3.2-0pre4_i386.deb 6ad88de660331fb36251091cbbbc07ad 23224 devel optional protoize_3.3.2-0pre4_i386.deb 7b56b2f8ffd768d1eb5851726ad5ab6b 56040 libs optional libgcj-common_3.3.2-0pre4_i386.deb 7d60a9cdef0d88dd58704ff950835354 130480 libs optional libobjc1_3.3.2-0pre4_i386.deb 8d042dd0d9977b8c48185d593b3f2704 13020 devel optional gij-3.3_3.3.2-0pre4_i386.deb 9f3326d944d9fc7689f707110d21497b 1284164 devel optional treelang-3.3_3.3.2-0pre4_i386.deb a93a0b64423f366d1cb93d0418338bac 1607960 devel optional g77-3.3_3.3.2-0pre4_i386.deb aae4fc4290097309a6411b8b0344237f 5043120 libdevel extra libstdc++5-3.3-dbg_3.3.2-0pre4_i386.deb cbadb476c03619011f2ccf65c17085e4 71052 libs important libgcc1_3.3.2-0pre4_i386.deb cec8cd646fe606c8dfb6b759210678de 4726576 libdevel optional libgcj4-dev_3.3.2-0pre4_i386.deb db446c23521cfb8775628245e7641461 281834 base important libstdc++5_3.3.2-0pre4_i386.deb e0bcc4fe117f90b82d842105057c95f2 1309356 devel standard gcc-3.3_3.3.2-0pre4_i386.deb e343f71b944038a971d8b9f1edb4fa4f 47906 devel optional fixincludes_3.3.2-0pre4_i386.deb e3db148cce91684afde37ee5dc976ac4 1925438 devel optional gpc-2.1-3.3_3.3.2.20030830-0pre4_i386.deb ecd988485f67f8e643a50a726d89c39c 6265658 devel optional gnat-3.3_3.3.2-0pre4_i386.deb fb3b3c34eec0399a3104c5fcd3367f20 1462748 devel optional gobjc-3.3_3.3.2-0pre4_i386.deb ff681091c1e17e407c8f6d3ccd38039a 1386608 interpreters standard cpp-3.3_3.3.2-0pre4_i386.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/bI5rN2Dbz/1mRasRAsdPAJwJEjNdvLipwplEOKBQ8dJdpi2oZwCfT8t1 1HdWxyMBUsnBpAbFYmb17/0= =QP2M -----END PGP SIGNATURE-----