[Bug c++/18095] [4.0 regression] ICE in cp_lexer_consume_token on missing ";"

cvs-commit at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Oct 22 11:42:00 GMT 2004


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2004-10-22 11:42 -------
Subject: Bug 18095

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nathan@gcc.gnu.org	2004-10-22 11:42:30

Modified files:
	gcc/cp         : ChangeLog parser.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/g++.dg/parse: crash18.C crash19.C 

Log message:
	cp:
	PR c++/18095
	* parser.c (eof_token): Make const, correctly initialize rid and
	location fields.
	(struct cp_lexer): Replace buffer_end pointer with buffer_length
	count. Adjust.
	(cp_lexer_new_main): Directly grow lexer's buffer here.  Don't
	zero it out.
	(cp_lexer_new_from_tokens): Adjust.
	(cp_lexer_grow_buffer): Remove.
	(cp_lexer_peek_nth_token, cp_lexer_consume_token,
	cp_lexer_purge_token): Add const casts.
	testsuite:
	PR c++/18095
	* g++.dg/parse/crash18.C: New.
	* g++.dg/parse/crash19.C: New.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4451&r2=1.4452
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/parser.c.diff?cvsroot=gcc&r1=1.268&r2=1.269
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4485&r2=1.4486
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/crash18.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/parse/crash19.C.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


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



More information about the Gcc-bugs mailing list