This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc reports Internal Error


On Fri, Jul 12, 2002 at 07:50:06AM +0100, Neil Booth wrote:
> 
> I've often wondered whether it might be worth reading chunks at a time,
> or at least supporting this behaviour.
> 
> Suppose we read in a chunk of size N.  If we can find the last newline,
> we can put a NUL after it (remembering what was there originally).
> If we can't find a newline, keep reading chunks until we do.  Because
> of the range of newlines we find, it's best to actually replace the first
> newline char in the last string of newline chars, if you see what I
> mean.
...

Right, that was roughly what I had imagined doing too.

But it occurs to me that the real reason we slurp the file all at once
is not to simplify the lexer - it's because we want to cache it in
memory in case we have to process it again.  Of course, that basically
never happens for the primary source file, but I like the way we can
use the same code for the primary source file and all #included
files...

(The primary source file does #include itself on occasion - see
enquire.c, for instance.)

zw


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]