grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: parser eats '=' after variable names


From: Bean
Subject: Re: parser eats '=' after variable names
Date: Sun, 10 Feb 2008 17:55:25 +0800

On Feb 10, 2008 5:15 AM, Robert Millan <address@hidden> wrote:
>
> It seems that the parser eats the extra '=' when used after a variable
> evaluation:
>
> grub> set a=a
> grub> echo $a
> a
> grub> echo $a=
>
> grub>
>
> This breaks e.g. variable comparison via "test $a=b".  Does someone have an
> idea on how to fix it?  I assume it involves the bison stuff which is highly
> confusing to me... :-/

This problem is caused by the lexer, the token is broken when a
variable is found. so $a will be a token, and =b will be another one.
I have written a patch some time ago, it works by constructing a
GRUB_PARSER_TOKEN_VAR inside grub_script_yylex2, and return it to the
parser.

-- 
Bean




reply via email to

[Prev in Thread] Current Thread [Next in Thread]