This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
EOF character in parser
- From: "Gagneet Singh" <gagneet at acmet dot com>
- To: <gcc at gcc dot gnu dot org>
- Date: Sun, 28 Dec 2003 19:11:43 +0530
- Subject: EOF character in parser
- Organization: Acme Technologies Pvt. Ltd.
- Reply-to: <gagneet at acmet dot com>
Hi!
I am working on a compiler implementation and wish to check if the end
of file has been reached. I know that this can be done using the
yywrap() function in the lex file, but the requirement is that we want
if the EOF is explicitly defined as in the hex value 0x1a, then how do
we reference that.
Example:
main()
{
printf("Check EOF marker\n"); '0x1a' <-- the actual EOF marker.
I want the above not to be a syntax error, but to be reported as an
error Unbalanced parentheses, Or <function-name> is wrongly defined.
Can the above be done? My requirement is just to have the EOF token in
the parser, which unfortunately, I have not been able to do so till date
:-((, the rest of the work will be easily done as then, I just have to
give a rule such as:
print : print_stmt '(' stmt_valid ')' colon '\n'
{
OK do the rest
}
| print_stmt '(' stmt_valid ')' colon end_indicator
{
print error message and close application.
}
Gagneet