プログラムXcodeでflexつかうとエラーになる時のメモ半日潰したのでメモ。Xcode付属のflex,bisonで下記。}」が通じない(1)(2)ともにXcode付属のflex/bisonが古いぜ。結論(1)(2)ともに,flex&bisonをverUpしたがXcodeがそれをガン無視。Parser.cppを予めコマンドラインで生成して,Xcodeのプロジェクトに追加することに。」が古いファイルを参照するので,/Application/Xcode.app/〜以下のFlexLexer.hをXcodeに内緒で差し替える↓ビルド成功(ちょっぴりwarningまだ出るけどね)ここまで半日格闘。2.5.xは,変数宣言だかにregisterキーワードが使われる。registerはc++11でdeprecatedに。コンパイル時にワーニングだらけになる。こちとら趣味だしワーニングなんで放っとこうかと思ったが,何しろ多量だし気味が悪い。2.6.xは,registerキーワード吐かなくなったらしい。brewでインストール。--forceこれでScanner.lをコンパイルする。Scanner.l中身からキレイにregisterが消えた。このファイルをXcodeに追加すると,register絡みのワーニングは消えた。今度はエラーが大量に出るように。‘->’?」みると確かに「yyin」がポインターとして宣言されて,「.」演算子が付されてる。「yyin.rdbuf(std::cin.rdbuf())」みたくなってて妙だ。「yyin->rdbuf(std::cin.rdbuf())」では,ってコンパイラが言うのも確かに。semanticエラーたって,flexが吐いたコードだしなあ。webによっては「もう,自分で.を->に編集しちゃおうか」的な話もあり。救世主はやはりwebの中に。