This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


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

Re: [PATCH] Handle comments in the C expression parser


Michael Elizabeth Chastain <chastain@cygnus.com> writes:

> Hi Daniel,
> 
> > It has to, it's the lexer. It's doing the tokenizing. 
> 
> Fair enough.  What happens here:
> 
>   (gdb) print /* multi line
>   comment */ 1 + 2
> 
> I bet it gives "unterminated comment" (as soon as you fix the code).
> This is a deviation from C, but it doesn't really bother me.

It shouldn't give that error, you should get an error as soon as you
hit enter after line.
Remember, we don't handle real multiline expressions. Adding a line
continuation character is doing just that, continuing the previous
line.

The expression lexer/parsers get handed (by the command that is
specified) whatever part of the line the various commands don't eat
themselves, AFAIK. 
How am I so sure?
Well, we have no way, in our lexers, to get more input from the
user, or a stream. It only has the lexptr. It does no non-preprocessed (IE not
already gotten from the user and stored somewhere) input consuming of
it's own (it can't, or else, for example readline history, among a
billion other things, would fail for that input, since readline
wouldn't know about it). 


Think of comments as ignored quoted strings with different start and
end chars. I know, it sounds like i'm saying "think of a car as a
bicycle with a steel frame, four wheels, an engine, etc", but they
really aren't dissimilar.
They are handled the same way in the lexer, except we don't care about
what's inside them, so the logic is a *lot* simpler.


> 
> > Not in particular, I added it when someone suggested that, and wanted
> > to get it into the tree before it became a casualty of bitrot on one
> > of my trees ...
> 
> I know the feeling.
> 
> If I saw something useful about /* ... */ I'd be in favor, but right
> now, I'd just as soon see it scrapped.

Okeydokey, fine by me.

It's in the archives if it comes up later, at least.

On to better things.
:)

> 
> Michael


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