Shift减少冲突

我无法理解YACC的转换/减少冲突问题。有人可以打破这个问题并使用悬挂的其他例子向我解释一下吗? 谢谢!     
已邀请:
悬挂的其他问题基本上意味着:
if (x) then if (y) then a; else b;
可以解析为
if (x) then { 
    if (y)  {
        then a;
        else b;
    }
}
或者作为
 if (x) then { 
     if (y) 
         then a; 
 } 
 else b;
大多数语言都需要第一个 - 这正是yacc所做的,所以它很少是一个真正的问题(实际上,来自yacc的S / R冲突很少是一个问题)。     

要回复问题请先登录注册