Solidity v0.6.7 通过以下方式引入对 EIP-165 的支持type(InterfaceName).interfaceId.
语言特性
- 使用 type(I).interfaceId 添加对 EIP 165 接口标识符的支持。
- 允许抽象合约中的虚拟修饰符具有空主体。
编译器特性
- 优化器:简化重复的 AND 和 OR 操作。
- 通过命令行界面中的 yul-optimizations 或标准 JSON 中的 optimizer.details.yulDetails.optimizerSteps 指定 Yul 优化器要执行的优化步骤。
- 标准 JSON 输入:支持字段 urls 中的前缀 file://。
错误修复
- SMTChecker:修复使用定点时出现的内部错误。
- SMTChecker:修复使用数组切片时出现的内部错误。
- 类型检查器:禁止构造函数使用 virtual 和 override。
- 类型检查器:通过在完整类型检查之前执行类型的大小和递归性检查,修复了几个内部错误。
- 类型检查器:修复分配给空元组时出现的内部错误。
- 类型检查器:修复对具有空组件的元组应用一元运算符时出现的内部错误。
- 类型检查器:对在文件级别声明的结构体执行递归性检查。
构建系统
- soltest.sh:SOLIDITY_BUILD_DIR 不再相对于 REPO_ROOT,以允许源树外部的构建目录。
非常感谢所有为此次发布做出贡献的贡献者!
从这里下载 Solidity 的新版本 here.