diff options
Diffstat (limited to 'ext/zend_test/tests/observer_retval_by_ref_03.phpt')
-rw-r--r-- | ext/zend_test/tests/observer_retval_by_ref_03.phpt | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/ext/zend_test/tests/observer_retval_by_ref_03.phpt b/ext/zend_test/tests/observer_retval_by_ref_03.phpt new file mode 100644 index 0000000000..50fe23add1 --- /dev/null +++ b/ext/zend_test/tests/observer_retval_by_ref_03.phpt @@ -0,0 +1,42 @@ +--TEST-- +Observer: Retvals by reference are observable that are: IS_VAR, ZEND_RETURNS_FUNCTION +--SKIPIF-- +<?php if (!extension_loaded('zend-test')) die('skip: zend-test extension required'); ?> +--INI-- +zend_test.observer.enabled=1 +zend_test.observer.observe_all=1 +zend_test.observer.show_return_value=1 +--FILE-- +<?php +function getMessage() { + return 'I should be observable'; +} + +function &foo() { + return getMessage(); // IS_VAR + ZEND_RETURNS_FUNCTION +} + +$res = foo(); // Retval used +foo(); // Retval unused + +echo 'Done' . PHP_EOL; +?> +--EXPECTF-- +<!-- init '%s/observer_retval_by_ref_%d.php' --> +<file '%s/observer_retval_by_ref_%d.php'> + <!-- init foo() --> + <foo> + <!-- init getMessage() --> + <getMessage> + </getMessage:'I should be observable'> + +Notice: Only variable references should be returned by reference in %s on line %d + </foo:'I should be observable'> + <foo> + <getMessage> + </getMessage:'I should be observable'> + +Notice: Only variable references should be returned by reference in %s on line %d + </foo:'I should be observable'> +Done +</file '%s/observer_retval_by_ref_%d.php'> |