public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/54420] New: Segmentation in decl_mangling_context
@ 2012-08-30 14:21 lukeocamden at gmail dot com
  2012-08-30 14:33 ` [Bug c++/54420] Segmentation fault " markus at trippelsdorf dot de
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: lukeocamden at gmail dot com @ 2012-08-30 14:21 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 54420
           Summary: Segmentation in decl_mangling_context
    Classification: Unclassified
           Product: gcc
           Version: 4.7.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: lukeocamden@gmail.com


Created attachment 28107
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28107
Preprocessed source file

Discovered when compiling llvm+lldb. Preprocessed file attached. Stack trace:

#0  0x000000000058f3b3 in decl_mangling_context (decl=0x2aaaabf38508) at
../.././gcc/cp/mangle.c:759
#1  decl_mangling_context (decl=0x2aaaabf38508) at ../.././gcc/cp/mangle.c:749
#2  0x00000000005963a4 in write_name (decl=0x2aaaabf38508,
ignore_local_scope=ignore_local_scope@entry=0)
    at ../.././gcc/cp/mangle.c:795
#3  0x00000000005931b4 in write_class_enum_type (type=<optimized out>) at
../.././gcc/cp/mangle.c:2424
#4  write_type (type=type@entry=0x2aaaabf4e7e0) at ../.././gcc/cp/mangle.c:1903
#5  0x0000000000596db9 in mangle_special_for_type (type=0x2aaaabf4e7e0,
code=0xd3042e "TV") at ../.././gcc/cp/mangle.c:3445
#6  0x000000000051062e in get_vtable_name (type=0x2aaaabf4e7e0) at
../.././gcc/cp/class.c:709
...


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

* [Bug c++/54420] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
@ 2012-08-30 14:33 ` markus at trippelsdorf dot de
  2012-09-03 10:31 ` [Bug c++/54420] [4.6/4.7/4.8 Regression] " rguenth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: markus at trippelsdorf dot de @ 2012-08-30 14:33 UTC (permalink / raw)
  To: gcc-bugs

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

Markus Trippelsdorf <markus at trippelsdorf dot de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |markus at trippelsdorf dot
                   |                            |de

--- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> 2012-08-30 14:33:01 UTC ---
gcc-4.8 is also affected.

Reduced:

class __lambda
{
    virtual bool is_sub ();
};


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
  2012-08-30 14:33 ` [Bug c++/54420] Segmentation fault " markus at trippelsdorf dot de
@ 2012-09-03 10:31 ` rguenth at gcc dot gnu.org
  2012-09-04 22:17 ` jason at gcc dot gnu.org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-09-03 10:31 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-valid-code
      Known to work|                            |4.1.2
   Target Milestone|---                         |4.6.4
            Summary|Segmentation fault in       |[4.6/4.7/4.8 Regression]
                   |decl_mangling_context       |Segmentation fault in
                   |                            |decl_mangling_context


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
  2012-08-30 14:33 ` [Bug c++/54420] Segmentation fault " markus at trippelsdorf dot de
  2012-09-03 10:31 ` [Bug c++/54420] [4.6/4.7/4.8 Regression] " rguenth at gcc dot gnu.org
@ 2012-09-04 22:17 ` jason at gcc dot gnu.org
  2012-09-05  4:17 ` jason at gcc dot gnu.org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jason at gcc dot gnu.org @ 2012-09-04 22:17 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org

--- Comment #2 from Jason Merrill <jason at gcc dot gnu.org> 2012-09-04 22:16:57 UTC ---
The name __lambda, like all names beginning with "__", is reserved to the
implementation.

In addition, some identifiers are reserved for use by C++ implementations and
standard libraries (17.6.4.3.2) and shall not be used otherwise; no diagnostic
is required.

— Each name that contains a double underscore _ _ or begins with an underscore
followed by an uppercase letter (2.12) is reserved to the implementation for
any use.

I'll fix 4.8 to avoid crashing on this testcase, but I don't want to change the
release branches.


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (2 preceding siblings ...)
  2012-09-04 22:17 ` jason at gcc dot gnu.org
@ 2012-09-05  4:17 ` jason at gcc dot gnu.org
  2012-09-05  4:21 ` jason at gcc dot gnu.org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jason at gcc dot gnu.org @ 2012-09-05  4:17 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Jason Merrill <jason at gcc dot gnu.org> 2012-09-05 04:17:09 UTC ---
Author: jason
Date: Wed Sep  5 04:16:58 2012
New Revision: 190961

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190961
Log:
    PR c++/54420
    * cp-tree.h (LAMBDANAME_P): Remove.
    (LAMBDA_TYPE_P): Check CLASSTYPE_LAMBDA_EXPR instead.
    * cp-lang.c (cxx_dwarf_name): Likewise.
    * error.c (dump_aggr_type): Likewise.
    * semantics.c (begin_lambda_type): Set CLASSTYPE_LAMBDA_EXPR sooner.

Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-intname.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-lang.c
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/error.c
    trunk/gcc/cp/name-lookup.c
    trunk/gcc/cp/semantics.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (3 preceding siblings ...)
  2012-09-05  4:17 ` jason at gcc dot gnu.org
@ 2012-09-05  4:21 ` jason at gcc dot gnu.org
  2012-09-05 16:18 ` paolo.carlini at oracle dot com
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jason at gcc dot gnu.org @ 2012-09-05  4:21 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED

--- Comment #4 from Jason Merrill <jason at gcc dot gnu.org> 2012-09-05 04:20:53 UTC ---
Fixed.


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (4 preceding siblings ...)
  2012-09-05  4:21 ` jason at gcc dot gnu.org
@ 2012-09-05 16:18 ` paolo.carlini at oracle dot com
  2012-09-18 13:48 ` paolo.carlini at oracle dot com
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: paolo.carlini at oracle dot com @ 2012-09-05 16:18 UTC (permalink / raw)
  To: gcc-bugs

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

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.6.4                       |4.8.0


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (5 preceding siblings ...)
  2012-09-05 16:18 ` paolo.carlini at oracle dot com
@ 2012-09-18 13:48 ` paolo.carlini at oracle dot com
  2012-09-19 10:27 ` patrik.h.hagglund at gmail dot com
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: paolo.carlini at oracle dot com @ 2012-09-18 13:48 UTC (permalink / raw)
  To: gcc-bugs

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

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |patrik.h.hagglund at gmail
                   |                            |dot com

--- Comment #5 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-09-18 13:47:54 UTC ---
*** Bug 54616 has been marked as a duplicate of this bug. ***


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (6 preceding siblings ...)
  2012-09-18 13:48 ` paolo.carlini at oracle dot com
@ 2012-09-19 10:27 ` patrik.h.hagglund at gmail dot com
  2012-09-19 10:36 ` jakub at gcc dot gnu.org
  2012-09-19 11:05 ` patrik.h.hagglund at gmail dot com
  9 siblings, 0 replies; 11+ messages in thread
From: patrik.h.hagglund at gmail dot com @ 2012-09-19 10:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Patrik Hägglund <patrik.h.hagglund at gmail dot com> 2012-09-19 10:27:37 UTC ---
Jason Merrill wrote:
> In addition, some identifiers are reserved for use by C++ implementations and
> standard libraries (17.6.4.3.2) and shall not be used otherwise; no diagnostic
> is required.

> [...] I don't want to change the release branches.

You seems to imply that "no diagnostic is required" implies "the behavior of
the compiler is undefined". This seems odd.


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (7 preceding siblings ...)
  2012-09-19 10:27 ` patrik.h.hagglund at gmail dot com
@ 2012-09-19 10:36 ` jakub at gcc dot gnu.org
  2012-09-19 11:05 ` patrik.h.hagglund at gmail dot com
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-09-19 10:36 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|ice-on-valid-code           |ice-on-invalid-code
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-09-19 10:35:58 UTC ---
The important thing is "and shall not be used otherwise", which means the
testcase is invalid, and there is a compiler crash on invalid code that is
fixed on the compiler trunk, but the fix is too risky for the lower priority of
the bug (compared to if it was e.g. a crash on valid code or miscompilation).


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

* [Bug c++/54420] [4.6/4.7/4.8 Regression] Segmentation fault in decl_mangling_context
  2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
                   ` (8 preceding siblings ...)
  2012-09-19 10:36 ` jakub at gcc dot gnu.org
@ 2012-09-19 11:05 ` patrik.h.hagglund at gmail dot com
  9 siblings, 0 replies; 11+ messages in thread
From: patrik.h.hagglund at gmail dot com @ 2012-09-19 11:05 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Patrik Hägglund <patrik.h.hagglund at gmail dot com> 2012-09-19 11:04:43 UTC ---
(In reply to comment #7)
> the fix is too risky for the lower priority of the bug

This is a good explanation! :-)


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

end of thread, other threads:[~2012-09-19 11:05 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-30 14:21 [Bug c++/54420] New: Segmentation in decl_mangling_context lukeocamden at gmail dot com
2012-08-30 14:33 ` [Bug c++/54420] Segmentation fault " markus at trippelsdorf dot de
2012-09-03 10:31 ` [Bug c++/54420] [4.6/4.7/4.8 Regression] " rguenth at gcc dot gnu.org
2012-09-04 22:17 ` jason at gcc dot gnu.org
2012-09-05  4:17 ` jason at gcc dot gnu.org
2012-09-05  4:21 ` jason at gcc dot gnu.org
2012-09-05 16:18 ` paolo.carlini at oracle dot com
2012-09-18 13:48 ` paolo.carlini at oracle dot com
2012-09-19 10:27 ` patrik.h.hagglund at gmail dot com
2012-09-19 10:36 ` jakub at gcc dot gnu.org
2012-09-19 11:05 ` patrik.h.hagglund at gmail dot com

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).