韩天峰
ec4a12f122
refactor(polyfills): update complex_types class structure and methods
...
- Move class declaration to new line with proper brace placement
- Add bigInt, decimal, and bigFloat methods for type handling
- Modify vector method to accept optional size parameter
- Remove unsafe_ptr and fill methods from class
- Clean up trailing braces in type conversion functions
2 months ago
韩天峰
af3472bd9a
feat(parser): add native property assignment and compound assignment support
...
- Implement dynamic native property write detection logic
- Add shouldUseDynamicNativePropertyWrite method for type checking
- Support native property assignment with type conversion
- Handle compound assignment operations for native properties
- Add canUseNativePropertyAssignOp validation method
- Create comprehensive documentation for compile-time functions
- Add test cases for native int property assignments
- Include unit tests for native property assignment operations
- Update incompatible PHP features documentation
- Add native property assignment to test suite
2 months ago
韩天峰
d767104e1c
refactor(php): separate internal constants loading logic
...
- Extract internal constants loading into dedicated loadInternalConstants method
- Filter out user-defined constants from internal constants array
- Maintain backward compatibility with non-grouped constants format
- Add proper handling of constant groups to prevent runtime state inclusion
- Improve static expansion behavior for compile-time vs runtime constants
2 months ago
韩天峰
898c1fffdc
test(aot): 添加 Symfony 模式测试用例
2 months ago
韩天峰
ed3f166997
test(aot): 添加 Symfony 组件模式测试
2 months ago
韩天峰
9ffe109cb1
feat: 添加斗地主Win32示例游戏
2 months ago
韩天峰
91af3ea0ea
chore: 升级版本至 0.3.0
2 months ago
韩天峰
6577f9bf81
fix: 修正项目名称与输出目录的解析逻辑
2 months ago
韩天峰
fc5eeb3c0f
refactor:统一整数字面量生成并添加平台后缀支持
2 months ago
韩天峰
c3f0151e87
feat(aot): 支持类继承、接口及抽象类的类型兼容与运行时检查
...
允许子类对象赋值给父类/接口/抽象类声明的类型变量和容器,引入 declaredClass 区分声明类型与实际类型,对无法静态证明的继承关系添加运行时类型
2 months ago
韩天峰
f0e025dad4
feat(aot): 重构动态调用与instanceof解析并新增Symfony模式测试
2 months ago
韩天峰
035b1b09d7
Merge pull request 'fix(compiler): 修复unset引用变量后对变量的操作' ( #14 ) from fix-unset-ref-coalesce into master
...
Reviewed-on: #14
2 months ago
韩天峰
7b52412f82
fix: remove ref reset on unset
2 months ago
Yurun
254e1607b5
fix(compiler): 修复unset引用变量后对变量的操作
2 months ago
韩天峰
ba354c62c8
fix: 修复空安全链中普通方法调用误判为空安全的问题
2 months ago
韩天峰
b1dcaaa37e
test(aot): 新增 Symfony 模式测试及 PHPT 产物清理脚本
2 months ago
韩天峰
f22499bdf9
feat(foreach): 支持动态类型表达式和IteratorAggregate嵌套
...
修复foreach遍历动态表达式时的类型分发,正确处理IteratorAggregate嵌套及无效返回值检测
2 months ago
韩天峰
6baaa9a221
test: 添加 Symfony 模式及引用相关测试
2 months ago
韩天峰
952210f1ff
test(aot): 添加 Symfony 模式测试
2 months ago
韩天峰
cb03f9452c
test(aot): 添加Symfony模式测试
2 months ago
韩天峰
5ee74b2d9d
fix(parser): 修复引用赋值时的类型推断错误
2 months ago
韩天峰
ac5bfa6c68
test(aot): 添加 Symfony 数组与箭头函数模式测试
2 months ago
韩天峰
7d20c4e994
feat(preprocessor): 添加属性参数中数组和新表达式的校验
2 months ago
韩天峰
4fc0acc47f
fix(optimizer): 修复含占位符参数的函数调用优化
...
在 FuncCallOptimizer 中遇到占位符表达式(如 First-class callable)时跳过优化,
避免参数遍历中的类型处理错误导致运行时异常。
2 months ago
韩天峰
1d2dab4875
test(symfony): 添加 AOT 模式兼容性测试与文档
2 months ago
韩天峰
67d795a506
test(aot): 添加Symfony模式测试
2 months ago
韩天峰
4c806c8e16
test(symfony): 添加AOT编译器Symfony模式测试
2 months ago
韩天峰
db4d92b616
chore(test): 将编译器测试移至 aot 目录
2 months ago
韩天峰
dfc94ac09e
refactor(compiler): 使用节点属性替代上下文标识处理属性写操作
2 months ago
韩天峰
bffa660427
refactor: 引入 parseWritableIdentifier 替代手动 inAssignExpr 设置
2 months ago
韩天峰
6afb8e3689
fix(aot): 修复数组复合赋值表达式返回值
...
修复复合赋值运算符(如 +=)在数组元素上使用时返回值错误的问题。
之前代码使用了存储变量而非读取变量进行运算,并且未正确返回运算结果。
现在通过使用读取变量参与计算并返回临时变量值来修复此问题,
同时添加了 FFI 和数组相关的测试用例。
2 months ago
韩天峰
4ceb938009
refactor(tests): 将测试从 aot 目录移动到 compiler 目录
2 months ago
韩天峰
d5590b52c5
chore(tests): 将测试从 aot 目录迁移至 compiler 目录
2 months ago
韩天峰
d55bb041f6
test(aot): 添加字符串与函数解析等单元测试
2 months ago
韩天峰
7ccdd3add9
test: 添加AOT多项功能验证测试
2 months ago
韩天峰
934628e2c2
test: 添加数组、异常、过滤及箭头函数测试
2 months ago
韩天峰
eb5510e64a
feat: 将打包产物重命名为tpc
2 months ago
韩天峰
e0439a245e
docs: 添加 AOT 与 PHP 不兼容特性清单
2 months ago
韩天峰
b40a448804
docs(examples): 添加 FFI 崩溃示例
2 months ago
韩天峰
f1f2e7e5cb
Merge pull request 'fix(compiler): 修复 finally 使用变量' ( #12 ) from fix-finally-use-var into master
...
Reviewed-on: #12
2 months ago
韩天峰
bc6d15c81a
fix(compiler): preserve finally semantics for catch throws
2 months ago
韩天峰
956a05cdc0
Merge pull request 'fix(php): 修复参数类型重写兼容性检查以遵循逆变规则' ( #13 ) from fix-declaration-compatible into master
...
Reviewed-on: #13
2 months ago
韩天峰
72db18c22a
fix(php): validate composite parameter variance
2 months ago
韩天峰
14f3a5a311
Merge pull request '如果else分支只有注释,那就不渲染这个分支' ( #11 ) from empty-else into master
...
Reviewed-on: #11
2 months ago
韩天峰
e95f996c06
fix(aot): skip comment-only else branch
2 months ago
Yurun
61099c4c9e
fix(php): 修复参数类型重写兼容性检查以遵循逆变规则
2 months ago
Yurun
d0cb1395e5
fix(compiler): 修复 finally 使用变量
2 months ago
韩天峰
bc799fda0a
fix:修复静态回调解析及拼接赋值等编译问题
2 months ago
韩天峰
2a75143036
fix(aot): 处理类常量引用的全限定类名
2 months ago
韩天峰
2e85940bff
refactor(foreach): 提取键值赋值与循环体解析为独立方法
2 months ago