韩天峰
c46a9ddbf2
fix: cover eval error lifecycle regressions
4 weeks ago
韩天峰
b0455f143a
rename(compiler): update compiler executable name from compiler.php to tpc.php
...
- Change all documentation references from bin/compiler.php to bin/tpc.php
- Update composer.json with new binary entry point
- Update run-tests.php default compiler path
- Update all example commands and guides to use new executable name
- Add composer package configuration for swoole/typephp
- Update README installation instructions for new naming convention
1 month ago
yurunsoft
dfb6f693c3
修复 Windows 运行测试 ( #1 )
...
Co-authored-by: Yurun <admin@yurunsoft.com>
Reviewed-on: #1
Co-authored-by: yurunsoft <admin@yurunsoft.com>
Co-committed-by: yurunsoft <admin@yurunsoft.com>
2 months ago
韩天峰
afa8aa939a
fix(tests): 修复测试脚本中的函数参数和信息输出
...
- 更新 swoole/phpx 依赖版本从 ~2.3.4 到 ~2.3.6
- 移除 write_information 函数中的 $phpdbg 参数
- 删除对 $php_cgi 和 $phpdbg 相关的信息收集逻辑
- 简化 PHP 版本信息输出,只显示基础 PHP 信息
- 清理全局变量引用,移除不再使用的变量
2 months ago
韩天峰
4e94de6620
fix(tests): 修复测试文件编译失败时的异常处理
...
- 添加了对 compile_php_file 函数抛出异常的捕获和处理
- 引入 CompilationFailureException 类来封装编译失败信息
- 实现了编译失败时将输出写入日志、差异和输出文件的功能
- 在编译失败时正确标记 JUnit 测试状态并返回 FAILED
- 重构了 PHP 文件编译逻辑以捕获编译器输出和错误码
- 添加了对现有二进制文件的清理和缓存清除机制
2 months ago
韩天峰
d387667f1e
feat(tests): 添加编译器路径配置选项支持
...
- 添加 --no-aot 参数以支持非AOT编译模式运行测试
- 添加 --compiler 参数用于指定编译器二进制文件路径
- 设置默认编译器路径为 ./bin/compiler.php
- 支持通过 --compiler 指定自定义编译器如 swoole_compiler
- 修改系统调用以使用配置的编译器路径替代硬编码路径
- 更新全局变量声明以包含新的编译器路径参数
3 months ago
韩天峰
9d5500250d
test(named_args): 添加命名参数功能测试用例
...
- 添加基本命名参数功能测试 (001.phpt)
- 添加跳过可选参数的命名参数测试 (002.phpt)
- 添加混合位置和命名参数的测试 (004.phpt, 005.phpt)
- 在ArgInfo类中添加默认值表达式存储字段
- 在编译器中实现命名参数空洞填充默认值逻辑
- 移除二进制文件名数字前缀处理逻辑
5 months ago
韩天峰
5b0346a4ad
test(aot): 添加 AOT 编译器功能测试和文档
...
- 新增匿名类功能测试文件 tests/aot/anonymous-classes.phpt
- 新增数组展开操作符测试文件 tests/aot/array-spread.phpt
- 新增箭头函数测试文件 tests/aot/arrow-functions.phpt
- 新增属性注解测试文件 tests/aot/attributes.phpt
- 新增构造函数属性提升测试文件 tests/aot/constructor-promotion.phpt
- 新增生成器测试文件 tests/aot/generators.phpt
- 新增 trait 基础功能测试文件 tests/aot/trait-basic.phpt
- 更新测试运行脚本支持 main 函数自动调用
- 新增 AOT 编译器语法支持文档 docs/UNSUPPORTED_SYNTAX.md
- 记录 ZVAL 与原生类型性能对比和使用建议
- 文档化扩展模式和二进制可执行文件模式差异
- 详细说明不支持的语法特性包括生成器、可变变量等
5 months ago
韩天峰
d81c4cda62
fix(core): 修复数字文件名编译问题并优化代码结构
...
- 在run-tests.php中为数字文件名添加'app_'前缀以避免命名冲突
- 在Translator.php中为数字目标名称添加'app_'前缀以确保有效标识符
- 重构NativeCallToCDecl函数中的参数列表构建逻辑,调整代码顺序以提高可读性
- 添加测试用例验证岛屿周长计算算法的正确性
7 months ago
韩天峰
1fa3b4596b
fix(compiler): 修复异常处理机制和二进制文件命名问题
...
- 将 zend_try/zend_catch/zend_end_try 替换为标准的 try/catch 语法
- 移除旧的 throw_exception 函数并实现新的异常抛出机制
- 修改主函数中的异常处理逻辑以使用新的异常捕获方式
- 修复二进制文件名中连字符被替换为下划线的问题
- 更新异常处理流程以正确捕获和显示错误信息
7 months ago
韩天峰
04f265ae24
全局变量
8 months ago
韩天峰
72b7ebdfae
单测
8 months ago
韩天峰
204908f6e9
数组 单元测试
8 months ago
韩天峰
765eb75869
运算操作符 单元测试
8 months ago
韩天峰
f3565a6439
回归赋值的语法
8 months ago
韩天峰
1dd9f62914
单元测试脚本
8 months ago