diff --git a/src/Php/CompilerBase.php b/src/Php/CompilerBase.php index 327d8b5b..222b8e31 100644 --- a/src/Php/CompilerBase.php +++ b/src/Php/CompilerBase.php @@ -3315,8 +3315,6 @@ class CompilerBase extends \PhpAot\Core\Translator // 若参数是引用类型,可以传入未定义变量,将立即创建变量作为引用 if (!$this->hasLocalVar($var)) { $this->addLocalVar($var, self::TYPE_VAR); - } elseif ($this->getVarType($var) != self::TYPE_REF) { - $this->fatalError($arg, "Argument `{$argInfo->name}` must be a reference, `{$type}` given"); } } return $this->convertToRef($arg->value); diff --git a/tests/aot/type_decl/008.phpt b/tests/aot/type_decl/008.phpt new file mode 100644 index 00000000..857d89db --- /dev/null +++ b/tests/aot/type_decl/008.phpt @@ -0,0 +1,18 @@ +--TEST-- +Type Declarations +--FILE-- +foo()); +} +?> +--EXPECT-- +string(1) "5"