Доброго времени суток!
Может ли кто-нибудь объяснить, почему bison дает на этом файле конфликт сдвига/вывода? При комментировании 71 или 82 строчки конфликт исчезает. Но даже при наличии этого конфликта прога работает нормально. Не обращайте внимания на дурь при выводе - после того, как будет написана грамматика, эту часть можно будет отладить позднее при помощи деревьев. Или же этот конфликт не будет в итоге давать syntax error
, но в правильном порядке составить аргументы не всегда получится? То есть, какова должна быть ситуация, чтобы этот конфликт проявился?
Прога должна уметь обрабатывать выражения вида:
abc
abc()
abc(def)
abc(45, 89.09, asd)
abc(45, 89.09, asd())
abc(45, 89.09, asd(hj))
abc(45, 89.09, asd(89).ui)
abc(45, 89.09, asd(89).ui).io
abc(45, 89.09, asd(89).ui).io(89)
...
Вот еще лексер, для полноты картины.