summaryrefslogtreecommitdiff
path: root/Zend/tests
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | Free loop variablesNikita Popov2012-05-271-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the generator is closed before it has finished running, it may happen that some FREE or SWITCH_FREE opcodes haven't been executed and memory is leaked. This fixes it by walking the brk_cont_array and manually freeing the variables.
| * | | | | | | Add first real generator testNikita Popov2012-05-271-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test implements an xrange() function (the generator version of range()).
| * | | | | | | Implement return for generatorsNikita Popov2012-05-261-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For generators ZEND_RETURN directly calls ZEND_VM_RETURN(), thus passing execution back to the caller (zend_generator_resume). This commit also adds a check that only return; is used in generators and not return $value;.
| * | | | | | | Make generator functions return a Generator objectNikita Popov2012-05-201-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now generator functions simply immediately return a new Generator object (no suspension yet).
| * | | | | | | Add some boilerplate code for Generator classNikita Popov2012-05-204-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Generator class now uses a zend_generator struct, so it'll be able to store additional info. This commit also ensures that Generator cannot be directly instantiated and extended. The error tests are now in a separate folder from the (yet-to-come) functional tests.
| * | | | | | | Add error if yield is used outside a generatorNikita Popov2012-05-192-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The yield statement can only be used in generator functions, which are marked with an asterix.
* | | | | | | | Bug #62956: fixing private method signature validationLars Strojny2012-08-282-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In inheritance, if both methods are private, don not enforce the same signature.
* | | | | | | | Merge branch 'PHP-5.4'Xinchen Hui2012-08-261-0/+24
|\ \ \ \ \ \ \ \ | | |_|_|_|_|/ / | |/| | | | | |
| * | | | | | | Add test for #62907Xinchen Hui2012-08-261-0/+24
| | | | | | | |
* | | | | | | | Fixed bug #62930, and more testsXinchen Hui2012-08-264-0/+52
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | Support list in foreachXinchen Hui2012-08-251-0/+43
| |_|_|_|/ / |/| | | | | | | | | | | | | | | | | RFC: https://wiki.php.net/rfc/foreachlist
* | | | | | Merge branch 'PHP-5.4'Xinchen Hui2012-08-231-0/+32
|\ \ \ \ \ \ | |/ / / / /
| * | | | | Fixed bug #62358 (Segfault when using traits a lot)Xinchen Hui2012-08-231-0/+32
| | | | | |
* | | | | | Merge branch 'PHP-5.4'Felipe Pena2012-08-221-0/+21
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | * PHP-5.4: - Fixed bug #62892 (ReflectionClass::getTraitAliases crashes on importing trait methods as private)
| * | | | | - Fixed bug #62892 (ReflectionClass::getTraitAliases crashes on importing ↵Felipe Pena2012-08-221-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | trait methods as private)
* | | | | | Fixed bug that jmp in try block jmp over finally blockXinchen Hui2012-08-2218-16/+152
| |_|_|/ / |/| | | | | | | | | | | | | | Refactor the implemention, make codes clear
* | | | | Make the codes clearer, and also check continue statementXinchen Hui2012-08-182-4/+24
| | | | |
* | | | | Refactor examing of jumping out of finally blockXinchen Hui2012-08-184-4/+58
| | | | |
* | | | | Prevents `goto` out of a finally blockXinchen Hui2012-08-162-0/+35
| | | | |
* | | | | typoXinchen Hui2012-08-141-1/+1
| | | | |
* | | | | add test for alone try block, and update test scripts summaryXinchen Hui2012-08-144-3/+17
| |_|/ / |/| | |
* | | | Implemented 'finally' keywords for phpXinchen Hui2012-08-1313-0/+402
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge branch 'PHP-5.4'Xinchen Hui2012-08-121-0/+23
|\ \ \ \ | |/ / /
| * | | Merge branch 'PHP-5.3' into PHP-5.4Xinchen Hui2012-08-121-0/+23
| |\ \ \ | | | |/ | | |/|
| | * | Fixed bug #62763 (register_shutdown_function and extending class)Xinchen Hui2012-08-121-0/+23
| | | |
* | | | Revert "Test for bug 62328"Xinchen Hui2012-08-121-22/+0
| | | | | | | | | | | | | | | | This reverts commit 222ab9da1aa086a47279d29c16a8ebea514257fe.
* | | | Test for bug 62328Leigh2012-08-101-0/+22
| | | |
* | | | Merge branch 'PHP-5.4'Xinchen Hui2012-07-311-0/+11
|\ \ \ \ | |/ / /
| * | | expect pass for 5.4Xinchen Hui2012-07-311-2/+0
| | | |
| * | | Merge branch 'PHP-5.3' into PHP-5.4Xinchen Hui2012-07-311-0/+13
| |\ \ \ | | |/ /
| | * | Test for bug #62680Xinchen Hui2012-07-311-0/+13
| | | |
* | | | Merge branch 'PHP-5.4'Xinchen Hui2012-07-291-0/+6
|\ \ \ \ | |/ / / | | | | | | | | | | | | * PHP-5.4: Skip test while zend_mm is disabled
| * | | Merge branch 'PHP-5.3' into PHP-5.4Xinchen Hui2012-07-291-0/+6
| |\ \ \ | | |/ / | | | | | | | | | | | | * PHP-5.3: Skip test while zend_mm is disabled
| | * | Skip test while zend_mm is disabledXinchen Hui2012-07-291-0/+6
| | | |
* | | | Merge branch 'PHP-5.4'Xinchen Hui2012-07-261-0/+33
|\ \ \ \ | |/ / /
| * | | Fix test, committed in wrong folderXinchen Hui2012-07-261-1/+1
| | | |
| * | | Fixed bug #62653: (unset($array[$float]) causes a crash)Xinchen Hui2012-07-261-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | add NEWS/UPGRADINGStanislav Malyshev2012-07-141-0/+1
| | | |
* | | | add testStanislav Malyshev2012-07-141-0/+36
| | | |
* | | | Merge branch 'PHP-5.4'Stanislav Malyshev2012-06-302-11/+11
|\ \ \ \ | |/ / / | | | | | | | | | | | | * PHP-5.4: Fixed the common misspelling of the word occurred (occured -> occurred)
| * | | Fixed the common misspelling of the word occurred (occured -> occurred)Marc Easen2012-06-302-11/+11
| | | |
* | | | Merge branch 'PHP-5.4'Stanislav Malyshev2012-05-291-1/+1
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | * PHP-5.4: fix test fix test
| * | | fix testStanislav Malyshev2012-05-291-1/+1
| | | |
* | | | Merge branch 'pull-request/54'Stanislav Malyshev2012-05-243-0/+48
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pull-request/54: Allow arbitrary expressions for empty() This change is as per RFC https://wiki.php.net/rfc/empty_isset_exprs. The change allows passing the result of function calls and other expressions to the empty() language construct. This is accomplished by simply rewriting empty(expr) to !expr. The change does not affect the suppression of errors when using empty() on variables. empty($undefinedVar) will continue not to throw errors. When an expression is used inside empty() on the other hand, errors will not be suppressed. Thus empty($undefinedVar + $somethingElse) *will* throw a notice. The change also does not make empty() into a real function, so using 'empty' as a callback is still not possible. In addition to the empty() changes the commit adds nicer error messages when isset() is used on function call results or other expressions.
| * | | | Allow arbitrary expressions for empty()Nikita Popov2012-05-133-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change is as per RFC https://wiki.php.net/rfc/empty_isset_exprs. The change allows passing the result of function calls and other expressions to the empty() language construct. This is accomplished by simply rewriting empty(expr) to !expr. The change does not affect the suppression of errors when using empty() on variables. empty($undefinedVar) will continue not to throw errors. When an expression is used inside empty() on the other hand, errors will not be suppressed. Thus empty($undefinedVar + $somethingElse) *will* throw a notice. The change also does not make empty() into a real function, so using 'empty' as a callback is still not possible. In addition to the empty() changes the commit adds nicer error messages when isset() is used on function call results or other expressions.
* | | | | Merge branch '5.4'Gustavo André dos Santos Lopes2012-05-241-0/+17
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Fixed bug #62097Gustavo André dos Santos Lopes2012-05-231-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the fix for bug #54547 in 32-bit machines by accepting float comparisons in 32-bit machines as long as the integer is not larger than the mantissa.
| * | | | Fixed bug #61998 (Using traits with method aliases appears to result in ↵Dmitry Stogov2012-05-211-0/+68
| | | | | | | | | | | | | | | | | | | | crash during execution)
| * | | | fix bug #61782 - __clone/__destruct do not match other methods when checking ↵Stanislav Malyshev2012-05-131-0/+29
| | | | | | | | | | | | | | | | | | | | access controls
| * | | | fix bug #54547Stanislav Malyshev2012-05-131-0/+21
| | | | |