- 添加了 try-catch 异常处理的测试用例 - 实现了 isFullNameExpr 方法用于检查完全限定名称表达式 - 修复了编译器中的 break 语句缺失问题 - 重命名了 parseGlobal 方法参数以避免变量冲突 - 优化了 catch 类型检查逻辑,支持类名实例化检查 - 添加了 C++ 关键字到保留字常量列表 - 完善了项目配置文件 project.yml - 添加了 instanceOf 符号方法 - 修复了多个 switch 语句中的 break 缺失问题pull/1/head
parent
d1a06ac8d4
commit
ec98d1045d
10 changed files with 71 additions and 7 deletions
@ -0,0 +1,12 @@ |
|||||||
|
name: swoole-compiler |
||||||
|
type: ext |
||||||
|
version: 0.0.1 |
||||||
|
cxxflags: | |
||||||
|
-std=c++14 |
||||||
|
-Wall |
||||||
|
sources: |
||||||
|
- ./src/Php |
||||||
|
- ./src/Core |
||||||
|
- ./src/functions.php |
||||||
|
- ./src/gen_stub.php |
||||||
|
- ./vendor/nikic/php-parser/lib/PhpParser/NodeVisitorAbstract.php |
||||||
@ -0,0 +1,21 @@ |
|||||||
|
--TEST-- |
||||||
|
try catch 2 |
||||||
|
--FILE-- |
||||||
|
<?php |
||||||
|
namespace PhpTest { |
||||||
|
class MyException extends \Exception { |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
namespace { |
||||||
|
function main() { |
||||||
|
try { |
||||||
|
throw new \PhpTest\MyException('test error'); |
||||||
|
} catch (\PhpTest\MyException $e) { |
||||||
|
var_dump($e->getMessage()); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
?> |
||||||
|
--EXPECT-- |
||||||
|
string(10) "test error" |
||||||
Loading…
Reference in new issue