fix-20260617
master
6bc53d21d0
8e5b9e8076
- 添加了对除法和取模运算中零值检测的统一处理 - 当遇到除零或模零运算时抛出致命错误而不是返回NaN - 移除了旧的零除法返回NaN的逻辑 - 统一了除法和取模运算的零值检查条件
- 添加对字面量除零、模零、赋值除零和赋值模零操作的编译时检查 - 实现对整数、浮点数和字符串类型的零值检测 - 为 AssignOpTrait 和 BinaryOpTrait 添加 guardLiteralDivisionByZero 方法 - 改进原生属性访问的类名解析,使用完整的类名进行查找 - 支持 static 关键字作为类名解析的一部分 - 添加 isSameClassName 和 isSameOrSubclassOf 辅助方法用于类继承关系判断 - 实现受保护属性访问权限控制的 canAccessProtectedProperty 方法 - 添加多个测试文件验证除零检查和原生属性访问功能 - 创建 NativePropertyTest 和 OperatorTest 测试类验证相关功能
- 修改 CompilerBase.php 中的静态属性处理逻辑,正确区分 self 和 static 关键字 - 为 native-property-full-name.php 添加 writeStatic 测试方法 - 更新 NativePropertyTest.php 中的编译方法返回值类型和测试用例 - 添加静态属性晚绑定功能的完整测试用例 static-prop-late-static-binding.phpt
6543dfccce
No due date set.
No dependencies set.
Deleting a branch is permanent. It CANNOT be undone. Continue?
6bc53d21d0to8e5b9e80762 months ago6543dfccceinto master 2 months ago6543dfccce.