韩天峰
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
3 months 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>
4 months ago
韩天峰
afa8aa939a
fix(tests): 修复测试脚本中的函数参数和信息输出
...
- 更新 swoole/phpx 依赖版本从 ~2.3.4 到 ~2.3.6
- 移除 write_information 函数中的 $phpdbg 参数
- 删除对 $php_cgi 和 $phpdbg 相关的信息收集逻辑
- 简化 PHP 版本信息输出,只显示基础 PHP 信息
- 清理全局变量引用,移除不再使用的变量
4 months ago
韩天峰
4e94de6620
fix(tests): 修复测试文件编译失败时的异常处理
...
- 添加了对 compile_php_file 函数抛出异常的捕获和处理
- 引入 CompilationFailureException 类来封装编译失败信息
- 实现了编译失败时将输出写入日志、差异和输出文件的功能
- 在编译失败时正确标记 JUnit 测试状态并返回 FAILED
- 重构了 PHP 文件编译逻辑以捕获编译器输出和错误码
- 添加了对现有二进制文件的清理和缓存清除机制
4 months ago
韩天峰
d387667f1e
feat(tests): 添加编译器路径配置选项支持
...
- 添加 --no-aot 参数以支持非AOT编译模式运行测试
- 添加 --compiler 参数用于指定编译器二进制文件路径
- 设置默认编译器路径为 ./bin/compiler.php
- 支持通过 --compiler 指定自定义编译器如 swoole_compiler
- 修改系统调用以使用配置的编译器路径替代硬编码路径
- 更新全局变量声明以包含新的编译器路径参数
5 months ago
韩天峰
9d5500250d
test(named_args): 添加命名参数功能测试用例
...
- 添加基本命名参数功能测试 (001.phpt)
- 添加跳过可选参数的命名参数测试 (002.phpt)
- 添加混合位置和命名参数的测试 (004.phpt, 005.phpt)
- 在ArgInfo类中添加默认值表达式存储字段
- 在编译器中实现命名参数空洞填充默认值逻辑
- 移除二进制文件名数字前缀处理逻辑
7 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 与原生类型性能对比和使用建议
- 文档化扩展模式和二进制可执行文件模式差异
- 详细说明不支持的语法特性包括生成器、可变变量等
7 months ago
韩天峰
d81c4cda62
fix(core): 修复数字文件名编译问题并优化代码结构
...
- 在run-tests.php中为数字文件名添加'app_'前缀以避免命名冲突
- 在Translator.php中为数字目标名称添加'app_'前缀以确保有效标识符
- 重构NativeCallToCDecl函数中的参数列表构建逻辑,调整代码顺序以提高可读性
- 添加测试用例验证岛屿周长计算算法的正确性
8 months ago
韩天峰
1fa3b4596b
fix(compiler): 修复异常处理机制和二进制文件命名问题
...
- 将 zend_try/zend_catch/zend_end_try 替换为标准的 try/catch 语法
- 移除旧的 throw_exception 函数并实现新的异常抛出机制
- 修改主函数中的异常处理逻辑以使用新的异常捕获方式
- 修复二进制文件名中连字符被替换为下划线的问题
- 更新异常处理流程以正确捕获和显示错误信息
9 months ago
韩天峰
04f265ae24
全局变量
9 months ago
韩天峰
72b7ebdfae
单测
10 months ago
韩天峰
204908f6e9
数组 单元测试
10 months ago
韩天峰
765eb75869
运算操作符 单元测试
10 months ago
韩天峰
f3565a6439
回归赋值的语法
10 months ago
韩天峰
1dd9f62914
单元测试脚本
10 months ago