visual-decaf / decaf-compiler

Compiler of decaf language
1 stars 3 forks source link

实现比较运算符的无结合性 #60

Closed DistinctWind closed 1 year ago

DistinctWind commented 1 year ago

如何实现比较运算符的无结合性?

根据Decaf语言规范,比较运算符都是无结合性的。也就是说,不能出现a < b >= c这样的输入。如何实现这一点?

DistinctWind commented 1 year ago

根据bison文档的这一小节,我们需要使用仅声明优先级的%nonassoc表达无结合性的含义。

DistinctWind commented 1 year ago

最新的来自 #61 的单元测试表明,使用%nonassoc正确地解决了这个问题。