public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/17401] New: ICE with checking after parse error (?)
@ 2004-09-10 15:53 steven at gcc dot gnu dot org
  2004-09-10 15:53 ` [Bug c++/17401] " steven at gcc dot gnu dot org
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-09-10 15:53 UTC (permalink / raw)
  To: gcc-bugs

The attached test case ICEs during parsing with checking enabled: 
 
$ g++ t.ii 
t.ii:52482: internal compiler error: tree check: expected identifier_node, 
have integer_cst in c_parse_error, at c-common.c:5490

-- 
           Summary: ICE with checking after parse error (?)
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: steven at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org,mark at codesourcery dot
                    com


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


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

* [Bug c++/17401] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
@ 2004-09-10 15:53 ` steven at gcc dot gnu dot org
  2004-09-10 18:40 ` [Bug c++/17401] [4.0 Regression] " belyshev at lubercy dot com
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-09-10 15:53 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-09-10 15:53 -------
Created an attachment (id=7087)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7087&action=view)
Test case for this bug


-- 


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


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

* [Bug c++/17401] [4.0 Regression] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
  2004-09-10 15:53 ` [Bug c++/17401] " steven at gcc dot gnu dot org
@ 2004-09-10 18:40 ` belyshev at lubercy dot com
  2004-09-10 18:46 ` bangerth at dealii dot org
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: belyshev at lubercy dot com @ 2004-09-10 18:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From belyshev at lubercy dot com  2004-09-10 18:40 -------
// "minimized" testcase :-)

class foo { virtual void bar () = __null; };


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2004-09-10 18:40:08
               date|                            |
            Summary|ICE with checking after     |[4.0 Regression] ICE with
                   |parse error (?)             |checking after parse error
                   |                            |(?)
   Target Milestone|---                         |4.0.0


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


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

* [Bug c++/17401] [4.0 Regression] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
  2004-09-10 15:53 ` [Bug c++/17401] " steven at gcc dot gnu dot org
  2004-09-10 18:40 ` [Bug c++/17401] [4.0 Regression] " belyshev at lubercy dot com
@ 2004-09-10 18:46 ` bangerth at dealii dot org
  2004-09-10 22:25 ` pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: bangerth at dealii dot org @ 2004-09-10 18:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-09-10 18:46 -------
:-) I think I saw Mark submit a patch maybe a year ago that really 
required the token "0" to indicate that a function is abstract. I 
have a hard time understanding why anyone would use anything different 
anyway, but that may be beyond the point... 
 
W. 

-- 


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


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

* [Bug c++/17401] [4.0 Regression] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2004-09-10 18:46 ` bangerth at dealii dot org
@ 2004-09-10 22:25 ` pinskia at gcc dot gnu dot org
  2004-09-10 23:52 ` giovannibajo at libero dot it
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-09-10 22:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-09-10 22:25 -------
: Search converges between 2003-12-17-trunk (#430) and 2003-12-18-trunk (#431).
Hmm that is the normal date for this ICE :)
This only happens with checking turned also.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-checking, ice-on-
                   |                            |invalid-code


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


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

* [Bug c++/17401] [4.0 Regression] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2004-09-10 22:25 ` pinskia at gcc dot gnu dot org
@ 2004-09-10 23:52 ` giovannibajo at libero dot it
  2004-09-11  0:33 ` [Bug c++/17401] [3.4/4.0 " giovannibajo at libero dot it
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-10 23:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-10 23:52 -------
Anybody has an --enable-checking version of 3.4? I assume the bug is present 
also there.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.0.0


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with checking after parse error (?)
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2004-09-10 23:52 ` giovannibajo at libero dot it
@ 2004-09-11  0:33 ` giovannibajo at libero dot it
  2004-09-11 13:09 ` [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier giovannibajo at libero dot it
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-11  0:33 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-11 00:33 -------
Mine.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |giovannibajo at libero dot
                   |dot org                     |it
             Status|NEW                         |ASSIGNED
            Summary|[4.0 Regression] ICE with   |[3.4/4.0 Regression] ICE
                   |checking after parse error  |with checking after parse
                   |(?)                         |error (?)


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2004-09-11  0:33 ` [Bug c++/17401] [3.4/4.0 " giovannibajo at libero dot it
@ 2004-09-11 13:09 ` giovannibajo at libero dot it
  2004-09-12 22:46 ` bangerth at dealii dot org
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-11 13:09 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-11 13:09 -------
Patch posted:
http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01085.html


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2004-09-11 13:09 ` [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier giovannibajo at libero dot it
@ 2004-09-12 22:46 ` bangerth at dealii dot org
  2004-09-19 12:21 ` steven at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: bangerth at dealii dot org @ 2004-09-12 22:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2004-09-12 22:46 -------
Giovanni's right: it also ICEs with an --enable-checking'd 3.4: 
 
g/x> /home/bangerth/bin/gcc-3.4-pre/bin/c++ -c x.cc 
x.cc:1: internal compiler error: tree check: expected identifier_node, have 
integer_cst in c_parse_error, at c-common.c:5893 
Please submit a full bug report, 
with preprocessed source if appropriate. 
See <URL:http://gcc.gnu.org/bugs.html> for instructions. 
 
Giovanni, you may want to apply your patch there as well. 
 
W. 

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2004-09-12 22:46 ` bangerth at dealii dot org
@ 2004-09-19 12:21 ` steven at gcc dot gnu dot org
  2004-09-19 12:41 ` giovannibajo at libero dot it
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: steven at gcc dot gnu dot org @ 2004-09-19 12:21 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2004-09-19 12:21 -------
Isn't this just a matter of not filling ridpointers with null_node 
as done below?  Whenever RID_NULL is encountered, we return just 
null_node anyway, and there are apparently no other places where 
ridpointers[RID_NULL] is read.  I'll test this patch, let's see if 
this helps. 
 
Index: lex.c 
=================================================================== 
RCS file: /cvs/gcc/gcc/gcc/cp/lex.c,v 
retrieving revision 1.343 
diff -c -3 -p -r1.343 lex.c 
*** lex.c       9 Sep 2004 17:11:18 -0000       1.343 
--- lex.c       19 Sep 2004 12:20:27 -0000 
*************** cxx_init (void) 
*** 358,364 **** 
       not shared. */ 
    null_node = make_node (INTEGER_CST); 
    TREE_TYPE (null_node) = c_common_type_for_size (POINTER_SIZE, 0); 
-   ridpointers[RID_NULL] = null_node; 
 
    interface_unknown = 1; 
 
--- 358,363 ---- 

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2004-09-19 12:21 ` steven at gcc dot gnu dot org
@ 2004-09-19 12:41 ` giovannibajo at libero dot it
  2004-09-19 12:45 ` giovannibajo at libero dot it
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-19 12:41 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-19 12:41 -------
Subject: Re:  [3.4/4.0 Regression] ICE with invalid pure specifier

steven at gcc dot gnu dot org wrote:

> Isn't this just a matter of not filling
> ridpointers with null_node as done below?  Whenever RID_NULL
> is encountered, we return just
> null_node anyway, and there are apparently no other places where
> ridpointers[RID_NULL] is read.  I'll test this patch, let's see if
> this helps.

Maybe. But cp_parser_error is stil buggy and will ICE on other keywords (e.g.
"public"/"protected"/"private") so thinking that is still desirable anyway.
I'll get back to this bug later next week when I'm through with the finals.

Giovanni Bajo




-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (9 preceding siblings ...)
  2004-09-19 12:41 ` giovannibajo at libero dot it
@ 2004-09-19 12:45 ` giovannibajo at libero dot it
  2004-09-27 12:05 ` giovannibajo at libero dot it
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-19 12:45 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-19 12:45 -------
(In reply to comment #10)

> "public"/"protected"/"private") so thinking that is still desirable anyway.
                                     ^^^^^^^^

"fixing"

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (10 preceding siblings ...)
  2004-09-19 12:45 ` giovannibajo at libero dot it
@ 2004-09-27 12:05 ` giovannibajo at libero dot it
  2004-12-23 22:20 ` mmitchel at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-09-27 12:05 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2004-09-27 12:05 -------
Patch needs update and splitting. The hunks to cp_parser_pure_specifier and to 
decl.c are safe and can be submitted separately as a way to improve/fix the 
error message here.
The patch to cp_parser_error requires to be rewritten by taking into account 
how each keywords is identified in source code.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|patch                       |


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (11 preceding siblings ...)
  2004-09-27 12:05 ` giovannibajo at libero dot it
@ 2004-12-23 22:20 ` mmitchel at gcc dot gnu dot org
  2005-01-06 22:57 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2004-12-23 22:20 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From mmitchel at gcc dot gnu dot org  2004-12-23 22:20 -------
The cp_parser_pure_specifier and decl2.c hunks are OK, and I think will be
sufficient to fix the PR.  Please apply.

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (12 preceding siblings ...)
  2004-12-23 22:20 ` mmitchel at gcc dot gnu dot org
@ 2005-01-06 22:57 ` pinskia at gcc dot gnu dot org
  2005-01-25 19:14 ` pinskia at gcc dot gnu dot org
  2005-04-27 14:54 ` pinskia at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-06 22:57 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-06 22:57 -------
I tested this again and seems fixed on the mainline, is there a reason why it is still marked as 4.0 
regression?

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (13 preceding siblings ...)
  2005-01-06 22:57 ` pinskia at gcc dot gnu dot org
@ 2005-01-25 19:14 ` pinskia at gcc dot gnu dot org
  2005-04-27 14:54 ` pinskia at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-25 19:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-25 19:14 -------
Is this fixed or just keeping open for a reason?

-- 


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


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

* [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier
  2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
                   ` (14 preceding siblings ...)
  2005-01-25 19:14 ` pinskia at gcc dot gnu dot org
@ 2005-04-27 14:54 ` pinskia at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-04-27 14:54 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-04-27 14:54 -------
*** Bug 21252 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ltg at zes dot uni-bremen
                   |                            |dot de


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


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

end of thread, other threads:[~2005-04-27 14:54 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-09-10 15:53 [Bug c++/17401] New: ICE with checking after parse error (?) steven at gcc dot gnu dot org
2004-09-10 15:53 ` [Bug c++/17401] " steven at gcc dot gnu dot org
2004-09-10 18:40 ` [Bug c++/17401] [4.0 Regression] " belyshev at lubercy dot com
2004-09-10 18:46 ` bangerth at dealii dot org
2004-09-10 22:25 ` pinskia at gcc dot gnu dot org
2004-09-10 23:52 ` giovannibajo at libero dot it
2004-09-11  0:33 ` [Bug c++/17401] [3.4/4.0 " giovannibajo at libero dot it
2004-09-11 13:09 ` [Bug c++/17401] [3.4/4.0 Regression] ICE with invalid pure specifier giovannibajo at libero dot it
2004-09-12 22:46 ` bangerth at dealii dot org
2004-09-19 12:21 ` steven at gcc dot gnu dot org
2004-09-19 12:41 ` giovannibajo at libero dot it
2004-09-19 12:45 ` giovannibajo at libero dot it
2004-09-27 12:05 ` giovannibajo at libero dot it
2004-12-23 22:20 ` mmitchel at gcc dot gnu dot org
2005-01-06 22:57 ` pinskia at gcc dot gnu dot org
2005-01-25 19:14 ` pinskia at gcc dot gnu dot org
2005-04-27 14:54 ` pinskia at gcc dot gnu dot 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).