我正在尝试为微小的 Visual Basic 语言编写解析器。而且我无法解决下一个班次/减少冲突。我有这些规则:
simple_type_name:
qualified_type_name
| primitive_type_name;
qualified_type_name:
ID
| qualified_type_name PERIOD ID;
primitive_type_name: BOOLEAN|CHAR|STRING|BYTE|SBYTE|USHORT|SHORT|UINTEGER|INTEGER|ULONG|LONG|SINGLE|DOUBLE;
野牛对我说:
simple_type_name -> qualified_type_name . (rule 20)
qualified_type_name -> qualified_type_name . PERIOD ID (rule 23)
PERIOD shift, and go to state 41
PERIOD [reduce using rule 20 (simple_type_name)]
$default reduce using rule 20 (simple_type_name)
那么,在这场冲突中,正确的解决方案是什么?