Avatar
omochimetaru 4/20/2025 7:28 AM
文法エラーがあったら回復して次の目印まで回復するのはswift parserでは体系的に実装されてるけど、cxxパーサーにもあるんだな それ自体は意図的で、構文エラーに忠実に力尽きちゃうと、ソースコードのそれより先を解析できないが、できれば複数のエラーを全部報告したいから回復する
7:30 AM
正しい動きは、構文解析は回復させつつそこで起きたエラーは報告しておくことで、回復させる振る舞いの方は消さないのが良い
7:31 AM
上記の説明の内容は理解できなかったけど、 ケツカンマ許容ロジックの実装が雑で、エラーを無視する事で実装していたために、解析エラーから復帰する裏で出ていたエラーも消えてしまったってことか?
7:32 AM
そうだとすると正しいアプローチはケツカンマの許容ロジックをエラー無視という異常系からのトリックで対応するんじゃなくて、パーサーのロジックとして実際にケツカンマを許容する正規系として対応することだね