Related articles |
---|
Input buffer overflow in lex przemek@viewlogic.com (1993-01-04) |
Re: Input buffer overflow in lex... johnl@iecc.cambridge.ma.us (John R. Levine) (1993-01-05) |
Re: Input buffer overflow in lex... vern@daffy.ee.lbl.gov (1993-01-05) |
Re: Input buffer overflow in lex... richw@sol.camb.inmet.com (1993-01-06) |
Re: Input buffer overflow in lex... finger@convex.com (1993-01-08) |
Newsgroups: | comp.compilers |
From: | vern@daffy.ee.lbl.gov (Vern Paxson) |
Organization: | Lawrence Berkeley Laboratory, Berkeley CA |
Date: | Tue, 5 Jan 1993 18:30:07 GMT |
Keywords: | lex |
References: | 93-01-009 93-01-010 |
John R. Levine <johnl@iecc.cambridge.ma.us> writes:
> Well, the short answer is that you lose. No version of lex checks for
> token buffer overflow, although it is less destructive in flex than it is
> in lex. This can be called a lex design error, though it's hard to
> check for overflow without making the lexer a lot slower.
Let me clarify a bit. flex does detect token buffer overflow and
generates a fatal run-time error when it occurs. It can do so cheaply
because such overflow can only occur when new characters are being read
into the input buffer. That's a rare operation in a flex scanner because
input is block-oriented.
> The other possibility is to use start states to build the string
> yourself:
Hear hear! This is in general a much better approach, as it also provides
a natural way to deal with escape sequences and continued strings.
Vern
Vern Paxson vern@ee.lbl.gov
Systems Engineering ucbvax!ee.lbl.gov!vern
Lawrence Berkeley Laboratory (510) 486-7504
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.