summaryrefslogtreecommitdiff
path: root/Zend/zend_language_scanner.c
Commit message (Collapse)AuthorAgeFilesLines
* Fixed compiler reenterabilityDmitry Stogov2015-01-221-344/+350
|
* Provide compiler hook for altering the AST pre-compilation.Sara Golemon2015-01-191-344/+350
|
* Fixed annoying incompatible pointer type warningXinchen Hui2015-01-181-2529/+2525
|
* Error on invalid octal (fixes PHPSadness #31)Andrea Faulds2015-01-171-456/+503
| | | | Further error checks
* bump yearXinchen Hui2015-01-151-1/+1
|
* trailing whitespace removalStanislav Malyshev2015-01-101-225/+225
|
* fix invalid free mentioned in bug 68665Anatol Belski2014-12-281-2545/+2543
| | | | thanks honey at internot dot info
* C89 compatAnatol Belski2014-12-191-2525/+2521
|
* Unicode Codepoint Escape SyntaxAndrea Faulds2014-12-191-2700/+2783
|
* first shot remove TSRMLS_* thingsAnatol Belski2014-12-131-120/+120
|
* fix datatype mismatch warningsAnatol Belski2014-10-291-349/+351
|
* Remove <% and <script language="php"> tagsNikita Popov2014-10-051-3728/+3327
| | | | | | | | | | | | As per https://wiki.php.net/rfc/remove_alternative_php_tags. Removes: * <% opening tag * %> closing tag * <%= short opening tag * /<script\s+language\s*=\s*(php|"php"|'php')\s*>/i opening tag * /</script>/i closing tag * asp_tags ini directive
* Initial coalesce operator implementationNikita Popov2014-09-161-3021/+3031
|
* Fix yy_limit computation after encoding switchNikita Popov2014-09-111-1/+1
| | | | | | | | | | The three assignments above this line are still broken - they assume that byte offsets in one encoding directly map to byte offsets in another encoding. I'm fixing the length here because it is the one causing out-of-bounds reads and is easy to fix. For the others we'd have to actually compute new offsets.
* Remove self-contradictory zend multibyte assertionNikita Popov2014-09-111-2/+2
| | | | | Code that explicitly exists to handle an incompatible internal encoding should not assert that the internal encoding is compatible.
* Remove unnecessary branch/temp variableXinchen Hui2014-09-091-363/+359
|
* Fix parser stack destruction with dummy ENCAPSED_AND_WHITESPACENikita Popov2014-09-081-161/+163
| | | | | T_ENCAPSED_AND_WHITESPACE is now specified to always hold a value, so give it a NULL value in the dummy cases.
* Use efree_size() instead of efree() where posibleDmitry Stogov2014-08-271-1/+1
|
* Handle remaining magic constants in parser as wellNikita Popov2014-08-261-175/+146
| | | | | As far as I can see the !filename case cannot occur, so I dropped it.
* eval() with parse error uses clean shutdown nowNikita Popov2014-08-261-384/+370
|
* Remove ZEND_ACC_INTERACTIVE and CG(interactive)Nikita Popov2014-08-251-354/+350
| | | | | | | | | As far as I can discern these are leftovers of the interactive shell implementation that was used before PHP 5.4. Now the readline ext makes use of normal eval calls for this. So, dropping these until there is evidence to the contrary, as they currently wouldn't work anyway.
* Fix compiler warningsNikita Popov2014-08-251-1/+1
|
* Merge branch 'ast'POST_AST_MERGENikita Popov2014-08-251-389/+321
|\ | | | | | | | | Conflicts: Zend/zend_compile.c
| * Merge remote-tracking branch 'php-src/master' into astNikita Popov2014-08-251-21/+21
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Zend/zend_compile.c Zend/zend_compile.h Zend/zend_globals.h Zend/zend_language_parser.y Zend/zend_language_scanner.c Zend/zend_language_scanner.l Zend/zend_types.h
| * | zend_do_return -> zend_emit_final_returnNikita Popov2014-07-261-355/+354
| | |
| * | Make lexer return AST nodesNikita Popov2014-07-261-359/+350
| | |
| * | Remove DUMMY_STRINGLNikita Popov2014-07-261-316/+306
| | | | | | | | | | | | What is that for?
| * | Fix leaksNikita Popov2014-07-261-2/+2
| | | | | | | | | | | | Must find a good way to handle constant expressions...
| * | Use arena allocator (currently leaky!)Nikita Popov2014-07-261-350/+354
| | |
| * | Expose ast via CG(ast)Nikita Popov2014-07-241-352/+358
| | |
| * | Partial NS port (semicolon, no errors)Nikita Popov2014-07-221-149/+144
| | |
| * | Port __TRAIT__ and __CLASS__ to ASTNikita Popov2014-07-211-162/+145
| | |
| * | Port __METHOD__Nikita Popov2014-07-161-173/+145
| | |
| * | Port __FUNCTION__ to ASTNikita Popov2014-07-161-151/+145
| | |
| * | Handle trait __CLASS__ in parserNikita Popov2014-06-261-148/+146
| | |
* | | master renamings phase 5Anatol Belski2014-08-251-2/+2
| |/ |/|
* | master renames phase 3Anatol Belski2014-08-251-7/+7
| |
* | master renames phase 1Anatol Belski2014-08-251-49/+49
| |
* | further fixes on coreAnatol Belski2014-08-161-3/+3
| |
* | first shot on merging the core fro the int64 branchAnatol Belski2014-08-161-39/+39
|/
* zend_stack_top() now returns pointer directlyNikita Popov2014-05-011-352/+351
|
* Don't allocate zend_stack elements individuallyNikita Popov2014-05-011-5/+5
| | | | | Instead allocate a vector of elements. Size must now be specified on initialization rather than on push.
* Merge mainstream 'master' branch into refactoringDmitry Stogov2014-04-261-2015/+2037
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During merge I had to revert: Nikita's patch for php_splice() (it probably needs to be applyed again) Bob Weinand's patches related to constant expression handling (we need to review them carefully) I also reverted all our attempts to support sapi/phpdbg (we didn't test it anyway) Conflicts: Zend/zend.h Zend/zend_API.c Zend/zend_ast.c Zend/zend_compile.c Zend/zend_compile.h Zend/zend_constants.c Zend/zend_exceptions.c Zend/zend_execute.c Zend/zend_execute.h Zend/zend_execute_API.c Zend/zend_hash.c Zend/zend_highlight.c Zend/zend_language_parser.y Zend/zend_language_scanner.c Zend/zend_language_scanner_defs.h Zend/zend_variables.c Zend/zend_vm_def.h Zend/zend_vm_execute.h ext/date/php_date.c ext/dom/documenttype.c ext/hash/hash.c ext/iconv/iconv.c ext/mbstring/tests/zend_multibyte-10.phpt ext/mbstring/tests/zend_multibyte-11.phpt ext/mbstring/tests/zend_multibyte-12.phpt ext/mysql/php_mysql.c ext/mysqli/mysqli.c ext/mysqlnd/mysqlnd_reverse_api.c ext/mysqlnd/php_mysqlnd.c ext/opcache/ZendAccelerator.c ext/opcache/zend_accelerator_util_funcs.c ext/opcache/zend_persist.c ext/opcache/zend_persist_calc.c ext/pcre/php_pcre.c ext/pdo/pdo_dbh.c ext/pdo/pdo_stmt.c ext/pdo_pgsql/pgsql_driver.c ext/pgsql/pgsql.c ext/reflection/php_reflection.c ext/session/session.c ext/spl/spl_array.c ext/spl/spl_observer.c ext/standard/array.c ext/standard/basic_functions.c ext/standard/html.c ext/standard/mail.c ext/standard/php_array.h ext/standard/proc_open.c ext/standard/streamsfuncs.c ext/standard/user_filters.c ext/standard/var_unserializer.c ext/standard/var_unserializer.re main/php_variables.c sapi/phpdbg/phpdbg.c sapi/phpdbg/phpdbg_bp.c sapi/phpdbg/phpdbg_frame.c sapi/phpdbg/phpdbg_help.c sapi/phpdbg/phpdbg_list.c sapi/phpdbg/phpdbg_print.c sapi/phpdbg/phpdbg_prompt.c
| * Merge branch 'PHP-5.5' into PHP-5.6Pierre Joye2014-03-101-7857/+7857
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PHP-5.5: update NEWS fix #66872, invalid argument crashes gmp_testbit fix #66872, invalid argument crashes gmp_testbit add vc12 (2013) Conflicts: ext/gmp/gmp.c
| | * Bump yearXinchen Hui2014-01-031-1/+1
| | |
| * | add T_POW (**) operatordatibbaw2014-02-061-2016/+2038
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed recognition of the operator Added opcode, still doing multiply instead of pow() opcode now always returns int(42) The right answer, but always a float Yanked code from pow() implementation. Should not handle negative long as exponent ourselves Added test cases from pow() Moved precedence higher than '~' Added GMP operator overloading Added ZEND_ASSIGN_POW (**=) operator. Added pow() as a language construct. Adjusted test cases for changed precedence. Reduced pow() to shell function around ZEND_API pow_function() Reduced test case to only contain edge cases Added overloading test case Moved unary minus above T_POW Revert "Added pow() as a language construct." Bad bad bad idea. This reverts commit f60b98cf7a8371233d800a6faa286ddba4432d02. Reverted unary minus behaviour due to previous revert. Convert arrays to int(0) Exponent with array as a base becomes int(0) Rebase against master Fixed tokenizer test case
* | | Cleanup (2-nd round)Dmitry Stogov2014-04-151-248/+247
| | |
* | | Fixed memory leakDmitry Stogov2014-04-101-346/+349
| | |
* | | Fixed suppor for multibyte encodingDmitry Stogov2014-04-101-354/+361
| | |
* | | Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), ↵Dmitry Stogov2014-04-031-373/+370
| | | | | | | | | | | | candidate for GC, etc)