ユーマ さんが書きました: ↑7年前
しかし、gcc -o mycalc y.tab.c lex.yy.c のところでつぎのようなエラーみたいなのが出ました。
y.tab.c: In function 'yyparse':
y.tab.c:617:16: warning: implicit declaration of function 'yylex' [-Wimplicit-function-declaration]
これは、警告(warning)であって、エラーではありません。
C は C++ と違って、宣言なしに関数を呼び出すことができるので、
出来た実行ファイル mycalc.exe は動くはずです。
警告を出したくなければ、y.tab.c の最初の方に int yylex(void);
と int yyerror(const char *); という宣言を追加してください。
なお、yyerror の定義は y.tab.c の中にありますが、
yylex の定義は lex.yy.c の中です。
ソースを修正せずに警告を消したいのなら、コンパイルオプション
-Wno-implicit-function-declaration を付けてください。