|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? ????, PHP 7.4.0alpha3
+- Core:
+ . Fixed bug #78239 (Deprecation notice during string conversion converted to
+ exception hangs). (Nikita)
+
- Date:
. Updated timelib to 2018.02. (Derick)
--- /dev/null
+--TEST--
+Bug #78239: Deprecation notice during string conversion converted to exception hangs
+--FILE--
+<?php
+function handleError($level, $message, $file = '', $line = 0, $context = [])
+{
+ throw new ErrorException($message, 0, $level, $file, $line);
+}
+
+set_error_handler('handleError');
+
+class A
+{
+
+ public function abc(): bool
+ {
+ return false;
+ }
+}
+
+$r = new ReflectionMethod("A", "abc");
+(string)$r->getReturnType() ?: "";
+
+?>
+--EXPECTF--
+Fatal error: Uncaught ErrorException: Function ReflectionType::__toString() is deprecated in %s:%d
+Stack trace:
+#0 %s(%d): handleError(%s)
+#1 {main}
+ thrown in %s on line %d
zend_vm_stack_free_call_frame(call);
if (EG(current_execute_data) == &dummy_execute_data) {
EG(current_execute_data) = dummy_execute_data.prev_execute_data;
+ zend_rethrow_exception(EG(current_execute_data));
}
return FAILURE;
}