Revision tags: php-5.4.7RC1 |
|
#
d60e3c6e |
| 25-Aug-2012 |
Nikita Popov |
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport Conflicts: Zend/zend_language_parser.y Zend/zend_vm_execute.skl
|
#
bd70d155 |
| 25-Aug-2012 |
Nikita Popov |
Remove implementation stubs for yield delegation I decided to leave out yield delegation for an initial proposal, so remove the stubs for it too. |
#
f53225a9 |
| 25-Aug-2012 |
Nikita Popov |
Fix several issues and allow rewind only at/before first yield * Trying to resume a generator while it is already running now throws a fatal error. * Trying to use yield in fina
Fix several issues and allow rewind only at/before first yield * Trying to resume a generator while it is already running now throws a fatal error. * Trying to use yield in finally while the generator is being force-closed (by GC) throws a fatal error. * Rewinding after the first yield now throws an Exception
show more ...
|
#
326aa087 |
| 25-Aug-2012 |
Xinchen Hui |
Prefer no finally block for most situations |
#
68c1e1cf |
| 24-Aug-2012 |
Nikita Popov |
Add dedicated opcode for returns from a generator Generators don't have a return value, so it doesn't make sense to have a shared implementation here. |
#
6517ed02 |
| 24-Aug-2012 |
Nikita Popov |
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport Conflicts: Zend/zend_vm_def.h Zend/zend_vm_execute.h
|
#
60a29791 |
| 22-Aug-2012 |
Xinchen Hui |
Fixed bug that jmp in try block jmp over finally block Refactor the implemention, make codes clear |
#
703a4e39 |
| 22-Aug-2012 |
Xinchen Hui |
stash |
#
1823b16f |
| 20-Aug-2012 |
Nikita Popov |
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport Merging master to fix Windows build Conflicts: Zend/zend_language_scanner.c Zend/zend
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport Merging master to fix Windows build Conflicts: Zend/zend_language_scanner.c Zend/zend_language_scanner_defs.h Zend/zend_vm_def.h
show more ...
|
#
72b9b8f3 |
| 18-Aug-2012 |
Xinchen Hui |
Make the codes clearer, and also check continue statement |
Revision tags: php-5.3.16, php-5.4.6 |
|
#
c64f4e73 |
| 14-Aug-2012 |
Xinchen Hui |
Add functions declarations, use tabs |
#
baea290b |
| 13-Aug-2012 |
Anatoliy Belsky |
fix windows build |
#
ae716939 |
| 13-Aug-2012 |
Nikita Popov |
Support trivial finally in generators (no yield, no return) The finally clause is now properly run when an exception is thrown in the try-block. It is not yet run on `return` and also no
Support trivial finally in generators (no yield, no return) The finally clause is now properly run when an exception is thrown in the try-block. It is not yet run on `return` and also not run when the generator is claused within a try block. I'll add those two things as soon as laruence refactored the finally code.
show more ...
|
#
f4ce3646 |
| 13-Aug-2012 |
Nikita Popov |
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport This is just an intial merge. It does not yet make generators and finally work together. Conflicts:
Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport This is just an intial merge. It does not yet make generators and finally work together. Conflicts: Zend/zend_language_scanner.c Zend/zend_language_scanner_defs.h Zend/zend_vm_def.h Zend/zend_vm_execute.h Zend/zend_vm_execute.skl Zend/zend_vm_opcodes.h
show more ...
|
#
80d5ae3c |
| 13-Aug-2012 |
Xinchen Hui |
Implemented 'finally' keywords for php RFC: https://wiki.php.net/rfc/finally FR: https://bugs.php.net/bug.php?id=32100 and I have got some improvment ideas(performance), will impleme
Implemented 'finally' keywords for php RFC: https://wiki.php.net/rfc/finally FR: https://bugs.php.net/bug.php?id=32100 and I have got some improvment ideas(performance), will implemented later. thanks
show more ...
|
Revision tags: php-5.4.6RC1 |
|
#
80497ea7 |
| 26-Jul-2012 |
Xinchen Hui |
Merge branch 'PHP-5.4'
|
#
eae06100 |
| 26-Jul-2012 |
Xinchen Hui |
Fixed bug #62653: (unset($array[$float]) causes a crash) the reason why jpauli and I can not reproduce is (it's silly): I typo "USE_ZEND_ALLOC *&&* valgrind" at the first time, then I al
Fixed bug #62653: (unset($array[$float]) causes a crash) the reason why jpauli and I can not reproduce is (it's silly): I typo "USE_ZEND_ALLOC *&&* valgrind" at the first time, then I always ctrl+r and jpauli copied my command from the pastbin :) thanks
show more ...
|
#
94b2ccae |
| 22-Jul-2012 |
Nikita Popov |
Fix throwing of exceptions within a generator If a generator threw an exception and was iterated using foreach (i.e. not manually) an infinite loop was triggered. The reason was that the
Fix throwing of exceptions within a generator If a generator threw an exception and was iterated using foreach (i.e. not manually) an infinite loop was triggered. The reason was that the exception was not properly rethrown using zend_throw_exception_internal.
show more ...
|
#
612c2490 |
| 20-Jul-2012 |
Nikita Popov |
Move a variable |
#
c9709bfb |
| 19-Jul-2012 |
Nikita Popov |
Remove asterix modifier (*) for generators Generators are now automatically detected by the presence of a `yield` expression in their body. This removes the ZEND_SUSPEND_AND_RET
Remove asterix modifier (*) for generators Generators are now automatically detected by the presence of a `yield` expression in their body. This removes the ZEND_SUSPEND_AND_RETURN_GENERATOR opcode. Instead additional checks for ZEND_ACC_GENERATOR are added to the fcall_common helper and zend_call_function. This also adds a new function zend_generator_create_zval, which handles the actual creation of the generator zval from an op array. I feel like I should deglobalize the zend_create_execute_data_from_op_array code a bit. It currently changes EG(current_execute_data) and EG(opline_ptr) which is somewhat confusing (given the name).
show more ...
|
Revision tags: php-5.4.5 |
|
#
85f077ce |
| 17-Jul-2012 |
Nikita Popov |
Add support by yielding by-reference |
Revision tags: php-5.3.15, php-5.3.15RC1, php-5.4.5RC1 |
|
#
14766e14 |
| 23-Jun-2012 |
Nikita Popov |
Pass zend_generator directly to Zend VM Previously the zval* of the generator was passed into the VM by misusing EG(return_value_ptr_ptr). Now the zend_generator* itself is directly pass
Pass zend_generator directly to Zend VM Previously the zval* of the generator was passed into the VM by misusing EG(return_value_ptr_ptr). Now the zend_generator* itself is directly passed in. This saves us from always having to pass the zval* around everywhere.
show more ...
|
#
1d3f37dd |
| 22-Jun-2012 |
Nikita Popov |
Fix segfault in method test A ref has to be added to $this if the generator is called !nested (which is the case when it is invoked via getIterator). |
#
6233408a |
| 20-Jun-2012 |
Nikita Popov |
Fix thread safe build |
Revision tags: php-5.3.14, php-5.4.4 |
|
#
d939d2de |
| 11-Jun-2012 |
Nikita Popov |
Add sceleton for yield* expression This does not yet actually implement any delegation. |