Skip to content

parser.l:36:2: error: ‘yylval’ undeclared #2

Open
@hirwa145

Description

@hirwa145

I came across your project and i want to try and explore it so that i can understand more about compiler building. on the file of"Semantic Analysis", i used flex parser.l which was successful, i used bison -d parser.y which was also successfull. But when i do gcc lex.yy.c i get this error:
parser.l:36:2: error: ‘yylval’ undeclared (first use in this function); did you mean ‘yylex’?
int {yylval.ival = INT; return INT;}
^~~~~~
yylex
parser.l:36:2: note: each undeclared identifier is reported only once for each function it appears in
parser.l:36:16: error: ‘INT’ undeclared (first use in this function); did you mean ‘EINTR’?
int {yylval.ival = INT; return INT;}
^~~
EINTR
parser.l:37:16: error: ‘FLOAT’ undeclared (first use in this function); did you mean ‘F_LOCK’?
float {yylval.ival = FLOAT; return FLOAT;}
^~~~~
F_LOCK
parser.l:38:16: error: ‘VOID’ undeclared (first use in this function)
void {yylval.ival = VOID; return VOID;}
^~~~
parser.l:39:9: error: ‘ELSE’ undeclared (first use in this function); did you mean ‘EILSEQ’?
else {return ELSE;}
^~~~
How can i solve it?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions