ウィキから引用:
void term(void) {
factor();
while (sym == times || sym == slash) {
getsym();
factor();
}
}
void expression(void) {
if (sym == plus || sym == minus)
getsym();
term();
while (sym == plus || sym == minus) {
getsym();
term();
}
}
void
ルールごとに戻り値の型を使用しており、
その場合、特定のブランチが失敗したか成功したかをどうやって知ることができますか?
IMO、各ルールはブール値の戻り値の型を使用して、このブランチが失敗したか成功したかを示す必要があります。
これは正しいです?