public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor
@ 2011-12-19  7:23 reichelt at gcc dot gnu.org
  2011-12-19  7:36 ` [Bug c++/51620] " reichelt at gcc dot gnu.org
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: reichelt at gcc dot gnu.org @ 2011-12-19  7:23 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

             Bug #: 51620
           Summary: [c++0x] [4.6/4.7 Regression] ICE with private
                    destructor
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: reichelt@gcc.gnu.org


The following invalid code snippet triggers an ICE since GCC 4.6.0 when
compiled with "-std=c++0x":

===========================
template<int> class A
{
  virtual ~A();
};

struct B : A<0>, A<1>
{
  B() {}
};
===========================

bug.cc:6:8: error: deleted function 'virtual B::~B()'
bug.cc:3:11: error: overriding non-deleted function 'A<<anonymous> >::~A()
[with int <anonymous> = 0]'
bug.cc:6:8: note: 'virtual B::~B()' is implicitly deleted because the default
definition would be ill-formed:
bug.cc:3:11: error: 'A<<anonymous> >::~A() [with int <anonymous> = 0]' is
private
bug.cc:6:8: error: within this context
bug.cc:3:11: error: 'A<<anonymous> >::~A() [with int <anonymous> = 1]' is
private
bug.cc:6:8: error: within this context
bug.cc:6:8: error: deleted function 'virtual B::~B()'
bug.cc:3:11: error: overriding non-deleted function 'A<<anonymous> >::~A()
[with int <anonymous> = 1]'
bug.cc: In constructor 'B::B()':
bug.cc:3:11: error: 'A<<anonymous> >::~A() [with int <anonymous> = 0]' is
private
bug.cc:8:7: error: within this context
bug.cc:3:11: error: 'A<<anonymous> >::~A() [with int <anonymous> = 1]' is
private
bug.cc:8:7: error: within this context
bug.cc: At global scope:
bug.cc:9:2: error: use of deleted function 'virtual B::~B()'
bug.cc:9:2: error: use of deleted function 'virtual B::~B()'
bug.cc:9:2: error: use of deleted function 'virtual B::~B()'
bug.cc:9:2: error: use of deleted function 'void B::_ZThn4_N1BD1Ev()'
bug.cc:6:8: note: 'void B::_ZThn4_N1BD1Ev()' is implicitly deleted because the
default definition would be ill-formed:
bug.cc:6:8: internal compiler error: in synthesized_method_walk, at
cp/method.c:1168
Please submit a full bug report, [etc.]

In addition, the first part of the message is duplicated, "use of deleted
function 'virtual B::~B()'" appears 3 times, and "B::_ZThn4_N1BD1Ev()" is not
very meaningful to the user.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
@ 2011-12-19  7:36 ` reichelt at gcc dot gnu.org
  2011-12-19  9:48 ` jakub at gcc dot gnu.org
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: reichelt at gcc dot gnu.org @ 2011-12-19  7:36 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

Volker Reichelt <reichelt at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |diagnostic, error-recovery,
                   |                            |ice-on-invalid-code
   Target Milestone|---                         |4.6.3


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
  2011-12-19  7:36 ` [Bug c++/51620] " reichelt at gcc dot gnu.org
@ 2011-12-19  9:48 ` jakub at gcc dot gnu.org
  2011-12-30  6:15 ` pinskia at gcc dot gnu.org
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-12-19  9:48 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
                 CC|                            |jakub at gcc dot gnu.org


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
  2011-12-19  7:36 ` [Bug c++/51620] " reichelt at gcc dot gnu.org
  2011-12-19  9:48 ` jakub at gcc dot gnu.org
@ 2011-12-30  6:15 ` pinskia at gcc dot gnu.org
  2012-01-13  5:13 ` jason at gcc dot gnu.org
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu.org @ 2011-12-30  6:15 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011-12-30
     Ever Confirmed|0                           |1

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-12-30 06:12:08 UTC ---
Confirmed.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2011-12-30  6:15 ` pinskia at gcc dot gnu.org
@ 2012-01-13  5:13 ` jason at gcc dot gnu.org
  2012-01-13 15:52 ` jason at gcc dot gnu.org
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2012-01-13  5:13 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |jason at gcc dot gnu.org
         AssignedTo|unassigned at gcc dot       |jason at gcc dot gnu.org
                   |gnu.org                     |


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-01-13  5:13 ` jason at gcc dot gnu.org
@ 2012-01-13 15:52 ` jason at gcc dot gnu.org
  2012-01-13 15:57 ` jason at gcc dot gnu.org
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2012-01-13 15:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

--- Comment #2 from Jason Merrill <jason at gcc dot gnu.org> 2012-01-13 15:49:35 UTC ---
Author: jason
Date: Fri Jan 13 15:49:29 2012
New Revision: 183155

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=183155
Log:
    PR c++/51620
    * class.c (build_vtbl_initializer): Use __cxa_deleted_virtual.

Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/defaulted34.C
    trunk/gcc/testsuite/g++.dg/template/virtual3.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/class.c
    trunk/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-01-13 15:52 ` jason at gcc dot gnu.org
@ 2012-01-13 15:57 ` jason at gcc dot gnu.org
  2022-01-12  2:34 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2012-01-13 15:57 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.6.3                       |4.7.0

--- Comment #3 from Jason Merrill <jason at gcc dot gnu.org> 2012-01-13 15:51:28 UTC ---
Fixed for 4.7, not backporting invalid code fixes.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2012-01-13 15:57 ` jason at gcc dot gnu.org
@ 2022-01-12  2:34 ` cvs-commit at gcc dot gnu.org
  2022-01-19 19:49 ` cvs-commit at gcc dot gnu.org
  2022-01-19 21:21 ` cvs-commit at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-12  2:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by H.J. Lu <hjl@gcc.gnu.org>:

https://gcc.gnu.org/g:8c0f58cd71ec3afcce5abf10c750ec494e88232b

commit r11-9454-g8c0f58cd71ec3afcce5abf10c750ec494e88232b
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Dec 17 11:08:32 2021 -0800

    libsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193

    Cherry-pick from LLVM release/13.x branch:

    commit d96358a2819399a2abb60ad3b26444ab7b4409cf
    Author: MichaŠGórny <mgorny@moritz.systems>
    Date:   Mon Dec 13 22:28:26 2021 +0100

        [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures

        Increase kDlsymAllocPoolSize on the release branch as discussed on bug
        51620, as an alternative to backporting
        cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies.
        The minimum size is 8192, as needed for the following test to pass:

          AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp

        Fixes #51620

            PR sanitizer/102911
            * asan/asan_malloc_linux.cpp (kDlsymAllocPoolSize): Set it to
            8192 on Linux.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2022-01-12  2:34 ` cvs-commit at gcc dot gnu.org
@ 2022-01-19 19:49 ` cvs-commit at gcc dot gnu.org
  2022-01-19 21:21 ` cvs-commit at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-19 19:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by H.J. Lu <hjl@gcc.gnu.org>:

https://gcc.gnu.org/g:666eb85627e961db200dd5db639a1831d81188e1

commit r10-10408-g666eb85627e961db200dd5db639a1831d81188e1
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Dec 17 11:08:32 2021 -0800

    libsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193

    Cherry-pick from LLVM release/13.x branch:

    commit d96358a2819399a2abb60ad3b26444ab7b4409cf
    Author: MichaŠGórny <mgorny@moritz.systems>
    Date:   Mon Dec 13 22:28:26 2021 +0100

        [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures

        Increase kDlsymAllocPoolSize on the release branch as discussed on bug
        51620, as an alternative to backporting
        cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies.
        The minimum size is 8192, as needed for the following test to pass:

          AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp

        Fixes #51620

            PR sanitizer/102911
            * asan/asan_malloc_linux.cpp (kDlsymAllocPoolSize): Set it to
            8192 on Linux.

    (cherry picked from commit 8c0f58cd71ec3afcce5abf10c750ec494e88232b)

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Bug c++/51620] [c++0x] [4.6/4.7 Regression] ICE with private destructor
  2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2022-01-19 19:49 ` cvs-commit at gcc dot gnu.org
@ 2022-01-19 21:21 ` cvs-commit at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-19 21:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51620

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by H.J. Lu <hjl@gcc.gnu.org>:

https://gcc.gnu.org/g:ffe873471fb59dbe95a31afa089cfcac1a9327d4

commit r9-9918-gffe873471fb59dbe95a31afa089cfcac1a9327d4
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Dec 17 11:08:32 2021 -0800

    libsanitizer: Cherry-pick LLVM release/13.x commit d96358a28193

    Cherry-pick from LLVM release/13.x branch:

    commit d96358a2819399a2abb60ad3b26444ab7b4409cf
    Author: MichaŠGórny <mgorny@moritz.systems>
    Date:   Mon Dec 13 22:28:26 2021 +0100

        [compiler-rt] Increase kDlsymAllocPoolSize to fix test failures

        Increase kDlsymAllocPoolSize on the release branch as discussed on bug
        51620, as an alternative to backporting
        cb0e14ce6dcdd614a7207f4ce6fcf81a164471ab and its dependencies.
        The minimum size is 8192, as needed for the following test to pass:

          AddressSanitizer-i386-linux :: TestCases/Linux/long-object-path.cpp

        Fixes #51620

            PR sanitizer/102911
            * asan/asan_malloc_linux.cc (kDlsymAllocPoolSize): Set it to
            8192 on Linux.

    (cherry picked from commit 8c0f58cd71ec3afcce5abf10c750ec494e88232b)

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-01-19 21:21 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-19  7:23 [Bug c++/51620] New: [c++0x] [4.6/4.7 Regression] ICE with private destructor reichelt at gcc dot gnu.org
2011-12-19  7:36 ` [Bug c++/51620] " reichelt at gcc dot gnu.org
2011-12-19  9:48 ` jakub at gcc dot gnu.org
2011-12-30  6:15 ` pinskia at gcc dot gnu.org
2012-01-13  5:13 ` jason at gcc dot gnu.org
2012-01-13 15:52 ` jason at gcc dot gnu.org
2012-01-13 15:57 ` jason at gcc dot gnu.org
2022-01-12  2:34 ` cvs-commit at gcc dot gnu.org
2022-01-19 19:49 ` cvs-commit at gcc dot gnu.org
2022-01-19 21:21 ` cvs-commit at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).