- 在parseBinaryOpConcat方法中添加了对左右操作数的类型检查,防止void类型的连接操作 - 为concat操作添加了专门的符号函数php::concat - 修复了引用参数传递时的变量类型验证逻辑 - 更新了常量定义方法的返回类型从string改为void - 修正了预处理器中函数声明的换行符处理 - 将Iterator方法调用从exec改为call以统一接口调用方式 - 添加了concat_void.php示例文件用于测试void类型连接错误 - 新增了ref相关的测试用例文件pull/1/head
parent
ec98d1045d
commit
eaa598a48e
6 changed files with 72 additions and 17 deletions
@ -0,0 +1,11 @@ |
||||
<?php |
||||
function foo(): void |
||||
{ |
||||
var_dump(__FUNCTION__); |
||||
} |
||||
|
||||
function main() |
||||
{ |
||||
$s = foo() . "\n"; |
||||
echo $s; |
||||
} |
||||
@ -0,0 +1,27 @@ |
||||
--TEST-- |
||||
ref |
||||
--FILE-- |
||||
<?php |
||||
class Request { |
||||
public function bar() { |
||||
$this->foo('hello', $class); |
||||
$this->dump($class); |
||||
} |
||||
|
||||
public function foo($name, ?string &$class) { |
||||
$class = __CLASS__; |
||||
} |
||||
|
||||
public function dump(string $class) { |
||||
var_dump($class); |
||||
} |
||||
} |
||||
|
||||
function main() |
||||
{ |
||||
$req = new Request; |
||||
$req->bar(); |
||||
} |
||||
?> |
||||
--EXPECT-- |
||||
string(7) "Request" |
||||
Loading…
Reference in new issue