[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Purpose of $default and $end
From: |
Samkit Jain |
Subject: |
Purpose of $default and $end |
Date: |
Sat, 2 May 2009 14:51:38 +0530 |
Hi,
And I created a small program to test some small fundamentals and found that
there is a lot of difference between the below 2 rules.
sentence: /* empty */
| sentence line optional_comma '$' { printf("\nInput line:
>>>%s ::: %s <<<\n", $2, $3); }
;
sentence: sentence line optional_comma '$' { printf("\nInput line:
>>>%s ::: %s <<<\n", $2, $3); }
;
I am using scanf in yylex (my own yylex), which always accepts some string.
And now I am confused as to why is "/* empty */" necessary even when empty
cannot be returned by yylex.
When I checked the states generated by the parser, I found that there is a
difference in the way $default and $end are created for some states.
Can someone please tell me basic principle behind $end and $default terminal
symbols.
: Samkit Jain
- Purpose of $default and $end,
Samkit Jain <=