summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update versions for PHP 8.0.0alpha2php-8.0.0alpha2Gabriel Caruso2020-07-072-3/+3
|
* Update NEWS for PHP 8.0.0alpha2Gabriel Caruso2020-07-071-1/+1
|
* Merge branch 'PHP-7.4'Nikita Popov2020-07-074-9/+130
|\ | | | | | | | | * PHP-7.4: Fixed bug #78598
| * Fixed bug #78598Nikita Popov2020-07-075-8/+129
| | | | | | | | | | | | | | | | | | | | When performing an RW modification of an array offset, the undefined offset warning may call an error handler / OB callback, which may destroy the array we're supposed to change. Detect this by temporarily incrementing the reference count. If we find that the array has been modified/destroyed in the meantime, we do nothing -- the execution model here would be that the modification has happened on the destroyed version of the array.
* | Merge branch 'PHP-7.4'Nikita Popov2020-07-072-2/+18
|\ \ | |/ | | | | | | * PHP-7.4: Fixed bug #79792
| * Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-07-073-2/+20
| |\ | | | | | | | | | | | | * PHP-7.3: Fixed bug #79792
| | * Fixed bug #79792Nikita Popov2020-07-073-2/+20
| | | | | | | | | | | | | | | | | | We need to remove the iterators even if the array is empty (we will not create one if the first place, but the array may become empty after the fact).
* | | Assert no exception if using NEXT_OPCODE()Nikita Popov2020-07-071-0/+1
| | | | | | | | | | | | | | | When NEXT_OPCODE() is used instead of NEXT_OPCODE_CHECK_EXCEPTION(), assert that there is indeed no exception.
* | | Assert exception set in HANDLE_EXCEPTION()Nikita Popov2020-07-073-65/+10
| | | | | | | | | | | | | | | | | | Some code paths were checking this manually, but we can turn this into a general assertion to avoid surprises (functions returning failure without throwing).
* | | Remove #undefs from vm_genNikita Popov2020-07-072-38/+0
| | | | | | | | | | | | | | | Possibly these were needed for VM_EXPORT, but they don't serve a purpose now.
* | | Remove ZEND_VM_EXPORT functionalityNikita Popov2020-07-071-103/+4
| | | | | | | | | | | | | | | This hasn't been used since forever and makes things more confusing than they already are.
* | | Fixed bug #79790Nikita Popov2020-07-073-0/+21
| | | | | | | | | | | | | | | | | | I haven't tracked down in detail where the interaction with increment_function comes from, but the root problem here is failure to handle the illegal offset type exception.
* | | Merge branch 'PHP-7.4'Nikita Popov2020-07-072-15/+24
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #79779
| * | Fixed bug #79779Nikita Popov2020-07-073-15/+26
| | | | | | | | | | | | ASSIGN_OBJ_REF was not handling in zend_wrong_string_offset.
* | | Merge branch 'PHP-7.4'Nikita Popov2020-07-072-0/+33
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #79778
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2020-07-073-1/+36
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Fixed bug #79778
| | * Fixed bug #79778Nikita Popov2020-07-073-0/+37
| | | | | | | | | | | | | | | | | | In the interest of avoiding side-effects during dumping, I'm replacing the value with a <constant ast> string instead of performing an update constant operation.
* | | Merge branch 'PHP-7.4'Nikita Popov2020-07-072-1/+16
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #79783
| * | Fixed bug #79783Nikita Popov2020-07-073-1/+17
| | | | | | | | | | | | | | | Make sure we don't drop the by-reference check when passing the result of a VM builtin function.
* | | Remove no_separation flagNikita Popov2020-07-0727-50/+10
| | |
* | | Explicitly create references in UConverter callbacksNikita Popov2020-07-071-2/+4
| | | | | | | | | | | | And don't allow separation.
* | | Fixup testNikita Popov2020-07-071-1/+12
| | |
* | | Don't allow separation in array functionsNikita Popov2020-07-0711-146/+74
| | | | | | | | | | | | | | | | | | | | | | | | The only case here that might be *somewhat* sensible is the userdata argument of array_walk(), which could be used to keep persistent state between callback invokations -- with the WTF moment that the final result after the walk finishes will be unchanged. Nowdays, this is much better achieved using a closure with a use-by-reference.
* | | Don't allow separation in CallbackFilterIteratorNikita Popov2020-07-072-7/+3
| | | | | | | | | | | | | | | As the name might suggest, this is a *filter* iterator. If you want to have a *map* iterator, write one, or use a generator.
* | | Disallow separation in a number of callbacksNikita Popov2020-07-076-12/+10
| | | | | | | | | | | | All of these clearly do not need separation support.
* | | Don't allow separation in callback filterNikita Popov2020-07-072-24/+9
| | | | | | | | | | | | | | | | | | This causes some tests to fail. Those tests are specifically about the callback not being able to modify the data though, so this is clearly not supposed to be a supported use-case.
* | | Update NEWS for 8.0.0alpha3Gabriel Caruso2020-07-071-0/+3
| | |
* | | Update NEWS for PHP 8.0.0alpha2Gabriel Caruso2020-07-071-1/+1
| | |
* | | Refactor levenshtein()George Peter Banyard2020-07-078-134/+163
| | | | | | | | | | | | Closes GH-5816
* | | Fix a few commentsMáté Kocsis2020-07-066-55/+23
| | |
* | | Remove proto comments from C filesMax Semenik2020-07-06234-8084/+3892
| | | | | | | | | | | | Closes GH-5758
* | | Remove requirements for proto comments from CODING_STANDARDSMax Semenik2020-07-061-30/+8
| | | | | | | | | | | | | | | They've been made obsolete by .stub.php files and are often outdated as they're not the source of truth.
* | | Avoid some unnecessary uses of no_separation=0Nikita Popov2020-07-068-52/+41
| | | | | | | | | | | | | | | For the rare cases where references are part of the API, construct them explicitly. Otherwise do not allow separation.
* | | refactor: class constants parsingmoliata2020-07-065-38/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As part of my work on typed class constants, I wanted to make a separate pull request for unrelated changes. These include: * Moving from ast->child[0]->attr to ast->attr * Making zend_ast_export_ex() export class constants' visibility * Extracting an additional zend_compile_class_const_group() function Closes GH-5812.
* | | More accurate reference-counter inferenceDmitry Stogov2020-07-061-3/+25
| | |
* | | More accurate reference-counter inferenceDmitry Stogov2020-07-062-6/+13
| | |
* | | [skip-ci] Add README for ext/mysqli testsTiffany2020-07-061-0/+39
| | | | | | | | | | | | Closes GH-5804
* | | Add string or object ZPP macrosMáté Kocsis2020-07-067-8/+320
| | | | | | | | | | | | Closes GH-5788
* | | ReflectionMethod::invoke() object is not optionalNikita Popov2020-07-062-4/+4
| | |
* | | Correctly determine arg name of USER_ARG_INFO functionsNikita Popov2020-07-062-7/+17
| | |
* | | [skip ci] add upgrade noteRemi Collet2020-07-061-0/+4
| | | | | | | | | | | | Closes GH-5798
* | | define build system and provider on WindowsChristoph M. Becker2020-07-061-0/+11
| | |
* | | display info about system used to build and its providerRemi Collet2020-07-062-0/+11
| | |
* | | Fix sapi_windows_vt100_support() arginfoChristoph M. Becker2020-07-062-3/+3
| | |
* | | Reuse warning functionNikita Popov2020-07-063-13/+3
| | |
* | | Added stubs for ext/oci8Jens de Nies2020-07-045-784/+1652
| | | | | | | | | | | | Closes GH-5701
* | | Fixed bug #79777Nikita Popov2020-07-043-4/+22
| | |
* | | Use zend_string_equals API in a couple placesNikita Popov2020-07-034-7/+4
| | |
* | | Removed already implemented TODO commentDmitry Stogov2020-07-031-4/+5
| | |
* | | Merge branch 'PHP-7.4'Christoph M. Becker2020-07-032-12/+12
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix tests for x86 Windows