bison - 野牛如何解析 x = (int)+b
问题描述
我很困惑野牛将如何解析/解决这个表达式中的冲突,假设“int”是一个类型,第一个表达式是类型转换,第二个只是一个简单的加法,或者如果“a”是一个类型别名,它与第一个相同. 假设该语言允许为现有类型提供别名。
x = (int)+b => typecast to "int" the "+b"
x = (a)+b => addition expression / typecast to "a" the "+b"
Bison 必须知道括号中的标识符是类型还是变量才能解析它。它是如何处理的?
解决方案
推荐阅读
- python - 逐渐从函数列表中调用函数(没有生成器)
- javascript - 代码在控制台和 youtube.com 上的内容脚本中的行为不同
- java - 无法更改 Material TextInputEditText 的光标和气泡颜色
- c - 访问数组的连续元素时会发生什么类型的缓存未命中?
- c# - 正则表达式查找字符串并设置为变量
- javascript - 如何从节点 js api 返回 zip 文件并在客户端处理?
- sublimetext3 - Sublime Text 3 - Prettier / jsPrettier 错误:parser.parse 不是函数
- c# - 如何从 Insert Into 命令从 ExecuteSqlCommand 获取数据?
- laravel - Laravel:assertDatabaseHas - 意外失败
- c - 内存分配和设置