diff --git a/CHANGELOG.md b/CHANGELOG.md index 774a12cf83..5669288af5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Fixed - Fixed concatenation support of strings with double numbers [#1893](https://github.com/phalcon/zephir/issues/1893) +- Fixed 'void' return type hint being ignored + [#1908](https://github.com/phalcon/zephir/issues/1908) ## [0.12.2] - 2019-08-05 ### Added diff --git a/Library/ArgInfoDefinition.php b/Library/ArgInfoDefinition.php index 2190713ea4..846525152e 100644 --- a/Library/ArgInfoDefinition.php +++ b/Library/ArgInfoDefinition.php @@ -96,7 +96,7 @@ public function render() ) { $this->richRenderStart(); - if (false == $this->hasParameters()) { + if (false == $this->hasParameters() && false == $this->functionLike->isVoid()) { $this->codePrinter->output('ZEND_END_ARG_INFO()'); $this->codePrinter->outputBlankLine(); } @@ -156,6 +156,64 @@ private function richRenderStart() return; } + if ($this->functionLike->isVoid()) { + $this->codePrinter->output('#if PHP_VERSION_ID >= 70100'); + $this->codePrinter->output('#if PHP_VERSION_ID >= 70200'); + $this->codePrinter->output( + sprintf( + 'ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(%s, %d, %d, %s, %d)', + $this->name, + (int) $this->returnByRef, + $this->functionLike->getNumberOfRequiredParameters(), + $this->getReturnType(), + (int) $this->functionLike->areReturnTypesNullCompatible() + ) + ); + + $this->codePrinter->output('#else'); + + $this->codePrinter->output( + sprintf( + 'ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(%s, %d, %d, %s, NULL, %d)', + $this->name, + (int) $this->returnByRef, + $this->functionLike->getNumberOfRequiredParameters(), + $this->getReturnType(), + (int) $this->functionLike->areReturnTypesNullCompatible() + ) + ); + + $this->codePrinter->output('#endif'); + + if (false == $this->hasParameters()) { + $this->codePrinter->output('ZEND_END_ARG_INFO()'); + $this->codePrinter->outputBlankLine(); + } + + $this->codePrinter->output('#else'); + + if (true == $this->hasParameters()) { + $this->codePrinter->output( + sprintf( + 'ZEND_BEGIN_ARG_INFO_EX(%s, 0, %d, %d)', + $this->name, + (int) $this->returnByRef, + $this->functionLike->getNumberOfRequiredParameters() + ) + ); + } + + $this->codePrinter->output( + sprintf( + '#define %s NULL', + $this->name + ) + ); + + $this->codePrinter->output('#endif'); + return; + } + $this->codePrinter->output('#if PHP_VERSION_ID >= 70200'); $this->codePrinter->output( sprintf( @@ -357,6 +415,10 @@ private function getReturnType() return 'IS_STRING'; } + if ($this->functionLike->isVoid()) { + return 'IS_VOID'; + } + if (\array_key_exists('array', $this->functionLike->getReturnTypes())) { return 'IS_ARRAY'; } diff --git a/Library/ClassMethod.php b/Library/ClassMethod.php index e4e5a4adc9..a3deeb4f9c 100644 --- a/Library/ClassMethod.php +++ b/Library/ClassMethod.php @@ -2322,7 +2322,7 @@ public function getArgInfoName(ClassDefinition $classDefinition = null) * * Examples: * - * - FALSE: function foo() -> void; + * - TRUE: function foo() -> void; * - TRUE: function foo() -> null; * - TRUE: function foo() -> bool|string|..; * - TRUE: function foo() -> <\stdClass>; @@ -2334,7 +2334,10 @@ public function getArgInfoName(ClassDefinition $classDefinition = null) */ public function isReturnTypesHintDetermined() { - if (0 == \count($this->returnTypes) || $this->isVoid()) { + if ($this->isVoid()) { + return true; + } + if (0 == \count($this->returnTypes)) { return false; } @@ -2376,6 +2379,11 @@ public function isReturnTypesHintDetermined() */ public function areReturnTypesCompatible() { + // void + if ($this->isVoid()) { + return true; + } + // null | T1 | T2 if (\count($this->returnTypes) > 2) { return false; diff --git a/Library/Stubs/Generator.php b/Library/Stubs/Generator.php index d204a45095..bac0dd7209 100644 --- a/Library/Stubs/Generator.php +++ b/Library/Stubs/Generator.php @@ -267,9 +267,16 @@ protected function buildMethod(ClassMethod $method, $isInterface, $indent) } $return = ''; - if (version_compare(PHP_VERSION, '7.0.0', '>=') && $method->hasReturnTypes()) { + if (version_compare(PHP_VERSION, '7.0.0', '>=') && ($method->hasReturnTypes() || $method->isVoid())) { $supported = 0; + if ($method->isVoid()) { + if (version_compare(PHP_VERSION, '7.1.0', '>=')) { + $return = 'void'; + ++$supported; + } + } + if (\array_key_exists('object', $method->getReturnTypes()) && 1 == \count($method->getReturnClassTypes())) { $return = key($method->getReturnClassTypes()); ++$supported; diff --git a/ext/install b/ext/install index d688908d99..7e9beb45ef 100755 --- a/ext/install +++ b/ext/install @@ -1,20 +1,45 @@ #!/usr/bin/env bash +# +# This file was generated automatically by Zephir. +# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN +# +# (c) Zephir Team +# +# For the full copyright and license information, please view +# the LICENSE file that was distributed with this source code. export CC="gcc" export CFLAGS="-O2 -Wall -fvisibility=hidden -flto -DZEPHIR_RELEASE=1" -phpize_bin=$(which phpize 2> /dev/null) +IN_DOCKER=0 -if [ -z $(which sudo 2> /dev/null) ]; then - alias sudo="" +if [[ -f /proc/1/cgroup ]] +then + if [[ -f /.dockerenv ]] || grep -Eq '/(lxc|docker)/[[:xdigit:]]{64}' /proc/1/cgroup + then + IN_DOCKER=1 + fi fi +phpize="$(command -v phpize 2> /dev/null)" + +sudo="" +test "$IN_DOCKER" -eq 0 && sudo="$(command -v sudo 2> /dev/null)" + if [ -f Makefile ]; then - sudo make -s clean - sudo ${phpize_bin} --silent --clean + $sudo make -s clean + $sudo "${phpize}" --silent --clean fi -${phpize_bin} --silent +${phpize} --silent + +ZEPHIR_CFLAGS="" +ZEPHIR_LDFLAGS="" + +test -n "$CFLAGS" && ZEPHIR_CFLAGS="CFLAGS=\"$CFLAGS\"" +test -n "$LDFLAGS" && ZEPHIR_LDFLAGS="LDFLAGS=\"$LDFLAGS\"" + +/configure --silent --enable-test "$ZEPHIR_CFLAGS" "$ZEPHIR_LDFLAGS" -./configure --silent --enable-test -make -s && sudo make -s install +make -s +$sudo make -s install diff --git a/ext/php_test.h b/ext/php_test.h index f56b06d665..33623e1277 100644 --- a/ext/php_test.h +++ b/ext/php_test.h @@ -14,7 +14,7 @@ #define PHP_TEST_VERSION "1.0.0" #define PHP_TEST_EXTNAME "test" #define PHP_TEST_AUTHOR "Zephir Team and contributors" -#define PHP_TEST_ZEPVERSION "0.12.2-$Id$" +#define PHP_TEST_ZEPVERSION "0.12.3-$Id$" #define PHP_TEST_DESCRIPTION "Description test for
Test Extension." typedef struct _zephir_struct_db { diff --git a/ext/test/bench/foo.zep.h b/ext/test/bench/foo.zep.h index d4b95bb46d..f6ae3badf1 100644 --- a/ext/test/bench/foo.zep.h +++ b/ext/test/bench/foo.zep.h @@ -75,6 +75,17 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_test_bench_foo_call, 0, 0, 1) ZEND_ARG_INFO(0, n) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_bench_foo_staticmethod, 0, 0, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_bench_foo_staticmethod, 0, 0, IS_VOID, NULL, 0) +#endif +ZEND_END_ARG_INFO() + +#else +#define arginfo_test_bench_foo_staticmethod NULL +#endif #if PHP_VERSION_ID >= 70200 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_bench_foo_staticmethod1, 0, 0, _IS_BOOL, 0) #else @@ -109,7 +120,7 @@ ZEPHIR_INIT_FUNCS(test_bench_foo_method_entry) { PHP_ME(Test_Bench_Foo, emptyProp, arginfo_test_bench_foo_emptyprop, ZEND_ACC_PUBLIC) PHP_ME(Test_Bench_Foo, g, NULL, ZEND_ACC_PUBLIC) PHP_ME(Test_Bench_Foo, call, arginfo_test_bench_foo_call, ZEND_ACC_PUBLIC) - PHP_ME(Test_Bench_Foo, staticMethod, NULL, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC) + PHP_ME(Test_Bench_Foo, staticMethod, arginfo_test_bench_foo_staticmethod, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC) PHP_ME(Test_Bench_Foo, staticMethod1, arginfo_test_bench_foo_staticmethod1, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC) PHP_ME(Test_Bench_Foo, scall, arginfo_test_bench_foo_scall, ZEND_ACC_PUBLIC) PHP_ME(Test_Bench_Foo, scallWithReturnTrue, arginfo_test_bench_foo_scallwithreturntrue, ZEND_ACC_PUBLIC) diff --git a/ext/test/concat.zep.h b/ext/test/concat.zep.h index 693cf0d346..e3065a8946 100644 --- a/ext/test/concat.zep.h +++ b/ext/test/concat.zep.h @@ -18,7 +18,16 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_concat_gettestproperty, 0, #endif ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_concat_testconcatbyselfproperty, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_concat_testconcatbyselfproperty, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_concat_testconcatbyselfproperty, 0, 0, 1) +#define arginfo_test_concat_testconcatbyselfproperty NULL +#endif #if PHP_VERSION_ID >= 70200 ZEND_ARG_TYPE_INFO(0, title, IS_STRING, 0) #else diff --git a/ext/test/exitdie.zep.h b/ext/test/exitdie.zep.h index b1c48da591..a40c8aa99d 100644 --- a/ext/test/exitdie.zep.h +++ b/ext/test/exitdie.zep.h @@ -6,11 +6,29 @@ ZEPHIR_INIT_CLASS(Test_ExitDie); PHP_METHOD(Test_ExitDie, testExit); PHP_METHOD(Test_ExitDie, testDie); +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_exitdie_testexit, 0, 0, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_exitdie_testexit, 0, 0, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_exitdie_testexit, 0, 0, 0) +#define arginfo_test_exitdie_testexit NULL +#endif ZEND_ARG_INFO(0, param) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_exitdie_testdie, 0, 0, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_exitdie_testdie, 0, 0, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_exitdie_testdie, 0, 0, 0) +#define arginfo_test_exitdie_testdie NULL +#endif ZEND_ARG_INFO(0, param) ZEND_END_ARG_INFO() diff --git a/ext/test/fortytwo.zep.h b/ext/test/fortytwo.zep.h index bff28a920b..e138144f9e 100644 --- a/ext/test/fortytwo.zep.h +++ b/ext/test/fortytwo.zep.h @@ -5,7 +5,18 @@ ZEPHIR_INIT_CLASS(Test_FortyTwo); PHP_METHOD(Test_FortyTwo, proof); +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_fortytwo_proof, 0, 0, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_fortytwo_proof, 0, 0, IS_VOID, NULL, 0) +#endif +ZEND_END_ARG_INFO() + +#else +#define arginfo_test_fortytwo_proof NULL +#endif ZEPHIR_INIT_FUNCS(test_fortytwo_method_entry) { - PHP_ME(Test_FortyTwo, proof, NULL, ZEND_ACC_PUBLIC) + PHP_ME(Test_FortyTwo, proof, arginfo_test_fortytwo_proof, ZEND_ACC_PUBLIC) PHP_FE_END }; diff --git a/ext/test/geometry.zep.h b/ext/test/geometry.zep.h index 422549a9f1..87aea0b57f 100644 --- a/ext/test/geometry.zep.h +++ b/ext/test/geometry.zep.h @@ -7,7 +7,16 @@ PHP_METHOD(Test_Geometry, run); PHP_METHOD(Test_Geometry, runOptimize); PHP_METHOD(Test_Geometry, distanceStatic); +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_geometry_run, 0, 2, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_geometry_run, 0, 2, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_geometry_run, 0, 0, 2) +#define arginfo_test_geometry_run NULL +#endif ZEND_ARG_ARRAY_INFO(0, list, 0) #if PHP_VERSION_ID >= 70200 ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0) @@ -16,7 +25,16 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_test_geometry_run, 0, 0, 2) #endif ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_geometry_runoptimize, 0, 2, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_geometry_runoptimize, 0, 2, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_geometry_runoptimize, 0, 0, 2) +#define arginfo_test_geometry_runoptimize NULL +#endif ZEND_ARG_ARRAY_INFO(0, list, 0) #if PHP_VERSION_ID >= 70200 ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0) diff --git a/ext/test/globals.zep.h b/ext/test/globals.zep.h index 1f96f1fad5..fc57559e94 100644 --- a/ext/test/globals.zep.h +++ b/ext/test/globals.zep.h @@ -17,23 +17,68 @@ PHP_METHOD(Test_Globals, getDefaultGlobals6); PHP_METHOD(Test_Globals, getDefaultGlobals7); PHP_METHOD(Test_Globals, getDefaultGlobalsOrmCacheLevel); +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setboolvalueusingdotnotation, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setboolvalueusingdotnotation, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_globals_setboolvalueusingdotnotation, 0, 0, 1) +#define arginfo_test_globals_setboolvalueusingdotnotation NULL +#endif ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setintvalueusingdotnotation, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setintvalueusingdotnotation, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_globals_setintvalueusingdotnotation, 0, 0, 1) +#define arginfo_test_globals_setintvalueusingdotnotation NULL +#endif ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setcharvalue, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setcharvalue, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_globals_setcharvalue, 0, 0, 1) +#define arginfo_test_globals_setcharvalue NULL +#endif ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setboolvalue, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setboolvalue, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_globals_setboolvalue, 0, 0, 1) +#define arginfo_test_globals_setboolvalue NULL +#endif ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setdefaultglobalsormcachelevel, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_globals_setdefaultglobalsormcachelevel, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_globals_setdefaultglobalsormcachelevel, 0, 0, 1) +#define arginfo_test_globals_setdefaultglobalsormcachelevel NULL +#endif ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() diff --git a/ext/test/requires.zep.h b/ext/test/requires.zep.h index dff53377fc..951ad82147 100644 --- a/ext/test/requires.zep.h +++ b/ext/test/requires.zep.h @@ -21,7 +21,16 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_test_requires_requireexternal3, 0, 0, 1) ZEND_ARG_INFO(0, path) ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_requires_setcontent, 0, 1, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_requires_setcontent, 0, 1, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_requires_setcontent, 0, 0, 1) +#define arginfo_test_requires_setcontent NULL +#endif ZEND_ARG_INFO(0, content) ZEND_END_ARG_INFO() diff --git a/ext/test/requires/external3.zep.h b/ext/test/requires/external3.zep.h index 343e43c87e..bec529ed73 100644 --- a/ext/test/requires/external3.zep.h +++ b/ext/test/requires/external3.zep.h @@ -5,7 +5,16 @@ ZEPHIR_INIT_CLASS(Test_Requires_External3); PHP_METHOD(Test_Requires_External3, req); +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_requires_external3_req, 0, 2, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_requires_external3_req, 0, 2, IS_VOID, NULL, 0) +#endif +#else ZEND_BEGIN_ARG_INFO_EX(arginfo_test_requires_external3_req, 0, 0, 2) +#define arginfo_test_requires_external3_req NULL +#endif ZEND_ARG_INFO(0, path) ZEND_ARG_INFO(0, requires) ZEND_END_ARG_INFO() diff --git a/ext/test/scall.zep.h b/ext/test/scall.zep.h index b44d98c714..b278a90ed8 100644 --- a/ext/test/scall.zep.h +++ b/ext/test/scall.zep.h @@ -154,6 +154,17 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_scall_interpolatedstaticret #endif ZEND_END_ARG_INFO() +#if PHP_VERSION_ID >= 70100 +#if PHP_VERSION_ID >= 70200 +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_scall_interpolatedstaticecho, 0, 0, IS_VOID, 0) +#else +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_test_scall_interpolatedstaticecho, 0, 0, IS_VOID, NULL, 0) +#endif +ZEND_END_ARG_INFO() + +#else +#define arginfo_test_scall_interpolatedstaticecho NULL +#endif ZEPHIR_INIT_FUNCS(test_scall_method_entry) { PHP_ME(Test_Scall, testMethod1, arginfo_test_scall_testmethod1, ZEND_ACC_STATIC|ZEND_ACC_PUBLIC) PHP_ME(Test_Scall, testMethod2, arginfo_test_scall_testmethod2, ZEND_ACC_STATIC|ZEND_ACC_PROTECTED) @@ -182,6 +193,6 @@ ZEPHIR_INIT_FUNCS(test_scall_method_entry) { PHP_ME(Test_Scall, testCall18, arginfo_test_scall_testcall18, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) PHP_ME(Test_Scall, testMethodStatic, arginfo_test_scall_testmethodstatic, ZEND_ACC_STATIC|ZEND_ACC_PROTECTED) PHP_ME(Test_Scall, interpolatedStaticReturn, arginfo_test_scall_interpolatedstaticreturn, ZEND_ACC_PUBLIC) - PHP_ME(Test_Scall, interpolatedStaticEcho, NULL, ZEND_ACC_PUBLIC) + PHP_ME(Test_Scall, interpolatedStaticEcho, arginfo_test_scall_interpolatedstaticecho, ZEND_ACC_PUBLIC) PHP_FE_END };