public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-09-13 13:39 nathan
0 siblings, 0 replies; 6+ messages in thread
From: nathan @ 2002-09-13 13:39 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, jerrysiebe, nobody
Synopsis: g++-3.2 internal error: Segmentation fault
State-Changed-From-To: open->analyzed
State-Changed-By: nathan
State-Changed-When: Fri Sep 13 13:39:32 2002
State-Changed-Why:
confirmed as a regression
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7788
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-09-29 11:56 Pop Sébastian
0 siblings, 0 replies; 6+ messages in thread
From: Pop Sébastian @ 2002-09-29 11:56 UTC (permalink / raw)
To: nathan; +Cc: gcc-prs
The following reply was made to PR c++/7788; it has been noted by GNATS.
From: =?iso-8859-1?Q?Pop_S=E9bastian?= <pop@gauvain.u-strasbg.fr>
To: nathan@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
gcc-gnats@gcc.gnu.org
Cc:
Subject: Re: c++/7788: g++-3.2 internal error: Segmentation fault
Date: Sun, 29 Sep 2002 20:50:05 +0200
Hi Nathan,
On Sun, Sep 29, 2002 at 06:28:15PM -0000, nathan@gcc.gnu.org wrote:
> Synopsis: g++-3.2 internal error: Segmentation fault
>
> State-Changed-From-To: analyzed->closed
> State-Changed-By: nathan
> State-Changed-When: Sun Sep 29 11:28:15 2002
> State-Changed-Why:
> 2002-09-29 Nathan Sidwell <nathan@codesourcery.com>
>
> PR c++/7788
> * rtti.c (unemitted_tinfo_decl_p): Check it has a field.
>
>
> http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7788
This also solves PR#7743
Sebastian
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-09-29 11:28 nathan
0 siblings, 0 replies; 6+ messages in thread
From: nathan @ 2002-09-29 11:28 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, jerrysiebe, nathan
Synopsis: g++-3.2 internal error: Segmentation fault
State-Changed-From-To: analyzed->closed
State-Changed-By: nathan
State-Changed-When: Sun Sep 29 11:28:15 2002
State-Changed-Why:
2002-09-29 Nathan Sidwell <nathan@codesourcery.com>
PR c++/7788
* rtti.c (unemitted_tinfo_decl_p): Check it has a field.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7788
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-09-29 10:44 nathan
0 siblings, 0 replies; 6+ messages in thread
From: nathan @ 2002-09-29 10:44 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, jerrysiebe, nathan, nobody
Synopsis: g++-3.2 internal error: Segmentation fault
Responsible-Changed-From-To: unassigned->nathan
Responsible-Changed-By: nathan
Responsible-Changed-When: Sun Sep 29 10:44:01 2002
Responsible-Changed-Why:
patching
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7788
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-09-29 2:16 Pop Sébastian
0 siblings, 0 replies; 6+ messages in thread
From: Pop Sébastian @ 2002-09-29 2:16 UTC (permalink / raw)
To: nobody; +Cc: gcc-prs
The following reply was made to PR c++/7788; it has been noted by GNATS.
From: =?iso-8859-1?Q?Pop_S=E9bastian?= <pop@gauvain.u-strasbg.fr>
To: nathan@gcc.gnu.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org,
jerrysiebe@mindspring.com, nobody@gcc.gnu.org,
gcc-gnats@gcc.gnu.org
Cc: nathan@codesourcery.com
Subject: Re: c++/7788: g++-3.2 internal error: Segmentation fault
Date: Sun, 29 Sep 2002 11:08:53 +0200
On Fri, Sep 13, 2002 at 08:39:32PM -0000, nathan@gcc.gnu.org wrote:
> Synopsis: g++-3.2 internal error: Segmentation fault
>
> State-Changed-From-To: open->analyzed
> State-Changed-By: nathan
> State-Changed-When: Fri Sep 13 13:39:32 2002
> State-Changed-Why:
> confirmed as a regression
>
> http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7788
The problem comes from cp/rtti.c in unemitted_tinfo_decl_p ().
Associated patch with these changes is:
Date: Fri, 21 Jun 2002 12:20:51 +0100
From: Nathan Sidwell <nathan@codesourcery.com>
Organization: Codesourcery LLC
X-Accept-Language: en
To: jason@redhat.com
Cc: gcc-patches@gcc.org
Subject: [C++ PATCH]: Rework typeinfo objects
2002-06-20 Nathan Sidwell <nathan@codesourcery.com>
int
! tinfo_decl_p (t, data)
tree t;
void *data ATTRIBUTE_UNUSED;
{
! return TREE_CODE (t) == VAR_DECL
! && IDENTIFIER_GLOBAL_VALUE (DECL_NAME (t)) == (t)
! && TREE_TYPE (t) == tinfo_decl_type
! && TREE_TYPE (DECL_NAME (t));
}
Changed into
int
! unemitted_tinfo_decl_p (t, data)
tree t;
void *data ATTRIBUTE_UNUSED;
{
! if (/* It's a var decl */
! TREE_CODE (t) == VAR_DECL
! /* whos name points back to itself */
! && IDENTIFIER_GLOBAL_VALUE (DECL_NAME (t)) == t
! /* whos name's type is non-null */
! && TREE_TYPE (DECL_NAME (t))
! /* and whos type is a struct */
! && TREE_CODE (TREE_TYPE (t)) == RECORD_TYPE
! /* with a first field of our pseudo type info */
! && TREE_TYPE (TYPE_FIELDS (TREE_TYPE (t))) == ti_desc_type_node)
! return 1;
! return 0;
}
I rewrote the condition as :
int
unemitted_tinfo_decl_p (t, data)
tree t;
void *data ATTRIBUTE_UNUSED;
{
/* It's a var decl */
if (TREE_CODE (t) == VAR_DECL)
{
tree dnt = DECL_NAME (t);
/* whos name points back to itself */
if (IDENTIFIER_GLOBAL_VALUE (dnt) == t)
/* whos name's type is non-null */
if (TREE_TYPE (dnt))
{
tree ttt = TREE_TYPE (t);
/* and whos type is a struct */
if (TREE_CODE (ttt) == RECORD_TYPE)
{
tree tfttt = TYPE_FIELDS (ttt);
/* with a first field of our pseudo type info */
=> if (TREE_TYPE (tfttt) == ti_desc_type_node)
return 1;
}
}
}
return 0;
}
The problem is here => since tfttt is NULL in this bug-report example.
Nathan could you review this patch and the associated bug-report please?
Thanks,
Sebastian
^ permalink raw reply [flat|nested] 6+ messages in thread
* c++/7788: g++-3.2 internal error: Segmentation fault
@ 2002-08-31 1:06 jerrysiebe
0 siblings, 0 replies; 6+ messages in thread
From: jerrysiebe @ 2002-08-31 1:06 UTC (permalink / raw)
To: gcc-gnats
>Number: 7788
>Category: c++
>Synopsis: g++-3.2 internal error: Segmentation fault
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Aug 31 00:06:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: jerrysiebe@mindspring.com
>Release: Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.2/specs Configured with: ../gcc-3.2/configure Thread model: posix gcc version 3.2
>Organization:
>Environment:
GNU/Linux, Mandrake 8.2
Athlon XP 1800+
>Description:
foobar.cpp:3: internal error: Segmentation fault
class foo;
extern const foo bar;
class bar; // kaBoom! :o
I think that says it all. :)
The following versions don't exhibit this behaviour:
gcc version 2.96 20000731 (Mandrake Linux 8.2 2.96-0.76mdk)
gcc version 3.0.4 (Mandrake Linux 8.2 3.0.4-2mdk)
gcc version 3.1 (Thread model: single, otherwise similar to my 3.2 build)
>How-To-Repeat:
g++ -c foobar.cpp
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="foobar.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="foobar.cpp"
Y2xhc3MgZm9vOwpleHRlcm4gY29uc3QgZm9vIGJhcjsKY2xhc3MgYmFyOwo=
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2002-09-29 18:56 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-09-13 13:39 c++/7788: g++-3.2 internal error: Segmentation fault nathan
-- strict thread matches above, loose matches on Subject: below --
2002-09-29 11:56 Pop Sébastian
2002-09-29 11:28 nathan
2002-09-29 10:44 nathan
2002-09-29 2:16 Pop Sébastian
2002-08-31 1:06 jerrysiebe
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).