summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Weinand <bobwei9@hotmail.com>2014-02-06 09:38:50 +0100
committerBob Weinand <bobwei9@hotmail.com>2014-02-06 09:38:50 +0100
commit45d2df5f119d17804ccf6068cbe1132e118579b2 (patch)
treee3014245763e4290de480fad0b1142728314b965
parentb33060af82c648bb3971de9d8fe67e52781cbd7a (diff)
parente5ded6e843fc43dde4b6c65405a1d3e2ae026eb4 (diff)
downloadphp-git-broken-5.6-20140206.tar.gz
Merge branch 'datibbaw/pow-operator' into PHP-5.6broken-5.6-20140206
-rw-r--r--NEWS129
-rwxr-xr-xUPGRADING107
-rw-r--r--UPGRADING.INTERNALS99
-rw-r--r--Zend/zend.c2
-rw-r--r--Zend/zend.h6
-rw-r--r--Zend/zend_API.c4
-rw-r--r--Zend/zend_API.h2
-rw-r--r--Zend/zend_alloc.c4
-rw-r--r--Zend/zend_alloc.h2
-rw-r--r--Zend/zend_ast.c10
-rw-r--r--Zend/zend_execute.h6
-rw-r--r--Zend/zend_execute_API.c4
-rw-r--r--Zend/zend_extensions.c12
-rw-r--r--Zend/zend_extensions.h8
-rw-r--r--Zend/zend_indent.c3
-rw-r--r--Zend/zend_indent.h2
-rw-r--r--Zend/zend_ini_scanner.c9326
-rw-r--r--Zend/zend_ini_scanner_defs.h26
-rw-r--r--Zend/zend_interfaces.c2
-rw-r--r--Zend/zend_language_parser.y7
-rw-r--r--Zend/zend_language_scanner.c4054
-rw-r--r--Zend/zend_language_scanner.l8
-rw-r--r--Zend/zend_language_scanner_defs.h2
-rw-r--r--Zend/zend_modules.h2
-rw-r--r--Zend/zend_object_handlers.c13
-rw-r--r--Zend/zend_opcode.c3
-rw-r--r--Zend/zend_operators.c81
-rw-r--r--Zend/zend_operators.h1
-rw-r--r--Zend/zend_vm_def.h42
-rw-r--r--Zend/zend_vm_execute.h479
-rw-r--r--Zend/zend_vm_opcodes.c4
-rw-r--r--Zend/zend_vm_opcodes.h2
-rw-r--r--configure.in2
-rw-r--r--ext/date/lib/parse_date.re2
-rw-r--r--ext/date/lib/parse_iso_intervals.re2
-rw-r--r--ext/dba/dba_inifile.c5
-rw-r--r--ext/dba/libinifile/inifile.c41
-rw-r--r--ext/dba/libinifile/inifile.h2
-rw-r--r--ext/dba/tests/bug62490.phpt43
-rw-r--r--ext/dba/tests/dba_db4_003.phpt2
-rw-r--r--ext/dba/tests/dba_db4_007.phpt2
-rw-r--r--ext/dba/tests/dba_db4_010.phpt38
-rw-r--r--ext/dba/tests/dba_handler.inc2
-rw-r--r--ext/dba/tests/dba_inifile.phpt8
-rw-r--r--ext/dba/tests/dba_tcadb.phpt6
-rw-r--r--ext/dom/php_dom.c2
-rw-r--r--ext/gd/libgd/gdft.c10
-rw-r--r--ext/gmp/gmp.c3
-rw-r--r--ext/gmp/tests/overloading.phpt9
-rw-r--r--ext/json/json.c4
-rw-r--r--ext/libxml/tests/libxml_disable_entity_loader.phpt41
-rw-r--r--ext/libxml/tests/libxml_disable_entity_loader_payload.txt1
-rw-r--r--ext/mysqlnd/mysqlnd_net.c8
-rw-r--r--ext/mysqlnd/mysqlnd_ps.c1
-rw-r--r--ext/opcache/Optimizer/block_pass.c14
-rw-r--r--ext/opcache/Optimizer/pass2.c13
-rw-r--r--ext/opcache/ZendAccelerator.c4
-rw-r--r--ext/opcache/ZendAccelerator.h1
-rw-r--r--ext/opcache/zend_accelerator_module.c7
-rw-r--r--ext/opcache/zend_accelerator_module.h5
-rw-r--r--ext/openssl/xp_ssl.c10
-rw-r--r--ext/pcntl/pcntl.c2
-rw-r--r--ext/soap/php_encoding.c2
-rw-r--r--ext/spl/spl_array.c6
-rw-r--r--ext/spl/spl_directory.c4
-rw-r--r--ext/spl/spl_fixedarray.c4
-rw-r--r--ext/spl/spl_iterators.c8
-rw-r--r--ext/standard/array.c4
-rw-r--r--ext/standard/basic_functions.c2
-rw-r--r--ext/standard/ftp_fopen_wrapper.c6
-rw-r--r--ext/standard/http_fopen_wrapper.c4
-rw-r--r--ext/standard/math.c38
-rw-r--r--ext/standard/tests/math/pow-operator.phpt22
-rw-r--r--ext/standard/tests/math/pow_variation1.phpt2
-rw-r--r--ext/standard/tests/math/pow_variation1_64bit.phpt4
-rw-r--r--ext/standard/type.c2
-rw-r--r--ext/tokenizer/tests/bug60097.phpt20
-rw-r--r--ext/xsl/php_xsl.c25
-rw-r--r--main/SAPI.c2
-rw-r--r--main/SAPI.h2
-rw-r--r--main/main.c59
-rw-r--r--main/php.h2
-rw-r--r--main/php_content_types.c30
-rw-r--r--main/php_globals.h1
-rw-r--r--main/php_ini.c4
-rw-r--r--main/php_ticks.c12
-rw-r--r--main/php_ticks.h6
-rw-r--r--main/php_variables.c1
-rw-r--r--main/php_version.h6
-rw-r--r--main/streams/php_stream_context.h2
-rw-r--r--main/streams/streams.c3
-rw-r--r--main/streams/transports.c2
-rw-r--r--main/streams/userspace.c4
-rw-r--r--php.ini-development7
-rw-r--r--php.ini-production7
-rw-r--r--sapi/apache/mod_php5.c2
-rw-r--r--sapi/apache2filter/sapi_apache2.c3
-rw-r--r--sapi/apache2handler/sapi_apache2.c3
-rw-r--r--sapi/apache_hooks/mod_php5.c2
-rw-r--r--sapi/apache_hooks/php_apache.c12
-rw-r--r--sapi/caudium/caudium.c5
-rw-r--r--sapi/cgi/cgi_main.c10
-rw-r--r--sapi/cli/php_cli.c6
-rw-r--r--sapi/cli/php_cli_server.c8
-rw-r--r--sapi/continuity/capi.c2
-rw-r--r--sapi/embed/php_embed.c2
-rw-r--r--sapi/fpm/fpm/fpm_main.c2
-rw-r--r--sapi/litespeed/lsapi_main.c6
-rw-r--r--sapi/litespeed/lsapilib.c44
-rw-r--r--sapi/milter/php_milter.c8
-rw-r--r--sapi/nsapi/nsapi.c3
-rw-r--r--sapi/pi3web/pi3web_sapi.c2
-rw-r--r--sapi/roxen/roxen.c5
-rw-r--r--sapi/thttpd/thttpd.c3
-rw-r--r--sapi/tux/php_tux.c10
-rw-r--r--tests/basic/024.phpt31
-rw-r--r--tests/basic/024_1.phpt29
-rw-r--r--tests/basic/026.phpt18
-rw-r--r--tests/basic/026_1.phpt16
119 files changed, 7702 insertions, 7575 deletions
diff --git a/NEWS b/NEWS
index c45d33359b..904168c747 100644
--- a/NEWS
+++ b/NEWS
@@ -1,130 +1,11 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? 2014, PHP 5.6.0 Alpha 2
-- mysqli
- . Added new function mysqli_get_links_stats() as well as new INI variable
- mysqli.rollback_on_cached_plink of type bool (Andrey)
+?? ??? 20??, PHP 5.7.0
-- PCRE:
- . Upgraded to PCRE 8.34. (Anatol)
+- DBA:
+ . Fixed bug #62490 (dba_delete returns true on missing item (inifile)). (Mike)
-
-23 Jan 2014, PHP 5.6.0 Alpha 1
-- CLI server:
- . Added some MIME types to the CLI web server. (Chris Jones)
-
-- Core:
- . Improved IS_VAR operands fetching. (Laruence, Dmitry)
- . Improved empty string handling. Now ZE uses an interned string instead of
- allocation new empty string each time. (Laruence, Dmitry)
- . Implemented internal operator overloading
- (RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita)
- . Made calls from incompatible context issue an E_DEPRECATED warning instead
- of E_STRICT (phase 1 of RFC: https://wiki.php.net/rfc/incompat_ctx).
- (Gustavo)
- . Uploads equal or greater than 2GB in size are now accepted.
- (Ralf Lang, Mike)
- . Reduced POST data memory usage by 200-300%. Changed INI setting
- always_populate_raw_post_data to throw a deprecation warning when enabling
- and to accept -1 for never populating the $HTTP_RAW_POST_DATA global
- variable, which will be the default in future PHP versions. (Mike)
- . Implemented dedicated syntax for variadic functions
- (RFC: https://wiki.php.net/rfc/variadics). (Nikita)
- . Fixed bug #50333 Improving multi-threaded scalability by using
- emalloc/efree/estrdup (Anatol, Dmitry)
- . Implemented constant scalar expressions (with support for constants)
- (RFC: https://wiki.php.net/rfc/const_scalar_exprs). (Bob)
- . Fixed bug #65784 (Segfault with finally). (Laruence, Dmitry)
- . Fixed bug #66509 (copy() arginfo has changed starting from 5.4). (willfitch)
-
-- cURL:
- . Implemented FR #65646 (re-enable CURLOPT_FOLLOWLOCATION with open_basedir
- or safe_mode). (Adam)
-
-- GMP:
- . Moved GMP to use object as the underlying structure and implemented various
- improvements based on this.
- (RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita)
- . Added gmp_root() and gmp_rootrem() functions for calculating nth roots.
- (Nikita)
-
-- Hash:
- . Added gost-crypto (CryptoPro S-box) GOST hash algo. (Manuel Mausz)
-
-- JSON:
- . Fixed case part of bug #64874 ("json_decode handles whitespace and
- case-sensitivity incorrectly")
-
-- mysqlnd:
- . Disabled flag for SP OUT variables for 5.5+ servers as they are not natively
- supported by the overlying APIs. (Andrey)
-
-- OPcache:
- . Added an optimization of class constants and constant calls to some
- internal functions (Laruence, Dmitry)
- . Added an optimization pass to convert FCALL_BY_NAME into DO_FCALL.
- (Laruence, Dmitry)
- . Added an optimization pass to merged identical constants (and related
- cache_slots) in op_array->literals table. (Laruence, Dmitry)
- . Added script level constant replacement optimization pass. (Dmitry)
-
-- Openssl:
- . Added crypto_method option for the ssl stream context. (Martin Jansen)
- . Added certificate fingerprint support. (Tjerk Meesters)
- . Added explicit TLSv1.1 and TLSv1.2 stream transports. (Daniel Lowrey)
- . Fixed bug #65729 (CN_match gives false positive). (Tjerk Meesters)
- . Peer name verification matches SAN DNS names for certs using
- the Subject Alternative Name x509 extension. (Daniel Lowrey)
- . Fixed segfault when built against OpenSSL>=1.0.1 (Daniel Lowrey)
- . Peer certificates now verified by default in client socket operations
- (RFC: https://wiki.php.net/rfc/tls-peer-verification). (Daniel Lowrey)
- . Added SPKAC support. (Jason Gerfen)
-
-- PDO_pgsql:
- . Fixed Bug #42614 (PDO_pgsql: add pg_get_notify support). (Matteo)
- . Fixed Bug #63657 (pgsqlCopyFromFile, pgsqlCopyToArray use Postgres < 7.3
- syntax). (Matteo)
-
-- phpdbg:
- . Included phpdbg sapi (RFC: https://wiki.php.net/rfc/phpdbg).
- (Felipe Pena, Joe Watkins and Bob Weinand)
-
-- pgsql:
- . pg_version() returns full report which obtained by PQparameterStatus().
- (Yasuo)
- . Added pg_lo_truncate(). (Yasuo)
- . Added 64bit large object support for PostgreSQL 9.3 and later. (Yasuo)
-
-- Session:
- . Fixed Bug #65315 (session.hash_function silently fallback to default md5)
- (Yasuo)
- . Implemented Request #54649 (Create session_serializer_name()). (Yasuo)
- . Implemented Request #17860 (Session write short circuit). (Yasuo)
- . Implemented Request #20421 (session_abort() and session_reset() function).
- (Yasuo)
- . Implemented Request #11100 (session_gc() function). (Yasuo)
-
-- Standard:
- . Implemented FR #65634 (HTTP wrapper is very slow with protocol_version
- 1.1). (Adam)
- . Implemented Change crypt() behavior w/o salt RFC. (Yasuo)
- https://wiki.php.net/rfc/crypt_function_salt
- . Implemented request #49824 (Change array_fill() to allow creating empty
- array). (Nikita)
-
-- XMLReader:
- . Fixed bug #55285 (XMLReader::getAttribute/No/Ns methods inconsistency).
- (Mike)
-
-- Zip:
- . update libzip to version 1.11.2.
- PHP don't use any ilibzip private symbol anymore. (Pierre, Remi)
- . new method ZipArchive::setPassword($password). (Pierre)
- . add --with-libzip option to build with system libzip. (Remi)
- . new methods:
- ZipArchive::setExternalAttributesName($name, $opsys, $attr [, $flags])
- ZipArchive::setExternalAttributesIndex($idx, $opsys, $attr [, $flags])
- ZipArchive::getExternalAttributesName($name, &$opsys, &$attr [, $flags])
- ZipArchive::getExternalAttributesIndex($idx, &$opsys, &$attr [, $flags])
+- XSL:
+ . Fixed bug #64776 (The XSLT extension is not thread safe). (Mike)
<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
diff --git a/UPGRADING b/UPGRADING
index 500372ce15..f5e36fefc8 100755
--- a/UPGRADING
+++ b/UPGRADING
@@ -20,103 +20,34 @@ PHP X.Y UPGRADE NOTES
1. Backward Incompatible Changes
========================================
-- JSON:
- json_decode() no longer accepts non-lowercase variants of lone JSON true,
- false or null values. For example, True or FALSE will now cause json_decode to
- return NULL and set an error value you can fetch with json_last_error().
- This affects JSON texts consisting solely of true, false or null. Text
- containing non-lowercase values inside JSON arrays or objects has never been
- accepted.
-
-- openssl:
- To prevent Man-in-the-Middle attacks against encrypted transfers client
- streams now verify peer certificates by default. Previous versions
- required users to manually enable peer verification. As a result of this
- change, existing code using ssl:// or tls:// stream wrappers (e.g.
- file_get_contents(), fsockopen(), stream_socket_client()) may no longer
- connect successfully without manually disabling peer verification via the
- stream context's "verify_peer" setting. Encrypted transfers delegate to
- operating system certificate stores by default, so many/most users *should*
- be unaffected by this transparent security enhancement.
+- DBA
+ . dba_delete() now returns false if the key was not found for the inifile
+ handler, too.
========================================
2. New Features
========================================
-- Added constant scalar expressions syntax
- (https://wiki.php.net/rfc/const_scalar_exprs)
-
-- Added dedicated syntax for variadic functions.
- (https://wiki.php.net/rfc/variadics)
-
-- Added support for argument unpacking to complement the variadic syntax.
- (https://wiki.php.net/rfc/argument_unpacking)
-
-- The php://input stream is now re-usable and can be used concurrently with
- enable_post_data_reading=0.
-
-- Added gost-crypto (CryptoPro S-box) hash algo.
-
-- Added openssl certificate fingerprint support (inclusive stream context
- option).
-
-- Added openssl crypto method stream context option.
-
-- Added openssl peer verification support for SAN x509 extension
-
-- Added use function and use const.
- (https://wiki.php.net/rfc/use_function)
========================================
2. Changes in SAPI modules
========================================
-- Added phpdbg sapi.
- (https://wiki.php.net/rfc/phpdbg)
========================================
3. Deprecated Functionality
========================================
-- Incompatible context calls:
- Instance calls from an incompatible context are now deprecated and issue
- E_DEPRECATED instead of E_STRICT. See https://wiki.php.net/rfc/incompat_ctx
========================================
4. Changed Functions
========================================
-- cURL:
- CURLOPT_SAFE_UPLOAD is now turned on by default and uploads with @file
- do not work unless it is explicitly set to false.
-
-- Crypt:
- crypt() will now raise an E_NOTICE error if the salt parameter is omitted.
- See: https://wiki.php.net/rfc/crypt_function_salt
-
-- XMLReader:
- XMLReader::getAttributeNs and XMLReader::getAttributeNo now return NULL if
- the attribute could not be found, just like XMLReader::getAttribute.
========================================
5. New Functions
========================================
-- GMP:
- Added gmp_root($a, $nth) and gmp_rootrem($a, $nth) for calculating nth roots.
-
-- Openssl:
- Added string openssl_x509_fingerprint($x509, $type, $binary).
- Added string openssl_spki_new($private_key, $challenge, $algorithm)
- Added bool openssl_spki_verify($spkac)
- Added string openssl_spki_export($spkac)
- Added string openssl_spki_export_challenge($spkac)
-
-- LDAP:
- Added ldap_escape($value, $ignore = "", $flags = 0).
-
-- Zip:
- Added ZipArchive::setPassword($password)
========================================
6. New Classes and Interfaces
@@ -132,50 +63,18 @@ PHP X.Y UPGRADE NOTES
8. Other Changes to Extensions
========================================
-- GMP:
- The GMP extension now uses objects as the underlying data structure, rather
- than resources. GMP instances now support dumping, serialization, cloning,
- casts to primitive types and have overloaded operators.
- (RFC: https://wiki.php.net/rfc/operator_overloading_gmp)
-
-- OCI8:
- - Added Implicit Result Set support for Oracle Database 12c with a
- new oci_get_implicit_resultset() function.
- - Using 'oci_execute($s, OCI_NO_AUTO_COMMIT)' for a SELECT no longer
- unnecessarily initiates an internal ROLLBACK during connection
- close.
- - Added DTrace probes enabled with PHP's generic --enable-dtrace
- - The oci_internal_debug() function is now a no-op.
- - The phpinfo() output format for OCI8 has changed.
========================================
9. New Global Constants
========================================
-- LDAP:
- LDAP_ESCAPE_FILTER int(1)
- LDAP_ESCAPE_DN int(2)
========================================
10. Changes to INI File Handling
========================================
-- Core:
- Changed always_populate_raw_post_data to throw a deprecation warning when
- enabled and to recognize ohe value -1 for never populating the global
- $HTTP_RAW_POST_DATA variable, which will be default in future PHP versions.
========================================
11. Other Changes
========================================
-- File upload:
- Uploads equal or greater than 2GB in size are now accepted.
-
-- HTTP stream wrapper:
- HTTP 1.1 requests now include a Connection: close header unless explicitly
- overridden by setting a Connection header via the header context option.
-
-- Zip:
- New --with-libzip option allow to use system libzip. Version > 0.11 required,
- Version >= 0.11.2 recommended for all features.
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index d1aca29dc4..97b281a93e 100644
--- a/UPGRADING.INTERNALS
+++ b/UPGRADING.INTERNALS
@@ -17,108 +17,11 @@ UPGRADE NOTES - PHP X.Y
1. Internal API changes
========================
- a. Addition of do_operation and compare object handlers
-
- Two new object handlers have been added:
-
- do_operation:
- typedef int (*zend_object_do_operation_t)(
- zend_uchar opcode, zval *result, zval *op1, zval *op2 TSRMLS_DC
- );
-
- compare:
- typedef int (*zend_object_compare_zvals_t)(
- zval *result, zval *op1, zval *op2 TSRMLS_DC
- );
+ a. zend_set_memory_limit() now takes the TSRMLS_CC macro as its last argument
- The first handler is used to overload arithmetic operations. The first
- argument specifies the opcode of the operator, result is the target zval,
- op1 the first operand and op2 the second operand. For unary operations
- op2 is NULL. If the handler returns FAILURE PHP falls back to the default
- behavior for the operation.
-
- The second handler is used to perform comparison operations with
- non-objects. The value written into result must be an IS_LONG with value
- -1 (smaller), 0 (equal) or 1 (greater). The return value is a SUCCESS/FAILURE
- return code. The difference between this handler and compare_objects is
- that it will be triggered for comparisons with non-objects and objects of
- different types. It takes precedence over compare_objects.
-
- Further docs in the RFC: https://wiki.php.net/rfc/operator_overloading_gmp
-
- b. return_value_ptr now always available, RETVAL_ZVAL_FAST macros
-
- The return_value_ptr argument to internal functions is now always set.
- Previously it was only available for functions returning by-reference.
- return_value_ptr can now be used to return zvals without copying them.
- For this purpose two new macros are provided:
-
- RETVAL_ZVAL_FAST(zv); /* analog to RETVAL_ZVAL(zv, 1, 0) */
- RETURN_ZVAL_FAST(zv); /* analog to RETURN_ZVAL(zv, 1, 0) */
-
- The macros behave similarly to the non-FAST variants with copy=1 and
- dtor=0, but will try to return the zval without making a copy by utilizing
- return_value_ptr.
-
- c. POST data handling
-
- The sapi_request_info's members post_data, post_data_len and raw_post_data as
- well as raw_post_data_len have been replaced with a temp PHP stream
- request_body.
-
- The recommended way to access raw POST data is to open and use a php://input
- stream wrapper. It is safe to be used concurrently and more than once.
-
- d. Arginfo changes
-
- The pass_rest_by_reference argument of the ZEND_BEGIN_ARG_INFO and
- ZEND_BEGIN_ARG_INFO_EX() is no longer used. The value passed to it is ignored.
-
- Instead a variadic argument is created using ZEND_ARG_VARIADIC_INFO():
-
- ZEND_ARG_VARIADIC_INFO(0, name) /* pass rest by value */
- ZEND_ARG_VARIADIC_INFO(1, name) /* pass rest by reference */
- ZEND_ARG_VARIADIC_INFO(ZEND_SEND_PREFER_REF, name)
- /* pass rest by prefer-ref */
-
- ZEND_ARG_VARIADIC_INFO() should only be used for the last argument.
-
- The following changes were applied to the zend_arg_info struct:
-
- typedef struct _zend_arg_info {
- const char *class_name;
- zend_uint class_name_len;
- zend_uchar type_hint;
- + zend_uchar pass_by_reference;
- zend_bool allow_null;
- - zend_bool pass_by_reference;
- + zend_bool is_variadic;
- } zend_arg_info;
-
- The following changes were applied to the zend_internal_function_info struct:
-
- typedef struct _zend_internal_function_info {
- zend_uint required_num_args;
- zend_uchar _type_hint;
- zend_bool return_reference;
- - zend_bool pass_rest_by_reference;
- + zend_bool _allow_null;
- + zend_bool _is_variadic;
- } zend_internal_function_info;
-
- The CHECK_ARG_SEND_TYPE(), ARG_MUST_BE_SENT_BY_REF(),
- ARG_SHOULD_BE_SENT_BY_REF() and ARG_MAY_BE_SENT_BY_REF() macros now assume
- that the argument passed to them is a zend_function* and that it is non-NULL.
========================
2. Build system changes
========================
- a. Unix build system changes
- - The bison version check is now a blacklist instead of a whitelist.
- - The bison binary can be specified through the YACC environment/configure
- variable. Previously `bison` was assumed to be in $PATH.
-
- b. Windows build system changes
- -
diff --git a/Zend/zend.c b/Zend/zend.c
index ce11631300..acbbcbebc7 100644
--- a/Zend/zend.c
+++ b/Zend/zend.c
@@ -52,7 +52,7 @@ ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path TSRMLS_DC)
ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
ZEND_API void (*zend_block_interruptions)(void);
ZEND_API void (*zend_unblock_interruptions)(void);
-ZEND_API void (*zend_ticks_function)(int ticks);
+ZEND_API void (*zend_ticks_function)(int ticks TSRMLS_DC);
ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args);
int (*zend_vspprintf)(char **pbuf, size_t max_len, const char *format, va_list ap);
ZEND_API char *(*zend_getenv)(char *name, size_t name_len TSRMLS_DC);
diff --git a/Zend/zend.h b/Zend/zend.h
index ac2b28a1ef..c8b57cd043 100644
--- a/Zend/zend.h
+++ b/Zend/zend.h
@@ -22,7 +22,7 @@
#ifndef ZEND_H
#define ZEND_H
-#define ZEND_VERSION "2.6.0-dev"
+#define ZEND_VERSION "2.7.0-dev"
#define ZEND_ENGINE_2
@@ -550,7 +550,7 @@ typedef struct _zend_utility_functions {
void (*block_interruptions)(void);
void (*unblock_interruptions)(void);
int (*get_configuration_directive)(const char *name, uint name_length, zval *contents);
- void (*ticks_function)(int ticks);
+ void (*ticks_function)(int ticks TSRMLS_DC);
void (*on_timeout)(int seconds TSRMLS_DC);
int (*stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
int (*vspprintf_function)(char **pbuf, size_t max_len, const char *format, va_list ap);
@@ -702,7 +702,7 @@ extern ZEND_API zend_write_func_t zend_write;
extern ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path TSRMLS_DC);
extern ZEND_API void (*zend_block_interruptions)(void);
extern ZEND_API void (*zend_unblock_interruptions)(void);
-extern ZEND_API void (*zend_ticks_function)(int ticks);
+extern ZEND_API void (*zend_ticks_function)(int ticks TSRMLS_DC);
extern ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
extern ZEND_API void (*zend_on_timeout)(int seconds TSRMLS_DC);
extern ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle TSRMLS_DC);
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index c17af98136..553060e0a0 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -2313,10 +2313,8 @@ ZEND_API void zend_unregister_functions(const zend_function_entry *functions, in
}
/* }}} */
-ZEND_API int zend_startup_module(zend_module_entry *module) /* {{{ */
+ZEND_API int zend_startup_module(zend_module_entry *module TSRMLS_DC) /* {{{ */
{
- TSRMLS_FETCH();
-
if ((module = zend_register_internal_module(module TSRMLS_CC)) != NULL && zend_startup_module_ex(module TSRMLS_CC) == SUCCESS) {
return SUCCESS;
}
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 0a7695b1c8..569407b19a 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -266,7 +266,7 @@ ZEND_API int zend_parse_parameter(int flags, int arg_num TSRMLS_DC, zval **arg,
ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_function_entry *functions, HashTable *function_table, int type TSRMLS_DC);
ZEND_API void zend_unregister_functions(const zend_function_entry *functions, int count, HashTable *function_table TSRMLS_DC);
-ZEND_API int zend_startup_module(zend_module_entry *module_entry);
+ZEND_API int zend_startup_module(zend_module_entry *module_entry TSRMLS_DC);
ZEND_API zend_module_entry* zend_register_internal_module(zend_module_entry *module_entry TSRMLS_DC);
ZEND_API zend_module_entry* zend_register_module_ex(zend_module_entry *module TSRMLS_DC);
ZEND_API int zend_startup_module_ex(zend_module_entry *module TSRMLS_DC);
diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c
index bdcee5cbe4..f621487819 100644
--- a/Zend/zend_alloc.c
+++ b/Zend/zend_alloc.c
@@ -2682,10 +2682,8 @@ ZEND_API char *zend_strndup(const char *s, uint length)
}
-ZEND_API int zend_set_memory_limit(size_t memory_limit)
+ZEND_API int zend_set_memory_limit(size_t memory_limit TSRMLS_DC)
{
- TSRMLS_FETCH();
-
AG(mm_heap)->limit = (memory_limit >= AG(mm_heap)->block_size) ? memory_limit : AG(mm_heap)->block_size;
return SUCCESS;
diff --git a/Zend/zend_alloc.h b/Zend/zend_alloc.h
index 05494ee37c..1541dffcec 100644
--- a/Zend/zend_alloc.h
+++ b/Zend/zend_alloc.h
@@ -139,7 +139,7 @@ inline static void * __zend_realloc(void *p, size_t len)
#define safe_estrdup(ptr) ((ptr)?(estrdup(ptr)):STR_EMPTY_ALLOC())
#define safe_estrndup(ptr, len) ((ptr)?(estrndup((ptr), (len))):STR_EMPTY_ALLOC())
-ZEND_API int zend_set_memory_limit(size_t memory_limit);
+ZEND_API int zend_set_memory_limit(size_t memory_limit TSRMLS_DC);
ZEND_API void start_memory_manager(TSRMLS_D);
ZEND_API void shutdown_memory_manager(int silent, int full_shutdown TSRMLS_DC);
diff --git a/Zend/zend_ast.c b/Zend/zend_ast.c
index cf595b4d58..49fd3ff0f0 100644
--- a/Zend/zend_ast.c
+++ b/Zend/zend_ast.c
@@ -231,9 +231,9 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
break;
case ZEND_BOOL_AND:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
- if (zend_is_true(&op1)) {
+ if (zend_is_true(&op1 TSRMLS_CC)) {
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
- ZVAL_BOOL(result, zend_is_true(&op2));
+ ZVAL_BOOL(result, zend_is_true(&op2 TSRMLS_CC));
zval_dtor(&op2);
} else {
ZVAL_BOOL(result, 0);
@@ -242,18 +242,18 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s
break;
case ZEND_BOOL_OR:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
- if (zend_is_true(&op1)) {
+ if (zend_is_true(&op1 TSRMLS_CC)) {
ZVAL_BOOL(result, 1);
} else {
zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC);
- ZVAL_BOOL(result, zend_is_true(&op2));
+ ZVAL_BOOL(result, zend_is_true(&op2 TSRMLS_CC));
zval_dtor(&op2);
}
zval_dtor(&op1);
break;
case ZEND_SELECT:
zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC);
- if (zend_is_true(&op1)) {
+ if (zend_is_true(&op1 TSRMLS_CC)) {
if (!(&ast->u.child)[1]) {
*result = op1;
} else {
diff --git a/Zend/zend_execute.h b/Zend/zend_execute.h
index 0d3a908a15..e79b945cc7 100644
--- a/Zend/zend_execute.h
+++ b/Zend/zend_execute.h
@@ -60,7 +60,7 @@ ZEND_API zend_execute_data *zend_create_execute_data_from_op_array(zend_op_array
ZEND_API void zend_execute(zend_op_array *op_array TSRMLS_DC);
ZEND_API void execute_ex(zend_execute_data *execute_data TSRMLS_DC);
ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, struct _zend_fcall_info *fci, int return_value_used TSRMLS_DC);
-ZEND_API int zend_is_true(zval *op);
+ZEND_API int zend_is_true(zval *op TSRMLS_DC);
ZEND_API int zend_lookup_class(const char *name, int name_length, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC);
ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name TSRMLS_DC);
@@ -101,7 +101,7 @@ static zend_always_inline void i_zval_ptr_dtor_nogc(zval *zval_ptr ZEND_FILE_LIN
}
}
-static zend_always_inline int i_zend_is_true(zval *op)
+static zend_always_inline int i_zend_is_true(zval *op TSRMLS_DC)
{
int result;
@@ -130,8 +130,6 @@ static zend_always_inline int i_zend_is_true(zval *op)
break;
case IS_OBJECT:
if(IS_ZEND_STD_OBJECT(*op)) {
- TSRMLS_FETCH();
-
if (Z_OBJ_HT_P(op)->cast_object) {
zval tmp;
if (Z_OBJ_HT_P(op)->cast_object(op, &tmp, IS_BOOL TSRMLS_CC) == SUCCESS) {
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index 5d5153dc13..3988074779 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -443,9 +443,9 @@ ZEND_API void _zval_internal_ptr_dtor(zval **zval_ptr ZEND_FILE_LINE_DC) /* {{{
}
/* }}} */
-ZEND_API int zend_is_true(zval *op) /* {{{ */
+ZEND_API int zend_is_true(zval *op TSRMLS_DC) /* {{{ */
{
- return i_zend_is_true(op);
+ return i_zend_is_true(op TSRMLS_CC);
}
/* }}} */
diff --git a/Zend/zend_extensions.c b/Zend/zend_extensions.c
index e1290b78ca..47284342fa 100644
--- a/Zend/zend_extensions.c
+++ b/Zend/zend_extensions.c
@@ -24,7 +24,7 @@
ZEND_API zend_llist zend_extensions;
static int last_resource_number;
-int zend_load_extension(const char *path)
+int zend_load_extension(const char *path TSRMLS_DC)
{
#if ZEND_EXTENSIONS_SUPPORT
DL_HANDLE handle;
@@ -107,7 +107,7 @@ int zend_load_extension(const char *path)
return FAILURE;
}
- return zend_register_extension(new_extension, handle);
+ return zend_register_extension(new_extension, handle TSRMLS_CC);
#else
fprintf(stderr, "Extensions are not supported on this platform.\n");
/* See http://support.microsoft.com/kb/190351 */
@@ -119,7 +119,7 @@ int zend_load_extension(const char *path)
}
-int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle)
+int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle TSRMLS_DC)
{
#if ZEND_EXTENSIONS_SUPPORT
zend_extension extension;
@@ -127,7 +127,7 @@ int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle)
extension = *new_extension;
extension.handle = handle;
- zend_extension_dispatch_message(ZEND_EXTMSG_NEW_EXTENSION, &extension);
+ zend_extension_dispatch_message(ZEND_EXTMSG_NEW_EXTENSION, &extension TSRMLS_CC);
zend_llist_add_element(&zend_extensions, &extension);
@@ -208,10 +208,8 @@ static void zend_extension_message_dispatcher(const zend_extension *extension, i
}
-ZEND_API void zend_extension_dispatch_message(int message, void *arg)
+ZEND_API void zend_extension_dispatch_message(int message, void *arg TSRMLS_DC)
{
- TSRMLS_FETCH();
-
zend_llist_apply_with_arguments(&zend_extensions, (llist_apply_with_args_func_t) zend_extension_message_dispatcher TSRMLS_CC, 2, message, arg);
}
diff --git a/Zend/zend_extensions.h b/Zend/zend_extensions.h
index 3eda38aa96..38ac9f8947 100644
--- a/Zend/zend_extensions.h
+++ b/Zend/zend_extensions.h
@@ -28,7 +28,7 @@
/* The first number is the engine version and the rest is the date.
* This way engine 2/3 API no. is always greater than engine 1 API no..
*/
-#define ZEND_EXTENSION_API_NO 220131226
+#define ZEND_EXTENSION_API_NO 220131227
typedef struct _zend_extension_version_info {
int zend_extension_api_no;
@@ -94,7 +94,7 @@ struct _zend_extension {
BEGIN_EXTERN_C()
ZEND_API int zend_get_resource_handle(zend_extension *extension);
-ZEND_API void zend_extension_dispatch_message(int message, void *arg);
+ZEND_API void zend_extension_dispatch_message(int message, void *arg TSRMLS_DC);
END_EXTERN_C()
#define ZEND_EXTMSG_NEW_EXTENSION 1
@@ -117,8 +117,8 @@ int zend_startup_extensions(void);
void zend_shutdown_extensions(TSRMLS_D);
BEGIN_EXTERN_C()
-ZEND_API int zend_load_extension(const char *path);
-ZEND_API int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle);
+ZEND_API int zend_load_extension(const char *path TSRMLS_DC);
+ZEND_API int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle TSRMLS_DC);
ZEND_API zend_extension *zend_get_extension(const char *extension_name);
END_EXTERN_C()
diff --git a/Zend/zend_indent.c b/Zend/zend_indent.c
index cacdf8df3b..38ce669083 100644
--- a/Zend/zend_indent.c
+++ b/Zend/zend_indent.c
@@ -47,7 +47,7 @@ static void handle_whitespace(int *emit_whitespace)
}
-ZEND_API void zend_indent()
+ZEND_API void zend_indent(TSRMLS_D)
{
zval token;
int token_type;
@@ -55,7 +55,6 @@ ZEND_API void zend_indent()
int nest_level=0;
int emit_whitespace[256];
int i;
- TSRMLS_FETCH();
memset(emit_whitespace, 0, sizeof(int)*256);
diff --git a/Zend/zend_indent.h b/Zend/zend_indent.h
index 6d0996efa8..1c1afb9127 100644
--- a/Zend/zend_indent.h
+++ b/Zend/zend_indent.h
@@ -23,7 +23,7 @@
#define ZEND_INDENT_H
BEGIN_EXTERN_C()
-ZEND_API void zend_indent(void);
+ZEND_API void zend_indent(TSRMLS_D);
END_EXTERN_C()
#endif /* ZEND_INDENT_H */
diff --git a/Zend/zend_ini_scanner.c b/Zend/zend_ini_scanner.c
index c73f3cedda..521e98e257 100644
--- a/Zend/zend_ini_scanner.c
+++ b/Zend/zend_ini_scanner.c
@@ -1,4663 +1,4663 @@
-/* Generated by re2c 0.13.5 */
-#line 1 "Zend/zend_ini_scanner.l"
-/*
- +----------------------------------------------------------------------+
- | Zend Engine |
- +----------------------------------------------------------------------+
- | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) |
- +----------------------------------------------------------------------+
- | This source file is subject to version 2.00 of the Zend license, |
- | that is bundled with this package in the file LICENSE, and is |
- | available through the world-wide-web at the following url: |
- | http://www.zend.com/license/2_00.txt. |
- | If you did not receive a copy of the Zend license and are unable to |
- | obtain it through the world-wide-web, please send a note to |
- | license@zend.com so we can mail you a copy immediately. |
- +----------------------------------------------------------------------+
- | Authors: Zeev Suraski <zeev@zend.com> |
- | Jani Taskinen <jani@php.net> |
- | Marcus Boerger <helly@php.net> |
- | Nuno Lopes <nlopess@php.net> |
- | Scott MacVicar <scottmac@php.net> |
- +----------------------------------------------------------------------+
-*/
-
-/* $Id$ */
-
-#include <errno.h>
-#include "zend.h"
-#include "zend_globals.h"
-#include <zend_ini_parser.h>
-#include "zend_ini_scanner.h"
-
-#if 0
-# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
-#else
-# define YYDEBUG(s, c)
-#endif
-
-#include "zend_ini_scanner_defs.h"
-
-#define YYCTYPE unsigned char
-/* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
- * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
-#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
-#define YYCURSOR SCNG(yy_cursor)
-#define YYLIMIT SCNG(yy_limit)
-#define YYMARKER SCNG(yy_marker)
-
-#define YYGETCONDITION() SCNG(yy_state)
-#define YYSETCONDITION(s) SCNG(yy_state) = s
-
-#define STATE(name) yyc##name
-
-/* emulate flex constructs */
-#define BEGIN(state) YYSETCONDITION(STATE(state))
-#define YYSTATE YYGETCONDITION()
-#define yytext ((char*)SCNG(yy_text))
-#define yyleng SCNG(yy_leng)
-#define yyless(x) do { YYCURSOR = (unsigned char*)yytext + x; \
- yyleng = (unsigned int)x; } while(0)
-
-/* #define yymore() goto yymore_restart */
-
-/* perform sanity check. If this message is triggered you should
- increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
-#define YYMAXFILL 6
-#if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
-# error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
-#endif
-
-
-/* How it works (for the core ini directives):
- * ===========================================
- *
- * 1. Scanner scans file for tokens and passes them to parser.
- * 2. Parser parses the tokens and passes the name/value pairs to the callback
- * function which stores them in the configuration hash table.
- * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
- * registering of ini entries and uses zend_get_configuration_directive()
- * to fetch the previously stored name/value pair from configuration hash table
- * and registers the static ini entries which match the name to the value
- * into EG(ini_directives) hash table.
- * 4. PATH section entries are used per-request from down to top, each overriding
- * previous if one exists. zend_alter_ini_entry() is called for each entry.
- * Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
- * php_admin_* directives used within Apache httpd.conf when PHP is compiled as
- * module for Apache.
- * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
- * stored in separate hash defined by SAPI.
- */
-
-/* TODO: (ordered by importance :-)
- * ===============================================================================
- *
- * - Separate constant lookup totally from plain strings (using CONSTANT pattern)
- * - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
- * - Add #include "some.ini"
- * - Allow variables to refer to options also when using parse_ini_file()
- *
- */
-
-/* Globals Macros */
-#define SCNG INI_SCNG
-#ifdef ZTS
-ZEND_API ts_rsrc_id ini_scanner_globals_id;
-#else
-ZEND_API zend_ini_scanner_globals ini_scanner_globals;
-#endif
-
-/* Eat leading whitespace */
-#define EAT_LEADING_WHITESPACE() \
- while (yytext[0]) { \
- if (yytext[0] == ' ' || yytext[0] == '\t') { \
- SCNG(yy_text)++; \
- yyleng--; \
- } else { \
- break; \
- } \
- }
-
-/* Eat trailing whitespace + extra char */
-#define EAT_TRAILING_WHITESPACE_EX(ch) \
- while (yyleng > 0 && ( \
- (ch != 'X' && yytext[yyleng - 1] == ch) || \
- yytext[yyleng - 1] == '\n' || \
- yytext[yyleng - 1] == '\r' || \
- yytext[yyleng - 1] == '\t' || \
- yytext[yyleng - 1] == ' ') \
- ) { \
- yyleng--; \
- }
-
-/* Eat trailing whitespace */
-#define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
-
-#define zend_ini_copy_value(retval, str, len) { \
- Z_STRVAL_P(retval) = zend_strndup(str, len); \
- Z_STRLEN_P(retval) = len; \
- Z_TYPE_P(retval) = IS_STRING; \
-}
-
-#define RETURN_TOKEN(type, str, len) { \
- zend_ini_copy_value(ini_lval, str, len); \
- return type; \
-}
-
-static void _yy_push_state(int new_state TSRMLS_DC)
-{
- zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
- YYSETCONDITION(new_state);
-}
-
-#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
-
-static void yy_pop_state(TSRMLS_D)
-{
- int *stack_state;
- zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
- YYSETCONDITION(*stack_state);
- zend_stack_del_top(&SCNG(state_stack));
-}
-
-static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
-{
- YYCURSOR = (YYCTYPE*)str;
- SCNG(yy_start) = YYCURSOR;
- YYLIMIT = YYCURSOR + len;
-}
-
-#define ini_filename SCNG(filename)
-
-/* {{{ init_ini_scanner()
-*/
-static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
-{
- /* Sanity check */
- if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
- zend_error(E_WARNING, "Invalid scanner mode");
- return FAILURE;
- }
-
- SCNG(lineno) = 1;
- SCNG(scanner_mode) = scanner_mode;
- SCNG(yy_in) = fh;
-
- if (fh != NULL) {
- ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
- } else {
- ini_filename = NULL;
- }
-
- zend_stack_init(&SCNG(state_stack));
- BEGIN(INITIAL);
-
- return SUCCESS;
-}
-/* }}} */
-
-/* {{{ shutdown_ini_scanner()
-*/
-void shutdown_ini_scanner(TSRMLS_D)
-{
- zend_stack_destroy(&SCNG(state_stack));
- if (ini_filename) {
- free(ini_filename);
- }
-}
-/* }}} */
-
-/* {{{ zend_ini_scanner_get_lineno()
-*/
-int zend_ini_scanner_get_lineno(TSRMLS_D)
-{
- return SCNG(lineno);
-}
-/* }}} */
-
-/* {{{ zend_ini_scanner_get_filename()
-*/
-char *zend_ini_scanner_get_filename(TSRMLS_D)
-{
- return ini_filename ? ini_filename : "Unknown";
-}
-/* }}} */
-
-/* {{{ zend_ini_open_file_for_scanning()
-*/
-int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
-{
- char *buf;
- size_t size;
-
- if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE) {
- return FAILURE;
- }
-
- if (init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE) {
- zend_file_handle_dtor(fh TSRMLS_CC);
- return FAILURE;
- }
-
- yy_scan_buffer(buf, size TSRMLS_CC);
-
- return SUCCESS;
-}
-/* }}} */
-
-/* {{{ zend_ini_prepare_string_for_scanning()
-*/
-int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
-{
- int len = strlen(str);
-
- if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
- return FAILURE;
- }
-
- yy_scan_buffer(str, len TSRMLS_CC);
-
- return SUCCESS;
-}
-/* }}} */
-
-/* {{{ zend_ini_escape_string()
- */
-static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
-{
- register char *s, *t;
- char *end;
-
- zend_ini_copy_value(lval, str, len);
-
- /* convert escape sequences */
- s = t = Z_STRVAL_P(lval);
- end = s + Z_STRLEN_P(lval);
-
- while (s < end) {
- if (*s == '\\') {
- s++;
- if (s >= end) {
- *t++ = '\\';
- continue;
- }
- switch (*s) {
- case '"':
- if (*s != quote_type) {
- *t++ = '\\';
- *t++ = *s;
- break;
- }
- case '\\':
- case '$':
- *t++ = *s;
- Z_STRLEN_P(lval)--;
- break;
- default:
- *t++ = '\\';
- *t++ = *s;
- break;
- }
- } else {
- *t++ = *s;
- }
- if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
- SCNG(lineno)++;
- }
- s++;
- }
- *t = 0;
-}
-/* }}} */
-
-int ini_lex(zval *ini_lval TSRMLS_DC)
-{
-restart:
- SCNG(yy_text) = YYCURSOR;
-
-/* yymore_restart: */
- /* detect EOF */
- if (YYCURSOR >= YYLIMIT) {
- if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
- BEGIN(INITIAL);
- return END_OF_LINE;
- }
- return 0;
- }
-
- /* Eat any UTF-8 BOM we find in the first 3 bytes */
- if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
- if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
- YYCURSOR += 3;
- goto restart;
- }
- }
-
-#line 337 "Zend/zend_ini_scanner.c"
-{
- YYCTYPE yych;
- unsigned int yyaccept = 0;
- if (YYGETCONDITION() < 4) {
- if (YYGETCONDITION() < 2) {
- if (YYGETCONDITION() < 1) {
- goto yyc_INITIAL;
- } else {
- goto yyc_ST_OFFSET;
- }
- } else {
- if (YYGETCONDITION() < 3) {
- goto yyc_ST_SECTION_VALUE;
- } else {
- goto yyc_ST_VALUE;
- }
- }
- } else {
- if (YYGETCONDITION() < 6) {
- if (YYGETCONDITION() < 5) {
- goto yyc_ST_SECTION_RAW;
- } else {
- goto yyc_ST_DOUBLE_QUOTES;
- }
- } else {
- if (YYGETCONDITION() < 7) {
- goto yyc_ST_VARNAME;
- } else {
- goto yyc_ST_RAW;
- }
- }
- }
-/* *********************************** */
-yyc_INITIAL:
- {
- static const unsigned char yybm[] = {
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 160, 0, 144, 144, 0, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 240, 128, 128, 144, 128, 144, 128, 144,
- 128, 128, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 128, 144, 128, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 128, 144, 144, 128, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 128, 128, 128, 128, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- 144, 144, 144, 144, 144, 144, 144, 144,
- };
-
- YYDEBUG(0, *YYCURSOR);
- YYFILL(5);
- yych = *YYCURSOR;
- YYDEBUG(-1, yych);
- switch (yych) {
- case '\t': goto yy4;
- case '\n': goto yy6;
- case '\r': goto yy8;
- case ' ': goto yy9;
- case '!':
- case '"':
- case '$':
- case '&':
- case '(':
- case ')':
- case '^':
- case '{':
- case '|':
- case '}':
- case '~': goto yy10;
- case '#': goto yy12;
- case '%':
- case '\'':
- case '*':
- case '+':
- case ',':
- case '-':
- case '.':
- case '/':
- case ':':
- case '<':
- case '>':
- case '?':
- case '@':
- case ']': goto yy13;
- case ';': goto yy14;
- case '=': goto yy16;
- case 'F':
- case 'f': goto yy18;
- case 'N':
- case 'n': goto yy19;
- case 'O':
- case 'o': goto yy20;
- case 'T':
- case 't': goto yy21;
- case 'Y':
- case 'y': goto yy22;
- case '[': goto yy23;
- default: goto yy2;
- }
-yy2:
- YYDEBUG(2, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy26;
-yy3:
- YYDEBUG(3, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 429 "Zend/zend_ini_scanner.l"
- { /* Get option name */
- /* Eat leading whitespace */
- EAT_LEADING_WHITESPACE();
-
- /* Eat trailing whitespace */
- EAT_TRAILING_WHITESPACE();
-
- RETURN_TOKEN(TC_LABEL, yytext, yyleng);
-}
-#line 476 "Zend/zend_ini_scanner.c"
-yy4:
- YYDEBUG(4, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy68;
-yy5:
- YYDEBUG(5, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 575 "Zend/zend_ini_scanner.l"
- {
- /* eat whitespace */
- goto restart;
-}
-#line 490 "Zend/zend_ini_scanner.c"
-yy6:
- YYDEBUG(6, *YYCURSOR);
- ++YYCURSOR;
-yy7:
- YYDEBUG(7, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 580 "Zend/zend_ini_scanner.l"
- {
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 502 "Zend/zend_ini_scanner.c"
-yy8:
- YYDEBUG(8, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy71;
- goto yy7;
-yy9:
- YYDEBUG(9, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy26;
- if (yych <= '\t') goto yy67;
- goto yy71;
- } else {
- if (yych == '\r') goto yy72;
- if (yych <= 0x1F) goto yy26;
- goto yy69;
- }
- } else {
- if (yych <= ':') {
- if (yych == '#') goto yy58;
- goto yy26;
- } else {
- if (yych <= ';') goto yy53;
- if (yych == '=') goto yy51;
- goto yy26;
- }
- }
-yy10:
- YYDEBUG(10, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(11, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 503 "Zend/zend_ini_scanner.l"
- { /* Disallow these chars outside option values */
- return yytext[0];
-}
-#line 541 "Zend/zend_ini_scanner.c"
-yy12:
- YYDEBUG(12, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy59;
-yy13:
- YYDEBUG(13, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy26;
-yy14:
- YYDEBUG(14, *YYCURSOR);
- yyaccept = 2;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy54;
- YYDEBUG(15, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 603 "Zend/zend_ini_scanner.l"
- {
- return 0;
-}
-#line 562 "Zend/zend_ini_scanner.c"
-yy16:
- YYDEBUG(16, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy52;
-yy17:
- YYDEBUG(17, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 439 "Zend/zend_ini_scanner.l"
- { /* Start option value */
- if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
- yy_push_state(ST_RAW TSRMLS_CC);
- } else {
- yy_push_state(ST_VALUE TSRMLS_CC);
- }
- return '=';
-}
-#line 580 "Zend/zend_ini_scanner.c"
-yy18:
- YYDEBUG(18, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy48;
- if (yych == 'a') goto yy48;
- goto yy26;
-yy19:
- YYDEBUG(19, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= 'U') {
- if (yych == 'O') goto yy44;
- if (yych <= 'T') goto yy26;
- goto yy45;
- } else {
- if (yych <= 'o') {
- if (yych <= 'n') goto yy26;
- goto yy44;
- } else {
- if (yych == 'u') goto yy45;
- goto yy26;
- }
- }
-yy20:
- YYDEBUG(20, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= 'N') {
- if (yych == 'F') goto yy38;
- if (yych <= 'M') goto yy26;
- goto yy31;
- } else {
- if (yych <= 'f') {
- if (yych <= 'e') goto yy26;
- goto yy38;
- } else {
- if (yych == 'n') goto yy31;
- goto yy26;
- }
- }
-yy21:
- YYDEBUG(21, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy36;
- if (yych == 'r') goto yy36;
- goto yy26;
-yy22:
- YYDEBUG(22, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy27;
- if (yych == 'e') goto yy27;
- goto yy26;
-yy23:
- YYDEBUG(23, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(24, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 358 "Zend/zend_ini_scanner.l"
- { /* Section start */
- /* Enter section data lookup state */
- if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
- yy_push_state(ST_SECTION_RAW TSRMLS_CC);
- } else {
- yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
- }
- return TC_SECTION;
-}
-#line 646 "Zend/zend_ini_scanner.c"
-yy25:
- YYDEBUG(25, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy26:
- YYDEBUG(26, *YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy25;
- }
- if (yych == '[') goto yy28;
- goto yy3;
-yy27:
- YYDEBUG(27, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy31;
- if (yych == 's') goto yy31;
- goto yy26;
-yy28:
- YYDEBUG(28, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(29, *YYCURSOR);
- if (yybm[0+yych] & 32) {
- goto yy28;
- }
- YYDEBUG(30, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 383 "Zend/zend_ini_scanner.l"
- { /* Start of option with offset */
- /* Eat leading whitespace */
- EAT_LEADING_WHITESPACE();
-
- /* Eat trailing whitespace and [ */
- EAT_TRAILING_WHITESPACE_EX('[');
-
- /* Enter offset lookup state */
- yy_push_state(ST_OFFSET TSRMLS_CC);
-
- RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
-}
-#line 689 "Zend/zend_ini_scanner.c"
-yy31:
- YYDEBUG(31, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(32, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy31;
- }
- if (yych <= '\'') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy25;
- if (yych <= '\t') goto yy34;
- } else {
- if (yych != '\r') goto yy25;
- }
- } else {
- if (yych <= '$') {
- if (yych == '#') goto yy25;
- } else {
- if (yych != '&') goto yy25;
- }
- }
- } else {
- if (yych <= 'Z') {
- if (yych <= ';') {
- if (yych <= ')') goto yy33;
- if (yych <= ':') goto yy25;
- } else {
- if (yych != '=') goto yy25;
- }
- } else {
- if (yych <= '^') {
- if (yych <= '[') goto yy28;
- if (yych <= ']') goto yy25;
- } else {
- if (yych <= 'z') goto yy25;
- if (yych >= 0x7F) goto yy25;
- }
- }
- }
-yy33:
- YYDEBUG(33, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 421 "Zend/zend_ini_scanner.l"
- { /* TRUE value (when used outside option value/offset this causes parse error!) */
- RETURN_TOKEN(BOOL_TRUE, "1", 1);
-}
-#line 739 "Zend/zend_ini_scanner.c"
-yy34:
- YYDEBUG(34, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(35, *YYCURSOR);
- if (yych == '\t') goto yy34;
- if (yych == ' ') goto yy34;
- goto yy33;
-yy36:
- YYDEBUG(36, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'U') goto yy37;
- if (yych != 'u') goto yy26;
-yy37:
- YYDEBUG(37, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy31;
- if (yych == 'e') goto yy31;
- goto yy26;
-yy38:
- YYDEBUG(38, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy39;
- if (yych != 'f') goto yy26;
-yy39:
- YYDEBUG(39, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(40, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy25;
- if (yych <= '\t') goto yy42;
- } else {
- if (yych != '\r') goto yy25;
- }
- } else {
- if (yych <= '#') {
- if (yych <= ' ') goto yy39;
- if (yych >= '#') goto yy25;
- } else {
- if (yych == '%') goto yy25;
- }
- }
- } else {
- if (yych <= '=') {
- if (yych <= ':') {
- if (yych <= '\'') goto yy25;
- if (yych >= '*') goto yy25;
- } else {
- if (yych == '<') goto yy25;
- }
- } else {
- if (yych <= ']') {
- if (yych == '[') goto yy28;
- goto yy25;
- } else {
- if (yych <= '^') goto yy41;
- if (yych <= 'z') goto yy25;
- if (yych >= 0x7F) goto yy25;
- }
- }
- }
-yy41:
- YYDEBUG(41, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 425 "Zend/zend_ini_scanner.l"
- { /* FALSE value (when used outside option value/offset this causes parse error!)*/
- RETURN_TOKEN(BOOL_FALSE, "", 0);
-}
-#line 813 "Zend/zend_ini_scanner.c"
-yy42:
- YYDEBUG(42, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(43, *YYCURSOR);
- if (yych == '\t') goto yy42;
- if (yych == ' ') goto yy42;
- goto yy41;
-yy44:
- YYDEBUG(44, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= '\'') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy26;
- if (yych <= '\t') goto yy42;
- goto yy41;
- } else {
- if (yych == '\r') goto yy41;
- goto yy26;
- }
- } else {
- if (yych <= '#') {
- if (yych <= ' ') goto yy39;
- if (yych <= '"') goto yy41;
- goto yy26;
- } else {
- if (yych == '%') goto yy26;
- if (yych <= '&') goto yy41;
- goto yy26;
- }
- }
- } else {
- if (yych <= 'N') {
- if (yych <= ';') {
- if (yych <= ')') goto yy41;
- if (yych <= ':') goto yy26;
- goto yy41;
- } else {
- if (yych == '=') goto yy41;
- if (yych <= 'M') goto yy26;
- goto yy47;
- }
- } else {
- if (yych <= 'm') {
- if (yych == '^') goto yy41;
- goto yy26;
- } else {
- if (yych <= 'n') goto yy47;
- if (yych <= 'z') goto yy26;
- if (yych <= '~') goto yy41;
- goto yy26;
- }
- }
- }
-yy45:
- YYDEBUG(45, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy46;
- if (yych != 'l') goto yy26;
-yy46:
- YYDEBUG(46, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy39;
- if (yych == 'l') goto yy39;
- goto yy26;
-yy47:
- YYDEBUG(47, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy39;
- if (yych == 'e') goto yy39;
- goto yy26;
-yy48:
- YYDEBUG(48, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy49;
- if (yych != 'l') goto yy26;
-yy49:
- YYDEBUG(49, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy50;
- if (yych != 's') goto yy26;
-yy50:
- YYDEBUG(50, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy39;
- if (yych == 'e') goto yy39;
- goto yy26;
-yy51:
- YYDEBUG(51, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy52:
- YYDEBUG(52, *YYCURSOR);
- if (yych == '\t') goto yy51;
- if (yych == ' ') goto yy51;
- goto yy17;
-yy53:
- YYDEBUG(53, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy54:
- YYDEBUG(54, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy53;
- }
- if (yych >= '\r') goto yy57;
-yy55:
- YYDEBUG(55, *YYCURSOR);
- ++YYCURSOR;
-yy56:
- YYDEBUG(56, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 585 "Zend/zend_ini_scanner.l"
- { /* Comment */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 936 "Zend/zend_ini_scanner.c"
-yy57:
- YYDEBUG(57, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy55;
- goto yy56;
-yy58:
- YYDEBUG(58, *YYCURSOR);
- yyaccept = 1;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy59:
- YYDEBUG(59, *YYCURSOR);
- if (yych <= '\'') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy58;
- if (yych >= '\n') goto yy64;
- } else {
- if (yych == '\r') goto yy66;
- goto yy58;
- }
- } else {
- if (yych <= '$') {
- if (yych == '#') goto yy58;
- } else {
- if (yych != '&') goto yy58;
- }
- }
- } else {
- if (yych <= 'Z') {
- if (yych <= ';') {
- if (yych <= ')') goto yy60;
- if (yych <= ':') goto yy58;
- } else {
- if (yych != '=') goto yy58;
- }
- } else {
- if (yych <= '^') {
- if (yych <= '[') goto yy62;
- if (yych <= ']') goto yy58;
- } else {
- if (yych <= 'z') goto yy58;
- if (yych >= 0x7F) goto yy58;
- }
- }
- }
-yy60:
- YYDEBUG(60, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
- YYDEBUG(61, *YYCURSOR);
- if (yych == '\n') goto yy64;
- if (yych == '\r') goto yy66;
- goto yy60;
-yy62:
- YYDEBUG(62, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
- YYDEBUG(63, *YYCURSOR);
- if (yych <= '\f') {
- if (yych <= 0x08) goto yy60;
- if (yych <= '\t') goto yy62;
- if (yych >= '\v') goto yy60;
- } else {
- if (yych <= '\r') goto yy66;
- if (yych == ' ') goto yy62;
- goto yy60;
- }
-yy64:
- YYDEBUG(64, *YYCURSOR);
- ++YYCURSOR;
-yy65:
- YYDEBUG(65, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 591 "Zend/zend_ini_scanner.l"
- { /* #Comment */
- zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 1022 "Zend/zend_ini_scanner.c"
-yy66:
- YYDEBUG(66, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy64;
- goto yy65;
-yy67:
- YYDEBUG(67, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy68:
- YYDEBUG(68, *YYCURSOR);
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy5;
- if (yych <= '\t') goto yy67;
- goto yy71;
- } else {
- if (yych == '\r') goto yy72;
- if (yych <= 0x1F) goto yy5;
- goto yy67;
- }
- } else {
- if (yych <= ':') {
- if (yych == '#') goto yy60;
- goto yy5;
- } else {
- if (yych <= ';') goto yy53;
- if (yych == '=') goto yy51;
- goto yy5;
- }
- }
-yy69:
- YYDEBUG(69, *YYCURSOR);
- yyaccept = 1;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
- YYDEBUG(70, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy25;
- if (yych <= '\t') goto yy67;
- } else {
- if (yych == '\r') goto yy72;
- goto yy25;
- }
- } else {
- if (yych <= '#') {
- if (yych <= ' ') goto yy69;
- if (yych <= '"') goto yy3;
- goto yy58;
- } else {
- if (yych == '%') goto yy25;
- goto yy3;
- }
- }
- } else {
- if (yych <= '=') {
- if (yych <= ':') {
- if (yych <= '\'') goto yy25;
- if (yych <= ')') goto yy3;
- goto yy25;
- } else {
- if (yych <= ';') goto yy53;
- if (yych <= '<') goto yy25;
- goto yy51;
- }
- } else {
- if (yych <= ']') {
- if (yych == '[') goto yy28;
- goto yy25;
- } else {
- if (yych <= '^') goto yy3;
- if (yych <= 'z') goto yy25;
- if (yych <= '~') goto yy3;
- goto yy25;
- }
- }
- }
-yy71:
- YYDEBUG(71, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy7;
-yy72:
- YYDEBUG(72, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy71;
- goto yy7;
- }
-/* *********************************** */
-yyc_ST_DOUBLE_QUOTES:
- {
- static const unsigned char yybm[] = {
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 128, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 128, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- };
- YYDEBUG(73, *YYCURSOR);
- YYFILL(2);
- yych = *YYCURSOR;
- if (yych == '"') goto yy77;
- if (yych == '$') goto yy79;
- YYDEBUG(75, *YYCURSOR);
- ++YYCURSOR;
-yy76:
- YYDEBUG(76, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 535 "Zend/zend_ini_scanner.l"
- { /* Escape double quoted string contents */
- if (YYCURSOR > YYLIMIT) {
- return 0;
- }
-
- while (YYCURSOR < YYLIMIT) {
- switch (*YYCURSOR++) {
- case '"':
- if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
- continue;
- }
- break;
- case '$':
- if (*YYCURSOR == '{') {
- break;
- }
- continue;
- case '\\':
- if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
- YYCURSOR++;
- }
- /* fall through */
- default:
- continue;
- }
-
- YYCURSOR--;
- break;
- }
-
- yyleng = YYCURSOR - SCNG(yy_text);
-
- zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
- return TC_QUOTED_STRING;
-}
-#line 1198 "Zend/zend_ini_scanner.c"
-yy77:
- YYDEBUG(77, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy83;
-yy78:
- YYDEBUG(78, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 530 "Zend/zend_ini_scanner.l"
- { /* Double quoted '"' string ends */
- yy_pop_state(TSRMLS_C);
- return '"';
-}
-#line 1212 "Zend/zend_ini_scanner.c"
-yy79:
- YYDEBUG(79, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '{') goto yy76;
- YYDEBUG(80, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(81, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 401 "Zend/zend_ini_scanner.l"
- { /* Variable start */
- yy_push_state(ST_VARNAME TSRMLS_CC);
- return TC_DOLLAR_CURLY;
-}
-#line 1226 "Zend/zend_ini_scanner.c"
-yy82:
- YYDEBUG(82, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy83:
- YYDEBUG(83, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy82;
- }
- goto yy78;
- }
-/* *********************************** */
-yyc_ST_OFFSET:
- {
- static const unsigned char yybm[] = {
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 194, 64, 66, 66, 64, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 194, 66, 64, 66, 68, 66, 66, 0,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 114, 114, 114, 114, 114, 114, 114, 114,
- 114, 114, 66, 64, 66, 66, 66, 66,
- 66, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 66, 72, 64, 66, 82,
- 66, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66,
- };
- YYDEBUG(84, *YYCURSOR);
- YYFILL(2);
- yych = *YYCURSOR;
- if (yych <= '-') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy86;
- if (yych <= '\t') goto yy88;
- goto yy89;
- } else {
- if (yych == '\r') goto yy89;
- if (yych >= ' ') goto yy88;
- }
- } else {
- if (yych <= '$') {
- if (yych == '"') goto yy91;
- if (yych >= '$') goto yy93;
- } else {
- if (yych == '\'') goto yy94;
- if (yych >= '-') goto yy95;
- }
- }
- } else {
- if (yych <= 'Z') {
- if (yych <= '9') {
- if (yych <= '.') goto yy96;
- if (yych >= '0') goto yy97;
- } else {
- if (yych == ';') goto yy89;
- if (yych >= 'A') goto yy99;
- }
- } else {
- if (yych <= '^') {
- if (yych <= '[') goto yy86;
- if (yych <= '\\') goto yy101;
- if (yych <= ']') goto yy102;
- } else {
- if (yych == '`') goto yy86;
- if (yych <= 'z') goto yy99;
- }
- }
- }
-yy86:
- YYDEBUG(86, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy105;
-yy87:
- YYDEBUG(87, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 521 "Zend/zend_ini_scanner.l"
- { /* Get rest as section/offset value */
- RETURN_TOKEN(TC_STRING, yytext, yyleng);
-}
-#line 1330 "Zend/zend_ini_scanner.c"
-yy88:
- YYDEBUG(88, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy131;
- }
- if (yych == '"') goto yy133;
- if (yych == ']') goto yy134;
- goto yy105;
-yy89:
- YYDEBUG(89, *YYCURSOR);
- ++YYCURSOR;
-yy90:
- YYDEBUG(90, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 603 "Zend/zend_ini_scanner.l"
- {
- return 0;
-}
-#line 1351 "Zend/zend_ini_scanner.c"
-yy91:
- YYDEBUG(91, *YYCURSOR);
- ++YYCURSOR;
-yy92:
- YYDEBUG(92, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 525 "Zend/zend_ini_scanner.l"
- { /* Double quoted '"' string start */
- yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
- return '"';
-}
-#line 1363 "Zend/zend_ini_scanner.c"
-yy93:
- YYDEBUG(93, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy90;
- if (yych <= '[') goto yy104;
- goto yy109;
- } else {
- if (yych == '{') goto yy129;
- goto yy104;
- }
-yy94:
- YYDEBUG(94, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy125;
- }
- goto yy90;
-yy95:
- YYDEBUG(95, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy105;
- if (yych <= '9') goto yy123;
- goto yy105;
-yy96:
- YYDEBUG(96, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy105;
- if (yych <= '9') goto yy121;
- goto yy105;
-yy97:
- YYDEBUG(97, *YYCURSOR);
- yyaccept = 2;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '\'') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy98;
- if (yych <= '\f') goto yy105;
- } else {
- if (yych == '"') goto yy98;
- if (yych <= '&') goto yy105;
- }
- } else {
- if (yych <= '9') {
- if (yych == '.') goto yy117;
- if (yych <= '/') goto yy105;
- goto yy119;
- } else {
- if (yych <= ';') {
- if (yych <= ':') goto yy105;
- } else {
- if (yych != ']') goto yy105;
- }
- }
- }
-yy98:
- YYDEBUG(98, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 499 "Zend/zend_ini_scanner.l"
- { /* Get number option value as string */
- RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
-}
-#line 1429 "Zend/zend_ini_scanner.c"
-yy99:
- YYDEBUG(99, *YYCURSOR);
- yyaccept = 3;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy115;
- }
- if (yych <= '"') {
- if (yych <= '\f') {
- if (yych != '\n') goto yy105;
- } else {
- if (yych <= '\r') goto yy100;
- if (yych <= '!') goto yy105;
- }
- } else {
- if (yych <= ':') {
- if (yych != '\'') goto yy105;
- } else {
- if (yych <= ';') goto yy100;
- if (yych != ']') goto yy105;
- }
- }
-yy100:
- YYDEBUG(100, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 495 "Zend/zend_ini_scanner.l"
- { /* Get constant option value */
- RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
-}
-#line 1459 "Zend/zend_ini_scanner.c"
-yy101:
- YYDEBUG(101, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy104;
-yy102:
- YYDEBUG(102, *YYCURSOR);
- ++YYCURSOR;
-yy103:
- YYDEBUG(103, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 396 "Zend/zend_ini_scanner.l"
- { /* End of section or an option offset */
- BEGIN(INITIAL);
- return ']';
-}
-#line 1475 "Zend/zend_ini_scanner.c"
-yy104:
- YYDEBUG(104, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy105:
- YYDEBUG(105, *YYCURSOR);
- if (yybm[0+yych] & 2) {
- goto yy104;
- }
- if (yych == '$') goto yy107;
- if (yych != '\\') goto yy87;
-yy106:
- YYDEBUG(106, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- goto yy104;
-yy107:
- YYDEBUG(107, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy108;
- if (yych <= '[') goto yy104;
- goto yy109;
- } else {
- if (yych != '{') goto yy104;
- }
-yy108:
- YYDEBUG(108, *YYCURSOR);
- YYCURSOR = YYMARKER;
- if (yyaccept <= 1) {
- if (yyaccept <= 0) {
- goto yy87;
- } else {
- goto yy90;
- }
- } else {
- if (yyaccept <= 2) {
- goto yy98;
- } else {
- goto yy100;
- }
- }
-yy109:
- YYDEBUG(109, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 4) {
- goto yy110;
- }
- if (yych == '\\') goto yy112;
- goto yy104;
-yy110:
- YYDEBUG(110, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(111, *YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy110;
- }
- if (yych == '\\') goto yy114;
- goto yy104;
-yy112:
- YYDEBUG(112, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(113, *YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy110;
- }
- if (yych == '\\') goto yy112;
- goto yy104;
-yy114:
- YYDEBUG(114, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 4) {
- goto yy110;
- }
- if (yych == '\\') goto yy112;
- goto yy104;
-yy115:
- YYDEBUG(115, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(116, *YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy115;
- }
- if (yych <= '$') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy100;
- if (yych <= '\f') goto yy104;
- goto yy100;
- } else {
- if (yych == '"') goto yy100;
- if (yych <= '#') goto yy104;
- goto yy107;
- }
- } else {
- if (yych <= ';') {
- if (yych == '\'') goto yy100;
- if (yych <= ':') goto yy104;
- goto yy100;
- } else {
- if (yych <= '[') goto yy104;
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy100;
- goto yy104;
- }
- }
-yy117:
- YYDEBUG(117, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(118, *YYCURSOR);
- if (yybm[0+yych] & 32) {
- goto yy117;
- }
- if (yych <= '$') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy98;
- if (yych <= '\f') goto yy104;
- goto yy98;
- } else {
- if (yych == '"') goto yy98;
- if (yych <= '#') goto yy104;
- goto yy107;
- }
- } else {
- if (yych <= ';') {
- if (yych == '\'') goto yy98;
- if (yych <= ':') goto yy104;
- goto yy98;
- } else {
- if (yych <= '[') goto yy104;
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy98;
- goto yy104;
- }
- }
-yy119:
- YYDEBUG(119, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(120, *YYCURSOR);
- if (yych <= '\'') {
- if (yych <= '!') {
- if (yych <= '\n') {
- if (yych <= '\t') goto yy104;
- goto yy98;
- } else {
- if (yych == '\r') goto yy98;
- goto yy104;
- }
- } else {
- if (yych <= '#') {
- if (yych <= '"') goto yy98;
- goto yy104;
- } else {
- if (yych <= '$') goto yy107;
- if (yych <= '&') goto yy104;
- goto yy98;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '.') {
- if (yych <= '-') goto yy104;
- goto yy117;
- } else {
- if (yych <= '/') goto yy104;
- if (yych <= '9') goto yy119;
- goto yy104;
- }
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy98;
- goto yy104;
- } else {
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy98;
- goto yy104;
- }
- }
- }
-yy121:
- YYDEBUG(121, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(122, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy98;
- if (yych <= '\f') goto yy104;
- goto yy98;
- } else {
- if (yych <= '"') {
- if (yych <= '!') goto yy104;
- goto yy98;
- } else {
- if (yych == '$') goto yy107;
- goto yy104;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '\'') goto yy98;
- if (yych <= '/') goto yy104;
- if (yych <= '9') goto yy121;
- goto yy104;
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy98;
- goto yy104;
- } else {
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy98;
- goto yy104;
- }
- }
- }
-yy123:
- YYDEBUG(123, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(124, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy98;
- if (yych <= '\f') goto yy104;
- goto yy98;
- } else {
- if (yych <= '"') {
- if (yych <= '!') goto yy104;
- goto yy98;
- } else {
- if (yych == '$') goto yy107;
- goto yy104;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '\'') goto yy98;
- if (yych <= '/') goto yy104;
- if (yych <= '9') goto yy123;
- goto yy104;
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy98;
- goto yy104;
- } else {
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy98;
- goto yy104;
- }
- }
- }
-yy125:
- YYDEBUG(125, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(126, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy125;
- }
- YYDEBUG(127, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(128, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 368 "Zend/zend_ini_scanner.l"
- { /* Raw string */
- /* Eat leading and trailing single quotes */
- if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
- SCNG(yy_text)++;
- yyleng = yyleng - 2;
- }
- RETURN_TOKEN(TC_RAW, yytext, yyleng);
-}
-#line 1774 "Zend/zend_ini_scanner.c"
-yy129:
- YYDEBUG(129, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(130, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 401 "Zend/zend_ini_scanner.l"
- { /* Variable start */
- yy_push_state(ST_VARNAME TSRMLS_CC);
- return TC_DOLLAR_CURLY;
-}
-#line 1785 "Zend/zend_ini_scanner.c"
-yy131:
- YYDEBUG(131, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(132, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy131;
- }
- if (yych <= '$') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy87;
- if (yych <= '\f') goto yy104;
- goto yy87;
- } else {
- if (yych == '"') goto yy133;
- if (yych <= '#') goto yy104;
- goto yy107;
- }
- } else {
- if (yych <= ';') {
- if (yych == '\'') goto yy87;
- if (yych <= ':') goto yy104;
- goto yy87;
- } else {
- if (yych <= '[') goto yy104;
- if (yych <= '\\') goto yy106;
- if (yych <= ']') goto yy134;
- goto yy104;
- }
- }
-yy133:
- YYDEBUG(133, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy92;
-yy134:
- YYDEBUG(134, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy103;
- }
-/* *********************************** */
-yyc_ST_RAW:
- {
- static const unsigned char yybm[] = {
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 192, 0, 64, 64, 0, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 192, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 64, 64, 64, 64, 64, 64, 64,
- };
- YYDEBUG(135, *YYCURSOR);
- YYFILL(3);
- yych = *YYCURSOR;
- if (yych <= '\f') {
- if (yych <= 0x08) {
- if (yych >= 0x01) goto yy139;
- } else {
- if (yych <= '\t') goto yy141;
- if (yych <= '\n') goto yy142;
- goto yy139;
- }
- } else {
- if (yych <= ' ') {
- if (yych <= '\r') goto yy144;
- if (yych <= 0x1F) goto yy139;
- goto yy141;
- } else {
- if (yych == ';') goto yy145;
- goto yy139;
- }
- }
- YYDEBUG(137, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(138, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 598 "Zend/zend_ini_scanner.l"
- { /* End of option value (if EOF is reached before EOL */
- BEGIN(INITIAL);
- return END_OF_LINE;
-}
-#line 1895 "Zend/zend_ini_scanner.c"
-yy139:
- YYDEBUG(139, *YYCURSOR);
- ++YYCURSOR;
-yy140:
- YYDEBUG(140, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 448 "Zend/zend_ini_scanner.l"
- { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
- char *sc = NULL;
- while (YYCURSOR < YYLIMIT) {
- switch (*YYCURSOR) {
- case '\n':
- case '\r':
- goto end_raw_value_chars;
- break;
- case ';':
- if (sc == NULL) {
- sc = YYCURSOR;
- }
- /* no break */
- default:
- YYCURSOR++;
- break;
- }
- }
-end_raw_value_chars:
- yyleng = YYCURSOR - SCNG(yy_text);
-
- /* Eat trailing semicolons */
- while (yytext[yyleng - 1] == ';') {
- yyleng--;
- }
-
- /* Eat leading and trailing double quotes */
- if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
- SCNG(yy_text)++;
- yyleng = yyleng - 2;
- } else if (sc) {
- YYCURSOR = sc;
- yyleng = YYCURSOR - SCNG(yy_text);
- }
- RETURN_TOKEN(TC_RAW, yytext, yyleng);
-}
-#line 1939 "Zend/zend_ini_scanner.c"
-yy141:
- YYDEBUG(141, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '\r') {
- if (yych <= 0x08) goto yy140;
- if (yych <= '\n') goto yy153;
- if (yych <= '\f') goto yy140;
- goto yy153;
- } else {
- if (yych <= ' ') {
- if (yych <= 0x1F) goto yy140;
- goto yy153;
- } else {
- if (yych == ';') goto yy153;
- goto yy140;
- }
- }
-yy142:
- YYDEBUG(142, *YYCURSOR);
- ++YYCURSOR;
-yy143:
- YYDEBUG(143, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 489 "Zend/zend_ini_scanner.l"
- { /* End of option value */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 1970 "Zend/zend_ini_scanner.c"
-yy144:
- YYDEBUG(144, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy151;
- goto yy143;
-yy145:
- YYDEBUG(145, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy147;
-yy146:
- YYDEBUG(146, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy147:
- YYDEBUG(147, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy146;
- }
- if (yych >= '\r') goto yy150;
-yy148:
- YYDEBUG(148, *YYCURSOR);
- ++YYCURSOR;
-yy149:
- YYDEBUG(149, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 585 "Zend/zend_ini_scanner.l"
- { /* Comment */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 2004 "Zend/zend_ini_scanner.c"
-yy150:
- YYDEBUG(150, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy148;
- goto yy149;
-yy151:
- YYDEBUG(151, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy143;
-yy152:
- YYDEBUG(152, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy153:
- YYDEBUG(153, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy152;
- }
- if (yych <= '\f') {
- if (yych == '\n') goto yy151;
- } else {
- if (yych <= '\r') goto yy155;
- if (yych == ';') goto yy146;
- }
- YYDEBUG(154, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 575 "Zend/zend_ini_scanner.l"
- {
- /* eat whitespace */
- goto restart;
-}
-#line 2038 "Zend/zend_ini_scanner.c"
-yy155:
- YYDEBUG(155, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy151;
- goto yy143;
- }
-/* *********************************** */
-yyc_ST_SECTION_RAW:
- {
- static const unsigned char yybm[] = {
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 192, 0, 128, 128, 0, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 192, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 0, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- };
- YYDEBUG(156, *YYCURSOR);
- YYFILL(3);
- yych = *YYCURSOR;
- if (yych <= '\f') {
- if (yych == '\n') goto yy160;
- } else {
- if (yych <= '\r') goto yy160;
- if (yych == ']') goto yy162;
- }
- YYDEBUG(158, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy169;
-yy159:
- YYDEBUG(159, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 485 "Zend/zend_ini_scanner.l"
- { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
- RETURN_TOKEN(TC_RAW, yytext, yyleng);
-}
-#line 2102 "Zend/zend_ini_scanner.c"
-yy160:
- YYDEBUG(160, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(161, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 603 "Zend/zend_ini_scanner.l"
- {
- return 0;
-}
-#line 2112 "Zend/zend_ini_scanner.c"
-yy162:
- YYDEBUG(162, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy165;
-yy163:
- YYDEBUG(163, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 377 "Zend/zend_ini_scanner.l"
- { /* End of section */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return ']';
-}
-#line 2127 "Zend/zend_ini_scanner.c"
-yy164:
- YYDEBUG(164, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy165:
- YYDEBUG(165, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy164;
- }
- if (yych == '\n') goto yy166;
- if (yych == '\r') goto yy167;
- goto yy163;
-yy166:
- YYDEBUG(166, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy163;
-yy167:
- YYDEBUG(167, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy166;
- goto yy163;
-yy168:
- YYDEBUG(168, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy169:
- YYDEBUG(169, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy168;
- }
- goto yy159;
- }
-/* *********************************** */
-yyc_ST_SECTION_VALUE:
- {
- static const unsigned char yybm[] = {
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 134, 128, 132, 132, 128, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 134, 132, 128, 132, 136, 132, 132, 0,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 228, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 132, 128, 132, 132, 132, 132,
- 132, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 132, 144, 128, 132, 164,
- 132, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- 132, 132, 132, 132, 132, 132, 132, 132,
- };
- YYDEBUG(170, *YYCURSOR);
- YYFILL(3);
- yych = *YYCURSOR;
- if (yych <= '-') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy172;
- if (yych <= '\t') goto yy174;
- goto yy175;
- } else {
- if (yych == '\r') goto yy175;
- if (yych >= ' ') goto yy174;
- }
- } else {
- if (yych <= '$') {
- if (yych == '"') goto yy177;
- if (yych >= '$') goto yy179;
- } else {
- if (yych == '\'') goto yy180;
- if (yych >= '-') goto yy181;
- }
- }
- } else {
- if (yych <= 'Z') {
- if (yych <= '9') {
- if (yych <= '.') goto yy182;
- if (yych >= '0') goto yy183;
- } else {
- if (yych == ';') goto yy175;
- if (yych >= 'A') goto yy185;
- }
- } else {
- if (yych <= '^') {
- if (yych <= '[') goto yy172;
- if (yych <= '\\') goto yy187;
- if (yych <= ']') goto yy188;
- } else {
- if (yych == '`') goto yy172;
- if (yych <= 'z') goto yy185;
- }
- }
- }
-yy172:
- YYDEBUG(172, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy195;
-yy173:
- YYDEBUG(173, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 521 "Zend/zend_ini_scanner.l"
- { /* Get rest as section/offset value */
- RETURN_TOKEN(TC_STRING, yytext, yyleng);
-}
-#line 2253 "Zend/zend_ini_scanner.c"
-yy174:
- YYDEBUG(174, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 0x1F) {
- if (yych == '\t') goto yy221;
- goto yy195;
- } else {
- if (yych <= ' ') goto yy221;
- if (yych == '"') goto yy223;
- goto yy195;
- }
-yy175:
- YYDEBUG(175, *YYCURSOR);
- ++YYCURSOR;
-yy176:
- YYDEBUG(176, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 603 "Zend/zend_ini_scanner.l"
- {
- return 0;
-}
-#line 2276 "Zend/zend_ini_scanner.c"
-yy177:
- YYDEBUG(177, *YYCURSOR);
- ++YYCURSOR;
-yy178:
- YYDEBUG(178, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 525 "Zend/zend_ini_scanner.l"
- { /* Double quoted '"' string start */
- yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
- return '"';
-}
-#line 2288 "Zend/zend_ini_scanner.c"
-yy179:
- YYDEBUG(179, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy176;
- if (yych <= '[') goto yy194;
- goto yy199;
- } else {
- if (yych == '{') goto yy219;
- goto yy194;
- }
-yy180:
- YYDEBUG(180, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy215;
- }
- goto yy176;
-yy181:
- YYDEBUG(181, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy195;
- if (yych <= '9') goto yy213;
- goto yy195;
-yy182:
- YYDEBUG(182, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy195;
- if (yych <= '9') goto yy211;
- goto yy195;
-yy183:
- YYDEBUG(183, *YYCURSOR);
- yyaccept = 2;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '\'') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy184;
- if (yych <= '\f') goto yy195;
- } else {
- if (yych == '"') goto yy184;
- if (yych <= '&') goto yy195;
- }
- } else {
- if (yych <= '9') {
- if (yych == '.') goto yy207;
- if (yych <= '/') goto yy195;
- goto yy209;
- } else {
- if (yych <= ';') {
- if (yych <= ':') goto yy195;
- } else {
- if (yych != ']') goto yy195;
- }
- }
- }
-yy184:
- YYDEBUG(184, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 499 "Zend/zend_ini_scanner.l"
- { /* Get number option value as string */
- RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
-}
-#line 2354 "Zend/zend_ini_scanner.c"
-yy185:
- YYDEBUG(185, *YYCURSOR);
- yyaccept = 3;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 32) {
- goto yy205;
- }
- if (yych <= '"') {
- if (yych <= '\f') {
- if (yych != '\n') goto yy195;
- } else {
- if (yych <= '\r') goto yy186;
- if (yych <= '!') goto yy195;
- }
- } else {
- if (yych <= ':') {
- if (yych != '\'') goto yy195;
- } else {
- if (yych <= ';') goto yy186;
- if (yych != ']') goto yy195;
- }
- }
-yy186:
- YYDEBUG(186, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 495 "Zend/zend_ini_scanner.l"
- { /* Get constant option value */
- RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
-}
-#line 2384 "Zend/zend_ini_scanner.c"
-yy187:
- YYDEBUG(187, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy194;
-yy188:
- YYDEBUG(188, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy191;
-yy189:
- YYDEBUG(189, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 377 "Zend/zend_ini_scanner.l"
- { /* End of section */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return ']';
-}
-#line 2403 "Zend/zend_ini_scanner.c"
-yy190:
- YYDEBUG(190, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy191:
- YYDEBUG(191, *YYCURSOR);
- if (yybm[0+yych] & 2) {
- goto yy190;
- }
- if (yych == '\n') goto yy192;
- if (yych == '\r') goto yy193;
- goto yy189;
-yy192:
- YYDEBUG(192, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy189;
-yy193:
- YYDEBUG(193, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy192;
- goto yy189;
-yy194:
- YYDEBUG(194, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy195:
- YYDEBUG(195, *YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy194;
- }
- if (yych == '$') goto yy197;
- if (yych != '\\') goto yy173;
-yy196:
- YYDEBUG(196, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- goto yy194;
-yy197:
- YYDEBUG(197, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy198;
- if (yych <= '[') goto yy194;
- goto yy199;
- } else {
- if (yych != '{') goto yy194;
- }
-yy198:
- YYDEBUG(198, *YYCURSOR);
- YYCURSOR = YYMARKER;
- if (yyaccept <= 1) {
- if (yyaccept <= 0) {
- goto yy173;
- } else {
- goto yy176;
- }
- } else {
- if (yyaccept <= 2) {
- goto yy184;
- } else {
- goto yy186;
- }
- }
-yy199:
- YYDEBUG(199, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 8) {
- goto yy200;
- }
- if (yych == '\\') goto yy202;
- goto yy194;
-yy200:
- YYDEBUG(200, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(201, *YYCURSOR);
- if (yybm[0+yych] & 8) {
- goto yy200;
- }
- if (yych == '\\') goto yy204;
- goto yy194;
-yy202:
- YYDEBUG(202, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(203, *YYCURSOR);
- if (yybm[0+yych] & 8) {
- goto yy200;
- }
- if (yych == '\\') goto yy202;
- goto yy194;
-yy204:
- YYDEBUG(204, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 8) {
- goto yy200;
- }
- if (yych == '\\') goto yy202;
- goto yy194;
-yy205:
- YYDEBUG(205, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(206, *YYCURSOR);
- if (yybm[0+yych] & 32) {
- goto yy205;
- }
- if (yych <= '$') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy186;
- if (yych <= '\f') goto yy194;
- goto yy186;
- } else {
- if (yych == '"') goto yy186;
- if (yych <= '#') goto yy194;
- goto yy197;
- }
- } else {
- if (yych <= ';') {
- if (yych == '\'') goto yy186;
- if (yych <= ':') goto yy194;
- goto yy186;
- } else {
- if (yych <= '[') goto yy194;
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy186;
- goto yy194;
- }
- }
-yy207:
- YYDEBUG(207, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(208, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy207;
- }
- if (yych <= '$') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy184;
- if (yych <= '\f') goto yy194;
- goto yy184;
- } else {
- if (yych == '"') goto yy184;
- if (yych <= '#') goto yy194;
- goto yy197;
- }
- } else {
- if (yych <= ';') {
- if (yych == '\'') goto yy184;
- if (yych <= ':') goto yy194;
- goto yy184;
- } else {
- if (yych <= '[') goto yy194;
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy184;
- goto yy194;
- }
- }
-yy209:
- YYDEBUG(209, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(210, *YYCURSOR);
- if (yych <= '\'') {
- if (yych <= '!') {
- if (yych <= '\n') {
- if (yych <= '\t') goto yy194;
- goto yy184;
- } else {
- if (yych == '\r') goto yy184;
- goto yy194;
- }
- } else {
- if (yych <= '#') {
- if (yych <= '"') goto yy184;
- goto yy194;
- } else {
- if (yych <= '$') goto yy197;
- if (yych <= '&') goto yy194;
- goto yy184;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '.') {
- if (yych <= '-') goto yy194;
- goto yy207;
- } else {
- if (yych <= '/') goto yy194;
- if (yych <= '9') goto yy209;
- goto yy194;
- }
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy184;
- goto yy194;
- } else {
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy184;
- goto yy194;
- }
- }
- }
-yy211:
- YYDEBUG(211, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(212, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy184;
- if (yych <= '\f') goto yy194;
- goto yy184;
- } else {
- if (yych <= '"') {
- if (yych <= '!') goto yy194;
- goto yy184;
- } else {
- if (yych == '$') goto yy197;
- goto yy194;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '\'') goto yy184;
- if (yych <= '/') goto yy194;
- if (yych <= '9') goto yy211;
- goto yy194;
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy184;
- goto yy194;
- } else {
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy184;
- goto yy194;
- }
- }
- }
-yy213:
- YYDEBUG(213, *YYCURSOR);
- yyaccept = 2;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(214, *YYCURSOR);
- if (yych <= '&') {
- if (yych <= '\r') {
- if (yych == '\n') goto yy184;
- if (yych <= '\f') goto yy194;
- goto yy184;
- } else {
- if (yych <= '"') {
- if (yych <= '!') goto yy194;
- goto yy184;
- } else {
- if (yych == '$') goto yy197;
- goto yy194;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '\'') goto yy184;
- if (yych <= '/') goto yy194;
- if (yych <= '9') goto yy213;
- goto yy194;
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy184;
- goto yy194;
- } else {
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy184;
- goto yy194;
- }
- }
- }
-yy215:
- YYDEBUG(215, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(216, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy215;
- }
- YYDEBUG(217, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(218, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 368 "Zend/zend_ini_scanner.l"
- { /* Raw string */
- /* Eat leading and trailing single quotes */
- if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
- SCNG(yy_text)++;
- yyleng = yyleng - 2;
- }
- RETURN_TOKEN(TC_RAW, yytext, yyleng);
-}
-#line 2724 "Zend/zend_ini_scanner.c"
-yy219:
- YYDEBUG(219, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(220, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 401 "Zend/zend_ini_scanner.l"
- { /* Variable start */
- yy_push_state(ST_VARNAME TSRMLS_CC);
- return TC_DOLLAR_CURLY;
-}
-#line 2735 "Zend/zend_ini_scanner.c"
-yy221:
- YYDEBUG(221, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(222, *YYCURSOR);
- if (yych <= '"') {
- if (yych <= '\f') {
- if (yych <= 0x08) goto yy194;
- if (yych <= '\t') goto yy221;
- if (yych <= '\n') goto yy173;
- goto yy194;
- } else {
- if (yych <= 0x1F) {
- if (yych <= '\r') goto yy173;
- goto yy194;
- } else {
- if (yych <= ' ') goto yy221;
- if (yych <= '!') goto yy194;
- }
- }
- } else {
- if (yych <= ':') {
- if (yych <= '$') {
- if (yych <= '#') goto yy194;
- goto yy197;
- } else {
- if (yych == '\'') goto yy173;
- goto yy194;
- }
- } else {
- if (yych <= '[') {
- if (yych <= ';') goto yy173;
- goto yy194;
- } else {
- if (yych <= '\\') goto yy196;
- if (yych <= ']') goto yy173;
- goto yy194;
- }
- }
- }
-yy223:
- YYDEBUG(223, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy178;
- }
-/* *********************************** */
-yyc_ST_VALUE:
- {
- static const unsigned char yybm[] = {
- 160, 162, 162, 162, 162, 162, 162, 162,
- 162, 176, 128, 162, 162, 128, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 176, 160, 160, 162, 168, 162, 160, 32,
- 160, 160, 162, 162, 162, 162, 162, 162,
- 230, 230, 230, 230, 230, 230, 230, 230,
- 230, 230, 162, 160, 162, 160, 162, 162,
- 162, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 162, 162, 162, 160, 166,
- 162, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 166, 166, 166, 166, 166,
- 166, 166, 166, 162, 160, 162, 160, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162,
- };
- YYDEBUG(224, *YYCURSOR);
- YYFILL(6);
- yych = *YYCURSOR;
- YYDEBUG(-1, yych);
- switch (yych) {
- case 0x00: goto yy226;
- case '\t':
- case ' ': goto yy230;
- case '\n': goto yy232;
- case '\r': goto yy234;
- case '!':
- case '&':
- case '(':
- case ')':
- case '^':
- case '|':
- case '~': goto yy235;
- case '"': goto yy237;
- case '$': goto yy239;
- case '\'': goto yy240;
- case '-': goto yy241;
- case '.': goto yy242;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9': goto yy243;
- case ';': goto yy245;
- case '=': goto yy246;
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'G':
- case 'H':
- case 'I':
- case 'J':
- case 'K':
- case 'L':
- case 'M':
- case 'P':
- case 'Q':
- case 'R':
- case 'S':
- case 'U':
- case 'V':
- case 'W':
- case 'X':
- case 'Z':
- case '_':
- case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'g':
- case 'h':
- case 'i':
- case 'j':
- case 'k':
- case 'l':
- case 'm':
- case 'p':
- case 'q':
- case 'r':
- case 's':
- case 'u':
- case 'v':
- case 'w':
- case 'x':
- case 'z': goto yy248;
- case 'F':
- case 'f': goto yy250;
- case 'N':
- case 'n': goto yy251;
- case 'O':
- case 'o': goto yy252;
- case 'T':
- case 't': goto yy253;
- case 'Y':
- case 'y': goto yy254;
- default: goto yy228;
- }
-yy226:
- YYDEBUG(226, *YYCURSOR);
- ++YYCURSOR;
-yy227:
- YYDEBUG(227, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 598 "Zend/zend_ini_scanner.l"
- { /* End of option value (if EOF is reached before EOL */
- BEGIN(INITIAL);
- return END_OF_LINE;
-}
-#line 2921 "Zend/zend_ini_scanner.c"
-yy228:
- YYDEBUG(228, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy256;
-yy229:
- YYDEBUG(229, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 517 "Zend/zend_ini_scanner.l"
- { /* Get everything else as option/offset value */
- RETURN_TOKEN(TC_STRING, yytext, yyleng);
-}
-#line 2934 "Zend/zend_ini_scanner.c"
-yy230:
- YYDEBUG(230, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy306;
-yy231:
- YYDEBUG(231, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 571 "Zend/zend_ini_scanner.l"
- {
- RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
-}
-#line 2947 "Zend/zend_ini_scanner.c"
-yy232:
- YYDEBUG(232, *YYCURSOR);
- ++YYCURSOR;
-yy233:
- YYDEBUG(233, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 489 "Zend/zend_ini_scanner.l"
- { /* End of option value */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 2960 "Zend/zend_ini_scanner.c"
-yy234:
- YYDEBUG(234, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy304;
- goto yy233;
-yy235:
- YYDEBUG(235, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy303;
-yy236:
- YYDEBUG(236, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 507 "Zend/zend_ini_scanner.l"
- { /* Boolean operators */
- return yytext[0];
-}
-#line 2978 "Zend/zend_ini_scanner.c"
-yy237:
- YYDEBUG(237, *YYCURSOR);
- ++YYCURSOR;
-yy238:
- YYDEBUG(238, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 525 "Zend/zend_ini_scanner.l"
- { /* Double quoted '"' string start */
- yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
- return '"';
-}
-#line 2990 "Zend/zend_ini_scanner.c"
-yy239:
- YYDEBUG(239, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy227;
- if (yych <= '[') goto yy255;
- goto yy262;
- } else {
- if (yych == '{') goto yy300;
- goto yy255;
- }
-yy240:
- YYDEBUG(240, *YYCURSOR);
- yyaccept = 2;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy296;
- }
- goto yy227;
-yy241:
- YYDEBUG(241, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy256;
- if (yych <= '9') goto yy294;
- goto yy256;
-yy242:
- YYDEBUG(242, *YYCURSOR);
- yyaccept = 0;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy256;
- if (yych <= '9') goto yy292;
- goto yy256;
-yy243:
- YYDEBUG(243, *YYCURSOR);
- yyaccept = 3;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy244;
- if (yych <= 0x08) goto yy256;
- } else {
- if (yych != '\r') goto yy256;
- }
- } else {
- if (yych <= ')') {
- if (yych <= '"') goto yy244;
- if (yych <= '%') goto yy256;
- } else {
- if (yych == '.') goto yy288;
- goto yy256;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= '9') goto yy290;
- if (yych <= ':') goto yy256;
- } else {
- if (yych != '=') goto yy256;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy244;
- if (yych <= '{') goto yy256;
- } else {
- if (yych != '~') goto yy256;
- }
- }
- }
-yy244:
- YYDEBUG(244, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 499 "Zend/zend_ini_scanner.l"
- { /* Get number option value as string */
- RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
-}
-#line 3069 "Zend/zend_ini_scanner.c"
-yy245:
- YYDEBUG(245, *YYCURSOR);
- yyaccept = 2;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy284;
-yy246:
- YYDEBUG(246, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(247, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 511 "Zend/zend_ini_scanner.l"
- { /* Make = used in option value to trigger error */
- yyless(0);
- BEGIN(INITIAL);
- return END_OF_LINE;
-}
-#line 3086 "Zend/zend_ini_scanner.c"
-yy248:
- YYDEBUG(248, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy257;
- }
- if (yych <= ':') {
- if (yych <= '\r') {
- if (yych <= 0x08) {
- if (yych >= 0x01) goto yy256;
- } else {
- if (yych <= '\n') goto yy249;
- if (yych <= '\f') goto yy256;
- }
- } else {
- if (yych <= '"') {
- if (yych <= 0x1F) goto yy256;
- } else {
- if (yych <= '%') goto yy256;
- if (yych >= '*') goto yy256;
- }
- }
- } else {
- if (yych <= '^') {
- if (yych <= '<') {
- if (yych >= '<') goto yy256;
- } else {
- if (yych <= '=') goto yy249;
- if (yych <= ']') goto yy256;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '{') goto yy256;
- } else {
- if (yych != '~') goto yy256;
- }
- }
- }
-yy249:
- YYDEBUG(249, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 495 "Zend/zend_ini_scanner.l"
- { /* Get constant option value */
- RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
-}
-#line 3133 "Zend/zend_ini_scanner.c"
-yy250:
- YYDEBUG(250, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '<') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '/') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- goto yy256;
- } else {
- if (yych <= '9') goto yy257;
- if (yych == ';') goto yy249;
- goto yy256;
- }
- }
- } else {
- if (yych <= '_') {
- if (yych <= 'A') {
- if (yych <= '=') goto yy249;
- if (yych <= '@') goto yy256;
- goto yy280;
- } else {
- if (yych <= 'Z') goto yy257;
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- goto yy257;
- }
- } else {
- if (yych <= '{') {
- if (yych <= '`') goto yy256;
- if (yych <= 'a') goto yy280;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy251:
- YYDEBUG(251, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 'N') {
- if (yych <= '%') {
- if (yych <= '\f') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- if (yych <= '\n') goto yy249;
- goto yy256;
- } else {
- if (yych <= '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- if (yych <= '"') goto yy249;
- goto yy256;
- }
- } else {
- if (yych <= ':') {
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- if (yych <= '9') goto yy257;
- goto yy256;
- } else {
- if (yych <= '<') {
- if (yych <= ';') goto yy249;
- goto yy256;
- } else {
- if (yych <= '=') goto yy249;
- if (yych <= '@') goto yy256;
- goto yy257;
- }
- }
- }
- } else {
- if (yych <= 'n') {
- if (yych <= 'Z') {
- if (yych <= 'O') goto yy276;
- if (yych == 'U') goto yy277;
- goto yy257;
- } else {
- if (yych <= '^') {
- if (yych <= ']') goto yy256;
- goto yy249;
- } else {
- if (yych == '`') goto yy256;
- goto yy257;
- }
- }
- } else {
- if (yych <= 'z') {
- if (yych <= 'o') goto yy276;
- if (yych == 'u') goto yy277;
- goto yy257;
- } else {
- if (yych <= '|') {
- if (yych <= '{') goto yy256;
- goto yy249;
- } else {
- if (yych == '~') goto yy249;
- goto yy256;
- }
- }
- }
- }
-yy252:
- YYDEBUG(252, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= 'E') {
- if (yych <= '%') {
- if (yych <= '\f') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- if (yych <= '\n') goto yy249;
- goto yy256;
- } else {
- if (yych <= '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- if (yych <= '"') goto yy249;
- goto yy256;
- }
- } else {
- if (yych <= ':') {
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- if (yych <= '9') goto yy257;
- goto yy256;
- } else {
- if (yych <= '<') {
- if (yych <= ';') goto yy249;
- goto yy256;
- } else {
- if (yych <= '=') goto yy249;
- if (yych <= '@') goto yy256;
- goto yy257;
- }
- }
- }
- } else {
- if (yych <= 'e') {
- if (yych <= 'Z') {
- if (yych <= 'F') goto yy271;
- if (yych == 'N') goto yy265;
- goto yy257;
- } else {
- if (yych <= '^') {
- if (yych <= ']') goto yy256;
- goto yy249;
- } else {
- if (yych == '`') goto yy256;
- goto yy257;
- }
- }
- } else {
- if (yych <= 'z') {
- if (yych <= 'f') goto yy271;
- if (yych == 'n') goto yy265;
- goto yy257;
- } else {
- if (yych <= '|') {
- if (yych <= '{') goto yy256;
- goto yy249;
- } else {
- if (yych == '~') goto yy249;
- goto yy256;
- }
- }
- }
- }
-yy253:
- YYDEBUG(253, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'R') goto yy269;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'r') goto yy269;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy254:
- YYDEBUG(254, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'E') goto yy259;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'e') goto yy259;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy255:
- YYDEBUG(255, *YYCURSOR);
- yyaccept = 0;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy256:
- YYDEBUG(256, *YYCURSOR);
- if (yybm[0+yych] & 2) {
- goto yy255;
- }
- if (yych == '$') goto yy260;
- goto yy229;
-yy257:
- YYDEBUG(257, *YYCURSOR);
- yyaccept = 4;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(258, *YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy257;
- }
- if (yych <= ')') {
- if (yych <= '\r') {
- if (yych <= 0x08) {
- if (yych <= 0x00) goto yy249;
- goto yy255;
- } else {
- if (yych <= '\n') goto yy249;
- if (yych <= '\f') goto yy255;
- goto yy249;
- }
- } else {
- if (yych <= '#') {
- if (yych <= 0x1F) goto yy255;
- if (yych <= '"') goto yy249;
- goto yy255;
- } else {
- if (yych <= '$') goto yy260;
- if (yych <= '%') goto yy255;
- goto yy249;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= ':') goto yy255;
- goto yy249;
- } else {
- if (yych == '=') goto yy249;
- goto yy255;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy249;
- if (yych <= '{') goto yy255;
- goto yy249;
- } else {
- if (yych == '~') goto yy249;
- goto yy255;
- }
- }
- }
-yy259:
- YYDEBUG(259, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'S') goto yy265;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 's') goto yy265;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy260:
- YYDEBUG(260, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yych <= '\\') {
- if (yych <= 0x00) goto yy261;
- if (yych <= '[') goto yy255;
- goto yy262;
- } else {
- if (yych != '{') goto yy255;
- }
-yy261:
- YYDEBUG(261, *YYCURSOR);
- YYCURSOR = YYMARKER;
- if (yyaccept <= 3) {
- if (yyaccept <= 1) {
- if (yyaccept <= 0) {
- goto yy229;
- } else {
- goto yy231;
- }
- } else {
- if (yyaccept <= 2) {
- goto yy227;
- } else {
- goto yy244;
- }
- }
- } else {
- if (yyaccept <= 5) {
- if (yyaccept <= 4) {
- goto yy249;
- } else {
- goto yy266;
- }
- } else {
- goto yy273;
- }
- }
-yy262:
- YYDEBUG(262, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 8) {
- goto yy263;
- }
- goto yy255;
-yy263:
- YYDEBUG(263, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(264, *YYCURSOR);
- if (yybm[0+yych] & 8) {
- goto yy263;
- }
- if (yych <= 0x00) goto yy229;
- if (yych == '\\') goto yy262;
- goto yy255;
-yy265:
- YYDEBUG(265, *YYCURSOR);
- yyaccept = 5;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy267;
- }
- if (yych <= ';') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy266;
- if (yych <= '\t') goto yy256;
- } else {
- if (yych != '\r') goto yy256;
- }
- } else {
- if (yych <= ')') {
- if (yych <= '"') goto yy266;
- if (yych <= '%') goto yy256;
- } else {
- if (yych <= '/') goto yy256;
- if (yych <= '9') goto yy257;
- if (yych <= ':') goto yy256;
- }
- }
- } else {
- if (yych <= '_') {
- if (yych <= '@') {
- if (yych != '=') goto yy256;
- } else {
- if (yych <= 'Z') goto yy257;
- if (yych <= ']') goto yy256;
- if (yych >= '_') goto yy257;
- }
- } else {
- if (yych <= '{') {
- if (yych <= '`') goto yy256;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych >= 0x7F) goto yy256;
- }
- }
- }
-yy266:
- YYDEBUG(266, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 421 "Zend/zend_ini_scanner.l"
- { /* TRUE value (when used outside option value/offset this causes parse error!) */
- RETURN_TOKEN(BOOL_TRUE, "1", 1);
-}
-#line 3645 "Zend/zend_ini_scanner.c"
-yy267:
- YYDEBUG(267, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(268, *YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy267;
- }
- goto yy266;
-yy269:
- YYDEBUG(269, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych != 'U') goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'u') goto yy270;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy270:
- YYDEBUG(270, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'E') goto yy265;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'e') goto yy265;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy271:
- YYDEBUG(271, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych != 'F') goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'f') goto yy272;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy272:
- YYDEBUG(272, *YYCURSOR);
- yyaccept = 6;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yybm[0+yych] & 4) {
- goto yy257;
- }
- if (yych <= ')') {
- if (yych <= '\f') {
- if (yych <= 0x08) {
- if (yych >= 0x01) goto yy256;
- } else {
- if (yych <= '\t') goto yy274;
- if (yych >= '\v') goto yy256;
- }
- } else {
- if (yych <= ' ') {
- if (yych <= '\r') goto yy273;
- if (yych <= 0x1F) goto yy256;
- goto yy274;
- } else {
- if (yych <= '"') goto yy273;
- if (yych <= '%') goto yy256;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= ':') goto yy256;
- } else {
- if (yych != '=') goto yy256;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy273;
- if (yych <= '{') goto yy256;
- } else {
- if (yych != '~') goto yy256;
- }
- }
- }
-yy273:
- YYDEBUG(273, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 425 "Zend/zend_ini_scanner.l"
- { /* FALSE value (when used outside option value/offset this causes parse error!)*/
- RETURN_TOKEN(BOOL_FALSE, "", 0);
-}
-#line 3855 "Zend/zend_ini_scanner.c"
-yy274:
- YYDEBUG(274, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(275, *YYCURSOR);
- if (yych == '\t') goto yy274;
- if (yych == ' ') goto yy274;
- goto yy273;
-yy276:
- YYDEBUG(276, *YYCURSOR);
- yyaccept = 6;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '<') {
- if (yych <= ' ') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy273;
- if (yych <= 0x08) goto yy256;
- if (yych <= '\t') goto yy274;
- goto yy273;
- } else {
- if (yych == '\r') goto yy273;
- if (yych <= 0x1F) goto yy256;
- goto yy274;
- }
- } else {
- if (yych <= '/') {
- if (yych <= '"') goto yy273;
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy273;
- goto yy256;
- } else {
- if (yych <= '9') goto yy257;
- if (yych == ';') goto yy273;
- goto yy256;
- }
- }
- } else {
- if (yych <= '_') {
- if (yych <= 'N') {
- if (yych <= '=') goto yy273;
- if (yych <= '@') goto yy256;
- if (yych <= 'M') goto yy257;
- goto yy279;
- } else {
- if (yych <= 'Z') goto yy257;
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy273;
- goto yy257;
- }
- } else {
- if (yych <= 'z') {
- if (yych <= '`') goto yy256;
- if (yych == 'n') goto yy279;
- goto yy257;
- } else {
- if (yych <= '|') {
- if (yych <= '{') goto yy256;
- goto yy273;
- } else {
- if (yych == '~') goto yy273;
- goto yy256;
- }
- }
- }
- }
-yy277:
- YYDEBUG(277, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych != 'L') goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'l') goto yy278;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy278:
- YYDEBUG(278, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'L') goto yy272;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'l') goto yy272;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy279:
- YYDEBUG(279, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'E') goto yy272;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'e') goto yy272;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy280:
- YYDEBUG(280, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych != 'L') goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'l') goto yy281;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy281:
- YYDEBUG(281, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych != 'S') goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 's') goto yy282;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy282:
- YYDEBUG(282, *YYCURSOR);
- yyaccept = 4;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '=') {
- if (yych <= '"') {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy249;
- if (yych <= 0x08) goto yy256;
- goto yy249;
- } else {
- if (yych == '\r') goto yy249;
- if (yych <= 0x1F) goto yy256;
- goto yy249;
- }
- } else {
- if (yych <= '9') {
- if (yych <= '%') goto yy256;
- if (yych <= ')') goto yy249;
- if (yych <= '/') goto yy256;
- goto yy257;
- } else {
- if (yych == ';') goto yy249;
- if (yych <= '<') goto yy256;
- goto yy249;
- }
- }
- } else {
- if (yych <= '`') {
- if (yych <= 'Z') {
- if (yych <= '@') goto yy256;
- if (yych == 'E') goto yy272;
- goto yy257;
- } else {
- if (yych <= ']') goto yy256;
- if (yych <= '^') goto yy249;
- if (yych <= '_') goto yy257;
- goto yy256;
- }
- } else {
- if (yych <= '{') {
- if (yych == 'e') goto yy272;
- if (yych <= 'z') goto yy257;
- goto yy256;
- } else {
- if (yych == '}') goto yy256;
- if (yych <= '~') goto yy249;
- goto yy256;
- }
- }
- }
-yy283:
- YYDEBUG(283, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy284:
- YYDEBUG(284, *YYCURSOR);
- if (yybm[0+yych] & 32) {
- goto yy283;
- }
- if (yych >= '\r') goto yy287;
-yy285:
- YYDEBUG(285, *YYCURSOR);
- ++YYCURSOR;
-yy286:
- YYDEBUG(286, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 585 "Zend/zend_ini_scanner.l"
- { /* Comment */
- BEGIN(INITIAL);
- SCNG(lineno)++;
- return END_OF_LINE;
-}
-#line 4248 "Zend/zend_ini_scanner.c"
-yy287:
- YYDEBUG(287, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy285;
- goto yy286;
-yy288:
- YYDEBUG(288, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(289, *YYCURSOR);
- if (yybm[0+yych] & 64) {
- goto yy288;
- }
- if (yych <= ')') {
- if (yych <= '\r') {
- if (yych <= 0x08) {
- if (yych <= 0x00) goto yy244;
- goto yy255;
- } else {
- if (yych <= '\n') goto yy244;
- if (yych <= '\f') goto yy255;
- goto yy244;
- }
- } else {
- if (yych <= '#') {
- if (yych <= 0x1F) goto yy255;
- if (yych <= '"') goto yy244;
- goto yy255;
- } else {
- if (yych <= '$') goto yy260;
- if (yych <= '%') goto yy255;
- goto yy244;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= ':') goto yy255;
- goto yy244;
- } else {
- if (yych == '=') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy244;
- if (yych <= '{') goto yy255;
- goto yy244;
- } else {
- if (yych == '~') goto yy244;
- goto yy255;
- }
- }
- }
-yy290:
- YYDEBUG(290, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(291, *YYCURSOR);
- if (yych <= '.') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy244;
- if (yych <= 0x08) goto yy255;
- goto yy244;
- } else {
- if (yych == '\r') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '$') {
- if (yych <= '"') goto yy244;
- if (yych <= '#') goto yy255;
- goto yy260;
- } else {
- if (yych <= '%') goto yy255;
- if (yych <= ')') goto yy244;
- if (yych <= '-') goto yy255;
- goto yy288;
- }
- }
- } else {
- if (yych <= '=') {
- if (yych <= ':') {
- if (yych <= '/') goto yy255;
- if (yych <= '9') goto yy290;
- goto yy255;
- } else {
- if (yych == '<') goto yy255;
- goto yy244;
- }
- } else {
- if (yych <= '{') {
- if (yych == '^') goto yy244;
- goto yy255;
- } else {
- if (yych == '}') goto yy255;
- if (yych <= '~') goto yy244;
- goto yy255;
- }
- }
- }
-yy292:
- YYDEBUG(292, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(293, *YYCURSOR);
- if (yych <= '/') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy244;
- if (yych <= 0x08) goto yy255;
- goto yy244;
- } else {
- if (yych == '\r') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '$') {
- if (yych <= '"') goto yy244;
- if (yych <= '#') goto yy255;
- goto yy260;
- } else {
- if (yych <= '%') goto yy255;
- if (yych <= ')') goto yy244;
- goto yy255;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= '9') goto yy292;
- if (yych <= ':') goto yy255;
- goto yy244;
- } else {
- if (yych == '=') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy244;
- if (yych <= '{') goto yy255;
- goto yy244;
- } else {
- if (yych == '~') goto yy244;
- goto yy255;
- }
- }
- }
-yy294:
- YYDEBUG(294, *YYCURSOR);
- yyaccept = 3;
- YYMARKER = ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(295, *YYCURSOR);
- if (yych <= '/') {
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x00) goto yy244;
- if (yych <= 0x08) goto yy255;
- goto yy244;
- } else {
- if (yych == '\r') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '$') {
- if (yych <= '"') goto yy244;
- if (yych <= '#') goto yy255;
- goto yy260;
- } else {
- if (yych <= '%') goto yy255;
- if (yych <= ')') goto yy244;
- goto yy255;
- }
- }
- } else {
- if (yych <= ']') {
- if (yych <= ';') {
- if (yych <= '9') goto yy294;
- if (yych <= ':') goto yy255;
- goto yy244;
- } else {
- if (yych == '=') goto yy244;
- goto yy255;
- }
- } else {
- if (yych <= '|') {
- if (yych <= '^') goto yy244;
- if (yych <= '{') goto yy255;
- goto yy244;
- } else {
- if (yych == '~') goto yy244;
- goto yy255;
- }
- }
- }
-yy296:
- YYDEBUG(296, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(297, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy296;
- }
- YYDEBUG(298, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(299, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 368 "Zend/zend_ini_scanner.l"
- { /* Raw string */
- /* Eat leading and trailing single quotes */
- if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
- SCNG(yy_text)++;
- yyleng = yyleng - 2;
- }
- RETURN_TOKEN(TC_RAW, yytext, yyleng);
-}
-#line 4475 "Zend/zend_ini_scanner.c"
-yy300:
- YYDEBUG(300, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(301, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 401 "Zend/zend_ini_scanner.l"
- { /* Variable start */
- yy_push_state(ST_VARNAME TSRMLS_CC);
- return TC_DOLLAR_CURLY;
-}
-#line 4486 "Zend/zend_ini_scanner.c"
-yy302:
- YYDEBUG(302, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy303:
- YYDEBUG(303, *YYCURSOR);
- if (yych == '\t') goto yy302;
- if (yych == ' ') goto yy302;
- goto yy236;
-yy304:
- YYDEBUG(304, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy233;
-yy305:
- YYDEBUG(305, *YYCURSOR);
- yyaccept = 1;
- YYMARKER = ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy306:
- YYDEBUG(306, *YYCURSOR);
- if (yych <= 0x1F) {
- if (yych <= '\n') {
- if (yych <= 0x08) goto yy231;
- if (yych <= '\t') goto yy305;
- goto yy304;
- } else {
- if (yych == '\r') goto yy308;
- goto yy231;
- }
- } else {
- if (yych <= '"') {
- if (yych <= ' ') goto yy305;
- if (yych <= '!') goto yy231;
- } else {
- if (yych == ';') goto yy283;
- goto yy231;
- }
- }
- YYDEBUG(307, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy238;
-yy308:
- YYDEBUG(308, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy304;
- goto yy233;
- }
-/* *********************************** */
-yyc_ST_VARNAME:
- {
- static const unsigned char yybm[] = {
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 0, 0, 128, 128, 0, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 0, 0, 128, 0, 128, 0, 128,
- 0, 0, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 0, 128, 0, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 0, 128, 128, 0, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 0, 0, 0, 0, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128,
- };
- YYDEBUG(309, *YYCURSOR);
- YYFILL(2);
- yych = *YYCURSOR;
- if (yych <= ')') {
- if (yych <= '"') {
- if (yych <= '\f') {
- if (yych <= 0x08) goto yy311;
- if (yych <= '\n') goto yy313;
- } else {
- if (yych <= '\r') goto yy313;
- if (yych >= '!') goto yy313;
- }
- } else {
- if (yych <= '%') {
- if (yych == '$') goto yy313;
- } else {
- if (yych != '\'') goto yy313;
- }
- }
- } else {
- if (yych <= '[') {
- if (yych <= '<') {
- if (yych == ';') goto yy313;
- } else {
- if (yych <= '=') goto yy313;
- if (yych >= '[') goto yy313;
- }
- } else {
- if (yych <= 'z') {
- if (yych == '^') goto yy313;
- } else {
- if (yych == '}') goto yy315;
- if (yych <= '~') goto yy313;
- }
- }
- }
-yy311:
- YYDEBUG(311, *YYCURSOR);
- ++YYCURSOR;
- yych = *YYCURSOR;
- goto yy318;
-yy312:
- YYDEBUG(312, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 406 "Zend/zend_ini_scanner.l"
- { /* Variable name */
- /* Eat leading whitespace */
- EAT_LEADING_WHITESPACE();
-
- /* Eat trailing whitespace */
- EAT_TRAILING_WHITESPACE();
-
- RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
-}
-#line 4627 "Zend/zend_ini_scanner.c"
-yy313:
- YYDEBUG(313, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(314, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 603 "Zend/zend_ini_scanner.l"
- {
- return 0;
-}
-#line 4637 "Zend/zend_ini_scanner.c"
-yy315:
- YYDEBUG(315, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(316, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 416 "Zend/zend_ini_scanner.l"
- { /* Variable end */
- yy_pop_state(TSRMLS_C);
- return '}';
-}
-#line 4648 "Zend/zend_ini_scanner.c"
-yy317:
- YYDEBUG(317, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
-yy318:
- YYDEBUG(318, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy317;
- }
- goto yy312;
- }
-}
-#line 607 "Zend/zend_ini_scanner.l"
-
-}
+/* Generated by re2c 0.13.5 */
+#line 1 "Zend/zend_ini_scanner.l"
+/*
+ +----------------------------------------------------------------------+
+ | Zend Engine |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 2.00 of the Zend license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.zend.com/license/2_00.txt. |
+ | If you did not receive a copy of the Zend license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@zend.com so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Authors: Zeev Suraski <zeev@zend.com> |
+ | Jani Taskinen <jani@php.net> |
+ | Marcus Boerger <helly@php.net> |
+ | Nuno Lopes <nlopess@php.net> |
+ | Scott MacVicar <scottmac@php.net> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#include <errno.h>
+#include "zend.h"
+#include "zend_globals.h"
+#include <zend_ini_parser.h>
+#include "zend_ini_scanner.h"
+
+#if 0
+# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
+#else
+# define YYDEBUG(s, c)
+#endif
+
+#include "zend_ini_scanner_defs.h"
+
+#define YYCTYPE unsigned char
+/* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
+ * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
+#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
+#define YYCURSOR SCNG(yy_cursor)
+#define YYLIMIT SCNG(yy_limit)
+#define YYMARKER SCNG(yy_marker)
+
+#define YYGETCONDITION() SCNG(yy_state)
+#define YYSETCONDITION(s) SCNG(yy_state) = s
+
+#define STATE(name) yyc##name
+
+/* emulate flex constructs */
+#define BEGIN(state) YYSETCONDITION(STATE(state))
+#define YYSTATE YYGETCONDITION()
+#define yytext ((char*)SCNG(yy_text))
+#define yyleng SCNG(yy_leng)
+#define yyless(x) do { YYCURSOR = (unsigned char*)yytext + x; \
+ yyleng = (unsigned int)x; } while(0)
+
+/* #define yymore() goto yymore_restart */
+
+/* perform sanity check. If this message is triggered you should
+ increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
+#define YYMAXFILL 6
+#if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
+# error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
+#endif
+
+
+/* How it works (for the core ini directives):
+ * ===========================================
+ *
+ * 1. Scanner scans file for tokens and passes them to parser.
+ * 2. Parser parses the tokens and passes the name/value pairs to the callback
+ * function which stores them in the configuration hash table.
+ * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
+ * registering of ini entries and uses zend_get_configuration_directive()
+ * to fetch the previously stored name/value pair from configuration hash table
+ * and registers the static ini entries which match the name to the value
+ * into EG(ini_directives) hash table.
+ * 4. PATH section entries are used per-request from down to top, each overriding
+ * previous if one exists. zend_alter_ini_entry() is called for each entry.
+ * Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
+ * php_admin_* directives used within Apache httpd.conf when PHP is compiled as
+ * module for Apache.
+ * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
+ * stored in separate hash defined by SAPI.
+ */
+
+/* TODO: (ordered by importance :-)
+ * ===============================================================================
+ *
+ * - Separate constant lookup totally from plain strings (using CONSTANT pattern)
+ * - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
+ * - Add #include "some.ini"
+ * - Allow variables to refer to options also when using parse_ini_file()
+ *
+ */
+
+/* Globals Macros */
+#define SCNG INI_SCNG
+#ifdef ZTS
+ZEND_API ts_rsrc_id ini_scanner_globals_id;
+#else
+ZEND_API zend_ini_scanner_globals ini_scanner_globals;
+#endif
+
+/* Eat leading whitespace */
+#define EAT_LEADING_WHITESPACE() \
+ while (yytext[0]) { \
+ if (yytext[0] == ' ' || yytext[0] == '\t') { \
+ SCNG(yy_text)++; \
+ yyleng--; \
+ } else { \
+ break; \
+ } \
+ }
+
+/* Eat trailing whitespace + extra char */
+#define EAT_TRAILING_WHITESPACE_EX(ch) \
+ while (yyleng > 0 && ( \
+ (ch != 'X' && yytext[yyleng - 1] == ch) || \
+ yytext[yyleng - 1] == '\n' || \
+ yytext[yyleng - 1] == '\r' || \
+ yytext[yyleng - 1] == '\t' || \
+ yytext[yyleng - 1] == ' ') \
+ ) { \
+ yyleng--; \
+ }
+
+/* Eat trailing whitespace */
+#define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
+
+#define zend_ini_copy_value(retval, str, len) { \
+ Z_STRVAL_P(retval) = zend_strndup(str, len); \
+ Z_STRLEN_P(retval) = len; \
+ Z_TYPE_P(retval) = IS_STRING; \
+}
+
+#define RETURN_TOKEN(type, str, len) { \
+ zend_ini_copy_value(ini_lval, str, len); \
+ return type; \
+}
+
+static void _yy_push_state(int new_state TSRMLS_DC)
+{
+ zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
+ YYSETCONDITION(new_state);
+}
+
+#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
+
+static void yy_pop_state(TSRMLS_D)
+{
+ int *stack_state;
+ zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
+ YYSETCONDITION(*stack_state);
+ zend_stack_del_top(&SCNG(state_stack));
+}
+
+static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
+{
+ YYCURSOR = (YYCTYPE*)str;
+ SCNG(yy_start) = YYCURSOR;
+ YYLIMIT = YYCURSOR + len;
+}
+
+#define ini_filename SCNG(filename)
+
+/* {{{ init_ini_scanner()
+*/
+static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
+{
+ /* Sanity check */
+ if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
+ zend_error(E_WARNING, "Invalid scanner mode");
+ return FAILURE;
+ }
+
+ SCNG(lineno) = 1;
+ SCNG(scanner_mode) = scanner_mode;
+ SCNG(yy_in) = fh;
+
+ if (fh != NULL) {
+ ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
+ } else {
+ ini_filename = NULL;
+ }
+
+ zend_stack_init(&SCNG(state_stack));
+ BEGIN(INITIAL);
+
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ shutdown_ini_scanner()
+*/
+void shutdown_ini_scanner(TSRMLS_D)
+{
+ zend_stack_destroy(&SCNG(state_stack));
+ if (ini_filename) {
+ free(ini_filename);
+ }
+}
+/* }}} */
+
+/* {{{ zend_ini_scanner_get_lineno()
+*/
+int zend_ini_scanner_get_lineno(TSRMLS_D)
+{
+ return SCNG(lineno);
+}
+/* }}} */
+
+/* {{{ zend_ini_scanner_get_filename()
+*/
+char *zend_ini_scanner_get_filename(TSRMLS_D)
+{
+ return ini_filename ? ini_filename : "Unknown";
+}
+/* }}} */
+
+/* {{{ zend_ini_open_file_for_scanning()
+*/
+int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
+{
+ char *buf;
+ size_t size;
+
+ if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE) {
+ return FAILURE;
+ }
+
+ if (init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE) {
+ zend_file_handle_dtor(fh TSRMLS_CC);
+ return FAILURE;
+ }
+
+ yy_scan_buffer(buf, size TSRMLS_CC);
+
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ zend_ini_prepare_string_for_scanning()
+*/
+int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
+{
+ int len = strlen(str);
+
+ if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
+ return FAILURE;
+ }
+
+ yy_scan_buffer(str, len TSRMLS_CC);
+
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ zend_ini_escape_string()
+ */
+static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
+{
+ register char *s, *t;
+ char *end;
+
+ zend_ini_copy_value(lval, str, len);
+
+ /* convert escape sequences */
+ s = t = Z_STRVAL_P(lval);
+ end = s + Z_STRLEN_P(lval);
+
+ while (s < end) {
+ if (*s == '\\') {
+ s++;
+ if (s >= end) {
+ *t++ = '\\';
+ continue;
+ }
+ switch (*s) {
+ case '"':
+ if (*s != quote_type) {
+ *t++ = '\\';
+ *t++ = *s;
+ break;
+ }
+ case '\\':
+ case '$':
+ *t++ = *s;
+ Z_STRLEN_P(lval)--;
+ break;
+ default:
+ *t++ = '\\';
+ *t++ = *s;
+ break;
+ }
+ } else {
+ *t++ = *s;
+ }
+ if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
+ SCNG(lineno)++;
+ }
+ s++;
+ }
+ *t = 0;
+}
+/* }}} */
+
+int ini_lex(zval *ini_lval TSRMLS_DC)
+{
+restart:
+ SCNG(yy_text) = YYCURSOR;
+
+/* yymore_restart: */
+ /* detect EOF */
+ if (YYCURSOR >= YYLIMIT) {
+ if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
+ BEGIN(INITIAL);
+ return END_OF_LINE;
+ }
+ return 0;
+ }
+
+ /* Eat any UTF-8 BOM we find in the first 3 bytes */
+ if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
+ if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
+ YYCURSOR += 3;
+ goto restart;
+ }
+ }
+
+#line 337 "Zend/zend_ini_scanner.c"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ if (YYGETCONDITION() < 4) {
+ if (YYGETCONDITION() < 2) {
+ if (YYGETCONDITION() < 1) {
+ goto yyc_INITIAL;
+ } else {
+ goto yyc_ST_OFFSET;
+ }
+ } else {
+ if (YYGETCONDITION() < 3) {
+ goto yyc_ST_SECTION_VALUE;
+ } else {
+ goto yyc_ST_VALUE;
+ }
+ }
+ } else {
+ if (YYGETCONDITION() < 6) {
+ if (YYGETCONDITION() < 5) {
+ goto yyc_ST_SECTION_RAW;
+ } else {
+ goto yyc_ST_DOUBLE_QUOTES;
+ }
+ } else {
+ if (YYGETCONDITION() < 7) {
+ goto yyc_ST_VARNAME;
+ } else {
+ goto yyc_ST_RAW;
+ }
+ }
+ }
+/* *********************************** */
+yyc_INITIAL:
+ {
+ static const unsigned char yybm[] = {
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 160, 0, 144, 144, 0, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 240, 128, 128, 144, 128, 144, 128, 144,
+ 128, 128, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 128, 144, 128, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 128, 144, 144, 128, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 128, 128, 128, 128, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ 144, 144, 144, 144, 144, 144, 144, 144,
+ };
+
+ YYDEBUG(0, *YYCURSOR);
+ YYFILL(5);
+ yych = *YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch (yych) {
+ case '\t': goto yy4;
+ case '\n': goto yy6;
+ case '\r': goto yy8;
+ case ' ': goto yy9;
+ case '!':
+ case '"':
+ case '$':
+ case '&':
+ case '(':
+ case ')':
+ case '^':
+ case '{':
+ case '|':
+ case '}':
+ case '~': goto yy10;
+ case '#': goto yy12;
+ case '%':
+ case '\'':
+ case '*':
+ case '+':
+ case ',':
+ case '-':
+ case '.':
+ case '/':
+ case ':':
+ case '<':
+ case '>':
+ case '?':
+ case '@':
+ case ']': goto yy13;
+ case ';': goto yy14;
+ case '=': goto yy16;
+ case 'F':
+ case 'f': goto yy18;
+ case 'N':
+ case 'n': goto yy19;
+ case 'O':
+ case 'o': goto yy20;
+ case 'T':
+ case 't': goto yy21;
+ case 'Y':
+ case 'y': goto yy22;
+ case '[': goto yy23;
+ default: goto yy2;
+ }
+yy2:
+ YYDEBUG(2, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy26;
+yy3:
+ YYDEBUG(3, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 429 "Zend/zend_ini_scanner.l"
+ { /* Get option name */
+ /* Eat leading whitespace */
+ EAT_LEADING_WHITESPACE();
+
+ /* Eat trailing whitespace */
+ EAT_TRAILING_WHITESPACE();
+
+ RETURN_TOKEN(TC_LABEL, yytext, yyleng);
+}
+#line 476 "Zend/zend_ini_scanner.c"
+yy4:
+ YYDEBUG(4, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy68;
+yy5:
+ YYDEBUG(5, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 575 "Zend/zend_ini_scanner.l"
+ {
+ /* eat whitespace */
+ goto restart;
+}
+#line 490 "Zend/zend_ini_scanner.c"
+yy6:
+ YYDEBUG(6, *YYCURSOR);
+ ++YYCURSOR;
+yy7:
+ YYDEBUG(7, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 580 "Zend/zend_ini_scanner.l"
+ {
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 502 "Zend/zend_ini_scanner.c"
+yy8:
+ YYDEBUG(8, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy71;
+ goto yy7;
+yy9:
+ YYDEBUG(9, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy26;
+ if (yych <= '\t') goto yy67;
+ goto yy71;
+ } else {
+ if (yych == '\r') goto yy72;
+ if (yych <= 0x1F) goto yy26;
+ goto yy69;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych == '#') goto yy58;
+ goto yy26;
+ } else {
+ if (yych <= ';') goto yy53;
+ if (yych == '=') goto yy51;
+ goto yy26;
+ }
+ }
+yy10:
+ YYDEBUG(10, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(11, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 503 "Zend/zend_ini_scanner.l"
+ { /* Disallow these chars outside option values */
+ return yytext[0];
+}
+#line 541 "Zend/zend_ini_scanner.c"
+yy12:
+ YYDEBUG(12, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy59;
+yy13:
+ YYDEBUG(13, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy26;
+yy14:
+ YYDEBUG(14, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy54;
+ YYDEBUG(15, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+ {
+ return 0;
+}
+#line 562 "Zend/zend_ini_scanner.c"
+yy16:
+ YYDEBUG(16, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy52;
+yy17:
+ YYDEBUG(17, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 439 "Zend/zend_ini_scanner.l"
+ { /* Start option value */
+ if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
+ yy_push_state(ST_RAW TSRMLS_CC);
+ } else {
+ yy_push_state(ST_VALUE TSRMLS_CC);
+ }
+ return '=';
+}
+#line 580 "Zend/zend_ini_scanner.c"
+yy18:
+ YYDEBUG(18, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy48;
+ if (yych == 'a') goto yy48;
+ goto yy26;
+yy19:
+ YYDEBUG(19, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'O') goto yy44;
+ if (yych <= 'T') goto yy26;
+ goto yy45;
+ } else {
+ if (yych <= 'o') {
+ if (yych <= 'n') goto yy26;
+ goto yy44;
+ } else {
+ if (yych == 'u') goto yy45;
+ goto yy26;
+ }
+ }
+yy20:
+ YYDEBUG(20, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'N') {
+ if (yych == 'F') goto yy38;
+ if (yych <= 'M') goto yy26;
+ goto yy31;
+ } else {
+ if (yych <= 'f') {
+ if (yych <= 'e') goto yy26;
+ goto yy38;
+ } else {
+ if (yych == 'n') goto yy31;
+ goto yy26;
+ }
+ }
+yy21:
+ YYDEBUG(21, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy36;
+ if (yych == 'r') goto yy36;
+ goto yy26;
+yy22:
+ YYDEBUG(22, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy27;
+ if (yych == 'e') goto yy27;
+ goto yy26;
+yy23:
+ YYDEBUG(23, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(24, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 358 "Zend/zend_ini_scanner.l"
+ { /* Section start */
+ /* Enter section data lookup state */
+ if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
+ yy_push_state(ST_SECTION_RAW TSRMLS_CC);
+ } else {
+ yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
+ }
+ return TC_SECTION;
+}
+#line 646 "Zend/zend_ini_scanner.c"
+yy25:
+ YYDEBUG(25, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy26:
+ YYDEBUG(26, *YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy25;
+ }
+ if (yych == '[') goto yy28;
+ goto yy3;
+yy27:
+ YYDEBUG(27, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy31;
+ if (yych == 's') goto yy31;
+ goto yy26;
+yy28:
+ YYDEBUG(28, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(29, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy28;
+ }
+ YYDEBUG(30, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 383 "Zend/zend_ini_scanner.l"
+ { /* Start of option with offset */
+ /* Eat leading whitespace */
+ EAT_LEADING_WHITESPACE();
+
+ /* Eat trailing whitespace and [ */
+ EAT_TRAILING_WHITESPACE_EX('[');
+
+ /* Enter offset lookup state */
+ yy_push_state(ST_OFFSET TSRMLS_CC);
+
+ RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
+}
+#line 689 "Zend/zend_ini_scanner.c"
+yy31:
+ YYDEBUG(31, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(32, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy31;
+ }
+ if (yych <= '\'') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy25;
+ if (yych <= '\t') goto yy34;
+ } else {
+ if (yych != '\r') goto yy25;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych == '#') goto yy25;
+ } else {
+ if (yych != '&') goto yy25;
+ }
+ }
+ } else {
+ if (yych <= 'Z') {
+ if (yych <= ';') {
+ if (yych <= ')') goto yy33;
+ if (yych <= ':') goto yy25;
+ } else {
+ if (yych != '=') goto yy25;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= '[') goto yy28;
+ if (yych <= ']') goto yy25;
+ } else {
+ if (yych <= 'z') goto yy25;
+ if (yych >= 0x7F) goto yy25;
+ }
+ }
+ }
+yy33:
+ YYDEBUG(33, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 421 "Zend/zend_ini_scanner.l"
+ { /* TRUE value (when used outside option value/offset this causes parse error!) */
+ RETURN_TOKEN(BOOL_TRUE, "1", 1);
+}
+#line 739 "Zend/zend_ini_scanner.c"
+yy34:
+ YYDEBUG(34, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(35, *YYCURSOR);
+ if (yych == '\t') goto yy34;
+ if (yych == ' ') goto yy34;
+ goto yy33;
+yy36:
+ YYDEBUG(36, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy37;
+ if (yych != 'u') goto yy26;
+yy37:
+ YYDEBUG(37, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy31;
+ if (yych == 'e') goto yy31;
+ goto yy26;
+yy38:
+ YYDEBUG(38, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy39;
+ if (yych != 'f') goto yy26;
+yy39:
+ YYDEBUG(39, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(40, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy25;
+ if (yych <= '\t') goto yy42;
+ } else {
+ if (yych != '\r') goto yy25;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= ' ') goto yy39;
+ if (yych >= '#') goto yy25;
+ } else {
+ if (yych == '%') goto yy25;
+ }
+ }
+ } else {
+ if (yych <= '=') {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy25;
+ if (yych >= '*') goto yy25;
+ } else {
+ if (yych == '<') goto yy25;
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych == '[') goto yy28;
+ goto yy25;
+ } else {
+ if (yych <= '^') goto yy41;
+ if (yych <= 'z') goto yy25;
+ if (yych >= 0x7F) goto yy25;
+ }
+ }
+ }
+yy41:
+ YYDEBUG(41, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 425 "Zend/zend_ini_scanner.l"
+ { /* FALSE value (when used outside option value/offset this causes parse error!)*/
+ RETURN_TOKEN(BOOL_FALSE, "", 0);
+}
+#line 813 "Zend/zend_ini_scanner.c"
+yy42:
+ YYDEBUG(42, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(43, *YYCURSOR);
+ if (yych == '\t') goto yy42;
+ if (yych == ' ') goto yy42;
+ goto yy41;
+yy44:
+ YYDEBUG(44, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '\'') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy26;
+ if (yych <= '\t') goto yy42;
+ goto yy41;
+ } else {
+ if (yych == '\r') goto yy41;
+ goto yy26;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= ' ') goto yy39;
+ if (yych <= '"') goto yy41;
+ goto yy26;
+ } else {
+ if (yych == '%') goto yy26;
+ if (yych <= '&') goto yy41;
+ goto yy26;
+ }
+ }
+ } else {
+ if (yych <= 'N') {
+ if (yych <= ';') {
+ if (yych <= ')') goto yy41;
+ if (yych <= ':') goto yy26;
+ goto yy41;
+ } else {
+ if (yych == '=') goto yy41;
+ if (yych <= 'M') goto yy26;
+ goto yy47;
+ }
+ } else {
+ if (yych <= 'm') {
+ if (yych == '^') goto yy41;
+ goto yy26;
+ } else {
+ if (yych <= 'n') goto yy47;
+ if (yych <= 'z') goto yy26;
+ if (yych <= '~') goto yy41;
+ goto yy26;
+ }
+ }
+ }
+yy45:
+ YYDEBUG(45, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy46;
+ if (yych != 'l') goto yy26;
+yy46:
+ YYDEBUG(46, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy39;
+ if (yych == 'l') goto yy39;
+ goto yy26;
+yy47:
+ YYDEBUG(47, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy39;
+ if (yych == 'e') goto yy39;
+ goto yy26;
+yy48:
+ YYDEBUG(48, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy49;
+ if (yych != 'l') goto yy26;
+yy49:
+ YYDEBUG(49, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy50;
+ if (yych != 's') goto yy26;
+yy50:
+ YYDEBUG(50, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy39;
+ if (yych == 'e') goto yy39;
+ goto yy26;
+yy51:
+ YYDEBUG(51, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy52:
+ YYDEBUG(52, *YYCURSOR);
+ if (yych == '\t') goto yy51;
+ if (yych == ' ') goto yy51;
+ goto yy17;
+yy53:
+ YYDEBUG(53, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy54:
+ YYDEBUG(54, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy53;
+ }
+ if (yych >= '\r') goto yy57;
+yy55:
+ YYDEBUG(55, *YYCURSOR);
+ ++YYCURSOR;
+yy56:
+ YYDEBUG(56, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+ { /* Comment */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 936 "Zend/zend_ini_scanner.c"
+yy57:
+ YYDEBUG(57, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy55;
+ goto yy56;
+yy58:
+ YYDEBUG(58, *YYCURSOR);
+ yyaccept = 1;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy59:
+ YYDEBUG(59, *YYCURSOR);
+ if (yych <= '\'') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy58;
+ if (yych >= '\n') goto yy64;
+ } else {
+ if (yych == '\r') goto yy66;
+ goto yy58;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych == '#') goto yy58;
+ } else {
+ if (yych != '&') goto yy58;
+ }
+ }
+ } else {
+ if (yych <= 'Z') {
+ if (yych <= ';') {
+ if (yych <= ')') goto yy60;
+ if (yych <= ':') goto yy58;
+ } else {
+ if (yych != '=') goto yy58;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= '[') goto yy62;
+ if (yych <= ']') goto yy58;
+ } else {
+ if (yych <= 'z') goto yy58;
+ if (yych >= 0x7F) goto yy58;
+ }
+ }
+ }
+yy60:
+ YYDEBUG(60, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+ YYDEBUG(61, *YYCURSOR);
+ if (yych == '\n') goto yy64;
+ if (yych == '\r') goto yy66;
+ goto yy60;
+yy62:
+ YYDEBUG(62, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+ YYDEBUG(63, *YYCURSOR);
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy60;
+ if (yych <= '\t') goto yy62;
+ if (yych >= '\v') goto yy60;
+ } else {
+ if (yych <= '\r') goto yy66;
+ if (yych == ' ') goto yy62;
+ goto yy60;
+ }
+yy64:
+ YYDEBUG(64, *YYCURSOR);
+ ++YYCURSOR;
+yy65:
+ YYDEBUG(65, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 591 "Zend/zend_ini_scanner.l"
+ { /* #Comment */
+ zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 1022 "Zend/zend_ini_scanner.c"
+yy66:
+ YYDEBUG(66, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy64;
+ goto yy65;
+yy67:
+ YYDEBUG(67, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy68:
+ YYDEBUG(68, *YYCURSOR);
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy5;
+ if (yych <= '\t') goto yy67;
+ goto yy71;
+ } else {
+ if (yych == '\r') goto yy72;
+ if (yych <= 0x1F) goto yy5;
+ goto yy67;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych == '#') goto yy60;
+ goto yy5;
+ } else {
+ if (yych <= ';') goto yy53;
+ if (yych == '=') goto yy51;
+ goto yy5;
+ }
+ }
+yy69:
+ YYDEBUG(69, *YYCURSOR);
+ yyaccept = 1;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+ YYDEBUG(70, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy25;
+ if (yych <= '\t') goto yy67;
+ } else {
+ if (yych == '\r') goto yy72;
+ goto yy25;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= ' ') goto yy69;
+ if (yych <= '"') goto yy3;
+ goto yy58;
+ } else {
+ if (yych == '%') goto yy25;
+ goto yy3;
+ }
+ }
+ } else {
+ if (yych <= '=') {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy25;
+ if (yych <= ')') goto yy3;
+ goto yy25;
+ } else {
+ if (yych <= ';') goto yy53;
+ if (yych <= '<') goto yy25;
+ goto yy51;
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych == '[') goto yy28;
+ goto yy25;
+ } else {
+ if (yych <= '^') goto yy3;
+ if (yych <= 'z') goto yy25;
+ if (yych <= '~') goto yy3;
+ goto yy25;
+ }
+ }
+ }
+yy71:
+ YYDEBUG(71, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy7;
+yy72:
+ YYDEBUG(72, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy71;
+ goto yy7;
+ }
+/* *********************************** */
+yyc_ST_DOUBLE_QUOTES:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ YYDEBUG(73, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych == '"') goto yy77;
+ if (yych == '$') goto yy79;
+ YYDEBUG(75, *YYCURSOR);
+ ++YYCURSOR;
+yy76:
+ YYDEBUG(76, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 535 "Zend/zend_ini_scanner.l"
+ { /* Escape double quoted string contents */
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '"':
+ if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
+ continue;
+ }
+ break;
+ case '$':
+ if (*YYCURSOR == '{') {
+ break;
+ }
+ continue;
+ case '\\':
+ if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
+ YYCURSOR++;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ break;
+ }
+
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
+ return TC_QUOTED_STRING;
+}
+#line 1198 "Zend/zend_ini_scanner.c"
+yy77:
+ YYDEBUG(77, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy83;
+yy78:
+ YYDEBUG(78, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 530 "Zend/zend_ini_scanner.l"
+ { /* Double quoted '"' string ends */
+ yy_pop_state(TSRMLS_C);
+ return '"';
+}
+#line 1212 "Zend/zend_ini_scanner.c"
+yy79:
+ YYDEBUG(79, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '{') goto yy76;
+ YYDEBUG(80, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(81, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+ { /* Variable start */
+ yy_push_state(ST_VARNAME TSRMLS_CC);
+ return TC_DOLLAR_CURLY;
+}
+#line 1226 "Zend/zend_ini_scanner.c"
+yy82:
+ YYDEBUG(82, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy83:
+ YYDEBUG(83, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy82;
+ }
+ goto yy78;
+ }
+/* *********************************** */
+yyc_ST_OFFSET:
+ {
+ static const unsigned char yybm[] = {
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 194, 64, 66, 66, 64, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 194, 66, 64, 66, 68, 66, 66, 0,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 114, 114, 114, 114, 114, 114, 114, 114,
+ 114, 114, 66, 64, 66, 66, 66, 66,
+ 66, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 66, 72, 64, 66, 82,
+ 66, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ };
+ YYDEBUG(84, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '-') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy86;
+ if (yych <= '\t') goto yy88;
+ goto yy89;
+ } else {
+ if (yych == '\r') goto yy89;
+ if (yych >= ' ') goto yy88;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych == '"') goto yy91;
+ if (yych >= '$') goto yy93;
+ } else {
+ if (yych == '\'') goto yy94;
+ if (yych >= '-') goto yy95;
+ }
+ }
+ } else {
+ if (yych <= 'Z') {
+ if (yych <= '9') {
+ if (yych <= '.') goto yy96;
+ if (yych >= '0') goto yy97;
+ } else {
+ if (yych == ';') goto yy89;
+ if (yych >= 'A') goto yy99;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= '[') goto yy86;
+ if (yych <= '\\') goto yy101;
+ if (yych <= ']') goto yy102;
+ } else {
+ if (yych == '`') goto yy86;
+ if (yych <= 'z') goto yy99;
+ }
+ }
+ }
+yy86:
+ YYDEBUG(86, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy105;
+yy87:
+ YYDEBUG(87, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 521 "Zend/zend_ini_scanner.l"
+ { /* Get rest as section/offset value */
+ RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 1330 "Zend/zend_ini_scanner.c"
+yy88:
+ YYDEBUG(88, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy131;
+ }
+ if (yych == '"') goto yy133;
+ if (yych == ']') goto yy134;
+ goto yy105;
+yy89:
+ YYDEBUG(89, *YYCURSOR);
+ ++YYCURSOR;
+yy90:
+ YYDEBUG(90, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+ {
+ return 0;
+}
+#line 1351 "Zend/zend_ini_scanner.c"
+yy91:
+ YYDEBUG(91, *YYCURSOR);
+ ++YYCURSOR;
+yy92:
+ YYDEBUG(92, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+ { /* Double quoted '"' string start */
+ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+ return '"';
+}
+#line 1363 "Zend/zend_ini_scanner.c"
+yy93:
+ YYDEBUG(93, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy90;
+ if (yych <= '[') goto yy104;
+ goto yy109;
+ } else {
+ if (yych == '{') goto yy129;
+ goto yy104;
+ }
+yy94:
+ YYDEBUG(94, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy125;
+ }
+ goto yy90;
+yy95:
+ YYDEBUG(95, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy105;
+ if (yych <= '9') goto yy123;
+ goto yy105;
+yy96:
+ YYDEBUG(96, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy105;
+ if (yych <= '9') goto yy121;
+ goto yy105;
+yy97:
+ YYDEBUG(97, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\'') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy98;
+ if (yych <= '\f') goto yy105;
+ } else {
+ if (yych == '"') goto yy98;
+ if (yych <= '&') goto yy105;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych == '.') goto yy117;
+ if (yych <= '/') goto yy105;
+ goto yy119;
+ } else {
+ if (yych <= ';') {
+ if (yych <= ':') goto yy105;
+ } else {
+ if (yych != ']') goto yy105;
+ }
+ }
+ }
+yy98:
+ YYDEBUG(98, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+ { /* Get number option value as string */
+ RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 1429 "Zend/zend_ini_scanner.c"
+yy99:
+ YYDEBUG(99, *YYCURSOR);
+ yyaccept = 3;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy115;
+ }
+ if (yych <= '"') {
+ if (yych <= '\f') {
+ if (yych != '\n') goto yy105;
+ } else {
+ if (yych <= '\r') goto yy100;
+ if (yych <= '!') goto yy105;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych != '\'') goto yy105;
+ } else {
+ if (yych <= ';') goto yy100;
+ if (yych != ']') goto yy105;
+ }
+ }
+yy100:
+ YYDEBUG(100, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+ { /* Get constant option value */
+ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 1459 "Zend/zend_ini_scanner.c"
+yy101:
+ YYDEBUG(101, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy104;
+yy102:
+ YYDEBUG(102, *YYCURSOR);
+ ++YYCURSOR;
+yy103:
+ YYDEBUG(103, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 396 "Zend/zend_ini_scanner.l"
+ { /* End of section or an option offset */
+ BEGIN(INITIAL);
+ return ']';
+}
+#line 1475 "Zend/zend_ini_scanner.c"
+yy104:
+ YYDEBUG(104, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy105:
+ YYDEBUG(105, *YYCURSOR);
+ if (yybm[0+yych] & 2) {
+ goto yy104;
+ }
+ if (yych == '$') goto yy107;
+ if (yych != '\\') goto yy87;
+yy106:
+ YYDEBUG(106, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ goto yy104;
+yy107:
+ YYDEBUG(107, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy108;
+ if (yych <= '[') goto yy104;
+ goto yy109;
+ } else {
+ if (yych != '{') goto yy104;
+ }
+yy108:
+ YYDEBUG(108, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 1) {
+ if (yyaccept <= 0) {
+ goto yy87;
+ } else {
+ goto yy90;
+ }
+ } else {
+ if (yyaccept <= 2) {
+ goto yy98;
+ } else {
+ goto yy100;
+ }
+ }
+yy109:
+ YYDEBUG(109, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 4) {
+ goto yy110;
+ }
+ if (yych == '\\') goto yy112;
+ goto yy104;
+yy110:
+ YYDEBUG(110, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(111, *YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy110;
+ }
+ if (yych == '\\') goto yy114;
+ goto yy104;
+yy112:
+ YYDEBUG(112, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(113, *YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy110;
+ }
+ if (yych == '\\') goto yy112;
+ goto yy104;
+yy114:
+ YYDEBUG(114, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 4) {
+ goto yy110;
+ }
+ if (yych == '\\') goto yy112;
+ goto yy104;
+yy115:
+ YYDEBUG(115, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(116, *YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy115;
+ }
+ if (yych <= '$') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy100;
+ if (yych <= '\f') goto yy104;
+ goto yy100;
+ } else {
+ if (yych == '"') goto yy100;
+ if (yych <= '#') goto yy104;
+ goto yy107;
+ }
+ } else {
+ if (yych <= ';') {
+ if (yych == '\'') goto yy100;
+ if (yych <= ':') goto yy104;
+ goto yy100;
+ } else {
+ if (yych <= '[') goto yy104;
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy100;
+ goto yy104;
+ }
+ }
+yy117:
+ YYDEBUG(117, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(118, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy117;
+ }
+ if (yych <= '$') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy98;
+ if (yych <= '\f') goto yy104;
+ goto yy98;
+ } else {
+ if (yych == '"') goto yy98;
+ if (yych <= '#') goto yy104;
+ goto yy107;
+ }
+ } else {
+ if (yych <= ';') {
+ if (yych == '\'') goto yy98;
+ if (yych <= ':') goto yy104;
+ goto yy98;
+ } else {
+ if (yych <= '[') goto yy104;
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy98;
+ goto yy104;
+ }
+ }
+yy119:
+ YYDEBUG(119, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(120, *YYCURSOR);
+ if (yych <= '\'') {
+ if (yych <= '!') {
+ if (yych <= '\n') {
+ if (yych <= '\t') goto yy104;
+ goto yy98;
+ } else {
+ if (yych == '\r') goto yy98;
+ goto yy104;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= '"') goto yy98;
+ goto yy104;
+ } else {
+ if (yych <= '$') goto yy107;
+ if (yych <= '&') goto yy104;
+ goto yy98;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '.') {
+ if (yych <= '-') goto yy104;
+ goto yy117;
+ } else {
+ if (yych <= '/') goto yy104;
+ if (yych <= '9') goto yy119;
+ goto yy104;
+ }
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy98;
+ goto yy104;
+ } else {
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy98;
+ goto yy104;
+ }
+ }
+ }
+yy121:
+ YYDEBUG(121, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(122, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy98;
+ if (yych <= '\f') goto yy104;
+ goto yy98;
+ } else {
+ if (yych <= '"') {
+ if (yych <= '!') goto yy104;
+ goto yy98;
+ } else {
+ if (yych == '$') goto yy107;
+ goto yy104;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy98;
+ if (yych <= '/') goto yy104;
+ if (yych <= '9') goto yy121;
+ goto yy104;
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy98;
+ goto yy104;
+ } else {
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy98;
+ goto yy104;
+ }
+ }
+ }
+yy123:
+ YYDEBUG(123, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(124, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy98;
+ if (yych <= '\f') goto yy104;
+ goto yy98;
+ } else {
+ if (yych <= '"') {
+ if (yych <= '!') goto yy104;
+ goto yy98;
+ } else {
+ if (yych == '$') goto yy107;
+ goto yy104;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy98;
+ if (yych <= '/') goto yy104;
+ if (yych <= '9') goto yy123;
+ goto yy104;
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy98;
+ goto yy104;
+ } else {
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy98;
+ goto yy104;
+ }
+ }
+ }
+yy125:
+ YYDEBUG(125, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(126, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy125;
+ }
+ YYDEBUG(127, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(128, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+ { /* Raw string */
+ /* Eat leading and trailing single quotes */
+ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+ SCNG(yy_text)++;
+ yyleng = yyleng - 2;
+ }
+ RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 1774 "Zend/zend_ini_scanner.c"
+yy129:
+ YYDEBUG(129, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(130, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+ { /* Variable start */
+ yy_push_state(ST_VARNAME TSRMLS_CC);
+ return TC_DOLLAR_CURLY;
+}
+#line 1785 "Zend/zend_ini_scanner.c"
+yy131:
+ YYDEBUG(131, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(132, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy131;
+ }
+ if (yych <= '$') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy87;
+ if (yych <= '\f') goto yy104;
+ goto yy87;
+ } else {
+ if (yych == '"') goto yy133;
+ if (yych <= '#') goto yy104;
+ goto yy107;
+ }
+ } else {
+ if (yych <= ';') {
+ if (yych == '\'') goto yy87;
+ if (yych <= ':') goto yy104;
+ goto yy87;
+ } else {
+ if (yych <= '[') goto yy104;
+ if (yych <= '\\') goto yy106;
+ if (yych <= ']') goto yy134;
+ goto yy104;
+ }
+ }
+yy133:
+ YYDEBUG(133, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy92;
+yy134:
+ YYDEBUG(134, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy103;
+ }
+/* *********************************** */
+yyc_ST_RAW:
+ {
+ static const unsigned char yybm[] = {
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 192, 0, 64, 64, 0, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 192, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ };
+ YYDEBUG(135, *YYCURSOR);
+ YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= '\f') {
+ if (yych <= 0x08) {
+ if (yych >= 0x01) goto yy139;
+ } else {
+ if (yych <= '\t') goto yy141;
+ if (yych <= '\n') goto yy142;
+ goto yy139;
+ }
+ } else {
+ if (yych <= ' ') {
+ if (yych <= '\r') goto yy144;
+ if (yych <= 0x1F) goto yy139;
+ goto yy141;
+ } else {
+ if (yych == ';') goto yy145;
+ goto yy139;
+ }
+ }
+ YYDEBUG(137, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(138, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 598 "Zend/zend_ini_scanner.l"
+ { /* End of option value (if EOF is reached before EOL */
+ BEGIN(INITIAL);
+ return END_OF_LINE;
+}
+#line 1895 "Zend/zend_ini_scanner.c"
+yy139:
+ YYDEBUG(139, *YYCURSOR);
+ ++YYCURSOR;
+yy140:
+ YYDEBUG(140, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 448 "Zend/zend_ini_scanner.l"
+ { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
+ char *sc = NULL;
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR) {
+ case '\n':
+ case '\r':
+ goto end_raw_value_chars;
+ break;
+ case ';':
+ if (sc == NULL) {
+ sc = YYCURSOR;
+ }
+ /* no break */
+ default:
+ YYCURSOR++;
+ break;
+ }
+ }
+end_raw_value_chars:
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ /* Eat trailing semicolons */
+ while (yytext[yyleng - 1] == ';') {
+ yyleng--;
+ }
+
+ /* Eat leading and trailing double quotes */
+ if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
+ SCNG(yy_text)++;
+ yyleng = yyleng - 2;
+ } else if (sc) {
+ YYCURSOR = sc;
+ yyleng = YYCURSOR - SCNG(yy_text);
+ }
+ RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 1939 "Zend/zend_ini_scanner.c"
+yy141:
+ YYDEBUG(141, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\r') {
+ if (yych <= 0x08) goto yy140;
+ if (yych <= '\n') goto yy153;
+ if (yych <= '\f') goto yy140;
+ goto yy153;
+ } else {
+ if (yych <= ' ') {
+ if (yych <= 0x1F) goto yy140;
+ goto yy153;
+ } else {
+ if (yych == ';') goto yy153;
+ goto yy140;
+ }
+ }
+yy142:
+ YYDEBUG(142, *YYCURSOR);
+ ++YYCURSOR;
+yy143:
+ YYDEBUG(143, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 489 "Zend/zend_ini_scanner.l"
+ { /* End of option value */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 1970 "Zend/zend_ini_scanner.c"
+yy144:
+ YYDEBUG(144, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy151;
+ goto yy143;
+yy145:
+ YYDEBUG(145, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy147;
+yy146:
+ YYDEBUG(146, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy147:
+ YYDEBUG(147, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy146;
+ }
+ if (yych >= '\r') goto yy150;
+yy148:
+ YYDEBUG(148, *YYCURSOR);
+ ++YYCURSOR;
+yy149:
+ YYDEBUG(149, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+ { /* Comment */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 2004 "Zend/zend_ini_scanner.c"
+yy150:
+ YYDEBUG(150, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy148;
+ goto yy149;
+yy151:
+ YYDEBUG(151, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy143;
+yy152:
+ YYDEBUG(152, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy153:
+ YYDEBUG(153, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy152;
+ }
+ if (yych <= '\f') {
+ if (yych == '\n') goto yy151;
+ } else {
+ if (yych <= '\r') goto yy155;
+ if (yych == ';') goto yy146;
+ }
+ YYDEBUG(154, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 575 "Zend/zend_ini_scanner.l"
+ {
+ /* eat whitespace */
+ goto restart;
+}
+#line 2038 "Zend/zend_ini_scanner.c"
+yy155:
+ YYDEBUG(155, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy151;
+ goto yy143;
+ }
+/* *********************************** */
+yyc_ST_SECTION_RAW:
+ {
+ static const unsigned char yybm[] = {
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 192, 0, 128, 128, 0, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 192, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 0, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ };
+ YYDEBUG(156, *YYCURSOR);
+ YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= '\f') {
+ if (yych == '\n') goto yy160;
+ } else {
+ if (yych <= '\r') goto yy160;
+ if (yych == ']') goto yy162;
+ }
+ YYDEBUG(158, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy169;
+yy159:
+ YYDEBUG(159, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 485 "Zend/zend_ini_scanner.l"
+ { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
+ RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 2102 "Zend/zend_ini_scanner.c"
+yy160:
+ YYDEBUG(160, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(161, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+ {
+ return 0;
+}
+#line 2112 "Zend/zend_ini_scanner.c"
+yy162:
+ YYDEBUG(162, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy165;
+yy163:
+ YYDEBUG(163, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 377 "Zend/zend_ini_scanner.l"
+ { /* End of section */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return ']';
+}
+#line 2127 "Zend/zend_ini_scanner.c"
+yy164:
+ YYDEBUG(164, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy165:
+ YYDEBUG(165, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy164;
+ }
+ if (yych == '\n') goto yy166;
+ if (yych == '\r') goto yy167;
+ goto yy163;
+yy166:
+ YYDEBUG(166, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy163;
+yy167:
+ YYDEBUG(167, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy166;
+ goto yy163;
+yy168:
+ YYDEBUG(168, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy169:
+ YYDEBUG(169, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy168;
+ }
+ goto yy159;
+ }
+/* *********************************** */
+yyc_ST_SECTION_VALUE:
+ {
+ static const unsigned char yybm[] = {
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 134, 128, 132, 132, 128, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 134, 132, 128, 132, 136, 132, 132, 0,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 228, 228, 228, 228, 228, 228, 228, 228,
+ 228, 228, 132, 128, 132, 132, 132, 132,
+ 132, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 132, 144, 128, 132, 164,
+ 132, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ 132, 132, 132, 132, 132, 132, 132, 132,
+ };
+ YYDEBUG(170, *YYCURSOR);
+ YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= '-') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy172;
+ if (yych <= '\t') goto yy174;
+ goto yy175;
+ } else {
+ if (yych == '\r') goto yy175;
+ if (yych >= ' ') goto yy174;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych == '"') goto yy177;
+ if (yych >= '$') goto yy179;
+ } else {
+ if (yych == '\'') goto yy180;
+ if (yych >= '-') goto yy181;
+ }
+ }
+ } else {
+ if (yych <= 'Z') {
+ if (yych <= '9') {
+ if (yych <= '.') goto yy182;
+ if (yych >= '0') goto yy183;
+ } else {
+ if (yych == ';') goto yy175;
+ if (yych >= 'A') goto yy185;
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= '[') goto yy172;
+ if (yych <= '\\') goto yy187;
+ if (yych <= ']') goto yy188;
+ } else {
+ if (yych == '`') goto yy172;
+ if (yych <= 'z') goto yy185;
+ }
+ }
+ }
+yy172:
+ YYDEBUG(172, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy195;
+yy173:
+ YYDEBUG(173, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 521 "Zend/zend_ini_scanner.l"
+ { /* Get rest as section/offset value */
+ RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 2253 "Zend/zend_ini_scanner.c"
+yy174:
+ YYDEBUG(174, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy221;
+ goto yy195;
+ } else {
+ if (yych <= ' ') goto yy221;
+ if (yych == '"') goto yy223;
+ goto yy195;
+ }
+yy175:
+ YYDEBUG(175, *YYCURSOR);
+ ++YYCURSOR;
+yy176:
+ YYDEBUG(176, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+ {
+ return 0;
+}
+#line 2276 "Zend/zend_ini_scanner.c"
+yy177:
+ YYDEBUG(177, *YYCURSOR);
+ ++YYCURSOR;
+yy178:
+ YYDEBUG(178, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+ { /* Double quoted '"' string start */
+ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+ return '"';
+}
+#line 2288 "Zend/zend_ini_scanner.c"
+yy179:
+ YYDEBUG(179, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy176;
+ if (yych <= '[') goto yy194;
+ goto yy199;
+ } else {
+ if (yych == '{') goto yy219;
+ goto yy194;
+ }
+yy180:
+ YYDEBUG(180, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy215;
+ }
+ goto yy176;
+yy181:
+ YYDEBUG(181, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy195;
+ if (yych <= '9') goto yy213;
+ goto yy195;
+yy182:
+ YYDEBUG(182, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy195;
+ if (yych <= '9') goto yy211;
+ goto yy195;
+yy183:
+ YYDEBUG(183, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '\'') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy184;
+ if (yych <= '\f') goto yy195;
+ } else {
+ if (yych == '"') goto yy184;
+ if (yych <= '&') goto yy195;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych == '.') goto yy207;
+ if (yych <= '/') goto yy195;
+ goto yy209;
+ } else {
+ if (yych <= ';') {
+ if (yych <= ':') goto yy195;
+ } else {
+ if (yych != ']') goto yy195;
+ }
+ }
+ }
+yy184:
+ YYDEBUG(184, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+ { /* Get number option value as string */
+ RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 2354 "Zend/zend_ini_scanner.c"
+yy185:
+ YYDEBUG(185, *YYCURSOR);
+ yyaccept = 3;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy205;
+ }
+ if (yych <= '"') {
+ if (yych <= '\f') {
+ if (yych != '\n') goto yy195;
+ } else {
+ if (yych <= '\r') goto yy186;
+ if (yych <= '!') goto yy195;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych != '\'') goto yy195;
+ } else {
+ if (yych <= ';') goto yy186;
+ if (yych != ']') goto yy195;
+ }
+ }
+yy186:
+ YYDEBUG(186, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+ { /* Get constant option value */
+ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 2384 "Zend/zend_ini_scanner.c"
+yy187:
+ YYDEBUG(187, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy194;
+yy188:
+ YYDEBUG(188, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy191;
+yy189:
+ YYDEBUG(189, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 377 "Zend/zend_ini_scanner.l"
+ { /* End of section */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return ']';
+}
+#line 2403 "Zend/zend_ini_scanner.c"
+yy190:
+ YYDEBUG(190, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy191:
+ YYDEBUG(191, *YYCURSOR);
+ if (yybm[0+yych] & 2) {
+ goto yy190;
+ }
+ if (yych == '\n') goto yy192;
+ if (yych == '\r') goto yy193;
+ goto yy189;
+yy192:
+ YYDEBUG(192, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy189;
+yy193:
+ YYDEBUG(193, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy192;
+ goto yy189;
+yy194:
+ YYDEBUG(194, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy195:
+ YYDEBUG(195, *YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy194;
+ }
+ if (yych == '$') goto yy197;
+ if (yych != '\\') goto yy173;
+yy196:
+ YYDEBUG(196, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ goto yy194;
+yy197:
+ YYDEBUG(197, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy198;
+ if (yych <= '[') goto yy194;
+ goto yy199;
+ } else {
+ if (yych != '{') goto yy194;
+ }
+yy198:
+ YYDEBUG(198, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 1) {
+ if (yyaccept <= 0) {
+ goto yy173;
+ } else {
+ goto yy176;
+ }
+ } else {
+ if (yyaccept <= 2) {
+ goto yy184;
+ } else {
+ goto yy186;
+ }
+ }
+yy199:
+ YYDEBUG(199, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 8) {
+ goto yy200;
+ }
+ if (yych == '\\') goto yy202;
+ goto yy194;
+yy200:
+ YYDEBUG(200, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(201, *YYCURSOR);
+ if (yybm[0+yych] & 8) {
+ goto yy200;
+ }
+ if (yych == '\\') goto yy204;
+ goto yy194;
+yy202:
+ YYDEBUG(202, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(203, *YYCURSOR);
+ if (yybm[0+yych] & 8) {
+ goto yy200;
+ }
+ if (yych == '\\') goto yy202;
+ goto yy194;
+yy204:
+ YYDEBUG(204, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 8) {
+ goto yy200;
+ }
+ if (yych == '\\') goto yy202;
+ goto yy194;
+yy205:
+ YYDEBUG(205, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(206, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy205;
+ }
+ if (yych <= '$') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy186;
+ if (yych <= '\f') goto yy194;
+ goto yy186;
+ } else {
+ if (yych == '"') goto yy186;
+ if (yych <= '#') goto yy194;
+ goto yy197;
+ }
+ } else {
+ if (yych <= ';') {
+ if (yych == '\'') goto yy186;
+ if (yych <= ':') goto yy194;
+ goto yy186;
+ } else {
+ if (yych <= '[') goto yy194;
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy186;
+ goto yy194;
+ }
+ }
+yy207:
+ YYDEBUG(207, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(208, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy207;
+ }
+ if (yych <= '$') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy184;
+ if (yych <= '\f') goto yy194;
+ goto yy184;
+ } else {
+ if (yych == '"') goto yy184;
+ if (yych <= '#') goto yy194;
+ goto yy197;
+ }
+ } else {
+ if (yych <= ';') {
+ if (yych == '\'') goto yy184;
+ if (yych <= ':') goto yy194;
+ goto yy184;
+ } else {
+ if (yych <= '[') goto yy194;
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy184;
+ goto yy194;
+ }
+ }
+yy209:
+ YYDEBUG(209, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(210, *YYCURSOR);
+ if (yych <= '\'') {
+ if (yych <= '!') {
+ if (yych <= '\n') {
+ if (yych <= '\t') goto yy194;
+ goto yy184;
+ } else {
+ if (yych == '\r') goto yy184;
+ goto yy194;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= '"') goto yy184;
+ goto yy194;
+ } else {
+ if (yych <= '$') goto yy197;
+ if (yych <= '&') goto yy194;
+ goto yy184;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '.') {
+ if (yych <= '-') goto yy194;
+ goto yy207;
+ } else {
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy209;
+ goto yy194;
+ }
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy184;
+ goto yy194;
+ } else {
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy184;
+ goto yy194;
+ }
+ }
+ }
+yy211:
+ YYDEBUG(211, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(212, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy184;
+ if (yych <= '\f') goto yy194;
+ goto yy184;
+ } else {
+ if (yych <= '"') {
+ if (yych <= '!') goto yy194;
+ goto yy184;
+ } else {
+ if (yych == '$') goto yy197;
+ goto yy194;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy184;
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy211;
+ goto yy194;
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy184;
+ goto yy194;
+ } else {
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy184;
+ goto yy194;
+ }
+ }
+ }
+yy213:
+ YYDEBUG(213, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(214, *YYCURSOR);
+ if (yych <= '&') {
+ if (yych <= '\r') {
+ if (yych == '\n') goto yy184;
+ if (yych <= '\f') goto yy194;
+ goto yy184;
+ } else {
+ if (yych <= '"') {
+ if (yych <= '!') goto yy194;
+ goto yy184;
+ } else {
+ if (yych == '$') goto yy197;
+ goto yy194;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '\'') goto yy184;
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy213;
+ goto yy194;
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy184;
+ goto yy194;
+ } else {
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy184;
+ goto yy194;
+ }
+ }
+ }
+yy215:
+ YYDEBUG(215, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(216, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy215;
+ }
+ YYDEBUG(217, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(218, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+ { /* Raw string */
+ /* Eat leading and trailing single quotes */
+ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+ SCNG(yy_text)++;
+ yyleng = yyleng - 2;
+ }
+ RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 2724 "Zend/zend_ini_scanner.c"
+yy219:
+ YYDEBUG(219, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(220, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+ { /* Variable start */
+ yy_push_state(ST_VARNAME TSRMLS_CC);
+ return TC_DOLLAR_CURLY;
+}
+#line 2735 "Zend/zend_ini_scanner.c"
+yy221:
+ YYDEBUG(221, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(222, *YYCURSOR);
+ if (yych <= '"') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy194;
+ if (yych <= '\t') goto yy221;
+ if (yych <= '\n') goto yy173;
+ goto yy194;
+ } else {
+ if (yych <= 0x1F) {
+ if (yych <= '\r') goto yy173;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy221;
+ if (yych <= '!') goto yy194;
+ }
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= '$') {
+ if (yych <= '#') goto yy194;
+ goto yy197;
+ } else {
+ if (yych == '\'') goto yy173;
+ goto yy194;
+ }
+ } else {
+ if (yych <= '[') {
+ if (yych <= ';') goto yy173;
+ goto yy194;
+ } else {
+ if (yych <= '\\') goto yy196;
+ if (yych <= ']') goto yy173;
+ goto yy194;
+ }
+ }
+ }
+yy223:
+ YYDEBUG(223, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy178;
+ }
+/* *********************************** */
+yyc_ST_VALUE:
+ {
+ static const unsigned char yybm[] = {
+ 160, 162, 162, 162, 162, 162, 162, 162,
+ 162, 176, 128, 162, 162, 128, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 176, 160, 160, 162, 168, 162, 160, 32,
+ 160, 160, 162, 162, 162, 162, 162, 162,
+ 230, 230, 230, 230, 230, 230, 230, 230,
+ 230, 230, 162, 160, 162, 160, 162, 162,
+ 162, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 162, 162, 162, 160, 166,
+ 162, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 162, 160, 162, 160, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ 162, 162, 162, 162, 162, 162, 162, 162,
+ };
+ YYDEBUG(224, *YYCURSOR);
+ YYFILL(6);
+ yych = *YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch (yych) {
+ case 0x00: goto yy226;
+ case '\t':
+ case ' ': goto yy230;
+ case '\n': goto yy232;
+ case '\r': goto yy234;
+ case '!':
+ case '&':
+ case '(':
+ case ')':
+ case '^':
+ case '|':
+ case '~': goto yy235;
+ case '"': goto yy237;
+ case '$': goto yy239;
+ case '\'': goto yy240;
+ case '-': goto yy241;
+ case '.': goto yy242;
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9': goto yy243;
+ case ';': goto yy245;
+ case '=': goto yy246;
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'G':
+ case 'H':
+ case 'I':
+ case 'J':
+ case 'K':
+ case 'L':
+ case 'M':
+ case 'P':
+ case 'Q':
+ case 'R':
+ case 'S':
+ case 'U':
+ case 'V':
+ case 'W':
+ case 'X':
+ case 'Z':
+ case '_':
+ case 'a':
+ case 'b':
+ case 'c':
+ case 'd':
+ case 'e':
+ case 'g':
+ case 'h':
+ case 'i':
+ case 'j':
+ case 'k':
+ case 'l':
+ case 'm':
+ case 'p':
+ case 'q':
+ case 'r':
+ case 's':
+ case 'u':
+ case 'v':
+ case 'w':
+ case 'x':
+ case 'z': goto yy248;
+ case 'F':
+ case 'f': goto yy250;
+ case 'N':
+ case 'n': goto yy251;
+ case 'O':
+ case 'o': goto yy252;
+ case 'T':
+ case 't': goto yy253;
+ case 'Y':
+ case 'y': goto yy254;
+ default: goto yy228;
+ }
+yy226:
+ YYDEBUG(226, *YYCURSOR);
+ ++YYCURSOR;
+yy227:
+ YYDEBUG(227, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 598 "Zend/zend_ini_scanner.l"
+ { /* End of option value (if EOF is reached before EOL */
+ BEGIN(INITIAL);
+ return END_OF_LINE;
+}
+#line 2921 "Zend/zend_ini_scanner.c"
+yy228:
+ YYDEBUG(228, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy256;
+yy229:
+ YYDEBUG(229, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 517 "Zend/zend_ini_scanner.l"
+ { /* Get everything else as option/offset value */
+ RETURN_TOKEN(TC_STRING, yytext, yyleng);
+}
+#line 2934 "Zend/zend_ini_scanner.c"
+yy230:
+ YYDEBUG(230, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy306;
+yy231:
+ YYDEBUG(231, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 571 "Zend/zend_ini_scanner.l"
+ {
+ RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
+}
+#line 2947 "Zend/zend_ini_scanner.c"
+yy232:
+ YYDEBUG(232, *YYCURSOR);
+ ++YYCURSOR;
+yy233:
+ YYDEBUG(233, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 489 "Zend/zend_ini_scanner.l"
+ { /* End of option value */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 2960 "Zend/zend_ini_scanner.c"
+yy234:
+ YYDEBUG(234, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy304;
+ goto yy233;
+yy235:
+ YYDEBUG(235, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy303;
+yy236:
+ YYDEBUG(236, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 507 "Zend/zend_ini_scanner.l"
+ { /* Boolean operators */
+ return yytext[0];
+}
+#line 2978 "Zend/zend_ini_scanner.c"
+yy237:
+ YYDEBUG(237, *YYCURSOR);
+ ++YYCURSOR;
+yy238:
+ YYDEBUG(238, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 525 "Zend/zend_ini_scanner.l"
+ { /* Double quoted '"' string start */
+ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
+ return '"';
+}
+#line 2990 "Zend/zend_ini_scanner.c"
+yy239:
+ YYDEBUG(239, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy227;
+ if (yych <= '[') goto yy255;
+ goto yy262;
+ } else {
+ if (yych == '{') goto yy300;
+ goto yy255;
+ }
+yy240:
+ YYDEBUG(240, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy296;
+ }
+ goto yy227;
+yy241:
+ YYDEBUG(241, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy256;
+ if (yych <= '9') goto yy294;
+ goto yy256;
+yy242:
+ YYDEBUG(242, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') goto yy256;
+ if (yych <= '9') goto yy292;
+ goto yy256;
+yy243:
+ YYDEBUG(243, *YYCURSOR);
+ yyaccept = 3;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy244;
+ if (yych <= 0x08) goto yy256;
+ } else {
+ if (yych != '\r') goto yy256;
+ }
+ } else {
+ if (yych <= ')') {
+ if (yych <= '"') goto yy244;
+ if (yych <= '%') goto yy256;
+ } else {
+ if (yych == '.') goto yy288;
+ goto yy256;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= '9') goto yy290;
+ if (yych <= ':') goto yy256;
+ } else {
+ if (yych != '=') goto yy256;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy244;
+ if (yych <= '{') goto yy256;
+ } else {
+ if (yych != '~') goto yy256;
+ }
+ }
+ }
+yy244:
+ YYDEBUG(244, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 499 "Zend/zend_ini_scanner.l"
+ { /* Get number option value as string */
+ RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
+}
+#line 3069 "Zend/zend_ini_scanner.c"
+yy245:
+ YYDEBUG(245, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy284;
+yy246:
+ YYDEBUG(246, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(247, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 511 "Zend/zend_ini_scanner.l"
+ { /* Make = used in option value to trigger error */
+ yyless(0);
+ BEGIN(INITIAL);
+ return END_OF_LINE;
+}
+#line 3086 "Zend/zend_ini_scanner.c"
+yy248:
+ YYDEBUG(248, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy257;
+ }
+ if (yych <= ':') {
+ if (yych <= '\r') {
+ if (yych <= 0x08) {
+ if (yych >= 0x01) goto yy256;
+ } else {
+ if (yych <= '\n') goto yy249;
+ if (yych <= '\f') goto yy256;
+ }
+ } else {
+ if (yych <= '"') {
+ if (yych <= 0x1F) goto yy256;
+ } else {
+ if (yych <= '%') goto yy256;
+ if (yych >= '*') goto yy256;
+ }
+ }
+ } else {
+ if (yych <= '^') {
+ if (yych <= '<') {
+ if (yych >= '<') goto yy256;
+ } else {
+ if (yych <= '=') goto yy249;
+ if (yych <= ']') goto yy256;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '{') goto yy256;
+ } else {
+ if (yych != '~') goto yy256;
+ }
+ }
+ }
+yy249:
+ YYDEBUG(249, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 495 "Zend/zend_ini_scanner.l"
+ { /* Get constant option value */
+ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
+}
+#line 3133 "Zend/zend_ini_scanner.c"
+yy250:
+ YYDEBUG(250, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '<') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '/') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ goto yy256;
+ } else {
+ if (yych <= '9') goto yy257;
+ if (yych == ';') goto yy249;
+ goto yy256;
+ }
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= 'A') {
+ if (yych <= '=') goto yy249;
+ if (yych <= '@') goto yy256;
+ goto yy280;
+ } else {
+ if (yych <= 'Z') goto yy257;
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ goto yy257;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych <= '`') goto yy256;
+ if (yych <= 'a') goto yy280;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy251:
+ YYDEBUG(251, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'N') {
+ if (yych <= '%') {
+ if (yych <= '\f') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ if (yych <= '\n') goto yy249;
+ goto yy256;
+ } else {
+ if (yych <= '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ if (yych <= '"') goto yy249;
+ goto yy256;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ if (yych <= '9') goto yy257;
+ goto yy256;
+ } else {
+ if (yych <= '<') {
+ if (yych <= ';') goto yy249;
+ goto yy256;
+ } else {
+ if (yych <= '=') goto yy249;
+ if (yych <= '@') goto yy256;
+ goto yy257;
+ }
+ }
+ }
+ } else {
+ if (yych <= 'n') {
+ if (yych <= 'Z') {
+ if (yych <= 'O') goto yy276;
+ if (yych == 'U') goto yy277;
+ goto yy257;
+ } else {
+ if (yych <= '^') {
+ if (yych <= ']') goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '`') goto yy256;
+ goto yy257;
+ }
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych <= 'o') goto yy276;
+ if (yych == 'u') goto yy277;
+ goto yy257;
+ } else {
+ if (yych <= '|') {
+ if (yych <= '{') goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+ }
+yy252:
+ YYDEBUG(252, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'E') {
+ if (yych <= '%') {
+ if (yych <= '\f') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ if (yych <= '\n') goto yy249;
+ goto yy256;
+ } else {
+ if (yych <= '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ if (yych <= '"') goto yy249;
+ goto yy256;
+ }
+ } else {
+ if (yych <= ':') {
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ if (yych <= '9') goto yy257;
+ goto yy256;
+ } else {
+ if (yych <= '<') {
+ if (yych <= ';') goto yy249;
+ goto yy256;
+ } else {
+ if (yych <= '=') goto yy249;
+ if (yych <= '@') goto yy256;
+ goto yy257;
+ }
+ }
+ }
+ } else {
+ if (yych <= 'e') {
+ if (yych <= 'Z') {
+ if (yych <= 'F') goto yy271;
+ if (yych == 'N') goto yy265;
+ goto yy257;
+ } else {
+ if (yych <= '^') {
+ if (yych <= ']') goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '`') goto yy256;
+ goto yy257;
+ }
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych <= 'f') goto yy271;
+ if (yych == 'n') goto yy265;
+ goto yy257;
+ } else {
+ if (yych <= '|') {
+ if (yych <= '{') goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+ }
+yy253:
+ YYDEBUG(253, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'R') goto yy269;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'r') goto yy269;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy254:
+ YYDEBUG(254, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'E') goto yy259;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'e') goto yy259;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy255:
+ YYDEBUG(255, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy256:
+ YYDEBUG(256, *YYCURSOR);
+ if (yybm[0+yych] & 2) {
+ goto yy255;
+ }
+ if (yych == '$') goto yy260;
+ goto yy229;
+yy257:
+ YYDEBUG(257, *YYCURSOR);
+ yyaccept = 4;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(258, *YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy257;
+ }
+ if (yych <= ')') {
+ if (yych <= '\r') {
+ if (yych <= 0x08) {
+ if (yych <= 0x00) goto yy249;
+ goto yy255;
+ } else {
+ if (yych <= '\n') goto yy249;
+ if (yych <= '\f') goto yy255;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= 0x1F) goto yy255;
+ if (yych <= '"') goto yy249;
+ goto yy255;
+ } else {
+ if (yych <= '$') goto yy260;
+ if (yych <= '%') goto yy255;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= ':') goto yy255;
+ goto yy249;
+ } else {
+ if (yych == '=') goto yy249;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy249;
+ if (yych <= '{') goto yy255;
+ goto yy249;
+ } else {
+ if (yych == '~') goto yy249;
+ goto yy255;
+ }
+ }
+ }
+yy259:
+ YYDEBUG(259, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'S') goto yy265;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 's') goto yy265;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy260:
+ YYDEBUG(260, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '\\') {
+ if (yych <= 0x00) goto yy261;
+ if (yych <= '[') goto yy255;
+ goto yy262;
+ } else {
+ if (yych != '{') goto yy255;
+ }
+yy261:
+ YYDEBUG(261, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 3) {
+ if (yyaccept <= 1) {
+ if (yyaccept <= 0) {
+ goto yy229;
+ } else {
+ goto yy231;
+ }
+ } else {
+ if (yyaccept <= 2) {
+ goto yy227;
+ } else {
+ goto yy244;
+ }
+ }
+ } else {
+ if (yyaccept <= 5) {
+ if (yyaccept <= 4) {
+ goto yy249;
+ } else {
+ goto yy266;
+ }
+ } else {
+ goto yy273;
+ }
+ }
+yy262:
+ YYDEBUG(262, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ if (yybm[0+yych] & 8) {
+ goto yy263;
+ }
+ goto yy255;
+yy263:
+ YYDEBUG(263, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(264, *YYCURSOR);
+ if (yybm[0+yych] & 8) {
+ goto yy263;
+ }
+ if (yych <= 0x00) goto yy229;
+ if (yych == '\\') goto yy262;
+ goto yy255;
+yy265:
+ YYDEBUG(265, *YYCURSOR);
+ yyaccept = 5;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy267;
+ }
+ if (yych <= ';') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy266;
+ if (yych <= '\t') goto yy256;
+ } else {
+ if (yych != '\r') goto yy256;
+ }
+ } else {
+ if (yych <= ')') {
+ if (yych <= '"') goto yy266;
+ if (yych <= '%') goto yy256;
+ } else {
+ if (yych <= '/') goto yy256;
+ if (yych <= '9') goto yy257;
+ if (yych <= ':') goto yy256;
+ }
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= '@') {
+ if (yych != '=') goto yy256;
+ } else {
+ if (yych <= 'Z') goto yy257;
+ if (yych <= ']') goto yy256;
+ if (yych >= '_') goto yy257;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych <= '`') goto yy256;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych >= 0x7F) goto yy256;
+ }
+ }
+ }
+yy266:
+ YYDEBUG(266, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 421 "Zend/zend_ini_scanner.l"
+ { /* TRUE value (when used outside option value/offset this causes parse error!) */
+ RETURN_TOKEN(BOOL_TRUE, "1", 1);
+}
+#line 3645 "Zend/zend_ini_scanner.c"
+yy267:
+ YYDEBUG(267, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(268, *YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy267;
+ }
+ goto yy266;
+yy269:
+ YYDEBUG(269, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych != 'U') goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'u') goto yy270;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy270:
+ YYDEBUG(270, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'E') goto yy265;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'e') goto yy265;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy271:
+ YYDEBUG(271, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych != 'F') goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'f') goto yy272;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy272:
+ YYDEBUG(272, *YYCURSOR);
+ yyaccept = 6;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy257;
+ }
+ if (yych <= ')') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) {
+ if (yych >= 0x01) goto yy256;
+ } else {
+ if (yych <= '\t') goto yy274;
+ if (yych >= '\v') goto yy256;
+ }
+ } else {
+ if (yych <= ' ') {
+ if (yych <= '\r') goto yy273;
+ if (yych <= 0x1F) goto yy256;
+ goto yy274;
+ } else {
+ if (yych <= '"') goto yy273;
+ if (yych <= '%') goto yy256;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= ':') goto yy256;
+ } else {
+ if (yych != '=') goto yy256;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy273;
+ if (yych <= '{') goto yy256;
+ } else {
+ if (yych != '~') goto yy256;
+ }
+ }
+ }
+yy273:
+ YYDEBUG(273, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 425 "Zend/zend_ini_scanner.l"
+ { /* FALSE value (when used outside option value/offset this causes parse error!)*/
+ RETURN_TOKEN(BOOL_FALSE, "", 0);
+}
+#line 3855 "Zend/zend_ini_scanner.c"
+yy274:
+ YYDEBUG(274, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(275, *YYCURSOR);
+ if (yych == '\t') goto yy274;
+ if (yych == ' ') goto yy274;
+ goto yy273;
+yy276:
+ YYDEBUG(276, *YYCURSOR);
+ yyaccept = 6;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '<') {
+ if (yych <= ' ') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy273;
+ if (yych <= 0x08) goto yy256;
+ if (yych <= '\t') goto yy274;
+ goto yy273;
+ } else {
+ if (yych == '\r') goto yy273;
+ if (yych <= 0x1F) goto yy256;
+ goto yy274;
+ }
+ } else {
+ if (yych <= '/') {
+ if (yych <= '"') goto yy273;
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy273;
+ goto yy256;
+ } else {
+ if (yych <= '9') goto yy257;
+ if (yych == ';') goto yy273;
+ goto yy256;
+ }
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= 'N') {
+ if (yych <= '=') goto yy273;
+ if (yych <= '@') goto yy256;
+ if (yych <= 'M') goto yy257;
+ goto yy279;
+ } else {
+ if (yych <= 'Z') goto yy257;
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy273;
+ goto yy257;
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych <= '`') goto yy256;
+ if (yych == 'n') goto yy279;
+ goto yy257;
+ } else {
+ if (yych <= '|') {
+ if (yych <= '{') goto yy256;
+ goto yy273;
+ } else {
+ if (yych == '~') goto yy273;
+ goto yy256;
+ }
+ }
+ }
+ }
+yy277:
+ YYDEBUG(277, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych != 'L') goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'l') goto yy278;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy278:
+ YYDEBUG(278, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'L') goto yy272;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'l') goto yy272;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy279:
+ YYDEBUG(279, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'E') goto yy272;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'e') goto yy272;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy280:
+ YYDEBUG(280, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych != 'L') goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'l') goto yy281;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy281:
+ YYDEBUG(281, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych != 'S') goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 's') goto yy282;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy282:
+ YYDEBUG(282, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '=') {
+ if (yych <= '"') {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy249;
+ if (yych <= 0x08) goto yy256;
+ goto yy249;
+ } else {
+ if (yych == '\r') goto yy249;
+ if (yych <= 0x1F) goto yy256;
+ goto yy249;
+ }
+ } else {
+ if (yych <= '9') {
+ if (yych <= '%') goto yy256;
+ if (yych <= ')') goto yy249;
+ if (yych <= '/') goto yy256;
+ goto yy257;
+ } else {
+ if (yych == ';') goto yy249;
+ if (yych <= '<') goto yy256;
+ goto yy249;
+ }
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= 'Z') {
+ if (yych <= '@') goto yy256;
+ if (yych == 'E') goto yy272;
+ goto yy257;
+ } else {
+ if (yych <= ']') goto yy256;
+ if (yych <= '^') goto yy249;
+ if (yych <= '_') goto yy257;
+ goto yy256;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == 'e') goto yy272;
+ if (yych <= 'z') goto yy257;
+ goto yy256;
+ } else {
+ if (yych == '}') goto yy256;
+ if (yych <= '~') goto yy249;
+ goto yy256;
+ }
+ }
+ }
+yy283:
+ YYDEBUG(283, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy284:
+ YYDEBUG(284, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy283;
+ }
+ if (yych >= '\r') goto yy287;
+yy285:
+ YYDEBUG(285, *YYCURSOR);
+ ++YYCURSOR;
+yy286:
+ YYDEBUG(286, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 585 "Zend/zend_ini_scanner.l"
+ { /* Comment */
+ BEGIN(INITIAL);
+ SCNG(lineno)++;
+ return END_OF_LINE;
+}
+#line 4248 "Zend/zend_ini_scanner.c"
+yy287:
+ YYDEBUG(287, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy285;
+ goto yy286;
+yy288:
+ YYDEBUG(288, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(289, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy288;
+ }
+ if (yych <= ')') {
+ if (yych <= '\r') {
+ if (yych <= 0x08) {
+ if (yych <= 0x00) goto yy244;
+ goto yy255;
+ } else {
+ if (yych <= '\n') goto yy244;
+ if (yych <= '\f') goto yy255;
+ goto yy244;
+ }
+ } else {
+ if (yych <= '#') {
+ if (yych <= 0x1F) goto yy255;
+ if (yych <= '"') goto yy244;
+ goto yy255;
+ } else {
+ if (yych <= '$') goto yy260;
+ if (yych <= '%') goto yy255;
+ goto yy244;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= ':') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '=') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy244;
+ if (yych <= '{') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '~') goto yy244;
+ goto yy255;
+ }
+ }
+ }
+yy290:
+ YYDEBUG(290, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(291, *YYCURSOR);
+ if (yych <= '.') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy244;
+ if (yych <= 0x08) goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '\r') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych <= '"') goto yy244;
+ if (yych <= '#') goto yy255;
+ goto yy260;
+ } else {
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy244;
+ if (yych <= '-') goto yy255;
+ goto yy288;
+ }
+ }
+ } else {
+ if (yych <= '=') {
+ if (yych <= ':') {
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy290;
+ goto yy255;
+ } else {
+ if (yych == '<') goto yy255;
+ goto yy244;
+ }
+ } else {
+ if (yych <= '{') {
+ if (yych == '^') goto yy244;
+ goto yy255;
+ } else {
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy244;
+ goto yy255;
+ }
+ }
+ }
+yy292:
+ YYDEBUG(292, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(293, *YYCURSOR);
+ if (yych <= '/') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy244;
+ if (yych <= 0x08) goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '\r') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych <= '"') goto yy244;
+ if (yych <= '#') goto yy255;
+ goto yy260;
+ } else {
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy244;
+ goto yy255;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= '9') goto yy292;
+ if (yych <= ':') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '=') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy244;
+ if (yych <= '{') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '~') goto yy244;
+ goto yy255;
+ }
+ }
+ }
+yy294:
+ YYDEBUG(294, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(295, *YYCURSOR);
+ if (yych <= '/') {
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x00) goto yy244;
+ if (yych <= 0x08) goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '\r') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '$') {
+ if (yych <= '"') goto yy244;
+ if (yych <= '#') goto yy255;
+ goto yy260;
+ } else {
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy244;
+ goto yy255;
+ }
+ }
+ } else {
+ if (yych <= ']') {
+ if (yych <= ';') {
+ if (yych <= '9') goto yy294;
+ if (yych <= ':') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '=') goto yy244;
+ goto yy255;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '^') goto yy244;
+ if (yych <= '{') goto yy255;
+ goto yy244;
+ } else {
+ if (yych == '~') goto yy244;
+ goto yy255;
+ }
+ }
+ }
+yy296:
+ YYDEBUG(296, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(297, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy296;
+ }
+ YYDEBUG(298, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(299, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 368 "Zend/zend_ini_scanner.l"
+ { /* Raw string */
+ /* Eat leading and trailing single quotes */
+ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
+ SCNG(yy_text)++;
+ yyleng = yyleng - 2;
+ }
+ RETURN_TOKEN(TC_RAW, yytext, yyleng);
+}
+#line 4475 "Zend/zend_ini_scanner.c"
+yy300:
+ YYDEBUG(300, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(301, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 401 "Zend/zend_ini_scanner.l"
+ { /* Variable start */
+ yy_push_state(ST_VARNAME TSRMLS_CC);
+ return TC_DOLLAR_CURLY;
+}
+#line 4486 "Zend/zend_ini_scanner.c"
+yy302:
+ YYDEBUG(302, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy303:
+ YYDEBUG(303, *YYCURSOR);
+ if (yych == '\t') goto yy302;
+ if (yych == ' ') goto yy302;
+ goto yy236;
+yy304:
+ YYDEBUG(304, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy233;
+yy305:
+ YYDEBUG(305, *YYCURSOR);
+ yyaccept = 1;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+yy306:
+ YYDEBUG(306, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych <= '\n') {
+ if (yych <= 0x08) goto yy231;
+ if (yych <= '\t') goto yy305;
+ goto yy304;
+ } else {
+ if (yych == '\r') goto yy308;
+ goto yy231;
+ }
+ } else {
+ if (yych <= '"') {
+ if (yych <= ' ') goto yy305;
+ if (yych <= '!') goto yy231;
+ } else {
+ if (yych == ';') goto yy283;
+ goto yy231;
+ }
+ }
+ YYDEBUG(307, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy238;
+yy308:
+ YYDEBUG(308, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy304;
+ goto yy233;
+ }
+/* *********************************** */
+yyc_ST_VARNAME:
+ {
+ static const unsigned char yybm[] = {
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 0, 0, 128, 128, 0, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 0, 0, 128, 0, 128, 0, 128,
+ 0, 0, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 0, 128, 0, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 0, 128, 128, 0, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 0, 0, 0, 0, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ };
+ YYDEBUG(309, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= ')') {
+ if (yych <= '"') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy311;
+ if (yych <= '\n') goto yy313;
+ } else {
+ if (yych <= '\r') goto yy313;
+ if (yych >= '!') goto yy313;
+ }
+ } else {
+ if (yych <= '%') {
+ if (yych == '$') goto yy313;
+ } else {
+ if (yych != '\'') goto yy313;
+ }
+ }
+ } else {
+ if (yych <= '[') {
+ if (yych <= '<') {
+ if (yych == ';') goto yy313;
+ } else {
+ if (yych <= '=') goto yy313;
+ if (yych >= '[') goto yy313;
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych == '^') goto yy313;
+ } else {
+ if (yych == '}') goto yy315;
+ if (yych <= '~') goto yy313;
+ }
+ }
+ }
+yy311:
+ YYDEBUG(311, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy318;
+yy312:
+ YYDEBUG(312, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 406 "Zend/zend_ini_scanner.l"
+ { /* Variable name */
+ /* Eat leading whitespace */
+ EAT_LEADING_WHITESPACE();
+
+ /* Eat trailing whitespace */
+ EAT_TRAILING_WHITESPACE();
+
+ RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
+}
+#line 4627 "Zend/zend_ini_scanner.c"
+yy313:
+ YYDEBUG(313, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(314, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 603 "Zend/zend_ini_scanner.l"
+ {
+ return 0;
+}
+#line 4637 "Zend/zend_ini_scanner.c"
+yy315:
+ YYDEBUG(315, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(316, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 416 "Zend/zend_ini_scanner.l"
+ { /* Variable end */
+ yy_pop_state(TSRMLS_C);
+ return '}';
+}
+#line 4648 "Zend/zend_ini_scanner.c"
+yy317:
+ YYDEBUG(317, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy318:
+ YYDEBUG(318, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy317;
+ }
+ goto yy312;
+ }
+}
+#line 607 "Zend/zend_ini_scanner.l"
+
+}
diff --git a/Zend/zend_ini_scanner_defs.h b/Zend/zend_ini_scanner_defs.h
index 5723954978..287d7bc1fb 100644
--- a/Zend/zend_ini_scanner_defs.h
+++ b/Zend/zend_ini_scanner_defs.h
@@ -1,13 +1,13 @@
-/* Generated by re2c 0.13.5 */
-#line 3 "Zend/zend_ini_scanner_defs.h"
-
-enum YYCONDTYPE {
- yycINITIAL,
- yycST_OFFSET,
- yycST_SECTION_VALUE,
- yycST_VALUE,
- yycST_SECTION_RAW,
- yycST_DOUBLE_QUOTES,
- yycST_VARNAME,
- yycST_RAW,
-};
+/* Generated by re2c 0.13.5 */
+#line 3 "Zend/zend_ini_scanner_defs.h"
+
+enum YYCONDTYPE {
+ yycINITIAL,
+ yycST_OFFSET,
+ yycST_SECTION_VALUE,
+ yycST_VALUE,
+ yycST_SECTION_RAW,
+ yycST_DOUBLE_QUOTES,
+ yycST_VARNAME,
+ yycST_RAW,
+};
diff --git a/Zend/zend_interfaces.c b/Zend/zend_interfaces.c
index 4b01eb3c4f..f9a020c656 100644
--- a/Zend/zend_interfaces.c
+++ b/Zend/zend_interfaces.c
@@ -162,7 +162,7 @@ ZEND_API int zend_user_it_valid(zend_object_iterator *_iter TSRMLS_DC)
zend_call_method_with_0_params(&object, iter->ce, &iter->ce->iterator_funcs.zf_valid, "valid", &more);
if (more) {
- result = i_zend_is_true(more);
+ result = i_zend_is_true(more TSRMLS_CC);
zval_ptr_dtor(&more);
return result ? SUCCESS : FAILURE;
}
diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y
index a4bc612bcb..5d3f73beaf 100644
--- a/Zend/zend_language_parser.y
+++ b/Zend/zend_language_parser.y
@@ -72,7 +72,7 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
%token T_PRINT "print (T_PRINT)"
%right T_YIELD
%token T_YIELD "yield (T_YIELD)"
-%left '=' T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_DIV_EQUAL T_CONCAT_EQUAL T_MOD_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_SL_EQUAL T_SR_EQUAL
+%left '=' T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_DIV_EQUAL T_CONCAT_EQUAL T_MOD_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_SL_EQUAL T_SR_EQUAL T_POW_EQUAL
%token T_PLUS_EQUAL "+= (T_PLUS_EQUAL)"
%token T_MINUS_EQUAL "-= (T_MINUS_EQUAL)"
%token T_MUL_EQUAL "*= (T_MUL_EQUAL)"
@@ -109,6 +109,7 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
%nonassoc T_INSTANCEOF
%token T_INSTANCEOF "instanceof (T_INSTANCEOF)"
%right '~' T_INC T_DEC T_INT_CAST T_DOUBLE_CAST T_STRING_CAST T_ARRAY_CAST T_OBJECT_CAST T_BOOL_CAST T_UNSET_CAST '@'
+%right T_POW
%token T_INC "++ (T_INC)"
%token T_DEC "-- (T_DEC)"
%token T_INT_CAST "(int) (T_INT_CAST)"
@@ -213,6 +214,8 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
%token T_DIR "__DIR__ (T_DIR)"
%token T_NS_SEPARATOR "\\ (T_NS_SEPARATOR)"
%token T_ELLIPSIS "... (T_ELLIPSIS)"
+%token T_POW "** (T_POW)"
+%token T_POW_EQUAL "**= (T_POW_EQUAL)"
%% /* Rules */
@@ -778,6 +781,7 @@ expr_without_variable:
| variable T_PLUS_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_ADD, &$$, &$1, &$3 TSRMLS_CC); }
| variable T_MINUS_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SUB, &$$, &$1, &$3 TSRMLS_CC); }
| variable T_MUL_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MUL, &$$, &$1, &$3 TSRMLS_CC); }
+ | variable T_POW_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_POW, &$$, &$1, &$3 TSRMLS_CC); }
| variable T_DIV_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_DIV, &$$, &$1, &$3 TSRMLS_CC); }
| variable T_CONCAT_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_CONCAT, &$$, &$1, &$3 TSRMLS_CC); }
| variable T_MOD_EQUAL expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(&$1, BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MOD, &$$, &$1, &$3 TSRMLS_CC); }
@@ -802,6 +806,7 @@ expr_without_variable:
| expr '+' expr { zend_do_binary_op(ZEND_ADD, &$$, &$1, &$3 TSRMLS_CC); }
| expr '-' expr { zend_do_binary_op(ZEND_SUB, &$$, &$1, &$3 TSRMLS_CC); }
| expr '*' expr { zend_do_binary_op(ZEND_MUL, &$$, &$1, &$3 TSRMLS_CC); }
+ | expr T_POW expr { zend_do_binary_op(ZEND_POW, &$$, &$1, &$3 TSRMLS_CC); }
| expr '/' expr { zend_do_binary_op(ZEND_DIV, &$$, &$1, &$3 TSRMLS_CC); }
| expr '%' expr { zend_do_binary_op(ZEND_MOD, &$$, &$1, &$3 TSRMLS_CC); }
| expr T_SL expr { zend_do_binary_op(ZEND_SL, &$$, &$1, &$3 TSRMLS_CC); }
diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c
index 8e958d73d2..05f9e4ed7f 100644
--- a/Zend/zend_language_scanner.c
+++ b/Zend/zend_language_scanner.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Sun Dec 22 13:03:33 2013 */
+/* Generated by re2c 0.13.5 */
#line 1 "Zend/zend_language_scanner.l"
/*
+----------------------------------------------------------------------+
@@ -1096,7 +1096,7 @@ yyc_INITIAL:
yy3:
YYDEBUG(3, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1741 "Zend/zend_language_scanner.l"
+#line 1749 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -1174,7 +1174,7 @@ yy5:
yy6:
YYDEBUG(6, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1731 "Zend/zend_language_scanner.l"
+#line 1739 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1191,7 +1191,7 @@ yy7:
if ((yych = *YYCURSOR) == '=') goto yy43;
YYDEBUG(8, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1712 "Zend/zend_language_scanner.l"
+#line 1720 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1387,7 +1387,7 @@ yy35:
++YYCURSOR;
YYDEBUG(38, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1678 "Zend/zend_language_scanner.l"
+#line 1686 "Zend/zend_language_scanner.l"
{
YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1));
@@ -1429,7 +1429,7 @@ yy43:
++YYCURSOR;
YYDEBUG(44, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1694 "Zend/zend_language_scanner.l"
+#line 1702 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
@@ -1445,7 +1445,7 @@ yy45:
++YYCURSOR;
YYDEBUG(46, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1705 "Zend/zend_language_scanner.l"
+#line 1713 "Zend/zend_language_scanner.l"
{
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
BEGIN(ST_IN_SCRIPTING);
@@ -1478,7 +1478,7 @@ yy50:
yy51:
YYDEBUG(51, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1723 "Zend/zend_language_scanner.l"
+#line 1731 "Zend/zend_language_scanner.l"
{
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
HANDLE_NEWLINE(yytext[yyleng-1]);
@@ -1556,7 +1556,7 @@ yyc_ST_BACKQUOTE:
yy56:
YYDEBUG(56, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2186 "Zend/zend_language_scanner.l"
+#line 2194 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -1608,7 +1608,7 @@ yy58:
++YYCURSOR;
YYDEBUG(59, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2130 "Zend/zend_language_scanner.l"
+#line 2138 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '`';
@@ -1623,7 +1623,7 @@ yy61:
++YYCURSOR;
YYDEBUG(62, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1646,7 +1646,7 @@ yy63:
yy65:
YYDEBUG(65, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -1658,7 +1658,7 @@ yy66:
++YYCURSOR;
YYDEBUG(67, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -1677,7 +1677,7 @@ yy70:
++YYCURSOR;
YYDEBUG(71, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1703,7 +1703,7 @@ yy73:
++YYCURSOR;
YYDEBUG(74, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1779,7 +1779,7 @@ yy77:
yy78:
YYDEBUG(78, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2136 "Zend/zend_language_scanner.l"
+#line 2144 "Zend/zend_language_scanner.l"
{
if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
@@ -1839,7 +1839,7 @@ yy80:
++YYCURSOR;
YYDEBUG(81, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2125 "Zend/zend_language_scanner.l"
+#line 2133 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '"';
@@ -1854,7 +1854,7 @@ yy83:
++YYCURSOR;
YYDEBUG(84, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1877,7 +1877,7 @@ yy85:
yy87:
YYDEBUG(87, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -1889,7 +1889,7 @@ yy88:
++YYCURSOR;
YYDEBUG(89, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -1908,7 +1908,7 @@ yy92:
++YYCURSOR;
YYDEBUG(93, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1934,7 +1934,7 @@ yy95:
++YYCURSOR;
YYDEBUG(96, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1953,7 +1953,7 @@ yyc_ST_END_HEREDOC:
++YYCURSOR;
YYDEBUG(100, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2103 "Zend/zend_language_scanner.l"
+#line 2111 "Zend/zend_language_scanner.l"
{
zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack));
@@ -2028,7 +2028,7 @@ yy103:
yy104:
YYDEBUG(104, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2228 "Zend/zend_language_scanner.l"
+#line 2236 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -2116,7 +2116,7 @@ yy107:
++YYCURSOR;
YYDEBUG(108, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2117 "Zend/zend_language_scanner.l"
+#line 2125 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -2139,7 +2139,7 @@ yy109:
yy111:
YYDEBUG(111, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -2151,7 +2151,7 @@ yy112:
++YYCURSOR;
YYDEBUG(113, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1465 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -2170,7 +2170,7 @@ yy116:
++YYCURSOR;
YYDEBUG(117, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1815 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -2196,7 +2196,7 @@ yy119:
++YYCURSOR;
YYDEBUG(120, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1813 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -2371,23 +2371,23 @@ yy123:
YYDEBUG(-1, yych);
switch ((yych = *YYCURSOR)) {
case 'C':
- case 'c': goto yy738;
+ case 'c': goto yy742;
case 'L':
- case 'l': goto yy739;
+ case 'l': goto yy743;
case 'M':
- case 'm': goto yy740;
+ case 'm': goto yy744;
case 'N':
- case 'n': goto yy741;
+ case 'n': goto yy745;
case 'V':
- case 'v': goto yy742;
+ case 'v': goto yy746;
case 'X':
- case 'x': goto yy743;
+ case 'x': goto yy747;
default: goto yy187;
}
yy124:
YYDEBUG(124, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1846 "Zend/zend_language_scanner.l"
+#line 1854 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
@@ -2399,20 +2399,20 @@ yy125:
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'H') {
- if (yych == 'E') goto yy720;
+ if (yych == 'E') goto yy724;
goto yy187;
} else {
- if (yych <= 'I') goto yy721;
+ if (yych <= 'I') goto yy725;
if (yych <= 'N') goto yy187;
- goto yy722;
+ goto yy726;
}
} else {
if (yych <= 'h') {
- if (yych == 'e') goto yy720;
+ if (yych == 'e') goto yy724;
goto yy187;
} else {
- if (yych <= 'i') goto yy721;
- if (yych == 'o') goto yy722;
+ if (yych <= 'i') goto yy725;
+ if (yych == 'o') goto yy726;
goto yy187;
}
}
@@ -2421,20 +2421,20 @@ yy126:
yych = *++YYCURSOR;
if (yych <= 'U') {
if (yych <= 'N') {
- if (yych == 'I') goto yy696;
+ if (yych == 'I') goto yy700;
goto yy187;
} else {
- if (yych <= 'O') goto yy697;
+ if (yych <= 'O') goto yy701;
if (yych <= 'T') goto yy187;
- goto yy698;
+ goto yy702;
}
} else {
if (yych <= 'n') {
- if (yych == 'i') goto yy696;
+ if (yych == 'i') goto yy700;
goto yy187;
} else {
- if (yych <= 'o') goto yy697;
- if (yych == 'u') goto yy698;
+ if (yych <= 'o') goto yy701;
+ if (yych == 'u') goto yy702;
goto yy187;
}
}
@@ -2443,48 +2443,48 @@ yy127:
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'K') {
- if (yych == 'A') goto yy661;
+ if (yych == 'A') goto yy665;
goto yy187;
} else {
- if (yych <= 'L') goto yy662;
+ if (yych <= 'L') goto yy666;
if (yych <= 'N') goto yy187;
- goto yy663;
+ goto yy667;
}
} else {
if (yych <= 'k') {
- if (yych == 'a') goto yy661;
+ if (yych == 'a') goto yy665;
goto yy187;
} else {
- if (yych <= 'l') goto yy662;
- if (yych == 'o') goto yy663;
+ if (yych <= 'l') goto yy666;
+ if (yych == 'o') goto yy667;
goto yy187;
}
}
yy128:
YYDEBUG(128, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy643;
- if (yych == 'e') goto yy643;
+ if (yych == 'E') goto yy647;
+ if (yych == 'e') goto yy647;
goto yy187;
yy129:
YYDEBUG(129, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy638;
- if (yych == 'i') goto yy638;
+ if (yych == 'I') goto yy642;
+ if (yych == 'i') goto yy642;
goto yy187;
yy130:
YYDEBUG(130, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'R') {
- if (yych == 'H') goto yy626;
+ if (yych == 'H') goto yy630;
if (yych <= 'Q') goto yy187;
- goto yy627;
+ goto yy631;
} else {
if (yych <= 'h') {
if (yych <= 'g') goto yy187;
- goto yy626;
+ goto yy630;
} else {
- if (yych == 'r') goto yy627;
+ if (yych == 'r') goto yy631;
goto yy187;
}
}
@@ -2493,53 +2493,53 @@ yy131:
yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'L') {
- if (yych == 'F') goto yy573;
+ if (yych == 'F') goto yy577;
goto yy187;
} else {
- if (yych <= 'M') goto yy575;
- if (yych <= 'N') goto yy576;
+ if (yych <= 'M') goto yy579;
+ if (yych <= 'N') goto yy580;
if (yych <= 'R') goto yy187;
- goto yy577;
+ goto yy581;
}
} else {
if (yych <= 'm') {
- if (yych == 'f') goto yy573;
+ if (yych == 'f') goto yy577;
if (yych <= 'l') goto yy187;
- goto yy575;
+ goto yy579;
} else {
- if (yych <= 'n') goto yy576;
- if (yych == 's') goto yy577;
+ if (yych <= 'n') goto yy580;
+ if (yych == 's') goto yy581;
goto yy187;
}
}
yy132:
YYDEBUG(132, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy568;
- if (yych == 'h') goto yy568;
+ if (yych == 'H') goto yy572;
+ if (yych == 'h') goto yy572;
goto yy187;
yy133:
YYDEBUG(133, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'M') {
- if (yych == 'B') goto yy550;
+ if (yych == 'B') goto yy554;
goto yy187;
} else {
- if (yych <= 'N') goto yy551;
+ if (yych <= 'N') goto yy555;
if (yych <= 'Q') goto yy187;
- if (yych <= 'R') goto yy552;
- goto yy553;
+ if (yych <= 'R') goto yy556;
+ goto yy557;
}
} else {
if (yych <= 'n') {
- if (yych == 'b') goto yy550;
+ if (yych == 'b') goto yy554;
if (yych <= 'm') goto yy187;
- goto yy551;
+ goto yy555;
} else {
if (yych <= 'q') goto yy187;
- if (yych <= 'r') goto yy552;
- if (yych <= 's') goto yy553;
+ if (yych <= 'r') goto yy556;
+ if (yych <= 's') goto yy557;
goto yy187;
}
}
@@ -2547,15 +2547,15 @@ yy134:
YYDEBUG(134, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'W') {
- if (yych == 'T') goto yy538;
+ if (yych == 'T') goto yy542;
if (yych <= 'V') goto yy187;
- goto yy539;
+ goto yy543;
} else {
if (yych <= 't') {
if (yych <= 's') goto yy187;
- goto yy538;
+ goto yy542;
} else {
- if (yych == 'w') goto yy539;
+ if (yych == 'w') goto yy543;
goto yy187;
}
}
@@ -2566,18 +2566,18 @@ yy135:
if (yych <= ';') {
if (yych <= '"') {
if (yych <= '!') goto yy187;
- goto yy530;
+ goto yy534;
} else {
- if (yych == '\'') goto yy531;
+ if (yych == '\'') goto yy535;
goto yy187;
}
} else {
if (yych <= 'R') {
- if (yych <= '<') goto yy529;
+ if (yych <= '<') goto yy533;
if (yych <= 'Q') goto yy187;
- goto yy532;
+ goto yy536;
} else {
- if (yych == 'r') goto yy532;
+ if (yych == 'r') goto yy536;
goto yy187;
}
}
@@ -2585,15 +2585,15 @@ yy136:
YYDEBUG(136, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'L') goto yy519;
+ if (yych == 'L') goto yy523;
if (yych <= 'N') goto yy187;
- goto yy520;
+ goto yy524;
} else {
if (yych <= 'l') {
if (yych <= 'k') goto yy187;
- goto yy519;
+ goto yy523;
} else {
- if (yych == 'o') goto yy520;
+ if (yych == 'o') goto yy524;
goto yy187;
}
}
@@ -2601,15 +2601,15 @@ yy137:
YYDEBUG(137, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'R') goto yy495;
+ if (yych == 'R') goto yy499;
if (yych <= 'T') goto yy187;
- goto yy496;
+ goto yy500;
} else {
if (yych <= 'r') {
if (yych <= 'q') goto yy187;
- goto yy495;
+ goto yy499;
} else {
- if (yych == 'u') goto yy496;
+ if (yych == 'u') goto yy500;
goto yy187;
}
}
@@ -2617,15 +2617,15 @@ yy138:
YYDEBUG(138, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '<') {
- if (yych == '-') goto yy491;
+ if (yych == '-') goto yy495;
} else {
- if (yych <= '=') goto yy489;
- if (yych <= '>') goto yy493;
+ if (yych <= '=') goto yy493;
+ if (yych <= '>') goto yy497;
}
yy139:
YYDEBUG(139, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1446 "Zend/zend_language_scanner.l"
+#line 1454 "Zend/zend_language_scanner.l"
{
return yytext[0];
}
@@ -2634,7 +2634,7 @@ yy140:
YYDEBUG(140, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy488;
+ goto yy492;
yy141:
YYDEBUG(141, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
@@ -2648,7 +2648,7 @@ yy141:
yy142:
YYDEBUG(142, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == ':') goto yy485;
+ if (yych == ':') goto yy489;
goto yy139;
yy143:
YYDEBUG(143, *YYCURSOR);
@@ -2665,34 +2665,34 @@ yy145:
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '/') {
- if (yych == '.') goto yy482;
+ if (yych == '.') goto yy486;
goto yy139;
} else {
- if (yych <= '9') goto yy478;
- if (yych == '=') goto yy480;
+ if (yych <= '9') goto yy482;
+ if (yych == '=') goto yy484;
goto yy139;
}
yy146:
YYDEBUG(146, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'E') {
- if (yych == 'A') goto yy466;
+ if (yych == 'A') goto yy470;
if (yych <= 'D') goto yy187;
- goto yy467;
+ goto yy471;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy187;
- goto yy466;
+ goto yy470;
} else {
- if (yych == 'e') goto yy467;
+ if (yych == 'e') goto yy471;
goto yy187;
}
}
yy147:
YYDEBUG(147, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy463;
- if (yych == 'a') goto yy463;
+ if (yych == 'A') goto yy467;
+ if (yych == 'a') goto yy467;
goto yy187;
yy148:
YYDEBUG(148, *YYCURSOR);
@@ -2701,47 +2701,47 @@ yy148:
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy388;
+ if (yych == '\t') goto yy392;
if (yych <= 0x1F) goto yy139;
- goto yy388;
+ goto yy392;
} else {
if (yych <= '@') goto yy139;
if (yych == 'C') goto yy139;
- goto yy388;
+ goto yy392;
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy388;
+ if (yych == 'F') goto yy392;
if (yych <= 'H') goto yy139;
- goto yy388;
+ goto yy392;
} else {
- if (yych == 'O') goto yy388;
+ if (yych == 'O') goto yy392;
if (yych <= 'Q') goto yy139;
- goto yy388;
+ goto yy392;
}
}
} else {
if (yych <= 'f') {
if (yych <= 'b') {
- if (yych == 'U') goto yy388;
+ if (yych == 'U') goto yy392;
if (yych <= '`') goto yy139;
- goto yy388;
+ goto yy392;
} else {
- if (yych == 'd') goto yy388;
+ if (yych == 'd') goto yy392;
if (yych <= 'e') goto yy139;
- goto yy388;
+ goto yy392;
}
} else {
if (yych <= 'o') {
- if (yych == 'i') goto yy388;
+ if (yych == 'i') goto yy392;
if (yych <= 'n') goto yy139;
- goto yy388;
+ goto yy392;
} else {
if (yych <= 's') {
if (yych <= 'q') goto yy139;
- goto yy388;
+ goto yy392;
} else {
- if (yych == 'u') goto yy388;
+ if (yych == 'u') goto yy392;
goto yy139;
}
}
@@ -2751,71 +2751,72 @@ yy149:
YYDEBUG(149, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
- if (yych == 'N') goto yy379;
+ if (yych == 'N') goto yy383;
if (yych <= 'R') goto yy187;
- goto yy380;
+ goto yy384;
} else {
if (yych <= 'n') {
if (yych <= 'm') goto yy187;
- goto yy379;
+ goto yy383;
} else {
- if (yych == 's') goto yy380;
+ if (yych == 's') goto yy384;
goto yy187;
}
}
yy150:
YYDEBUG(150, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy297;
+ if (yych == '_') goto yy301;
goto yy187;
yy151:
YYDEBUG(151, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '<') goto yy139;
- if (yych <= '=') goto yy291;
- if (yych <= '>') goto yy293;
+ if (yych <= '=') goto yy295;
+ if (yych <= '>') goto yy297;
goto yy139;
yy152:
YYDEBUG(152, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy287;
- if (yych == 'i') goto yy287;
+ if (yych == 'I') goto yy291;
+ if (yych == 'i') goto yy291;
goto yy187;
yy153:
YYDEBUG(153, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '+') goto yy285;
- if (yych == '=') goto yy283;
+ if (yych == '+') goto yy289;
+ if (yych == '=') goto yy287;
goto yy139;
yy154:
YYDEBUG(154, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy280;
+ if (yych == '=') goto yy284;
goto yy139;
yy155:
YYDEBUG(155, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= ';') {
- if (yych == '/') goto yy252;
+ if (yych == '/') goto yy256;
goto yy139;
} else {
- if (yych <= '<') goto yy250;
- if (yych <= '=') goto yy253;
- if (yych <= '>') goto yy255;
+ if (yych <= '<') goto yy254;
+ if (yych <= '=') goto yy257;
+ if (yych <= '>') goto yy259;
goto yy139;
}
yy156:
YYDEBUG(156, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '<') goto yy139;
- if (yych <= '=') goto yy246;
- if (yych <= '>') goto yy244;
+ if (yych <= '=') goto yy250;
+ if (yych <= '>') goto yy248;
goto yy139;
yy157:
YYDEBUG(157, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy242;
+ if (yych == '*') goto yy242;
+ if (yych == '=') goto yy244;
goto yy139;
yy158:
YYDEBUG(158, *YYCURSOR);
@@ -2892,18 +2893,18 @@ yy168:
++YYCURSOR;
YYDEBUG(169, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1459 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
return '{';
}
-#line 2901 "Zend/zend_language_scanner.c"
+#line 2902 "Zend/zend_language_scanner.c"
yy170:
YYDEBUG(170, *YYCURSOR);
++YYCURSOR;
YYDEBUG(171, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1463 "Zend/zend_language_scanner.l"
+#line 1471 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -2911,7 +2912,7 @@ yy170:
}
return '}';
}
-#line 2915 "Zend/zend_language_scanner.c"
+#line 2916 "Zend/zend_language_scanner.c"
yy172:
YYDEBUG(172, *YYCURSOR);
yyaccept = 2;
@@ -2939,7 +2940,7 @@ yy172:
yy173:
YYDEBUG(173, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1513 "Zend/zend_language_scanner.l"
+#line 1521 "Zend/zend_language_scanner.l"
{
if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
Z_LVAL_P(zendlval) = strtol(yytext, NULL, 0);
@@ -2960,7 +2961,7 @@ yy173:
zendlval->type = IS_LONG;
return T_LNUMBER;
}
-#line 2964 "Zend/zend_language_scanner.c"
+#line 2965 "Zend/zend_language_scanner.c"
yy174:
YYDEBUG(174, *YYCURSOR);
yyaccept = 2;
@@ -2988,7 +2989,7 @@ yy176:
yy177:
YYDEBUG(177, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1853 "Zend/zend_language_scanner.l"
+#line 1861 "Zend/zend_language_scanner.l"
{
while (YYCURSOR < YYLIMIT) {
switch (*YYCURSOR++) {
@@ -3022,14 +3023,14 @@ yy177:
return T_COMMENT;
}
-#line 3026 "Zend/zend_language_scanner.c"
+#line 3027 "Zend/zend_language_scanner.c"
yy178:
YYDEBUG(178, *YYCURSOR);
++YYCURSOR;
yy179:
YYDEBUG(179, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1940 "Zend/zend_language_scanner.l"
+#line 1948 "Zend/zend_language_scanner.l"
{
register char *s, *t;
char *end;
@@ -3095,14 +3096,14 @@ yy179:
}
return T_CONSTANT_ENCAPSED_STRING;
}
-#line 3099 "Zend/zend_language_scanner.c"
+#line 3100 "Zend/zend_language_scanner.c"
yy180:
YYDEBUG(180, *YYCURSOR);
++YYCURSOR;
yy181:
YYDEBUG(181, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2007 "Zend/zend_language_scanner.l"
+#line 2015 "Zend/zend_language_scanner.l"
{
int bprefix = (yytext[0] != '"') ? 1 : 0;
@@ -3143,24 +3144,24 @@ yy181:
BEGIN(ST_DOUBLE_QUOTES);
return '"';
}
-#line 3147 "Zend/zend_language_scanner.c"
+#line 3148 "Zend/zend_language_scanner.c"
yy182:
YYDEBUG(182, *YYCURSOR);
++YYCURSOR;
YYDEBUG(183, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2097 "Zend/zend_language_scanner.l"
+#line 2105 "Zend/zend_language_scanner.l"
{
BEGIN(ST_BACKQUOTE);
return '`';
}
-#line 3158 "Zend/zend_language_scanner.c"
+#line 3159 "Zend/zend_language_scanner.c"
yy184:
YYDEBUG(184, *YYCURSOR);
++YYCURSOR;
YYDEBUG(185, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2360 "Zend/zend_language_scanner.l"
+#line 2368 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -3169,7 +3170,7 @@ yy184:
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 3173 "Zend/zend_language_scanner.c"
+#line 3174 "Zend/zend_language_scanner.c"
yy186:
YYDEBUG(186, *YYCURSOR);
++YYCURSOR;
@@ -3196,12 +3197,12 @@ yy188:
yy190:
YYDEBUG(190, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1572 "Zend/zend_language_scanner.l"
+#line 1580 "Zend/zend_language_scanner.l"
{
ZVAL_DOUBLE(zendlval, zend_strtod(yytext, NULL));
return T_DNUMBER;
}
-#line 3205 "Zend/zend_language_scanner.c"
+#line 3206 "Zend/zend_language_scanner.c"
yy191:
YYDEBUG(191, *YYCURSOR);
yyaccept = 2;
@@ -3251,7 +3252,7 @@ yy194:
goto yy235;
}
} else {
- goto yy251;
+ goto yy255;
}
}
yy195:
@@ -3293,7 +3294,7 @@ yy200:
}
YYDEBUG(202, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1489 "Zend/zend_language_scanner.l"
+#line 1497 "Zend/zend_language_scanner.l"
{
char *bin = yytext + 2; /* Skip "0b" */
int len = yyleng - 2;
@@ -3317,7 +3318,7 @@ yy200:
return T_DNUMBER;
}
}
-#line 3321 "Zend/zend_language_scanner.c"
+#line 3322 "Zend/zend_language_scanner.c"
yy203:
YYDEBUG(203, *YYCURSOR);
++YYCURSOR;
@@ -3329,7 +3330,7 @@ yy203:
}
YYDEBUG(205, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1534 "Zend/zend_language_scanner.l"
+#line 1542 "Zend/zend_language_scanner.l"
{
char *hex = yytext + 2; /* Skip "0x" */
int len = yyleng - 2;
@@ -3353,7 +3354,7 @@ yy203:
return T_DNUMBER;
}
}
-#line 3357 "Zend/zend_language_scanner.c"
+#line 3358 "Zend/zend_language_scanner.c"
yy206:
YYDEBUG(206, *YYCURSOR);
++YYCURSOR;
@@ -3362,13 +3363,13 @@ yy206:
yy207:
YYDEBUG(207, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1921 "Zend/zend_language_scanner.l"
+#line 1929 "Zend/zend_language_scanner.l"
{
ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
BEGIN(INITIAL);
return T_CLOSE_TAG; /* implicit ';' at php-end tag */
}
-#line 3372 "Zend/zend_language_scanner.c"
+#line 3373 "Zend/zend_language_scanner.c"
yy208:
YYDEBUG(208, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3402,13 +3403,13 @@ yy210:
yy212:
YYDEBUG(212, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 3412 "Zend/zend_language_scanner.c"
+#line 3413 "Zend/zend_language_scanner.c"
yy213:
YYDEBUG(213, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3422,11 +3423,11 @@ yy214:
}
YYDEBUG(215, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1434 "Zend/zend_language_scanner.l"
+#line 1442 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_XOR;
}
-#line 3430 "Zend/zend_language_scanner.c"
+#line 3431 "Zend/zend_language_scanner.c"
yy216:
YYDEBUG(216, *YYCURSOR);
++YYCURSOR;
@@ -3435,61 +3436,61 @@ yy216:
}
YYDEBUG(217, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1426 "Zend/zend_language_scanner.l"
+#line 1434 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_OR;
}
-#line 3443 "Zend/zend_language_scanner.c"
+#line 3444 "Zend/zend_language_scanner.c"
yy218:
YYDEBUG(218, *YYCURSOR);
++YYCURSOR;
YYDEBUG(219, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1414 "Zend/zend_language_scanner.l"
+#line 1422 "Zend/zend_language_scanner.l"
{
return T_XOR_EQUAL;
}
-#line 3453 "Zend/zend_language_scanner.c"
+#line 3454 "Zend/zend_language_scanner.c"
yy220:
YYDEBUG(220, *YYCURSOR);
++YYCURSOR;
YYDEBUG(221, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1418 "Zend/zend_language_scanner.l"
+#line 1426 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_OR;
}
-#line 3463 "Zend/zend_language_scanner.c"
+#line 3464 "Zend/zend_language_scanner.c"
yy222:
YYDEBUG(222, *YYCURSOR);
++YYCURSOR;
YYDEBUG(223, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1410 "Zend/zend_language_scanner.l"
+#line 1418 "Zend/zend_language_scanner.l"
{
return T_OR_EQUAL;
}
-#line 3473 "Zend/zend_language_scanner.c"
+#line 3474 "Zend/zend_language_scanner.c"
yy224:
YYDEBUG(224, *YYCURSOR);
++YYCURSOR;
YYDEBUG(225, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1422 "Zend/zend_language_scanner.l"
+#line 1430 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_AND;
}
-#line 3483 "Zend/zend_language_scanner.c"
+#line 3484 "Zend/zend_language_scanner.c"
yy226:
YYDEBUG(226, *YYCURSOR);
++YYCURSOR;
YYDEBUG(227, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1406 "Zend/zend_language_scanner.l"
+#line 1414 "Zend/zend_language_scanner.l"
{
return T_AND_EQUAL;
}
-#line 3493 "Zend/zend_language_scanner.c"
+#line 3494 "Zend/zend_language_scanner.c"
yy228:
YYDEBUG(228, *YYCURSOR);
++YYCURSOR;
@@ -3498,7 +3499,7 @@ yy228:
yy229:
YYDEBUG(229, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1928 "Zend/zend_language_scanner.l"
+#line 1936 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
BEGIN(INITIAL);
@@ -3509,17 +3510,17 @@ yy229:
return yytext[0];
}
}
-#line 3513 "Zend/zend_language_scanner.c"
+#line 3514 "Zend/zend_language_scanner.c"
yy230:
YYDEBUG(230, *YYCURSOR);
++YYCURSOR;
YYDEBUG(231, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1394 "Zend/zend_language_scanner.l"
+#line 1402 "Zend/zend_language_scanner.l"
{
return T_MOD_EQUAL;
}
-#line 3523 "Zend/zend_language_scanner.c"
+#line 3524 "Zend/zend_language_scanner.c"
yy232:
YYDEBUG(232, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3537,7 +3538,7 @@ yy234:
yy235:
YYDEBUG(235, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1887 "Zend/zend_language_scanner.l"
+#line 1895 "Zend/zend_language_scanner.l"
{
int doc_com;
@@ -3571,7 +3572,7 @@ yy235:
return T_COMMENT;
}
-#line 3575 "Zend/zend_language_scanner.c"
+#line 3576 "Zend/zend_language_scanner.c"
yy236:
YYDEBUG(236, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3581,11 +3582,11 @@ yy237:
++YYCURSOR;
YYDEBUG(238, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1386 "Zend/zend_language_scanner.l"
+#line 1394 "Zend/zend_language_scanner.l"
{
return T_DIV_EQUAL;
}
-#line 3589 "Zend/zend_language_scanner.c"
+#line 3590 "Zend/zend_language_scanner.c"
yy239:
YYDEBUG(239, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3606,246 +3607,267 @@ yy240:
yy242:
YYDEBUG(242, *YYCURSOR);
++YYCURSOR;
+ if ((yych = *YYCURSOR) == '=') goto yy246;
YYDEBUG(243, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1382 "Zend/zend_language_scanner.l"
+#line 1386 "Zend/zend_language_scanner.l"
{
- return T_MUL_EQUAL;
+ return T_POW;
}
-#line 3616 "Zend/zend_language_scanner.c"
+#line 3618 "Zend/zend_language_scanner.c"
yy244:
YYDEBUG(244, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy248;
YYDEBUG(245, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1442 "Zend/zend_language_scanner.l"
+#line 1382 "Zend/zend_language_scanner.l"
{
- return T_SR;
+ return T_MUL_EQUAL;
}
-#line 3627 "Zend/zend_language_scanner.c"
+#line 3628 "Zend/zend_language_scanner.c"
yy246:
YYDEBUG(246, *YYCURSOR);
++YYCURSOR;
YYDEBUG(247, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1370 "Zend/zend_language_scanner.l"
+#line 1390 "Zend/zend_language_scanner.l"
{
- return T_IS_GREATER_OR_EQUAL;
+ return T_POW_EQUAL;
}
-#line 3637 "Zend/zend_language_scanner.c"
+#line 3638 "Zend/zend_language_scanner.c"
yy248:
YYDEBUG(248, *YYCURSOR);
++YYCURSOR;
+ if ((yych = *YYCURSOR) == '=') goto yy252;
YYDEBUG(249, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1402 "Zend/zend_language_scanner.l"
+#line 1450 "Zend/zend_language_scanner.l"
{
- return T_SR_EQUAL;
+ return T_SR;
}
-#line 3647 "Zend/zend_language_scanner.c"
+#line 3649 "Zend/zend_language_scanner.c"
yy250:
YYDEBUG(250, *YYCURSOR);
- yyaccept = 5;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= ';') goto yy251;
- if (yych <= '<') goto yy266;
- if (yych <= '=') goto yy264;
-yy251:
+ ++YYCURSOR;
YYDEBUG(251, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1438 "Zend/zend_language_scanner.l"
+#line 1370 "Zend/zend_language_scanner.l"
{
- return T_SL;
+ return T_IS_GREATER_OR_EQUAL;
}
-#line 3662 "Zend/zend_language_scanner.c"
+#line 3659 "Zend/zend_language_scanner.c"
yy252:
YYDEBUG(252, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(253, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1410 "Zend/zend_language_scanner.l"
+ {
+ return T_SR_EQUAL;
+}
+#line 3669 "Zend/zend_language_scanner.c"
+yy254:
+ YYDEBUG(254, *YYCURSOR);
+ yyaccept = 5;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= ';') goto yy255;
+ if (yych <= '<') goto yy270;
+ if (yych <= '=') goto yy268;
+yy255:
+ YYDEBUG(255, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1446 "Zend/zend_language_scanner.l"
+ {
+ return T_SL;
+}
+#line 3684 "Zend/zend_language_scanner.c"
+yy256:
+ YYDEBUG(256, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy257;
- if (yych == 's') goto yy257;
+ if (yych == 'S') goto yy261;
+ if (yych == 's') goto yy261;
goto yy194;
-yy253:
- YYDEBUG(253, *YYCURSOR);
+yy257:
+ YYDEBUG(257, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(254, *YYCURSOR);
+ YYDEBUG(258, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1366 "Zend/zend_language_scanner.l"
{
return T_IS_SMALLER_OR_EQUAL;
}
-#line 3678 "Zend/zend_language_scanner.c"
-yy255:
- YYDEBUG(255, *YYCURSOR);
+#line 3700 "Zend/zend_language_scanner.c"
+yy259:
+ YYDEBUG(259, *YYCURSOR);
++YYCURSOR;
-yy256:
- YYDEBUG(256, *YYCURSOR);
+yy260:
+ YYDEBUG(260, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1362 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_EQUAL;
}
-#line 3689 "Zend/zend_language_scanner.c"
-yy257:
- YYDEBUG(257, *YYCURSOR);
+#line 3711 "Zend/zend_language_scanner.c"
+yy261:
+ YYDEBUG(261, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy258;
+ if (yych == 'C') goto yy262;
if (yych != 'c') goto yy194;
-yy258:
- YYDEBUG(258, *YYCURSOR);
+yy262:
+ YYDEBUG(262, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy259;
+ if (yych == 'R') goto yy263;
if (yych != 'r') goto yy194;
-yy259:
- YYDEBUG(259, *YYCURSOR);
+yy263:
+ YYDEBUG(263, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy260;
+ if (yych == 'I') goto yy264;
if (yych != 'i') goto yy194;
-yy260:
- YYDEBUG(260, *YYCURSOR);
+yy264:
+ YYDEBUG(264, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy261;
+ if (yych == 'P') goto yy265;
if (yych != 'p') goto yy194;
-yy261:
- YYDEBUG(261, *YYCURSOR);
+yy265:
+ YYDEBUG(265, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy262;
+ if (yych == 'T') goto yy266;
if (yych != 't') goto yy194;
-yy262:
- YYDEBUG(262, *YYCURSOR);
+yy266:
+ YYDEBUG(266, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(263, *YYCURSOR);
+ YYDEBUG(267, *YYCURSOR);
if (yych <= '\r') {
if (yych <= 0x08) goto yy194;
- if (yych <= '\n') goto yy262;
+ if (yych <= '\n') goto yy266;
if (yych <= '\f') goto yy194;
- goto yy262;
+ goto yy266;
} else {
if (yych <= ' ') {
if (yych <= 0x1F) goto yy194;
- goto yy262;
+ goto yy266;
} else {
if (yych == '>') goto yy206;
goto yy194;
}
}
-yy264:
- YYDEBUG(264, *YYCURSOR);
+yy268:
+ YYDEBUG(268, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(265, *YYCURSOR);
+ YYDEBUG(269, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1398 "Zend/zend_language_scanner.l"
+#line 1406 "Zend/zend_language_scanner.l"
{
return T_SL_EQUAL;
}
-#line 3744 "Zend/zend_language_scanner.c"
-yy266:
- YYDEBUG(266, *YYCURSOR);
+#line 3766 "Zend/zend_language_scanner.c"
+yy270:
+ YYDEBUG(270, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(267, *YYCURSOR);
+ YYDEBUG(271, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy266;
+ goto yy270;
}
if (yych <= 'Z') {
if (yych <= '&') {
- if (yych == '"') goto yy271;
+ if (yych == '"') goto yy275;
goto yy194;
} else {
- if (yych <= '\'') goto yy270;
+ if (yych <= '\'') goto yy274;
if (yych <= '@') goto yy194;
}
} else {
if (yych <= '`') {
if (yych != '_') goto yy194;
} else {
- if (yych <= 'z') goto yy268;
+ if (yych <= 'z') goto yy272;
if (yych <= '~') goto yy194;
}
}
-yy268:
- YYDEBUG(268, *YYCURSOR);
+yy272:
+ YYDEBUG(272, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(269, *YYCURSOR);
+ YYDEBUG(273, *YYCURSOR);
if (yych <= '@') {
if (yych <= '\f') {
- if (yych == '\n') goto yy275;
+ if (yych == '\n') goto yy279;
goto yy194;
} else {
- if (yych <= '\r') goto yy277;
+ if (yych <= '\r') goto yy281;
if (yych <= '/') goto yy194;
- if (yych <= '9') goto yy268;
+ if (yych <= '9') goto yy272;
goto yy194;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy268;
+ if (yych <= 'Z') goto yy272;
if (yych <= '^') goto yy194;
- goto yy268;
+ goto yy272;
} else {
if (yych <= '`') goto yy194;
- if (yych <= 'z') goto yy268;
+ if (yych <= 'z') goto yy272;
if (yych <= '~') goto yy194;
- goto yy268;
+ goto yy272;
}
}
-yy270:
- YYDEBUG(270, *YYCURSOR);
+yy274:
+ YYDEBUG(274, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == '\'') goto yy194;
- if (yych <= '/') goto yy279;
+ if (yych <= '/') goto yy283;
if (yych <= '9') goto yy194;
- goto yy279;
-yy271:
- YYDEBUG(271, *YYCURSOR);
+ goto yy283;
+yy275:
+ YYDEBUG(275, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == '"') goto yy194;
- if (yych <= '/') goto yy273;
+ if (yych <= '/') goto yy277;
if (yych <= '9') goto yy194;
- goto yy273;
-yy272:
- YYDEBUG(272, *YYCURSOR);
+ goto yy277;
+yy276:
+ YYDEBUG(276, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy273:
- YYDEBUG(273, *YYCURSOR);
+yy277:
+ YYDEBUG(277, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
if (yych != '"') goto yy194;
} else {
- if (yych <= '9') goto yy272;
+ if (yych <= '9') goto yy276;
if (yych <= '@') goto yy194;
- goto yy272;
+ goto yy276;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy272;
+ if (yych == '_') goto yy276;
goto yy194;
} else {
- if (yych <= 'z') goto yy272;
+ if (yych <= 'z') goto yy276;
if (yych <= '~') goto yy194;
- goto yy272;
+ goto yy276;
}
}
-yy274:
- YYDEBUG(274, *YYCURSOR);
+yy278:
+ YYDEBUG(278, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy275;
- if (yych == '\r') goto yy277;
+ if (yych == '\n') goto yy279;
+ if (yych == '\r') goto yy281;
goto yy194;
-yy275:
- YYDEBUG(275, *YYCURSOR);
+yy279:
+ YYDEBUG(279, *YYCURSOR);
++YYCURSOR;
-yy276:
- YYDEBUG(276, *YYCURSOR);
+yy280:
+ YYDEBUG(280, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2049 "Zend/zend_language_scanner.l"
+#line 2057 "Zend/zend_language_scanner.l"
{
char *s;
int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -3892,255 +3914,255 @@ yy276:
return T_START_HEREDOC;
}
-#line 3896 "Zend/zend_language_scanner.c"
-yy277:
- YYDEBUG(277, *YYCURSOR);
+#line 3918 "Zend/zend_language_scanner.c"
+yy281:
+ YYDEBUG(281, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy275;
- goto yy276;
-yy278:
- YYDEBUG(278, *YYCURSOR);
+ if (yych == '\n') goto yy279;
+ goto yy280;
+yy282:
+ YYDEBUG(282, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy279:
- YYDEBUG(279, *YYCURSOR);
+yy283:
+ YYDEBUG(283, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
- if (yych == '\'') goto yy274;
+ if (yych == '\'') goto yy278;
goto yy194;
} else {
- if (yych <= '9') goto yy278;
+ if (yych <= '9') goto yy282;
if (yych <= '@') goto yy194;
- goto yy278;
+ goto yy282;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy278;
+ if (yych == '_') goto yy282;
goto yy194;
} else {
- if (yych <= 'z') goto yy278;
+ if (yych <= 'z') goto yy282;
if (yych <= '~') goto yy194;
- goto yy278;
+ goto yy282;
}
}
-yy280:
- YYDEBUG(280, *YYCURSOR);
+yy284:
+ YYDEBUG(284, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '=') goto yy256;
- YYDEBUG(281, *YYCURSOR);
+ if (yych != '=') goto yy260;
+ YYDEBUG(285, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(282, *YYCURSOR);
+ YYDEBUG(286, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1354 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_IDENTICAL;
}
-#line 3940 "Zend/zend_language_scanner.c"
-yy283:
- YYDEBUG(283, *YYCURSOR);
+#line 3962 "Zend/zend_language_scanner.c"
+yy287:
+ YYDEBUG(287, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(284, *YYCURSOR);
+ YYDEBUG(288, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1374 "Zend/zend_language_scanner.l"
{
return T_PLUS_EQUAL;
}
-#line 3950 "Zend/zend_language_scanner.c"
-yy285:
- YYDEBUG(285, *YYCURSOR);
+#line 3972 "Zend/zend_language_scanner.c"
+yy289:
+ YYDEBUG(289, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(286, *YYCURSOR);
+ YYDEBUG(290, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1342 "Zend/zend_language_scanner.l"
{
return T_INC;
}
-#line 3960 "Zend/zend_language_scanner.c"
-yy287:
- YYDEBUG(287, *YYCURSOR);
+#line 3982 "Zend/zend_language_scanner.c"
+yy291:
+ YYDEBUG(291, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy288;
+ if (yych == 'S') goto yy292;
if (yych != 's') goto yy187;
-yy288:
- YYDEBUG(288, *YYCURSOR);
+yy292:
+ YYDEBUG(292, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy289;
+ if (yych == 'T') goto yy293;
if (yych != 't') goto yy187;
-yy289:
- YYDEBUG(289, *YYCURSOR);
+yy293:
+ YYDEBUG(293, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(290, *YYCURSOR);
+ YYDEBUG(294, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1330 "Zend/zend_language_scanner.l"
{
return T_LIST;
}
-#line 3983 "Zend/zend_language_scanner.c"
-yy291:
- YYDEBUG(291, *YYCURSOR);
+#line 4005 "Zend/zend_language_scanner.c"
+yy295:
+ YYDEBUG(295, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy295;
- YYDEBUG(292, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '=') goto yy299;
+ YYDEBUG(296, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1358 "Zend/zend_language_scanner.l"
{
return T_IS_EQUAL;
}
-#line 3994 "Zend/zend_language_scanner.c"
-yy293:
- YYDEBUG(293, *YYCURSOR);
+#line 4016 "Zend/zend_language_scanner.c"
+yy297:
+ YYDEBUG(297, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(294, *YYCURSOR);
+ YYDEBUG(298, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1326 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_ARROW;
}
-#line 4004 "Zend/zend_language_scanner.c"
-yy295:
- YYDEBUG(295, *YYCURSOR);
+#line 4026 "Zend/zend_language_scanner.c"
+yy299:
+ YYDEBUG(299, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(296, *YYCURSOR);
+ YYDEBUG(300, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1350 "Zend/zend_language_scanner.l"
{
return T_IS_IDENTICAL;
}
-#line 4014 "Zend/zend_language_scanner.c"
-yy297:
- YYDEBUG(297, *YYCURSOR);
+#line 4036 "Zend/zend_language_scanner.c"
+yy301:
+ YYDEBUG(301, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'C':
- case 'c': goto yy299;
+ case 'c': goto yy303;
case 'D':
- case 'd': goto yy304;
+ case 'd': goto yy308;
case 'F':
- case 'f': goto yy301;
+ case 'f': goto yy305;
case 'H':
- case 'h': goto yy298;
+ case 'h': goto yy302;
case 'L':
- case 'l': goto yy303;
+ case 'l': goto yy307;
case 'M':
- case 'm': goto yy302;
+ case 'm': goto yy306;
case 'N':
- case 'n': goto yy305;
+ case 'n': goto yy309;
case 'T':
- case 't': goto yy300;
+ case 't': goto yy304;
default: goto yy187;
}
-yy298:
- YYDEBUG(298, *YYCURSOR);
+yy302:
+ YYDEBUG(302, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy366;
- if (yych == 'a') goto yy366;
+ if (yych == 'A') goto yy370;
+ if (yych == 'a') goto yy370;
goto yy187;
-yy299:
- YYDEBUG(299, *YYCURSOR);
+yy303:
+ YYDEBUG(303, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy359;
- if (yych == 'l') goto yy359;
+ if (yych == 'L') goto yy363;
+ if (yych == 'l') goto yy363;
goto yy187;
-yy300:
- YYDEBUG(300, *YYCURSOR);
+yy304:
+ YYDEBUG(304, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy352;
- if (yych == 'r') goto yy352;
+ if (yych == 'R') goto yy356;
+ if (yych == 'r') goto yy356;
goto yy187;
-yy301:
- YYDEBUG(301, *YYCURSOR);
+yy305:
+ YYDEBUG(305, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'I') goto yy336;
+ if (yych == 'I') goto yy340;
if (yych <= 'T') goto yy187;
- goto yy337;
+ goto yy341;
} else {
if (yych <= 'i') {
if (yych <= 'h') goto yy187;
- goto yy336;
+ goto yy340;
} else {
- if (yych == 'u') goto yy337;
+ if (yych == 'u') goto yy341;
goto yy187;
}
}
-yy302:
- YYDEBUG(302, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy328;
- if (yych == 'e') goto yy328;
- goto yy187;
-yy303:
- YYDEBUG(303, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'I') goto yy322;
- if (yych == 'i') goto yy322;
- goto yy187;
-yy304:
- YYDEBUG(304, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'I') goto yy317;
- if (yych == 'i') goto yy317;
- goto yy187;
-yy305:
- YYDEBUG(305, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy306;
- if (yych != 'a') goto yy187;
yy306:
YYDEBUG(306, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy307;
- if (yych != 'm') goto yy187;
+ if (yych == 'E') goto yy332;
+ if (yych == 'e') goto yy332;
+ goto yy187;
yy307:
YYDEBUG(307, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy308;
- if (yych != 'e') goto yy187;
+ if (yych == 'I') goto yy326;
+ if (yych == 'i') goto yy326;
+ goto yy187;
yy308:
YYDEBUG(308, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy309;
- if (yych != 's') goto yy187;
+ if (yych == 'I') goto yy321;
+ if (yych == 'i') goto yy321;
+ goto yy187;
yy309:
YYDEBUG(309, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy310;
- if (yych != 'p') goto yy187;
+ if (yych == 'A') goto yy310;
+ if (yych != 'a') goto yy187;
yy310:
YYDEBUG(310, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy311;
- if (yych != 'a') goto yy187;
+ if (yych == 'M') goto yy311;
+ if (yych != 'm') goto yy187;
yy311:
YYDEBUG(311, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy312;
- if (yych != 'c') goto yy187;
+ if (yych == 'E') goto yy312;
+ if (yych != 'e') goto yy187;
yy312:
YYDEBUG(312, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy313;
- if (yych != 'e') goto yy187;
+ if (yych == 'S') goto yy313;
+ if (yych != 's') goto yy187;
yy313:
YYDEBUG(313, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy187;
+ if (yych == 'P') goto yy314;
+ if (yych != 'p') goto yy187;
+yy314:
YYDEBUG(314, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy187;
+ if (yych == 'A') goto yy315;
+ if (yych != 'a') goto yy187;
+yy315:
YYDEBUG(315, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy316;
+ if (yych != 'c') goto yy187;
+yy316:
+ YYDEBUG(316, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy317;
+ if (yych != 'e') goto yy187;
+yy317:
+ YYDEBUG(317, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(318, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(319, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(316, *YYCURSOR);
+ YYDEBUG(320, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1668 "Zend/zend_language_scanner.l"
+#line 1676 "Zend/zend_language_scanner.l"
{
if (CG(current_namespace)) {
*zendlval = *CG(current_namespace);
@@ -4150,27 +4172,27 @@ yy313:
}
return T_NS_C;
}
-#line 4154 "Zend/zend_language_scanner.c"
-yy317:
- YYDEBUG(317, *YYCURSOR);
+#line 4176 "Zend/zend_language_scanner.c"
+yy321:
+ YYDEBUG(321, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy318;
+ if (yych == 'R') goto yy322;
if (yych != 'r') goto yy187;
-yy318:
- YYDEBUG(318, *YYCURSOR);
+yy322:
+ YYDEBUG(322, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(319, *YYCURSOR);
+ YYDEBUG(323, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(320, *YYCURSOR);
+ YYDEBUG(324, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(321, *YYCURSOR);
+ YYDEBUG(325, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1643 "Zend/zend_language_scanner.l"
+#line 1651 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
const size_t filename_len = strlen(filename);
@@ -4195,72 +4217,72 @@ yy318:
ZVAL_STRING(zendlval, dirname, 0);
return T_DIR;
}
-#line 4199 "Zend/zend_language_scanner.c"
-yy322:
- YYDEBUG(322, *YYCURSOR);
+#line 4221 "Zend/zend_language_scanner.c"
+yy326:
+ YYDEBUG(326, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy323;
+ if (yych == 'N') goto yy327;
if (yych != 'n') goto yy187;
-yy323:
- YYDEBUG(323, *YYCURSOR);
+yy327:
+ YYDEBUG(327, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy324;
+ if (yych == 'E') goto yy328;
if (yych != 'e') goto yy187;
-yy324:
- YYDEBUG(324, *YYCURSOR);
+yy328:
+ YYDEBUG(328, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(325, *YYCURSOR);
+ YYDEBUG(329, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(326, *YYCURSOR);
+ YYDEBUG(330, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(327, *YYCURSOR);
+ YYDEBUG(331, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1628 "Zend/zend_language_scanner.l"
+#line 1636 "Zend/zend_language_scanner.l"
{
ZVAL_LONG(zendlval, CG(zend_lineno));
return T_LINE;
}
-#line 4229 "Zend/zend_language_scanner.c"
-yy328:
- YYDEBUG(328, *YYCURSOR);
+#line 4251 "Zend/zend_language_scanner.c"
+yy332:
+ YYDEBUG(332, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy329;
+ if (yych == 'T') goto yy333;
if (yych != 't') goto yy187;
-yy329:
- YYDEBUG(329, *YYCURSOR);
+yy333:
+ YYDEBUG(333, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy330;
+ if (yych == 'H') goto yy334;
if (yych != 'h') goto yy187;
-yy330:
- YYDEBUG(330, *YYCURSOR);
+yy334:
+ YYDEBUG(334, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy331;
+ if (yych == 'O') goto yy335;
if (yych != 'o') goto yy187;
-yy331:
- YYDEBUG(331, *YYCURSOR);
+yy335:
+ YYDEBUG(335, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy332;
+ if (yych == 'D') goto yy336;
if (yych != 'd') goto yy187;
-yy332:
- YYDEBUG(332, *YYCURSOR);
+yy336:
+ YYDEBUG(336, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(333, *YYCURSOR);
+ YYDEBUG(337, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(334, *YYCURSOR);
+ YYDEBUG(338, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(335, *YYCURSOR);
+ YYDEBUG(339, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1615 "Zend/zend_language_scanner.l"
+#line 1623 "Zend/zend_language_scanner.l"
{
const char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL;
const char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL;
@@ -4273,58 +4295,58 @@ yy332:
zendlval->type = IS_STRING;
return T_METHOD_C;
}
-#line 4277 "Zend/zend_language_scanner.c"
-yy336:
- YYDEBUG(336, *YYCURSOR);
+#line 4299 "Zend/zend_language_scanner.c"
+yy340:
+ YYDEBUG(340, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy347;
- if (yych == 'l') goto yy347;
+ if (yych == 'L') goto yy351;
+ if (yych == 'l') goto yy351;
goto yy187;
-yy337:
- YYDEBUG(337, *YYCURSOR);
+yy341:
+ YYDEBUG(341, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy338;
+ if (yych == 'N') goto yy342;
if (yych != 'n') goto yy187;
-yy338:
- YYDEBUG(338, *YYCURSOR);
+yy342:
+ YYDEBUG(342, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy339;
+ if (yych == 'C') goto yy343;
if (yych != 'c') goto yy187;
-yy339:
- YYDEBUG(339, *YYCURSOR);
+yy343:
+ YYDEBUG(343, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy340;
+ if (yych == 'T') goto yy344;
if (yych != 't') goto yy187;
-yy340:
- YYDEBUG(340, *YYCURSOR);
+yy344:
+ YYDEBUG(344, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy341;
+ if (yych == 'I') goto yy345;
if (yych != 'i') goto yy187;
-yy341:
- YYDEBUG(341, *YYCURSOR);
+yy345:
+ YYDEBUG(345, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy342;
+ if (yych == 'O') goto yy346;
if (yych != 'o') goto yy187;
-yy342:
- YYDEBUG(342, *YYCURSOR);
+yy346:
+ YYDEBUG(346, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy343;
+ if (yych == 'N') goto yy347;
if (yych != 'n') goto yy187;
-yy343:
- YYDEBUG(343, *YYCURSOR);
+yy347:
+ YYDEBUG(347, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(344, *YYCURSOR);
+ YYDEBUG(348, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(345, *YYCURSOR);
+ YYDEBUG(349, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(346, *YYCURSOR);
+ YYDEBUG(350, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1605 "Zend/zend_language_scanner.l"
+#line 1613 "Zend/zend_language_scanner.l"
{
zend_op_array *op_array = CG(active_op_array);
if (op_array && op_array->function_name) {
@@ -4334,27 +4356,27 @@ yy343:
}
return T_FUNC_C;
}
-#line 4338 "Zend/zend_language_scanner.c"
-yy347:
- YYDEBUG(347, *YYCURSOR);
+#line 4360 "Zend/zend_language_scanner.c"
+yy351:
+ YYDEBUG(351, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy348;
+ if (yych == 'E') goto yy352;
if (yych != 'e') goto yy187;
-yy348:
- YYDEBUG(348, *YYCURSOR);
+yy352:
+ YYDEBUG(352, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(349, *YYCURSOR);
+ YYDEBUG(353, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(350, *YYCURSOR);
+ YYDEBUG(354, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(351, *YYCURSOR);
+ YYDEBUG(355, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1633 "Zend/zend_language_scanner.l"
+#line 1641 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
@@ -4364,37 +4386,37 @@ yy348:
ZVAL_STRING(zendlval, filename, 1);
return T_FILE;
}
-#line 4368 "Zend/zend_language_scanner.c"
-yy352:
- YYDEBUG(352, *YYCURSOR);
+#line 4390 "Zend/zend_language_scanner.c"
+yy356:
+ YYDEBUG(356, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy353;
+ if (yych == 'A') goto yy357;
if (yych != 'a') goto yy187;
-yy353:
- YYDEBUG(353, *YYCURSOR);
+yy357:
+ YYDEBUG(357, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy354;
+ if (yych == 'I') goto yy358;
if (yych != 'i') goto yy187;
-yy354:
- YYDEBUG(354, *YYCURSOR);
+yy358:
+ YYDEBUG(358, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy355;
+ if (yych == 'T') goto yy359;
if (yych != 't') goto yy187;
-yy355:
- YYDEBUG(355, *YYCURSOR);
+yy359:
+ YYDEBUG(359, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(356, *YYCURSOR);
+ YYDEBUG(360, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(357, *YYCURSOR);
+ YYDEBUG(361, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(358, *YYCURSOR);
+ YYDEBUG(362, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1595 "Zend/zend_language_scanner.l"
+#line 1603 "Zend/zend_language_scanner.l"
{
zend_class_entry *ce = CG(active_class_entry);
if (ce && ce->name && ZEND_ACC_TRAIT == (ce->ce_flags & ZEND_ACC_TRAIT)) {
@@ -4404,37 +4426,37 @@ yy355:
}
return T_TRAIT_C;
}
-#line 4408 "Zend/zend_language_scanner.c"
-yy359:
- YYDEBUG(359, *YYCURSOR);
+#line 4430 "Zend/zend_language_scanner.c"
+yy363:
+ YYDEBUG(363, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy360;
+ if (yych == 'A') goto yy364;
if (yych != 'a') goto yy187;
-yy360:
- YYDEBUG(360, *YYCURSOR);
+yy364:
+ YYDEBUG(364, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy361;
+ if (yych == 'S') goto yy365;
if (yych != 's') goto yy187;
-yy361:
- YYDEBUG(361, *YYCURSOR);
+yy365:
+ YYDEBUG(365, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy362;
+ if (yych == 'S') goto yy366;
if (yych != 's') goto yy187;
-yy362:
- YYDEBUG(362, *YYCURSOR);
+yy366:
+ YYDEBUG(366, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(363, *YYCURSOR);
+ YYDEBUG(367, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '_') goto yy187;
- YYDEBUG(364, *YYCURSOR);
+ YYDEBUG(368, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(365, *YYCURSOR);
+ YYDEBUG(369, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1577 "Zend/zend_language_scanner.l"
+#line 1585 "Zend/zend_language_scanner.l"
{
zend_class_entry *ce = CG(active_class_entry);
if (ce && ZEND_ACC_TRAIT == (ce->ce_flags & ZEND_ACC_TRAIT)) {
@@ -4452,84 +4474,60 @@ yy362:
}
return T_CLASS_C;
}
-#line 4456 "Zend/zend_language_scanner.c"
-yy366:
- YYDEBUG(366, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy367;
- if (yych != 'l') goto yy187;
-yy367:
- YYDEBUG(367, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy368;
- if (yych != 't') goto yy187;
-yy368:
- YYDEBUG(368, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy187;
- YYDEBUG(369, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy370;
- if (yych != 'c') goto yy187;
+#line 4478 "Zend/zend_language_scanner.c"
yy370:
YYDEBUG(370, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy371;
- if (yych != 'o') goto yy187;
+ if (yych == 'L') goto yy371;
+ if (yych != 'l') goto yy187;
yy371:
YYDEBUG(371, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy372;
- if (yych != 'm') goto yy187;
+ if (yych == 'T') goto yy372;
+ if (yych != 't') goto yy187;
yy372:
YYDEBUG(372, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy373;
- if (yych != 'p') goto yy187;
-yy373:
+ if (yych != '_') goto yy187;
YYDEBUG(373, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy374;
- if (yych != 'i') goto yy187;
+ if (yych == 'C') goto yy374;
+ if (yych != 'c') goto yy187;
yy374:
YYDEBUG(374, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy375;
- if (yych != 'l') goto yy187;
+ if (yych == 'O') goto yy375;
+ if (yych != 'o') goto yy187;
yy375:
YYDEBUG(375, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy376;
- if (yych != 'e') goto yy187;
+ if (yych == 'M') goto yy376;
+ if (yych != 'm') goto yy187;
yy376:
YYDEBUG(376, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy377;
- if (yych != 'r') goto yy187;
+ if (yych == 'P') goto yy377;
+ if (yych != 'p') goto yy187;
yy377:
YYDEBUG(377, *YYCURSOR);
- ++YYCURSOR;
- if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy186;
- }
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy378;
+ if (yych != 'i') goto yy187;
+yy378:
YYDEBUG(378, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1294 "Zend/zend_language_scanner.l"
- {
- return T_HALT_COMPILER;
-}
-#line 4522 "Zend/zend_language_scanner.c"
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy379;
+ if (yych != 'l') goto yy187;
yy379:
YYDEBUG(379, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy383;
- if (yych == 's') goto yy383;
- goto yy187;
+ if (yych == 'E') goto yy380;
+ if (yych != 'e') goto yy187;
yy380:
YYDEBUG(380, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy381;
- if (yych != 'e') goto yy187;
+ if (yych == 'R') goto yy381;
+ if (yych != 'r') goto yy187;
yy381:
YYDEBUG(381, *YYCURSOR);
++YYCURSOR;
@@ -4538,21 +4536,22 @@ yy381:
}
YYDEBUG(382, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1274 "Zend/zend_language_scanner.l"
+#line 1294 "Zend/zend_language_scanner.l"
{
- return T_USE;
+ return T_HALT_COMPILER;
}
-#line 4546 "Zend/zend_language_scanner.c"
+#line 4544 "Zend/zend_language_scanner.c"
yy383:
YYDEBUG(383, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy384;
- if (yych != 'e') goto yy187;
+ if (yych == 'S') goto yy387;
+ if (yych == 's') goto yy387;
+ goto yy187;
yy384:
YYDEBUG(384, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy385;
- if (yych != 't') goto yy187;
+ if (yych == 'E') goto yy385;
+ if (yych != 'e') goto yy187;
yy385:
YYDEBUG(385, *YYCURSOR);
++YYCURSOR;
@@ -4561,2639 +4560,2662 @@ yy385:
}
YYDEBUG(386, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1322 "Zend/zend_language_scanner.l"
+#line 1274 "Zend/zend_language_scanner.l"
{
- return T_UNSET;
+ return T_USE;
}
-#line 4569 "Zend/zend_language_scanner.c"
+#line 4568 "Zend/zend_language_scanner.c"
yy387:
YYDEBUG(387, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy388;
+ if (yych != 'e') goto yy187;
+yy388:
+ YYDEBUG(388, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy389;
+ if (yych != 't') goto yy187;
+yy389:
+ YYDEBUG(389, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(390, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1322 "Zend/zend_language_scanner.l"
+ {
+ return T_UNSET;
+}
+#line 4591 "Zend/zend_language_scanner.c"
+yy391:
+ YYDEBUG(391, *YYCURSOR);
++YYCURSOR;
YYFILL(7);
yych = *YYCURSOR;
-yy388:
- YYDEBUG(388, *YYCURSOR);
+yy392:
+ YYDEBUG(392, *YYCURSOR);
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy387;
+ if (yych == '\t') goto yy391;
if (yych <= 0x1F) goto yy194;
- goto yy387;
+ goto yy391;
} else {
if (yych <= 'A') {
if (yych <= '@') goto yy194;
- goto yy392;
+ goto yy396;
} else {
- if (yych <= 'B') goto yy390;
+ if (yych <= 'B') goto yy394;
if (yych <= 'C') goto yy194;
- goto yy395;
+ goto yy399;
}
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy396;
+ if (yych == 'F') goto yy400;
if (yych <= 'H') goto yy194;
- goto yy397;
+ goto yy401;
} else {
if (yych <= 'O') {
if (yych <= 'N') goto yy194;
- goto yy391;
+ goto yy395;
} else {
if (yych <= 'Q') goto yy194;
- if (yych <= 'R') goto yy394;
- goto yy393;
+ if (yych <= 'R') goto yy398;
+ goto yy397;
}
}
}
} else {
if (yych <= 'f') {
if (yych <= 'a') {
- if (yych == 'U') goto yy389;
+ if (yych == 'U') goto yy393;
if (yych <= '`') goto yy194;
- goto yy392;
+ goto yy396;
} else {
if (yych <= 'c') {
- if (yych <= 'b') goto yy390;
+ if (yych <= 'b') goto yy394;
goto yy194;
} else {
- if (yych <= 'd') goto yy395;
+ if (yych <= 'd') goto yy399;
if (yych <= 'e') goto yy194;
- goto yy396;
+ goto yy400;
}
}
} else {
if (yych <= 'q') {
if (yych <= 'i') {
if (yych <= 'h') goto yy194;
- goto yy397;
+ goto yy401;
} else {
- if (yych == 'o') goto yy391;
+ if (yych == 'o') goto yy395;
goto yy194;
}
} else {
if (yych <= 's') {
- if (yych <= 'r') goto yy394;
- goto yy393;
+ if (yych <= 'r') goto yy398;
+ goto yy397;
} else {
if (yych != 'u') goto yy194;
}
}
}
}
-yy389:
- YYDEBUG(389, *YYCURSOR);
+yy393:
+ YYDEBUG(393, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy456;
- if (yych == 'n') goto yy456;
+ if (yych == 'N') goto yy460;
+ if (yych == 'n') goto yy460;
goto yy194;
-yy390:
- YYDEBUG(390, *YYCURSOR);
+yy394:
+ YYDEBUG(394, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy443;
+ if (yych == 'I') goto yy447;
if (yych <= 'N') goto yy194;
- goto yy444;
+ goto yy448;
} else {
if (yych <= 'i') {
if (yych <= 'h') goto yy194;
- goto yy443;
+ goto yy447;
} else {
- if (yych == 'o') goto yy444;
+ if (yych == 'o') goto yy448;
goto yy194;
}
}
-yy391:
- YYDEBUG(391, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'B') goto yy435;
- if (yych == 'b') goto yy435;
- goto yy194;
-yy392:
- YYDEBUG(392, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy428;
- if (yych == 'r') goto yy428;
- goto yy194;
-yy393:
- YYDEBUG(393, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy420;
- if (yych == 't') goto yy420;
- goto yy194;
-yy394:
- YYDEBUG(394, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy418;
- if (yych == 'e') goto yy418;
- goto yy194;
yy395:
YYDEBUG(395, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy414;
- if (yych == 'o') goto yy414;
+ if (yych == 'B') goto yy439;
+ if (yych == 'b') goto yy439;
goto yy194;
yy396:
YYDEBUG(396, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy407;
- if (yych == 'l') goto yy407;
+ if (yych == 'R') goto yy432;
+ if (yych == 'r') goto yy432;
goto yy194;
yy397:
YYDEBUG(397, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy398;
- if (yych != 'n') goto yy194;
+ if (yych == 'T') goto yy424;
+ if (yych == 't') goto yy424;
+ goto yy194;
yy398:
YYDEBUG(398, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy399;
- if (yych != 't') goto yy194;
+ if (yych == 'E') goto yy422;
+ if (yych == 'e') goto yy422;
+ goto yy194;
yy399:
YYDEBUG(399, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy400;
- if (yych != 'e') goto yy402;
+ if (yych == 'O') goto yy418;
+ if (yych == 'o') goto yy418;
+ goto yy194;
yy400:
YYDEBUG(400, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'G') goto yy405;
- if (yych == 'g') goto yy405;
+ if (yych == 'L') goto yy411;
+ if (yych == 'l') goto yy411;
goto yy194;
yy401:
YYDEBUG(401, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy402;
+ if (yych != 'n') goto yy194;
+yy402:
+ YYDEBUG(402, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy403;
+ if (yych != 't') goto yy194;
+yy403:
+ YYDEBUG(403, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy404;
+ if (yych != 'e') goto yy406;
+yy404:
+ YYDEBUG(404, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'G') goto yy409;
+ if (yych == 'g') goto yy409;
+ goto yy194;
+yy405:
+ YYDEBUG(405, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy402:
- YYDEBUG(402, *YYCURSOR);
+yy406:
+ YYDEBUG(406, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy401;
+ if (yych == '\t') goto yy405;
goto yy194;
} else {
- if (yych <= ' ') goto yy401;
+ if (yych <= ' ') goto yy405;
if (yych != ')') goto yy194;
}
- YYDEBUG(403, *YYCURSOR);
+ YYDEBUG(407, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(404, *YYCURSOR);
+ YYDEBUG(408, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1222 "Zend/zend_language_scanner.l"
{
return T_INT_CAST;
}
-#line 4745 "Zend/zend_language_scanner.c"
-yy405:
- YYDEBUG(405, *YYCURSOR);
+#line 4767 "Zend/zend_language_scanner.c"
+yy409:
+ YYDEBUG(409, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy406;
+ if (yych == 'E') goto yy410;
if (yych != 'e') goto yy194;
-yy406:
- YYDEBUG(406, *YYCURSOR);
+yy410:
+ YYDEBUG(410, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy401;
- if (yych == 'r') goto yy401;
+ if (yych == 'R') goto yy405;
+ if (yych == 'r') goto yy405;
goto yy194;
-yy407:
- YYDEBUG(407, *YYCURSOR);
+yy411:
+ YYDEBUG(411, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy408;
+ if (yych == 'O') goto yy412;
if (yych != 'o') goto yy194;
-yy408:
- YYDEBUG(408, *YYCURSOR);
+yy412:
+ YYDEBUG(412, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy409;
+ if (yych == 'A') goto yy413;
if (yych != 'a') goto yy194;
-yy409:
- YYDEBUG(409, *YYCURSOR);
+yy413:
+ YYDEBUG(413, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy410;
+ if (yych == 'T') goto yy414;
if (yych != 't') goto yy194;
-yy410:
- YYDEBUG(410, *YYCURSOR);
+yy414:
+ YYDEBUG(414, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(411, *YYCURSOR);
+ YYDEBUG(415, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy410;
+ if (yych == '\t') goto yy414;
goto yy194;
} else {
- if (yych <= ' ') goto yy410;
+ if (yych <= ' ') goto yy414;
if (yych != ')') goto yy194;
}
- YYDEBUG(412, *YYCURSOR);
+ YYDEBUG(416, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(413, *YYCURSOR);
+ YYDEBUG(417, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1226 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_CAST;
}
-#line 4793 "Zend/zend_language_scanner.c"
-yy414:
- YYDEBUG(414, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'U') goto yy415;
- if (yych != 'u') goto yy194;
-yy415:
- YYDEBUG(415, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'B') goto yy416;
- if (yych != 'b') goto yy194;
-yy416:
- YYDEBUG(416, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy417;
- if (yych != 'l') goto yy194;
-yy417:
- YYDEBUG(417, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy410;
- if (yych == 'e') goto yy410;
- goto yy194;
+#line 4815 "Zend/zend_language_scanner.c"
yy418:
YYDEBUG(418, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy419;
- if (yych != 'a') goto yy194;
+ if (yych == 'U') goto yy419;
+ if (yych != 'u') goto yy194;
yy419:
YYDEBUG(419, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy410;
- if (yych == 'l') goto yy410;
- goto yy194;
+ if (yych == 'B') goto yy420;
+ if (yych != 'b') goto yy194;
yy420:
YYDEBUG(420, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy421;
- if (yych != 'r') goto yy194;
+ if (yych == 'L') goto yy421;
+ if (yych != 'l') goto yy194;
yy421:
YYDEBUG(421, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy422;
- if (yych != 'i') goto yy194;
+ if (yych == 'E') goto yy414;
+ if (yych == 'e') goto yy414;
+ goto yy194;
yy422:
YYDEBUG(422, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy423;
- if (yych != 'n') goto yy194;
+ if (yych == 'A') goto yy423;
+ if (yych != 'a') goto yy194;
yy423:
YYDEBUG(423, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'G') goto yy424;
- if (yych != 'g') goto yy194;
+ if (yych == 'L') goto yy414;
+ if (yych == 'l') goto yy414;
+ goto yy194;
yy424:
YYDEBUG(424, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy425;
+ if (yych != 'r') goto yy194;
+yy425:
+ YYDEBUG(425, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy426;
+ if (yych != 'i') goto yy194;
+yy426:
+ YYDEBUG(426, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy427;
+ if (yych != 'n') goto yy194;
+yy427:
+ YYDEBUG(427, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'G') goto yy428;
+ if (yych != 'g') goto yy194;
+yy428:
+ YYDEBUG(428, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(425, *YYCURSOR);
+ YYDEBUG(429, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy424;
+ if (yych == '\t') goto yy428;
goto yy194;
} else {
- if (yych <= ' ') goto yy424;
+ if (yych <= ' ') goto yy428;
if (yych != ')') goto yy194;
}
- YYDEBUG(426, *YYCURSOR);
+ YYDEBUG(430, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(427, *YYCURSOR);
+ YYDEBUG(431, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1230 "Zend/zend_language_scanner.l"
{
return T_STRING_CAST;
}
-#line 4867 "Zend/zend_language_scanner.c"
-yy428:
- YYDEBUG(428, *YYCURSOR);
+#line 4889 "Zend/zend_language_scanner.c"
+yy432:
+ YYDEBUG(432, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy429;
+ if (yych == 'R') goto yy433;
if (yych != 'r') goto yy194;
-yy429:
- YYDEBUG(429, *YYCURSOR);
+yy433:
+ YYDEBUG(433, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy430;
+ if (yych == 'A') goto yy434;
if (yych != 'a') goto yy194;
-yy430:
- YYDEBUG(430, *YYCURSOR);
+yy434:
+ YYDEBUG(434, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy431;
+ if (yych == 'Y') goto yy435;
if (yych != 'y') goto yy194;
-yy431:
- YYDEBUG(431, *YYCURSOR);
+yy435:
+ YYDEBUG(435, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(432, *YYCURSOR);
+ YYDEBUG(436, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy431;
+ if (yych == '\t') goto yy435;
goto yy194;
} else {
- if (yych <= ' ') goto yy431;
+ if (yych <= ' ') goto yy435;
if (yych != ')') goto yy194;
}
- YYDEBUG(433, *YYCURSOR);
+ YYDEBUG(437, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(434, *YYCURSOR);
+ YYDEBUG(438, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1234 "Zend/zend_language_scanner.l"
{
return T_ARRAY_CAST;
}
-#line 4904 "Zend/zend_language_scanner.c"
-yy435:
- YYDEBUG(435, *YYCURSOR);
+#line 4926 "Zend/zend_language_scanner.c"
+yy439:
+ YYDEBUG(439, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'J') goto yy436;
+ if (yych == 'J') goto yy440;
if (yych != 'j') goto yy194;
-yy436:
- YYDEBUG(436, *YYCURSOR);
+yy440:
+ YYDEBUG(440, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy437;
+ if (yych == 'E') goto yy441;
if (yych != 'e') goto yy194;
-yy437:
- YYDEBUG(437, *YYCURSOR);
+yy441:
+ YYDEBUG(441, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy438;
+ if (yych == 'C') goto yy442;
if (yych != 'c') goto yy194;
-yy438:
- YYDEBUG(438, *YYCURSOR);
+yy442:
+ YYDEBUG(442, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy439;
+ if (yych == 'T') goto yy443;
if (yych != 't') goto yy194;
-yy439:
- YYDEBUG(439, *YYCURSOR);
+yy443:
+ YYDEBUG(443, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(440, *YYCURSOR);
+ YYDEBUG(444, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy439;
+ if (yych == '\t') goto yy443;
goto yy194;
} else {
- if (yych <= ' ') goto yy439;
+ if (yych <= ' ') goto yy443;
if (yych != ')') goto yy194;
}
- YYDEBUG(441, *YYCURSOR);
+ YYDEBUG(445, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(442, *YYCURSOR);
+ YYDEBUG(446, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1238 "Zend/zend_language_scanner.l"
{
return T_OBJECT_CAST;
}
-#line 4946 "Zend/zend_language_scanner.c"
-yy443:
- YYDEBUG(443, *YYCURSOR);
+#line 4968 "Zend/zend_language_scanner.c"
+yy447:
+ YYDEBUG(447, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy453;
- if (yych == 'n') goto yy453;
+ if (yych == 'N') goto yy457;
+ if (yych == 'n') goto yy457;
goto yy194;
-yy444:
- YYDEBUG(444, *YYCURSOR);
+yy448:
+ YYDEBUG(448, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy445;
+ if (yych == 'O') goto yy449;
if (yych != 'o') goto yy194;
-yy445:
- YYDEBUG(445, *YYCURSOR);
+yy449:
+ YYDEBUG(449, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy446;
+ if (yych == 'L') goto yy450;
if (yych != 'l') goto yy194;
-yy446:
- YYDEBUG(446, *YYCURSOR);
+yy450:
+ YYDEBUG(450, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy451;
- if (yych == 'e') goto yy451;
- goto yy448;
-yy447:
- YYDEBUG(447, *YYCURSOR);
+ if (yych == 'E') goto yy455;
+ if (yych == 'e') goto yy455;
+ goto yy452;
+yy451:
+ YYDEBUG(451, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy448:
- YYDEBUG(448, *YYCURSOR);
+yy452:
+ YYDEBUG(452, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy447;
+ if (yych == '\t') goto yy451;
goto yy194;
} else {
- if (yych <= ' ') goto yy447;
+ if (yych <= ' ') goto yy451;
if (yych != ')') goto yy194;
}
- YYDEBUG(449, *YYCURSOR);
+ YYDEBUG(453, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(450, *YYCURSOR);
+ YYDEBUG(454, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1242 "Zend/zend_language_scanner.l"
{
return T_BOOL_CAST;
}
-#line 4991 "Zend/zend_language_scanner.c"
-yy451:
- YYDEBUG(451, *YYCURSOR);
+#line 5013 "Zend/zend_language_scanner.c"
+yy455:
+ YYDEBUG(455, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy452;
+ if (yych == 'A') goto yy456;
if (yych != 'a') goto yy194;
-yy452:
- YYDEBUG(452, *YYCURSOR);
+yy456:
+ YYDEBUG(456, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy447;
- if (yych == 'n') goto yy447;
+ if (yych == 'N') goto yy451;
+ if (yych == 'n') goto yy451;
goto yy194;
-yy453:
- YYDEBUG(453, *YYCURSOR);
+yy457:
+ YYDEBUG(457, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy454;
+ if (yych == 'A') goto yy458;
if (yych != 'a') goto yy194;
-yy454:
- YYDEBUG(454, *YYCURSOR);
+yy458:
+ YYDEBUG(458, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy455;
+ if (yych == 'R') goto yy459;
if (yych != 'r') goto yy194;
-yy455:
- YYDEBUG(455, *YYCURSOR);
+yy459:
+ YYDEBUG(459, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy424;
- if (yych == 'y') goto yy424;
+ if (yych == 'Y') goto yy428;
+ if (yych == 'y') goto yy428;
goto yy194;
-yy456:
- YYDEBUG(456, *YYCURSOR);
+yy460:
+ YYDEBUG(460, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy457;
+ if (yych == 'S') goto yy461;
if (yych != 's') goto yy194;
-yy457:
- YYDEBUG(457, *YYCURSOR);
+yy461:
+ YYDEBUG(461, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy458;
+ if (yych == 'E') goto yy462;
if (yych != 'e') goto yy194;
-yy458:
- YYDEBUG(458, *YYCURSOR);
+yy462:
+ YYDEBUG(462, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy459;
+ if (yych == 'T') goto yy463;
if (yych != 't') goto yy194;
-yy459:
- YYDEBUG(459, *YYCURSOR);
+yy463:
+ YYDEBUG(463, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(460, *YYCURSOR);
+ YYDEBUG(464, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy459;
+ if (yych == '\t') goto yy463;
goto yy194;
} else {
- if (yych <= ' ') goto yy459;
+ if (yych <= ' ') goto yy463;
if (yych != ')') goto yy194;
}
- YYDEBUG(461, *YYCURSOR);
+ YYDEBUG(465, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(462, *YYCURSOR);
+ YYDEBUG(466, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1246 "Zend/zend_language_scanner.l"
{
return T_UNSET_CAST;
}
-#line 5055 "Zend/zend_language_scanner.c"
-yy463:
- YYDEBUG(463, *YYCURSOR);
+#line 5077 "Zend/zend_language_scanner.c"
+yy467:
+ YYDEBUG(467, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy464;
+ if (yych == 'R') goto yy468;
if (yych != 'r') goto yy187;
-yy464:
- YYDEBUG(464, *YYCURSOR);
+yy468:
+ YYDEBUG(468, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(465, *YYCURSOR);
+ YYDEBUG(469, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1218 "Zend/zend_language_scanner.l"
{
return T_VAR;
}
-#line 5073 "Zend/zend_language_scanner.c"
-yy466:
- YYDEBUG(466, *YYCURSOR);
+#line 5095 "Zend/zend_language_scanner.c"
+yy470:
+ YYDEBUG(470, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy470;
- if (yych == 'm') goto yy470;
+ if (yych == 'M') goto yy474;
+ if (yych == 'm') goto yy474;
goto yy187;
-yy467:
- YYDEBUG(467, *YYCURSOR);
+yy471:
+ YYDEBUG(471, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy468;
+ if (yych == 'W') goto yy472;
if (yych != 'w') goto yy187;
-yy468:
- YYDEBUG(468, *YYCURSOR);
+yy472:
+ YYDEBUG(472, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(469, *YYCURSOR);
+ YYDEBUG(473, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1210 "Zend/zend_language_scanner.l"
{
return T_NEW;
}
-#line 5097 "Zend/zend_language_scanner.c"
-yy470:
- YYDEBUG(470, *YYCURSOR);
+#line 5119 "Zend/zend_language_scanner.c"
+yy474:
+ YYDEBUG(474, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy471;
+ if (yych == 'E') goto yy475;
if (yych != 'e') goto yy187;
-yy471:
- YYDEBUG(471, *YYCURSOR);
+yy475:
+ YYDEBUG(475, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy472;
+ if (yych == 'S') goto yy476;
if (yych != 's') goto yy187;
-yy472:
- YYDEBUG(472, *YYCURSOR);
+yy476:
+ YYDEBUG(476, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy473;
+ if (yych == 'P') goto yy477;
if (yych != 'p') goto yy187;
-yy473:
- YYDEBUG(473, *YYCURSOR);
+yy477:
+ YYDEBUG(477, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy474;
+ if (yych == 'A') goto yy478;
if (yych != 'a') goto yy187;
-yy474:
- YYDEBUG(474, *YYCURSOR);
+yy478:
+ YYDEBUG(478, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy475;
+ if (yych == 'C') goto yy479;
if (yych != 'c') goto yy187;
-yy475:
- YYDEBUG(475, *YYCURSOR);
+yy479:
+ YYDEBUG(479, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy476;
+ if (yych == 'E') goto yy480;
if (yych != 'e') goto yy187;
-yy476:
- YYDEBUG(476, *YYCURSOR);
+yy480:
+ YYDEBUG(480, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(477, *YYCURSOR);
+ YYDEBUG(481, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1270 "Zend/zend_language_scanner.l"
{
return T_NAMESPACE;
}
-#line 5140 "Zend/zend_language_scanner.c"
-yy478:
- YYDEBUG(478, *YYCURSOR);
+#line 5162 "Zend/zend_language_scanner.c"
+yy482:
+ YYDEBUG(482, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(479, *YYCURSOR);
+ YYDEBUG(483, *YYCURSOR);
if (yych <= 'D') {
if (yych <= '/') goto yy190;
- if (yych <= '9') goto yy478;
+ if (yych <= '9') goto yy482;
goto yy190;
} else {
if (yych <= 'E') goto yy193;
if (yych == 'e') goto yy193;
goto yy190;
}
-yy480:
- YYDEBUG(480, *YYCURSOR);
+yy484:
+ YYDEBUG(484, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(481, *YYCURSOR);
+ YYDEBUG(485, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1390 "Zend/zend_language_scanner.l"
+#line 1398 "Zend/zend_language_scanner.l"
{
return T_CONCAT_EQUAL;
}
-#line 5166 "Zend/zend_language_scanner.c"
-yy482:
- YYDEBUG(482, *YYCURSOR);
+#line 5188 "Zend/zend_language_scanner.c"
+yy486:
+ YYDEBUG(486, *YYCURSOR);
yych = *++YYCURSOR;
if (yych != '.') goto yy194;
- YYDEBUG(483, *YYCURSOR);
+ YYDEBUG(487, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(484, *YYCURSOR);
+ YYDEBUG(488, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1206 "Zend/zend_language_scanner.l"
{
return T_ELLIPSIS;
}
-#line 5179 "Zend/zend_language_scanner.c"
-yy485:
- YYDEBUG(485, *YYCURSOR);
+#line 5201 "Zend/zend_language_scanner.c"
+yy489:
+ YYDEBUG(489, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(486, *YYCURSOR);
+ YYDEBUG(490, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1198 "Zend/zend_language_scanner.l"
{
return T_PAAMAYIM_NEKUDOTAYIM;
}
-#line 5189 "Zend/zend_language_scanner.c"
-yy487:
- YYDEBUG(487, *YYCURSOR);
+#line 5211 "Zend/zend_language_scanner.c"
+yy491:
+ YYDEBUG(491, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy488:
- YYDEBUG(488, *YYCURSOR);
+yy492:
+ YYDEBUG(492, *YYCURSOR);
if (yych <= '\f') {
if (yych <= 0x08) goto yy141;
- if (yych <= '\n') goto yy487;
+ if (yych <= '\n') goto yy491;
goto yy141;
} else {
- if (yych <= '\r') goto yy487;
- if (yych == ' ') goto yy487;
+ if (yych <= '\r') goto yy491;
+ if (yych == ' ') goto yy491;
goto yy141;
}
-yy489:
- YYDEBUG(489, *YYCURSOR);
+yy493:
+ YYDEBUG(493, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(490, *YYCURSOR);
+ YYDEBUG(494, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1378 "Zend/zend_language_scanner.l"
{
return T_MINUS_EQUAL;
}
-#line 5215 "Zend/zend_language_scanner.c"
-yy491:
- YYDEBUG(491, *YYCURSOR);
+#line 5237 "Zend/zend_language_scanner.c"
+yy495:
+ YYDEBUG(495, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(492, *YYCURSOR);
+ YYDEBUG(496, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1346 "Zend/zend_language_scanner.l"
{
return T_DEC;
}
-#line 5225 "Zend/zend_language_scanner.c"
-yy493:
- YYDEBUG(493, *YYCURSOR);
+#line 5247 "Zend/zend_language_scanner.c"
+yy497:
+ YYDEBUG(497, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(494, *YYCURSOR);
+ YYDEBUG(498, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1170 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
return T_OBJECT_OPERATOR;
}
-#line 5236 "Zend/zend_language_scanner.c"
-yy495:
- YYDEBUG(495, *YYCURSOR);
+#line 5258 "Zend/zend_language_scanner.c"
+yy499:
+ YYDEBUG(499, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy502;
+ if (yych == 'I') goto yy506;
if (yych <= 'N') goto yy187;
- goto yy503;
+ goto yy507;
} else {
if (yych <= 'i') {
if (yych <= 'h') goto yy187;
- goto yy502;
+ goto yy506;
} else {
- if (yych == 'o') goto yy503;
+ if (yych == 'o') goto yy507;
goto yy187;
}
}
-yy496:
- YYDEBUG(496, *YYCURSOR);
+yy500:
+ YYDEBUG(500, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy497;
+ if (yych == 'B') goto yy501;
if (yych != 'b') goto yy187;
-yy497:
- YYDEBUG(497, *YYCURSOR);
+yy501:
+ YYDEBUG(501, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy498;
+ if (yych == 'L') goto yy502;
if (yych != 'l') goto yy187;
-yy498:
- YYDEBUG(498, *YYCURSOR);
+yy502:
+ YYDEBUG(502, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy499;
+ if (yych == 'I') goto yy503;
if (yych != 'i') goto yy187;
-yy499:
- YYDEBUG(499, *YYCURSOR);
+yy503:
+ YYDEBUG(503, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy500;
+ if (yych == 'C') goto yy504;
if (yych != 'c') goto yy187;
-yy500:
- YYDEBUG(500, *YYCURSOR);
+yy504:
+ YYDEBUG(504, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(501, *YYCURSOR);
+ YYDEBUG(505, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1318 "Zend/zend_language_scanner.l"
{
return T_PUBLIC;
}
-#line 5285 "Zend/zend_language_scanner.c"
-yy502:
- YYDEBUG(502, *YYCURSOR);
+#line 5307 "Zend/zend_language_scanner.c"
+yy506:
+ YYDEBUG(506, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'V') {
- if (yych == 'N') goto yy511;
+ if (yych == 'N') goto yy515;
if (yych <= 'U') goto yy187;
- goto yy512;
+ goto yy516;
} else {
if (yych <= 'n') {
if (yych <= 'm') goto yy187;
- goto yy511;
+ goto yy515;
} else {
- if (yych == 'v') goto yy512;
+ if (yych == 'v') goto yy516;
goto yy187;
}
}
-yy503:
- YYDEBUG(503, *YYCURSOR);
+yy507:
+ YYDEBUG(507, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy504;
+ if (yych == 'T') goto yy508;
if (yych != 't') goto yy187;
-yy504:
- YYDEBUG(504, *YYCURSOR);
+yy508:
+ YYDEBUG(508, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy505;
+ if (yych == 'E') goto yy509;
if (yych != 'e') goto yy187;
-yy505:
- YYDEBUG(505, *YYCURSOR);
+yy509:
+ YYDEBUG(509, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy506;
+ if (yych == 'C') goto yy510;
if (yych != 'c') goto yy187;
-yy506:
- YYDEBUG(506, *YYCURSOR);
+yy510:
+ YYDEBUG(510, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy507;
+ if (yych == 'T') goto yy511;
if (yych != 't') goto yy187;
-yy507:
- YYDEBUG(507, *YYCURSOR);
+yy511:
+ YYDEBUG(511, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy508;
+ if (yych == 'E') goto yy512;
if (yych != 'e') goto yy187;
-yy508:
- YYDEBUG(508, *YYCURSOR);
+yy512:
+ YYDEBUG(512, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy509;
+ if (yych == 'D') goto yy513;
if (yych != 'd') goto yy187;
-yy509:
- YYDEBUG(509, *YYCURSOR);
+yy513:
+ YYDEBUG(513, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(510, *YYCURSOR);
+ YYDEBUG(514, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1314 "Zend/zend_language_scanner.l"
{
return T_PROTECTED;
}
-#line 5344 "Zend/zend_language_scanner.c"
-yy511:
- YYDEBUG(511, *YYCURSOR);
+#line 5366 "Zend/zend_language_scanner.c"
+yy515:
+ YYDEBUG(515, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy517;
- if (yych == 't') goto yy517;
+ if (yych == 'T') goto yy521;
+ if (yych == 't') goto yy521;
goto yy187;
-yy512:
- YYDEBUG(512, *YYCURSOR);
+yy516:
+ YYDEBUG(516, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy513;
+ if (yych == 'A') goto yy517;
if (yych != 'a') goto yy187;
-yy513:
- YYDEBUG(513, *YYCURSOR);
+yy517:
+ YYDEBUG(517, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy514;
+ if (yych == 'T') goto yy518;
if (yych != 't') goto yy187;
-yy514:
- YYDEBUG(514, *YYCURSOR);
+yy518:
+ YYDEBUG(518, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy515;
+ if (yych == 'E') goto yy519;
if (yych != 'e') goto yy187;
-yy515:
- YYDEBUG(515, *YYCURSOR);
+yy519:
+ YYDEBUG(519, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(516, *YYCURSOR);
+ YYDEBUG(520, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1310 "Zend/zend_language_scanner.l"
{
return T_PRIVATE;
}
-#line 5378 "Zend/zend_language_scanner.c"
-yy517:
- YYDEBUG(517, *YYCURSOR);
+#line 5400 "Zend/zend_language_scanner.c"
+yy521:
+ YYDEBUG(521, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(518, *YYCURSOR);
+ YYDEBUG(522, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1146 "Zend/zend_language_scanner.l"
{
return T_PRINT;
}
-#line 5391 "Zend/zend_language_scanner.c"
-yy519:
- YYDEBUG(519, *YYCURSOR);
+#line 5413 "Zend/zend_language_scanner.c"
+yy523:
+ YYDEBUG(523, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy524;
- if (yych == 'o') goto yy524;
+ if (yych == 'O') goto yy528;
+ if (yych == 'o') goto yy528;
goto yy187;
-yy520:
- YYDEBUG(520, *YYCURSOR);
+yy524:
+ YYDEBUG(524, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy521;
+ if (yych == 'T') goto yy525;
if (yych != 't') goto yy187;
-yy521:
- YYDEBUG(521, *YYCURSOR);
+yy525:
+ YYDEBUG(525, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy522;
+ if (yych == 'O') goto yy526;
if (yych != 'o') goto yy187;
-yy522:
- YYDEBUG(522, *YYCURSOR);
+yy526:
+ YYDEBUG(526, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(523, *YYCURSOR);
+ YYDEBUG(527, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1138 "Zend/zend_language_scanner.l"
{
return T_GOTO;
}
-#line 5420 "Zend/zend_language_scanner.c"
-yy524:
- YYDEBUG(524, *YYCURSOR);
+#line 5442 "Zend/zend_language_scanner.c"
+yy528:
+ YYDEBUG(528, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy525;
+ if (yych == 'B') goto yy529;
if (yych != 'b') goto yy187;
-yy525:
- YYDEBUG(525, *YYCURSOR);
+yy529:
+ YYDEBUG(529, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy526;
+ if (yych == 'A') goto yy530;
if (yych != 'a') goto yy187;
-yy526:
- YYDEBUG(526, *YYCURSOR);
+yy530:
+ YYDEBUG(530, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy527;
+ if (yych == 'L') goto yy531;
if (yych != 'l') goto yy187;
-yy527:
- YYDEBUG(527, *YYCURSOR);
+yy531:
+ YYDEBUG(531, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(528, *YYCURSOR);
+ YYDEBUG(532, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1282 "Zend/zend_language_scanner.l"
{
return T_GLOBAL;
}
-#line 5448 "Zend/zend_language_scanner.c"
-yy529:
- YYDEBUG(529, *YYCURSOR);
+#line 5470 "Zend/zend_language_scanner.c"
+yy533:
+ YYDEBUG(533, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy537;
+ if (yych == '<') goto yy541;
goto yy194;
-yy530:
- YYDEBUG(530, *YYCURSOR);
+yy534:
+ YYDEBUG(534, *YYCURSOR);
yych = *++YYCURSOR;
goto yy181;
-yy531:
- YYDEBUG(531, *YYCURSOR);
+yy535:
+ YYDEBUG(535, *YYCURSOR);
yych = *++YYCURSOR;
goto yy179;
-yy532:
- YYDEBUG(532, *YYCURSOR);
+yy536:
+ YYDEBUG(536, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy533;
+ if (yych == 'E') goto yy537;
if (yych != 'e') goto yy187;
-yy533:
- YYDEBUG(533, *YYCURSOR);
+yy537:
+ YYDEBUG(537, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy534;
+ if (yych == 'A') goto yy538;
if (yych != 'a') goto yy187;
-yy534:
- YYDEBUG(534, *YYCURSOR);
+yy538:
+ YYDEBUG(538, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'K') goto yy535;
+ if (yych == 'K') goto yy539;
if (yych != 'k') goto yy187;
-yy535:
- YYDEBUG(535, *YYCURSOR);
+yy539:
+ YYDEBUG(539, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(536, *YYCURSOR);
+ YYDEBUG(540, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1130 "Zend/zend_language_scanner.l"
{
return T_BREAK;
}
-#line 5489 "Zend/zend_language_scanner.c"
-yy537:
- YYDEBUG(537, *YYCURSOR);
+#line 5511 "Zend/zend_language_scanner.c"
+yy541:
+ YYDEBUG(541, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy266;
+ if (yych == '<') goto yy270;
goto yy194;
-yy538:
- YYDEBUG(538, *YYCURSOR);
+yy542:
+ YYDEBUG(542, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy545;
- if (yych == 'a') goto yy545;
+ if (yych == 'A') goto yy549;
+ if (yych == 'a') goto yy549;
goto yy187;
-yy539:
- YYDEBUG(539, *YYCURSOR);
+yy543:
+ YYDEBUG(543, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy540;
+ if (yych == 'I') goto yy544;
if (yych != 'i') goto yy187;
-yy540:
- YYDEBUG(540, *YYCURSOR);
+yy544:
+ YYDEBUG(544, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy541;
+ if (yych == 'T') goto yy545;
if (yych != 't') goto yy187;
-yy541:
- YYDEBUG(541, *YYCURSOR);
+yy545:
+ YYDEBUG(545, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy542;
+ if (yych == 'C') goto yy546;
if (yych != 'c') goto yy187;
-yy542:
- YYDEBUG(542, *YYCURSOR);
+yy546:
+ YYDEBUG(546, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy543;
+ if (yych == 'H') goto yy547;
if (yych != 'h') goto yy187;
-yy543:
- YYDEBUG(543, *YYCURSOR);
+yy547:
+ YYDEBUG(547, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(544, *YYCURSOR);
+ YYDEBUG(548, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1114 "Zend/zend_language_scanner.l"
{
return T_SWITCH;
}
-#line 5533 "Zend/zend_language_scanner.c"
-yy545:
- YYDEBUG(545, *YYCURSOR);
+#line 5555 "Zend/zend_language_scanner.c"
+yy549:
+ YYDEBUG(549, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy546;
+ if (yych == 'T') goto yy550;
if (yych != 't') goto yy187;
-yy546:
- YYDEBUG(546, *YYCURSOR);
+yy550:
+ YYDEBUG(550, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy547;
+ if (yych == 'I') goto yy551;
if (yych != 'i') goto yy187;
-yy547:
- YYDEBUG(547, *YYCURSOR);
+yy551:
+ YYDEBUG(551, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy548;
+ if (yych == 'C') goto yy552;
if (yych != 'c') goto yy187;
-yy548:
- YYDEBUG(548, *YYCURSOR);
+yy552:
+ YYDEBUG(552, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(549, *YYCURSOR);
+ YYDEBUG(553, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1298 "Zend/zend_language_scanner.l"
{
return T_STATIC;
}
-#line 5561 "Zend/zend_language_scanner.c"
-yy550:
- YYDEBUG(550, *YYCURSOR);
+#line 5583 "Zend/zend_language_scanner.c"
+yy554:
+ YYDEBUG(554, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy561;
- if (yych == 's') goto yy561;
+ if (yych == 'S') goto yy565;
+ if (yych == 's') goto yy565;
goto yy187;
-yy551:
- YYDEBUG(551, *YYCURSOR);
+yy555:
+ YYDEBUG(555, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy559;
- if (yych == 'd') goto yy559;
+ if (yych == 'D') goto yy563;
+ if (yych == 'd') goto yy563;
goto yy187;
-yy552:
- YYDEBUG(552, *YYCURSOR);
+yy556:
+ YYDEBUG(556, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy555;
- if (yych == 'r') goto yy555;
+ if (yych == 'R') goto yy559;
+ if (yych == 'r') goto yy559;
goto yy187;
-yy553:
- YYDEBUG(553, *YYCURSOR);
+yy557:
+ YYDEBUG(557, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(554, *YYCURSOR);
+ YYDEBUG(558, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1110 "Zend/zend_language_scanner.l"
{
return T_AS;
}
-#line 5592 "Zend/zend_language_scanner.c"
-yy555:
- YYDEBUG(555, *YYCURSOR);
+#line 5614 "Zend/zend_language_scanner.c"
+yy559:
+ YYDEBUG(559, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy556;
+ if (yych == 'A') goto yy560;
if (yych != 'a') goto yy187;
-yy556:
- YYDEBUG(556, *YYCURSOR);
+yy560:
+ YYDEBUG(560, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy557;
+ if (yych == 'Y') goto yy561;
if (yych != 'y') goto yy187;
-yy557:
- YYDEBUG(557, *YYCURSOR);
+yy561:
+ YYDEBUG(561, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(558, *YYCURSOR);
+ YYDEBUG(562, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1334 "Zend/zend_language_scanner.l"
{
return T_ARRAY;
}
-#line 5615 "Zend/zend_language_scanner.c"
-yy559:
- YYDEBUG(559, *YYCURSOR);
+#line 5637 "Zend/zend_language_scanner.c"
+yy563:
+ YYDEBUG(563, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(560, *YYCURSOR);
+ YYDEBUG(564, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1430 "Zend/zend_language_scanner.l"
+#line 1438 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_AND;
}
-#line 5628 "Zend/zend_language_scanner.c"
-yy561:
- YYDEBUG(561, *YYCURSOR);
+#line 5650 "Zend/zend_language_scanner.c"
+yy565:
+ YYDEBUG(565, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy562;
+ if (yych == 'T') goto yy566;
if (yych != 't') goto yy187;
-yy562:
- YYDEBUG(562, *YYCURSOR);
+yy566:
+ YYDEBUG(566, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy563;
+ if (yych == 'R') goto yy567;
if (yych != 'r') goto yy187;
-yy563:
- YYDEBUG(563, *YYCURSOR);
+yy567:
+ YYDEBUG(567, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy564;
+ if (yych == 'A') goto yy568;
if (yych != 'a') goto yy187;
-yy564:
- YYDEBUG(564, *YYCURSOR);
+yy568:
+ YYDEBUG(568, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy565;
+ if (yych == 'C') goto yy569;
if (yych != 'c') goto yy187;
-yy565:
- YYDEBUG(565, *YYCURSOR);
+yy569:
+ YYDEBUG(569, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy566;
+ if (yych == 'T') goto yy570;
if (yych != 't') goto yy187;
-yy566:
- YYDEBUG(566, *YYCURSOR);
+yy570:
+ YYDEBUG(570, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(567, *YYCURSOR);
+ YYDEBUG(571, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1302 "Zend/zend_language_scanner.l"
{
return T_ABSTRACT;
}
-#line 5666 "Zend/zend_language_scanner.c"
-yy568:
- YYDEBUG(568, *YYCURSOR);
+#line 5688 "Zend/zend_language_scanner.c"
+yy572:
+ YYDEBUG(572, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy569;
+ if (yych == 'I') goto yy573;
if (yych != 'i') goto yy187;
-yy569:
- YYDEBUG(569, *YYCURSOR);
+yy573:
+ YYDEBUG(573, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy570;
+ if (yych == 'L') goto yy574;
if (yych != 'l') goto yy187;
-yy570:
- YYDEBUG(570, *YYCURSOR);
+yy574:
+ YYDEBUG(574, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy571;
+ if (yych == 'E') goto yy575;
if (yych != 'e') goto yy187;
-yy571:
- YYDEBUG(571, *YYCURSOR);
+yy575:
+ YYDEBUG(575, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(572, *YYCURSOR);
+ YYDEBUG(576, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1070 "Zend/zend_language_scanner.l"
{
return T_WHILE;
}
-#line 5694 "Zend/zend_language_scanner.c"
-yy573:
- YYDEBUG(573, *YYCURSOR);
+#line 5716 "Zend/zend_language_scanner.c"
+yy577:
+ YYDEBUG(577, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(574, *YYCURSOR);
+ YYDEBUG(578, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1054 "Zend/zend_language_scanner.l"
{
return T_IF;
}
-#line 5707 "Zend/zend_language_scanner.c"
-yy575:
- YYDEBUG(575, *YYCURSOR);
+#line 5729 "Zend/zend_language_scanner.c"
+yy579:
+ YYDEBUG(579, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy617;
- if (yych == 'p') goto yy617;
+ if (yych == 'P') goto yy621;
+ if (yych == 'p') goto yy621;
goto yy187;
-yy576:
- YYDEBUG(576, *YYCURSOR);
+yy580:
+ YYDEBUG(580, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'C') {
if (yych <= 'B') goto yy187;
- goto yy584;
+ goto yy588;
} else {
if (yych <= 'R') goto yy187;
- if (yych <= 'S') goto yy582;
- goto yy583;
+ if (yych <= 'S') goto yy586;
+ goto yy587;
}
} else {
if (yych <= 'r') {
- if (yych == 'c') goto yy584;
+ if (yych == 'c') goto yy588;
goto yy187;
} else {
- if (yych <= 's') goto yy582;
- if (yych <= 't') goto yy583;
+ if (yych <= 's') goto yy586;
+ if (yych <= 't') goto yy587;
goto yy187;
}
}
-yy577:
- YYDEBUG(577, *YYCURSOR);
+yy581:
+ YYDEBUG(581, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy578;
+ if (yych == 'S') goto yy582;
if (yych != 's') goto yy187;
-yy578:
- YYDEBUG(578, *YYCURSOR);
+yy582:
+ YYDEBUG(582, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy579;
+ if (yych == 'E') goto yy583;
if (yych != 'e') goto yy187;
-yy579:
- YYDEBUG(579, *YYCURSOR);
+yy583:
+ YYDEBUG(583, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy580;
+ if (yych == 'T') goto yy584;
if (yych != 't') goto yy187;
-yy580:
- YYDEBUG(580, *YYCURSOR);
+yy584:
+ YYDEBUG(584, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(581, *YYCURSOR);
+ YYDEBUG(585, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1286 "Zend/zend_language_scanner.l"
{
return T_ISSET;
}
-#line 5763 "Zend/zend_language_scanner.c"
-yy582:
- YYDEBUG(582, *YYCURSOR);
+#line 5785 "Zend/zend_language_scanner.c"
+yy586:
+ YYDEBUG(586, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy603;
- if (yych == 't') goto yy603;
+ if (yych == 'T') goto yy607;
+ if (yych == 't') goto yy607;
goto yy187;
-yy583:
- YYDEBUG(583, *YYCURSOR);
+yy587:
+ YYDEBUG(587, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy596;
- if (yych == 'e') goto yy596;
+ if (yych == 'E') goto yy600;
+ if (yych == 'e') goto yy600;
goto yy187;
-yy584:
- YYDEBUG(584, *YYCURSOR);
+yy588:
+ YYDEBUG(588, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy585;
+ if (yych == 'L') goto yy589;
if (yych != 'l') goto yy187;
-yy585:
- YYDEBUG(585, *YYCURSOR);
+yy589:
+ YYDEBUG(589, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy586;
+ if (yych == 'U') goto yy590;
if (yych != 'u') goto yy187;
-yy586:
- YYDEBUG(586, *YYCURSOR);
+yy590:
+ YYDEBUG(590, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy587;
+ if (yych == 'D') goto yy591;
if (yych != 'd') goto yy187;
-yy587:
- YYDEBUG(587, *YYCURSOR);
+yy591:
+ YYDEBUG(591, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy588;
+ if (yych == 'E') goto yy592;
if (yych != 'e') goto yy187;
-yy588:
- YYDEBUG(588, *YYCURSOR);
+yy592:
+ YYDEBUG(592, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
if (yych >= '0') goto yy186;
} else {
- if (yych <= '@') goto yy589;
+ if (yych <= '@') goto yy593;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy590;
+ if (yych <= '_') goto yy594;
} else {
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy589:
- YYDEBUG(589, *YYCURSOR);
+yy593:
+ YYDEBUG(593, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1254 "Zend/zend_language_scanner.l"
{
return T_INCLUDE;
}
-#line 5821 "Zend/zend_language_scanner.c"
-yy590:
- YYDEBUG(590, *YYCURSOR);
+#line 5843 "Zend/zend_language_scanner.c"
+yy594:
+ YYDEBUG(594, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy591;
+ if (yych == 'O') goto yy595;
if (yych != 'o') goto yy187;
-yy591:
- YYDEBUG(591, *YYCURSOR);
+yy595:
+ YYDEBUG(595, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy592;
+ if (yych == 'N') goto yy596;
if (yych != 'n') goto yy187;
-yy592:
- YYDEBUG(592, *YYCURSOR);
+yy596:
+ YYDEBUG(596, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy593;
+ if (yych == 'C') goto yy597;
if (yych != 'c') goto yy187;
-yy593:
- YYDEBUG(593, *YYCURSOR);
+yy597:
+ YYDEBUG(597, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy594;
+ if (yych == 'E') goto yy598;
if (yych != 'e') goto yy187;
-yy594:
- YYDEBUG(594, *YYCURSOR);
+yy598:
+ YYDEBUG(598, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(595, *YYCURSOR);
+ YYDEBUG(599, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1258 "Zend/zend_language_scanner.l"
{
return T_INCLUDE_ONCE;
}
-#line 5854 "Zend/zend_language_scanner.c"
-yy596:
- YYDEBUG(596, *YYCURSOR);
+#line 5876 "Zend/zend_language_scanner.c"
+yy600:
+ YYDEBUG(600, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy597;
+ if (yych == 'R') goto yy601;
if (yych != 'r') goto yy187;
-yy597:
- YYDEBUG(597, *YYCURSOR);
+yy601:
+ YYDEBUG(601, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy598;
+ if (yych == 'F') goto yy602;
if (yych != 'f') goto yy187;
-yy598:
- YYDEBUG(598, *YYCURSOR);
+yy602:
+ YYDEBUG(602, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy599;
+ if (yych == 'A') goto yy603;
if (yych != 'a') goto yy187;
-yy599:
- YYDEBUG(599, *YYCURSOR);
+yy603:
+ YYDEBUG(603, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy600;
+ if (yych == 'C') goto yy604;
if (yych != 'c') goto yy187;
-yy600:
- YYDEBUG(600, *YYCURSOR);
+yy604:
+ YYDEBUG(604, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy601;
+ if (yych == 'E') goto yy605;
if (yych != 'e') goto yy187;
-yy601:
- YYDEBUG(601, *YYCURSOR);
+yy605:
+ YYDEBUG(605, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(602, *YYCURSOR);
+ YYDEBUG(606, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1154 "Zend/zend_language_scanner.l"
{
return T_INTERFACE;
}
-#line 5892 "Zend/zend_language_scanner.c"
-yy603:
- YYDEBUG(603, *YYCURSOR);
+#line 5914 "Zend/zend_language_scanner.c"
+yy607:
+ YYDEBUG(607, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'E') {
- if (yych == 'A') goto yy604;
+ if (yych == 'A') goto yy608;
if (yych <= 'D') goto yy187;
- goto yy605;
+ goto yy609;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy187;
} else {
- if (yych == 'e') goto yy605;
+ if (yych == 'e') goto yy609;
goto yy187;
}
}
-yy604:
- YYDEBUG(604, *YYCURSOR);
+yy608:
+ YYDEBUG(608, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy611;
- if (yych == 'n') goto yy611;
+ if (yych == 'N') goto yy615;
+ if (yych == 'n') goto yy615;
goto yy187;
-yy605:
- YYDEBUG(605, *YYCURSOR);
+yy609:
+ YYDEBUG(609, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy606;
+ if (yych == 'A') goto yy610;
if (yych != 'a') goto yy187;
-yy606:
- YYDEBUG(606, *YYCURSOR);
+yy610:
+ YYDEBUG(610, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy607;
+ if (yych == 'D') goto yy611;
if (yych != 'd') goto yy187;
-yy607:
- YYDEBUG(607, *YYCURSOR);
+yy611:
+ YYDEBUG(611, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy608;
+ if (yych == 'O') goto yy612;
if (yych != 'o') goto yy187;
-yy608:
- YYDEBUG(608, *YYCURSOR);
+yy612:
+ YYDEBUG(612, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy609;
+ if (yych == 'F') goto yy613;
if (yych != 'f') goto yy187;
-yy609:
- YYDEBUG(609, *YYCURSOR);
+yy613:
+ YYDEBUG(613, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(610, *YYCURSOR);
+ YYDEBUG(614, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1278 "Zend/zend_language_scanner.l"
{
return T_INSTEADOF;
}
-#line 5946 "Zend/zend_language_scanner.c"
-yy611:
- YYDEBUG(611, *YYCURSOR);
+#line 5968 "Zend/zend_language_scanner.c"
+yy615:
+ YYDEBUG(615, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy612;
+ if (yych == 'C') goto yy616;
if (yych != 'c') goto yy187;
-yy612:
- YYDEBUG(612, *YYCURSOR);
+yy616:
+ YYDEBUG(616, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy613;
+ if (yych == 'E') goto yy617;
if (yych != 'e') goto yy187;
-yy613:
- YYDEBUG(613, *YYCURSOR);
+yy617:
+ YYDEBUG(617, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy614;
+ if (yych == 'O') goto yy618;
if (yych != 'o') goto yy187;
-yy614:
- YYDEBUG(614, *YYCURSOR);
+yy618:
+ YYDEBUG(618, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy615;
+ if (yych == 'F') goto yy619;
if (yych != 'f') goto yy187;
-yy615:
- YYDEBUG(615, *YYCURSOR);
+yy619:
+ YYDEBUG(619, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(616, *YYCURSOR);
+ YYDEBUG(620, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1106 "Zend/zend_language_scanner.l"
{
return T_INSTANCEOF;
}
-#line 5979 "Zend/zend_language_scanner.c"
-yy617:
- YYDEBUG(617, *YYCURSOR);
+#line 6001 "Zend/zend_language_scanner.c"
+yy621:
+ YYDEBUG(621, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy618;
+ if (yych == 'L') goto yy622;
if (yych != 'l') goto yy187;
-yy618:
- YYDEBUG(618, *YYCURSOR);
+yy622:
+ YYDEBUG(622, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy619;
+ if (yych == 'E') goto yy623;
if (yych != 'e') goto yy187;
-yy619:
- YYDEBUG(619, *YYCURSOR);
+yy623:
+ YYDEBUG(623, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy620;
+ if (yych == 'M') goto yy624;
if (yych != 'm') goto yy187;
-yy620:
- YYDEBUG(620, *YYCURSOR);
+yy624:
+ YYDEBUG(624, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy621;
+ if (yych == 'E') goto yy625;
if (yych != 'e') goto yy187;
-yy621:
- YYDEBUG(621, *YYCURSOR);
+yy625:
+ YYDEBUG(625, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy622;
+ if (yych == 'N') goto yy626;
if (yych != 'n') goto yy187;
-yy622:
- YYDEBUG(622, *YYCURSOR);
+yy626:
+ YYDEBUG(626, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy623;
+ if (yych == 'T') goto yy627;
if (yych != 't') goto yy187;
-yy623:
- YYDEBUG(623, *YYCURSOR);
+yy627:
+ YYDEBUG(627, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy624;
+ if (yych == 'S') goto yy628;
if (yych != 's') goto yy187;
-yy624:
- YYDEBUG(624, *YYCURSOR);
+yy628:
+ YYDEBUG(628, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(625, *YYCURSOR);
+ YYDEBUG(629, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1166 "Zend/zend_language_scanner.l"
{
return T_IMPLEMENTS;
}
-#line 6027 "Zend/zend_language_scanner.c"
-yy626:
- YYDEBUG(626, *YYCURSOR);
+#line 6049 "Zend/zend_language_scanner.c"
+yy630:
+ YYDEBUG(630, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy634;
- if (yych == 'r') goto yy634;
+ if (yych == 'R') goto yy638;
+ if (yych == 'r') goto yy638;
goto yy187;
-yy627:
- YYDEBUG(627, *YYCURSOR);
+yy631:
+ YYDEBUG(631, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'Y') {
- if (yych == 'A') goto yy630;
+ if (yych == 'A') goto yy634;
if (yych <= 'X') goto yy187;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy187;
- goto yy630;
+ goto yy634;
} else {
if (yych != 'y') goto yy187;
}
}
- YYDEBUG(628, *YYCURSOR);
+ YYDEBUG(632, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(629, *YYCURSOR);
+ YYDEBUG(633, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1038 "Zend/zend_language_scanner.l"
{
return T_TRY;
}
-#line 6059 "Zend/zend_language_scanner.c"
-yy630:
- YYDEBUG(630, *YYCURSOR);
+#line 6081 "Zend/zend_language_scanner.c"
+yy634:
+ YYDEBUG(634, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy631;
+ if (yych == 'I') goto yy635;
if (yych != 'i') goto yy187;
-yy631:
- YYDEBUG(631, *YYCURSOR);
+yy635:
+ YYDEBUG(635, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy632;
+ if (yych == 'T') goto yy636;
if (yych != 't') goto yy187;
-yy632:
- YYDEBUG(632, *YYCURSOR);
+yy636:
+ YYDEBUG(636, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(633, *YYCURSOR);
+ YYDEBUG(637, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1158 "Zend/zend_language_scanner.l"
{
return T_TRAIT;
}
-#line 6082 "Zend/zend_language_scanner.c"
-yy634:
- YYDEBUG(634, *YYCURSOR);
+#line 6104 "Zend/zend_language_scanner.c"
+yy638:
+ YYDEBUG(638, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy635;
+ if (yych == 'O') goto yy639;
if (yych != 'o') goto yy187;
-yy635:
- YYDEBUG(635, *YYCURSOR);
+yy639:
+ YYDEBUG(639, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy636;
+ if (yych == 'W') goto yy640;
if (yych != 'w') goto yy187;
-yy636:
- YYDEBUG(636, *YYCURSOR);
+yy640:
+ YYDEBUG(640, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(637, *YYCURSOR);
+ YYDEBUG(641, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1050 "Zend/zend_language_scanner.l"
{
return T_THROW;
}
-#line 6105 "Zend/zend_language_scanner.c"
-yy638:
- YYDEBUG(638, *YYCURSOR);
+#line 6127 "Zend/zend_language_scanner.c"
+yy642:
+ YYDEBUG(642, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy639;
+ if (yych == 'E') goto yy643;
if (yych != 'e') goto yy187;
-yy639:
- YYDEBUG(639, *YYCURSOR);
+yy643:
+ YYDEBUG(643, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy640;
+ if (yych == 'L') goto yy644;
if (yych != 'l') goto yy187;
-yy640:
- YYDEBUG(640, *YYCURSOR);
+yy644:
+ YYDEBUG(644, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy641;
+ if (yych == 'D') goto yy645;
if (yych != 'd') goto yy187;
-yy641:
- YYDEBUG(641, *YYCURSOR);
+yy645:
+ YYDEBUG(645, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(642, *YYCURSOR);
+ YYDEBUG(646, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1034 "Zend/zend_language_scanner.l"
{
return T_YIELD;
}
-#line 6133 "Zend/zend_language_scanner.c"
-yy643:
- YYDEBUG(643, *YYCURSOR);
+#line 6155 "Zend/zend_language_scanner.c"
+yy647:
+ YYDEBUG(647, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'Q') goto yy645;
+ if (yych == 'Q') goto yy649;
if (yych <= 'S') goto yy187;
} else {
if (yych <= 'q') {
if (yych <= 'p') goto yy187;
- goto yy645;
+ goto yy649;
} else {
if (yych != 't') goto yy187;
}
}
- YYDEBUG(644, *YYCURSOR);
+ YYDEBUG(648, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy657;
- if (yych == 'u') goto yy657;
+ if (yych == 'U') goto yy661;
+ if (yych == 'u') goto yy661;
goto yy187;
-yy645:
- YYDEBUG(645, *YYCURSOR);
+yy649:
+ YYDEBUG(649, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy646;
+ if (yych == 'U') goto yy650;
if (yych != 'u') goto yy187;
-yy646:
- YYDEBUG(646, *YYCURSOR);
+yy650:
+ YYDEBUG(650, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy647;
+ if (yych == 'I') goto yy651;
if (yych != 'i') goto yy187;
-yy647:
- YYDEBUG(647, *YYCURSOR);
+yy651:
+ YYDEBUG(651, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy648;
+ if (yych == 'R') goto yy652;
if (yych != 'r') goto yy187;
-yy648:
- YYDEBUG(648, *YYCURSOR);
+yy652:
+ YYDEBUG(652, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy649;
+ if (yych == 'E') goto yy653;
if (yych != 'e') goto yy187;
-yy649:
- YYDEBUG(649, *YYCURSOR);
+yy653:
+ YYDEBUG(653, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
if (yych >= '0') goto yy186;
} else {
- if (yych <= '@') goto yy650;
+ if (yych <= '@') goto yy654;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy651;
+ if (yych <= '_') goto yy655;
} else {
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy650:
- YYDEBUG(650, *YYCURSOR);
+yy654:
+ YYDEBUG(654, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1262 "Zend/zend_language_scanner.l"
{
return T_REQUIRE;
}
-#line 6198 "Zend/zend_language_scanner.c"
-yy651:
- YYDEBUG(651, *YYCURSOR);
+#line 6220 "Zend/zend_language_scanner.c"
+yy655:
+ YYDEBUG(655, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy652;
+ if (yych == 'O') goto yy656;
if (yych != 'o') goto yy187;
-yy652:
- YYDEBUG(652, *YYCURSOR);
+yy656:
+ YYDEBUG(656, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy653;
+ if (yych == 'N') goto yy657;
if (yych != 'n') goto yy187;
-yy653:
- YYDEBUG(653, *YYCURSOR);
+yy657:
+ YYDEBUG(657, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy654;
+ if (yych == 'C') goto yy658;
if (yych != 'c') goto yy187;
-yy654:
- YYDEBUG(654, *YYCURSOR);
+yy658:
+ YYDEBUG(658, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy655;
+ if (yych == 'E') goto yy659;
if (yych != 'e') goto yy187;
-yy655:
- YYDEBUG(655, *YYCURSOR);
+yy659:
+ YYDEBUG(659, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(656, *YYCURSOR);
+ YYDEBUG(660, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1266 "Zend/zend_language_scanner.l"
{
return T_REQUIRE_ONCE;
}
-#line 6231 "Zend/zend_language_scanner.c"
-yy657:
- YYDEBUG(657, *YYCURSOR);
+#line 6253 "Zend/zend_language_scanner.c"
+yy661:
+ YYDEBUG(661, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy658;
+ if (yych == 'R') goto yy662;
if (yych != 'r') goto yy187;
-yy658:
- YYDEBUG(658, *YYCURSOR);
+yy662:
+ YYDEBUG(662, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy659;
+ if (yych == 'N') goto yy663;
if (yych != 'n') goto yy187;
-yy659:
- YYDEBUG(659, *YYCURSOR);
+yy663:
+ YYDEBUG(663, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(660, *YYCURSOR);
+ YYDEBUG(664, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1030 "Zend/zend_language_scanner.l"
{
return T_RETURN;
}
-#line 6254 "Zend/zend_language_scanner.c"
-yy661:
- YYDEBUG(661, *YYCURSOR);
+#line 6276 "Zend/zend_language_scanner.c"
+yy665:
+ YYDEBUG(665, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'L') {
if (yych <= 'K') goto yy187;
- goto yy684;
+ goto yy688;
} else {
if (yych <= 'R') goto yy187;
- if (yych <= 'S') goto yy683;
- goto yy682;
+ if (yych <= 'S') goto yy687;
+ goto yy686;
}
} else {
if (yych <= 'r') {
- if (yych == 'l') goto yy684;
+ if (yych == 'l') goto yy688;
goto yy187;
} else {
- if (yych <= 's') goto yy683;
- if (yych <= 't') goto yy682;
+ if (yych <= 's') goto yy687;
+ if (yych <= 't') goto yy686;
goto yy187;
}
}
-yy662:
- YYDEBUG(662, *YYCURSOR);
+yy666:
+ YYDEBUG(666, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'A') goto yy674;
+ if (yych == 'A') goto yy678;
if (yych <= 'N') goto yy187;
- goto yy675;
+ goto yy679;
} else {
if (yych <= 'a') {
if (yych <= '`') goto yy187;
- goto yy674;
+ goto yy678;
} else {
- if (yych == 'o') goto yy675;
+ if (yych == 'o') goto yy679;
goto yy187;
}
}
-yy663:
- YYDEBUG(663, *YYCURSOR);
+yy667:
+ YYDEBUG(667, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy664;
+ if (yych == 'N') goto yy668;
if (yych != 'n') goto yy187;
-yy664:
- YYDEBUG(664, *YYCURSOR);
+yy668:
+ YYDEBUG(668, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'R') goto yy187;
- if (yych >= 'T') goto yy666;
+ if (yych >= 'T') goto yy670;
} else {
if (yych <= 'r') goto yy187;
- if (yych <= 's') goto yy665;
- if (yych <= 't') goto yy666;
+ if (yych <= 's') goto yy669;
+ if (yych <= 't') goto yy670;
goto yy187;
}
-yy665:
- YYDEBUG(665, *YYCURSOR);
+yy669:
+ YYDEBUG(669, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy672;
- if (yych == 't') goto yy672;
+ if (yych == 'T') goto yy676;
+ if (yych == 't') goto yy676;
goto yy187;
-yy666:
- YYDEBUG(666, *YYCURSOR);
+yy670:
+ YYDEBUG(670, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy667;
+ if (yych == 'I') goto yy671;
if (yych != 'i') goto yy187;
-yy667:
- YYDEBUG(667, *YYCURSOR);
+yy671:
+ YYDEBUG(671, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy668;
+ if (yych == 'N') goto yy672;
if (yych != 'n') goto yy187;
-yy668:
- YYDEBUG(668, *YYCURSOR);
+yy672:
+ YYDEBUG(672, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy669;
+ if (yych == 'U') goto yy673;
if (yych != 'u') goto yy187;
-yy669:
- YYDEBUG(669, *YYCURSOR);
+yy673:
+ YYDEBUG(673, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy670;
+ if (yych == 'E') goto yy674;
if (yych != 'e') goto yy187;
-yy670:
- YYDEBUG(670, *YYCURSOR);
+yy674:
+ YYDEBUG(674, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(671, *YYCURSOR);
+ YYDEBUG(675, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1134 "Zend/zend_language_scanner.l"
{
return T_CONTINUE;
}
-#line 6348 "Zend/zend_language_scanner.c"
-yy672:
- YYDEBUG(672, *YYCURSOR);
+#line 6370 "Zend/zend_language_scanner.c"
+yy676:
+ YYDEBUG(676, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(673, *YYCURSOR);
+ YYDEBUG(677, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1026 "Zend/zend_language_scanner.l"
{
return T_CONST;
}
-#line 6361 "Zend/zend_language_scanner.c"
-yy674:
- YYDEBUG(674, *YYCURSOR);
+#line 6383 "Zend/zend_language_scanner.c"
+yy678:
+ YYDEBUG(678, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy679;
- if (yych == 's') goto yy679;
+ if (yych == 'S') goto yy683;
+ if (yych == 's') goto yy683;
goto yy187;
-yy675:
- YYDEBUG(675, *YYCURSOR);
+yy679:
+ YYDEBUG(679, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy676;
+ if (yych == 'N') goto yy680;
if (yych != 'n') goto yy187;
-yy676:
- YYDEBUG(676, *YYCURSOR);
+yy680:
+ YYDEBUG(680, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy677;
+ if (yych == 'E') goto yy681;
if (yych != 'e') goto yy187;
-yy677:
- YYDEBUG(677, *YYCURSOR);
+yy681:
+ YYDEBUG(681, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(678, *YYCURSOR);
+ YYDEBUG(682, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1214 "Zend/zend_language_scanner.l"
{
return T_CLONE;
}
-#line 6390 "Zend/zend_language_scanner.c"
-yy679:
- YYDEBUG(679, *YYCURSOR);
+#line 6412 "Zend/zend_language_scanner.c"
+yy683:
+ YYDEBUG(683, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy680;
+ if (yych == 'S') goto yy684;
if (yych != 's') goto yy187;
-yy680:
- YYDEBUG(680, *YYCURSOR);
+yy684:
+ YYDEBUG(684, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(681, *YYCURSOR);
+ YYDEBUG(685, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1150 "Zend/zend_language_scanner.l"
{
return T_CLASS;
}
-#line 6408 "Zend/zend_language_scanner.c"
-yy682:
- YYDEBUG(682, *YYCURSOR);
+#line 6430 "Zend/zend_language_scanner.c"
+yy686:
+ YYDEBUG(686, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy693;
- if (yych == 'c') goto yy693;
+ if (yych == 'C') goto yy697;
+ if (yych == 'c') goto yy697;
goto yy187;
-yy683:
- YYDEBUG(683, *YYCURSOR);
+yy687:
+ YYDEBUG(687, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy691;
- if (yych == 'e') goto yy691;
+ if (yych == 'E') goto yy695;
+ if (yych == 'e') goto yy695;
goto yy187;
-yy684:
- YYDEBUG(684, *YYCURSOR);
+yy688:
+ YYDEBUG(688, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy685;
+ if (yych == 'L') goto yy689;
if (yych != 'l') goto yy187;
-yy685:
- YYDEBUG(685, *YYCURSOR);
+yy689:
+ YYDEBUG(689, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy686;
+ if (yych == 'A') goto yy690;
if (yych != 'a') goto yy187;
-yy686:
- YYDEBUG(686, *YYCURSOR);
+yy690:
+ YYDEBUG(690, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy687;
+ if (yych == 'B') goto yy691;
if (yych != 'b') goto yy187;
-yy687:
- YYDEBUG(687, *YYCURSOR);
+yy691:
+ YYDEBUG(691, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy688;
+ if (yych == 'L') goto yy692;
if (yych != 'l') goto yy187;
-yy688:
- YYDEBUG(688, *YYCURSOR);
+yy692:
+ YYDEBUG(692, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy689;
+ if (yych == 'E') goto yy693;
if (yych != 'e') goto yy187;
-yy689:
- YYDEBUG(689, *YYCURSOR);
+yy693:
+ YYDEBUG(693, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(690, *YYCURSOR);
+ YYDEBUG(694, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1338 "Zend/zend_language_scanner.l"
{
return T_CALLABLE;
}
-#line 6458 "Zend/zend_language_scanner.c"
-yy691:
- YYDEBUG(691, *YYCURSOR);
+#line 6480 "Zend/zend_language_scanner.c"
+yy695:
+ YYDEBUG(695, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(692, *YYCURSOR);
+ YYDEBUG(696, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1122 "Zend/zend_language_scanner.l"
{
return T_CASE;
}
-#line 6471 "Zend/zend_language_scanner.c"
-yy693:
- YYDEBUG(693, *YYCURSOR);
+#line 6493 "Zend/zend_language_scanner.c"
+yy697:
+ YYDEBUG(697, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy694;
+ if (yych == 'H') goto yy698;
if (yych != 'h') goto yy187;
-yy694:
- YYDEBUG(694, *YYCURSOR);
+yy698:
+ YYDEBUG(698, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(695, *YYCURSOR);
+ YYDEBUG(699, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1042 "Zend/zend_language_scanner.l"
{
return T_CATCH;
}
-#line 6489 "Zend/zend_language_scanner.c"
-yy696:
- YYDEBUG(696, *YYCURSOR);
+#line 6511 "Zend/zend_language_scanner.c"
+yy700:
+ YYDEBUG(700, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy713;
- if (yych == 'n') goto yy713;
+ if (yych == 'N') goto yy717;
+ if (yych == 'n') goto yy717;
goto yy187;
-yy697:
- YYDEBUG(697, *YYCURSOR);
+yy701:
+ YYDEBUG(701, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy706;
- if (yych == 'r') goto yy706;
+ if (yych == 'R') goto yy710;
+ if (yych == 'r') goto yy710;
goto yy187;
-yy698:
- YYDEBUG(698, *YYCURSOR);
+yy702:
+ YYDEBUG(702, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy699;
+ if (yych == 'N') goto yy703;
if (yych != 'n') goto yy187;
-yy699:
- YYDEBUG(699, *YYCURSOR);
+yy703:
+ YYDEBUG(703, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy700;
+ if (yych == 'C') goto yy704;
if (yych != 'c') goto yy187;
-yy700:
- YYDEBUG(700, *YYCURSOR);
+yy704:
+ YYDEBUG(704, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy701;
+ if (yych == 'T') goto yy705;
if (yych != 't') goto yy187;
-yy701:
- YYDEBUG(701, *YYCURSOR);
+yy705:
+ YYDEBUG(705, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy702;
+ if (yych == 'I') goto yy706;
if (yych != 'i') goto yy187;
-yy702:
- YYDEBUG(702, *YYCURSOR);
+yy706:
+ YYDEBUG(706, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy703;
+ if (yych == 'O') goto yy707;
if (yych != 'o') goto yy187;
-yy703:
- YYDEBUG(703, *YYCURSOR);
+yy707:
+ YYDEBUG(707, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy704;
+ if (yych == 'N') goto yy708;
if (yych != 'n') goto yy187;
-yy704:
- YYDEBUG(704, *YYCURSOR);
+yy708:
+ YYDEBUG(708, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(705, *YYCURSOR);
+ YYDEBUG(709, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1022 "Zend/zend_language_scanner.l"
{
return T_FUNCTION;
}
-#line 6544 "Zend/zend_language_scanner.c"
-yy706:
- YYDEBUG(706, *YYCURSOR);
+#line 6566 "Zend/zend_language_scanner.c"
+yy710:
+ YYDEBUG(710, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy707;
+ if (yych <= '/') goto yy711;
if (yych <= '9') goto yy186;
} else {
- if (yych == 'E') goto yy708;
+ if (yych == 'E') goto yy712;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= 'd') {
if (yych != '`') goto yy186;
} else {
- if (yych <= 'e') goto yy708;
+ if (yych <= 'e') goto yy712;
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy707:
- YYDEBUG(707, *YYCURSOR);
+yy711:
+ YYDEBUG(711, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1082 "Zend/zend_language_scanner.l"
{
return T_FOR;
}
-#line 6572 "Zend/zend_language_scanner.c"
-yy708:
- YYDEBUG(708, *YYCURSOR);
+#line 6594 "Zend/zend_language_scanner.c"
+yy712:
+ YYDEBUG(712, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy709;
+ if (yych == 'A') goto yy713;
if (yych != 'a') goto yy187;
-yy709:
- YYDEBUG(709, *YYCURSOR);
+yy713:
+ YYDEBUG(713, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy710;
+ if (yych == 'C') goto yy714;
if (yych != 'c') goto yy187;
-yy710:
- YYDEBUG(710, *YYCURSOR);
+yy714:
+ YYDEBUG(714, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy711;
+ if (yych == 'H') goto yy715;
if (yych != 'h') goto yy187;
-yy711:
- YYDEBUG(711, *YYCURSOR);
+yy715:
+ YYDEBUG(715, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(712, *YYCURSOR);
+ YYDEBUG(716, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1090 "Zend/zend_language_scanner.l"
{
return T_FOREACH;
}
-#line 6600 "Zend/zend_language_scanner.c"
-yy713:
- YYDEBUG(713, *YYCURSOR);
+#line 6622 "Zend/zend_language_scanner.c"
+yy717:
+ YYDEBUG(717, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy714;
+ if (yych == 'A') goto yy718;
if (yych != 'a') goto yy187;
-yy714:
- YYDEBUG(714, *YYCURSOR);
+yy718:
+ YYDEBUG(718, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy715;
+ if (yych == 'L') goto yy719;
if (yych != 'l') goto yy187;
-yy715:
- YYDEBUG(715, *YYCURSOR);
+yy719:
+ YYDEBUG(719, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy716;
+ if (yych <= '/') goto yy720;
if (yych <= '9') goto yy186;
} else {
- if (yych == 'L') goto yy717;
+ if (yych == 'L') goto yy721;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= 'k') {
if (yych != '`') goto yy186;
} else {
- if (yych <= 'l') goto yy717;
+ if (yych <= 'l') goto yy721;
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy716:
- YYDEBUG(716, *YYCURSOR);
+yy720:
+ YYDEBUG(720, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1306 "Zend/zend_language_scanner.l"
{
return T_FINAL;
}
-#line 6638 "Zend/zend_language_scanner.c"
-yy717:
- YYDEBUG(717, *YYCURSOR);
+#line 6660 "Zend/zend_language_scanner.c"
+yy721:
+ YYDEBUG(721, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy718;
+ if (yych == 'Y') goto yy722;
if (yych != 'y') goto yy187;
-yy718:
- YYDEBUG(718, *YYCURSOR);
+yy722:
+ YYDEBUG(722, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(719, *YYCURSOR);
+ YYDEBUG(723, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1046 "Zend/zend_language_scanner.l"
{
return T_FINALLY;
}
-#line 6656 "Zend/zend_language_scanner.c"
-yy720:
- YYDEBUG(720, *YYCURSOR);
+#line 6678 "Zend/zend_language_scanner.c"
+yy724:
+ YYDEBUG(724, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'F') {
- if (yych == 'C') goto yy726;
+ if (yych == 'C') goto yy730;
if (yych <= 'E') goto yy187;
- goto yy727;
+ goto yy731;
} else {
if (yych <= 'c') {
if (yych <= 'b') goto yy187;
- goto yy726;
+ goto yy730;
} else {
- if (yych == 'f') goto yy727;
+ if (yych == 'f') goto yy731;
goto yy187;
}
}
-yy721:
- YYDEBUG(721, *YYCURSOR);
+yy725:
+ YYDEBUG(725, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy724;
- if (yych == 'e') goto yy724;
+ if (yych == 'E') goto yy728;
+ if (yych == 'e') goto yy728;
goto yy187;
-yy722:
- YYDEBUG(722, *YYCURSOR);
+yy726:
+ YYDEBUG(726, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(723, *YYCURSOR);
+ YYDEBUG(727, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1078 "Zend/zend_language_scanner.l"
{
return T_DO;
}
-#line 6691 "Zend/zend_language_scanner.c"
-yy724:
- YYDEBUG(724, *YYCURSOR);
+#line 6713 "Zend/zend_language_scanner.c"
+yy728:
+ YYDEBUG(728, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(725, *YYCURSOR);
+ YYDEBUG(729, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1018 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 6704 "Zend/zend_language_scanner.c"
-yy726:
- YYDEBUG(726, *YYCURSOR);
+#line 6726 "Zend/zend_language_scanner.c"
+yy730:
+ YYDEBUG(730, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy733;
- if (yych == 'l') goto yy733;
+ if (yych == 'L') goto yy737;
+ if (yych == 'l') goto yy737;
goto yy187;
-yy727:
- YYDEBUG(727, *YYCURSOR);
+yy731:
+ YYDEBUG(731, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy728;
+ if (yych == 'A') goto yy732;
if (yych != 'a') goto yy187;
-yy728:
- YYDEBUG(728, *YYCURSOR);
+yy732:
+ YYDEBUG(732, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy729;
+ if (yych == 'U') goto yy733;
if (yych != 'u') goto yy187;
-yy729:
- YYDEBUG(729, *YYCURSOR);
+yy733:
+ YYDEBUG(733, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy730;
+ if (yych == 'L') goto yy734;
if (yych != 'l') goto yy187;
-yy730:
- YYDEBUG(730, *YYCURSOR);
+yy734:
+ YYDEBUG(734, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy731;
+ if (yych == 'T') goto yy735;
if (yych != 't') goto yy187;
-yy731:
- YYDEBUG(731, *YYCURSOR);
+yy735:
+ YYDEBUG(735, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(732, *YYCURSOR);
+ YYDEBUG(736, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1126 "Zend/zend_language_scanner.l"
{
return T_DEFAULT;
}
-#line 6743 "Zend/zend_language_scanner.c"
-yy733:
- YYDEBUG(733, *YYCURSOR);
+#line 6765 "Zend/zend_language_scanner.c"
+yy737:
+ YYDEBUG(737, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy734;
+ if (yych == 'A') goto yy738;
if (yych != 'a') goto yy187;
-yy734:
- YYDEBUG(734, *YYCURSOR);
+yy738:
+ YYDEBUG(738, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy735;
+ if (yych == 'R') goto yy739;
if (yych != 'r') goto yy187;
-yy735:
- YYDEBUG(735, *YYCURSOR);
+yy739:
+ YYDEBUG(739, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy736;
+ if (yych == 'E') goto yy740;
if (yych != 'e') goto yy187;
-yy736:
- YYDEBUG(736, *YYCURSOR);
+yy740:
+ YYDEBUG(740, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(737, *YYCURSOR);
+ YYDEBUG(741, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1098 "Zend/zend_language_scanner.l"
{
return T_DECLARE;
}
-#line 6771 "Zend/zend_language_scanner.c"
-yy738:
- YYDEBUG(738, *YYCURSOR);
+#line 6793 "Zend/zend_language_scanner.c"
+yy742:
+ YYDEBUG(742, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy800;
- if (yych == 'h') goto yy800;
+ if (yych == 'H') goto yy804;
+ if (yych == 'h') goto yy804;
goto yy187;
-yy739:
- YYDEBUG(739, *YYCURSOR);
+yy743:
+ YYDEBUG(743, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy794;
- if (yych == 's') goto yy794;
+ if (yych == 'S') goto yy798;
+ if (yych == 's') goto yy798;
goto yy187;
-yy740:
- YYDEBUG(740, *YYCURSOR);
+yy744:
+ YYDEBUG(744, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy790;
- if (yych == 'p') goto yy790;
+ if (yych == 'P') goto yy794;
+ if (yych == 'p') goto yy794;
goto yy187;
-yy741:
- YYDEBUG(741, *YYCURSOR);
+yy745:
+ YYDEBUG(745, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy756;
- if (yych == 'd') goto yy756;
+ if (yych == 'D') goto yy760;
+ if (yych == 'd') goto yy760;
goto yy187;
-yy742:
- YYDEBUG(742, *YYCURSOR);
+yy746:
+ YYDEBUG(746, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy753;
- if (yych == 'a') goto yy753;
+ if (yych == 'A') goto yy757;
+ if (yych == 'a') goto yy757;
goto yy187;
-yy743:
- YYDEBUG(743, *YYCURSOR);
+yy747:
+ YYDEBUG(747, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'I') goto yy744;
+ if (yych == 'I') goto yy748;
if (yych <= 'S') goto yy187;
- goto yy745;
+ goto yy749;
} else {
if (yych <= 'i') {
if (yych <= 'h') goto yy187;
} else {
- if (yych == 't') goto yy745;
+ if (yych == 't') goto yy749;
goto yy187;
}
}
-yy744:
- YYDEBUG(744, *YYCURSOR);
+yy748:
+ YYDEBUG(748, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy751;
- if (yych == 't') goto yy751;
+ if (yych == 'T') goto yy755;
+ if (yych == 't') goto yy755;
goto yy187;
-yy745:
- YYDEBUG(745, *YYCURSOR);
+yy749:
+ YYDEBUG(749, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy746;
+ if (yych == 'E') goto yy750;
if (yych != 'e') goto yy187;
-yy746:
- YYDEBUG(746, *YYCURSOR);
+yy750:
+ YYDEBUG(750, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy747;
+ if (yych == 'N') goto yy751;
if (yych != 'n') goto yy187;
-yy747:
- YYDEBUG(747, *YYCURSOR);
+yy751:
+ YYDEBUG(751, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy748;
+ if (yych == 'D') goto yy752;
if (yych != 'd') goto yy187;
-yy748:
- YYDEBUG(748, *YYCURSOR);
+yy752:
+ YYDEBUG(752, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy749;
+ if (yych == 'S') goto yy753;
if (yych != 's') goto yy187;
-yy749:
- YYDEBUG(749, *YYCURSOR);
+yy753:
+ YYDEBUG(753, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(750, *YYCURSOR);
+ YYDEBUG(754, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1162 "Zend/zend_language_scanner.l"
{
return T_EXTENDS;
}
-#line 6855 "Zend/zend_language_scanner.c"
-yy751:
- YYDEBUG(751, *YYCURSOR);
+#line 6877 "Zend/zend_language_scanner.c"
+yy755:
+ YYDEBUG(755, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(752, *YYCURSOR);
+ YYDEBUG(756, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1014 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 6868 "Zend/zend_language_scanner.c"
-yy753:
- YYDEBUG(753, *YYCURSOR);
+#line 6890 "Zend/zend_language_scanner.c"
+yy757:
+ YYDEBUG(757, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy754;
+ if (yych == 'L') goto yy758;
if (yych != 'l') goto yy187;
-yy754:
- YYDEBUG(754, *YYCURSOR);
+yy758:
+ YYDEBUG(758, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(755, *YYCURSOR);
+ YYDEBUG(759, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1250 "Zend/zend_language_scanner.l"
{
return T_EVAL;
}
-#line 6886 "Zend/zend_language_scanner.c"
-yy756:
- YYDEBUG(756, *YYCURSOR);
+#line 6908 "Zend/zend_language_scanner.c"
+yy760:
+ YYDEBUG(760, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'D':
- case 'd': goto yy757;
+ case 'd': goto yy761;
case 'F':
- case 'f': goto yy758;
+ case 'f': goto yy762;
case 'I':
- case 'i': goto yy759;
+ case 'i': goto yy763;
case 'S':
- case 's': goto yy760;
+ case 's': goto yy764;
case 'W':
- case 'w': goto yy761;
+ case 'w': goto yy765;
default: goto yy187;
}
-yy757:
- YYDEBUG(757, *YYCURSOR);
+yy761:
+ YYDEBUG(761, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy783;
- if (yych == 'e') goto yy783;
+ if (yych == 'E') goto yy787;
+ if (yych == 'e') goto yy787;
goto yy187;
-yy758:
- YYDEBUG(758, *YYCURSOR);
+yy762:
+ YYDEBUG(762, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy775;
- if (yych == 'o') goto yy775;
+ if (yych == 'O') goto yy779;
+ if (yych == 'o') goto yy779;
goto yy187;
-yy759:
- YYDEBUG(759, *YYCURSOR);
+yy763:
+ YYDEBUG(763, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy773;
- if (yych == 'f') goto yy773;
+ if (yych == 'F') goto yy777;
+ if (yych == 'f') goto yy777;
goto yy187;
-yy760:
- YYDEBUG(760, *YYCURSOR);
+yy764:
+ YYDEBUG(764, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy767;
- if (yych == 'w') goto yy767;
+ if (yych == 'W') goto yy771;
+ if (yych == 'w') goto yy771;
goto yy187;
-yy761:
- YYDEBUG(761, *YYCURSOR);
+yy765:
+ YYDEBUG(765, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy762;
+ if (yych == 'H') goto yy766;
if (yych != 'h') goto yy187;
-yy762:
- YYDEBUG(762, *YYCURSOR);
+yy766:
+ YYDEBUG(766, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy763;
+ if (yych == 'I') goto yy767;
if (yych != 'i') goto yy187;
-yy763:
- YYDEBUG(763, *YYCURSOR);
+yy767:
+ YYDEBUG(767, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy764;
+ if (yych == 'L') goto yy768;
if (yych != 'l') goto yy187;
-yy764:
- YYDEBUG(764, *YYCURSOR);
+yy768:
+ YYDEBUG(768, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy765;
+ if (yych == 'E') goto yy769;
if (yych != 'e') goto yy187;
-yy765:
- YYDEBUG(765, *YYCURSOR);
+yy769:
+ YYDEBUG(769, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(766, *YYCURSOR);
+ YYDEBUG(770, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1074 "Zend/zend_language_scanner.l"
{
return T_ENDWHILE;
}
-#line 6960 "Zend/zend_language_scanner.c"
-yy767:
- YYDEBUG(767, *YYCURSOR);
+#line 6982 "Zend/zend_language_scanner.c"
+yy771:
+ YYDEBUG(771, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy768;
+ if (yych == 'I') goto yy772;
if (yych != 'i') goto yy187;
-yy768:
- YYDEBUG(768, *YYCURSOR);
+yy772:
+ YYDEBUG(772, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy769;
+ if (yych == 'T') goto yy773;
if (yych != 't') goto yy187;
-yy769:
- YYDEBUG(769, *YYCURSOR);
+yy773:
+ YYDEBUG(773, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy770;
+ if (yych == 'C') goto yy774;
if (yych != 'c') goto yy187;
-yy770:
- YYDEBUG(770, *YYCURSOR);
+yy774:
+ YYDEBUG(774, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy771;
+ if (yych == 'H') goto yy775;
if (yych != 'h') goto yy187;
-yy771:
- YYDEBUG(771, *YYCURSOR);
+yy775:
+ YYDEBUG(775, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(772, *YYCURSOR);
+ YYDEBUG(776, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1118 "Zend/zend_language_scanner.l"
{
return T_ENDSWITCH;
}
-#line 6993 "Zend/zend_language_scanner.c"
-yy773:
- YYDEBUG(773, *YYCURSOR);
+#line 7015 "Zend/zend_language_scanner.c"
+yy777:
+ YYDEBUG(777, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(774, *YYCURSOR);
+ YYDEBUG(778, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1062 "Zend/zend_language_scanner.l"
{
return T_ENDIF;
}
-#line 7006 "Zend/zend_language_scanner.c"
-yy775:
- YYDEBUG(775, *YYCURSOR);
+#line 7028 "Zend/zend_language_scanner.c"
+yy779:
+ YYDEBUG(779, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy776;
+ if (yych == 'R') goto yy780;
if (yych != 'r') goto yy187;
-yy776:
- YYDEBUG(776, *YYCURSOR);
+yy780:
+ YYDEBUG(780, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy777;
+ if (yych <= '/') goto yy781;
if (yych <= '9') goto yy186;
} else {
- if (yych == 'E') goto yy778;
+ if (yych == 'E') goto yy782;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= 'd') {
if (yych != '`') goto yy186;
} else {
- if (yych <= 'e') goto yy778;
+ if (yych <= 'e') goto yy782;
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy777:
- YYDEBUG(777, *YYCURSOR);
+yy781:
+ YYDEBUG(781, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1086 "Zend/zend_language_scanner.l"
{
return T_ENDFOR;
}
-#line 7039 "Zend/zend_language_scanner.c"
-yy778:
- YYDEBUG(778, *YYCURSOR);
+#line 7061 "Zend/zend_language_scanner.c"
+yy782:
+ YYDEBUG(782, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy779;
+ if (yych == 'A') goto yy783;
if (yych != 'a') goto yy187;
-yy779:
- YYDEBUG(779, *YYCURSOR);
+yy783:
+ YYDEBUG(783, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy780;
+ if (yych == 'C') goto yy784;
if (yych != 'c') goto yy187;
-yy780:
- YYDEBUG(780, *YYCURSOR);
+yy784:
+ YYDEBUG(784, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy781;
+ if (yych == 'H') goto yy785;
if (yych != 'h') goto yy187;
-yy781:
- YYDEBUG(781, *YYCURSOR);
+yy785:
+ YYDEBUG(785, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(782, *YYCURSOR);
+ YYDEBUG(786, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1094 "Zend/zend_language_scanner.l"
{
return T_ENDFOREACH;
}
-#line 7067 "Zend/zend_language_scanner.c"
-yy783:
- YYDEBUG(783, *YYCURSOR);
+#line 7089 "Zend/zend_language_scanner.c"
+yy787:
+ YYDEBUG(787, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy784;
+ if (yych == 'C') goto yy788;
if (yych != 'c') goto yy187;
-yy784:
- YYDEBUG(784, *YYCURSOR);
+yy788:
+ YYDEBUG(788, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy785;
+ if (yych == 'L') goto yy789;
if (yych != 'l') goto yy187;
-yy785:
- YYDEBUG(785, *YYCURSOR);
+yy789:
+ YYDEBUG(789, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy786;
+ if (yych == 'A') goto yy790;
if (yych != 'a') goto yy187;
-yy786:
- YYDEBUG(786, *YYCURSOR);
+yy790:
+ YYDEBUG(790, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy787;
+ if (yych == 'R') goto yy791;
if (yych != 'r') goto yy187;
-yy787:
- YYDEBUG(787, *YYCURSOR);
+yy791:
+ YYDEBUG(791, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy788;
+ if (yych == 'E') goto yy792;
if (yych != 'e') goto yy187;
-yy788:
- YYDEBUG(788, *YYCURSOR);
+yy792:
+ YYDEBUG(792, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(789, *YYCURSOR);
+ YYDEBUG(793, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1102 "Zend/zend_language_scanner.l"
{
return T_ENDDECLARE;
}
-#line 7105 "Zend/zend_language_scanner.c"
-yy790:
- YYDEBUG(790, *YYCURSOR);
+#line 7127 "Zend/zend_language_scanner.c"
+yy794:
+ YYDEBUG(794, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy791;
+ if (yych == 'T') goto yy795;
if (yych != 't') goto yy187;
-yy791:
- YYDEBUG(791, *YYCURSOR);
+yy795:
+ YYDEBUG(795, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy792;
+ if (yych == 'Y') goto yy796;
if (yych != 'y') goto yy187;
-yy792:
- YYDEBUG(792, *YYCURSOR);
+yy796:
+ YYDEBUG(796, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(793, *YYCURSOR);
+ YYDEBUG(797, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1290 "Zend/zend_language_scanner.l"
{
return T_EMPTY;
}
-#line 7128 "Zend/zend_language_scanner.c"
-yy794:
- YYDEBUG(794, *YYCURSOR);
+#line 7150 "Zend/zend_language_scanner.c"
+yy798:
+ YYDEBUG(798, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy795;
+ if (yych == 'E') goto yy799;
if (yych != 'e') goto yy187;
-yy795:
- YYDEBUG(795, *YYCURSOR);
+yy799:
+ YYDEBUG(799, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy796;
+ if (yych <= '/') goto yy800;
if (yych <= '9') goto yy186;
} else {
- if (yych == 'I') goto yy797;
+ if (yych == 'I') goto yy801;
if (yych <= 'Z') goto yy186;
}
} else {
if (yych <= 'h') {
if (yych != '`') goto yy186;
} else {
- if (yych <= 'i') goto yy797;
+ if (yych <= 'i') goto yy801;
if (yych <= 'z') goto yy186;
if (yych >= 0x7F) goto yy186;
}
}
-yy796:
- YYDEBUG(796, *YYCURSOR);
+yy800:
+ YYDEBUG(800, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1066 "Zend/zend_language_scanner.l"
{
return T_ELSE;
}
-#line 7161 "Zend/zend_language_scanner.c"
-yy797:
- YYDEBUG(797, *YYCURSOR);
+#line 7183 "Zend/zend_language_scanner.c"
+yy801:
+ YYDEBUG(801, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy798;
+ if (yych == 'F') goto yy802;
if (yych != 'f') goto yy187;
-yy798:
- YYDEBUG(798, *YYCURSOR);
+yy802:
+ YYDEBUG(802, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(799, *YYCURSOR);
+ YYDEBUG(803, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1058 "Zend/zend_language_scanner.l"
{
return T_ELSEIF;
}
-#line 7179 "Zend/zend_language_scanner.c"
-yy800:
- YYDEBUG(800, *YYCURSOR);
+#line 7201 "Zend/zend_language_scanner.c"
+yy804:
+ YYDEBUG(804, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy801;
+ if (yych == 'O') goto yy805;
if (yych != 'o') goto yy187;
-yy801:
- YYDEBUG(801, *YYCURSOR);
+yy805:
+ YYDEBUG(805, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
goto yy186;
}
- YYDEBUG(802, *YYCURSOR);
+ YYDEBUG(806, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1142 "Zend/zend_language_scanner.l"
{
return T_ECHO;
}
-#line 7197 "Zend/zend_language_scanner.c"
+#line 7219 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_LOOKING_FOR_PROPERTY:
@@ -7232,39 +7254,39 @@ yyc_ST_LOOKING_FOR_PROPERTY:
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
};
- YYDEBUG(803, *YYCURSOR);
+ YYDEBUG(807, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '-') {
if (yych <= '\r') {
- if (yych <= 0x08) goto yy811;
- if (yych <= '\n') goto yy805;
- if (yych <= '\f') goto yy811;
+ if (yych <= 0x08) goto yy815;
+ if (yych <= '\n') goto yy809;
+ if (yych <= '\f') goto yy815;
} else {
- if (yych == ' ') goto yy805;
- if (yych <= ',') goto yy811;
- goto yy807;
+ if (yych == ' ') goto yy809;
+ if (yych <= ',') goto yy815;
+ goto yy811;
}
} else {
if (yych <= '_') {
- if (yych <= '@') goto yy811;
- if (yych <= 'Z') goto yy809;
- if (yych <= '^') goto yy811;
- goto yy809;
+ if (yych <= '@') goto yy815;
+ if (yych <= 'Z') goto yy813;
+ if (yych <= '^') goto yy815;
+ goto yy813;
} else {
- if (yych <= '`') goto yy811;
- if (yych <= 'z') goto yy809;
- if (yych <= '~') goto yy811;
- goto yy809;
+ if (yych <= '`') goto yy815;
+ if (yych <= 'z') goto yy813;
+ if (yych <= '~') goto yy815;
+ goto yy813;
}
}
-yy805:
- YYDEBUG(805, *YYCURSOR);
+yy809:
+ YYDEBUG(809, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy817;
-yy806:
- YYDEBUG(806, *YYCURSOR);
+ goto yy821;
+yy810:
+ YYDEBUG(810, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1175 "Zend/zend_language_scanner.l"
{
@@ -7272,13 +7294,13 @@ yy806:
HANDLE_NEWLINES(yytext, yyleng);
return T_WHITESPACE;
}
-#line 7276 "Zend/zend_language_scanner.c"
-yy807:
- YYDEBUG(807, *YYCURSOR);
+#line 7298 "Zend/zend_language_scanner.c"
+yy811:
+ YYDEBUG(811, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy814;
-yy808:
- YYDEBUG(808, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '>') goto yy818;
+yy812:
+ YYDEBUG(812, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1192 "Zend/zend_language_scanner.l"
{
@@ -7286,14 +7308,14 @@ yy808:
yy_pop_state(TSRMLS_C);
goto restart;
}
-#line 7290 "Zend/zend_language_scanner.c"
-yy809:
- YYDEBUG(809, *YYCURSOR);
+#line 7312 "Zend/zend_language_scanner.c"
+yy813:
+ YYDEBUG(813, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy813;
-yy810:
- YYDEBUG(810, *YYCURSOR);
+ goto yy817;
+yy814:
+ YYDEBUG(814, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1185 "Zend/zend_language_scanner.l"
{
@@ -7302,43 +7324,43 @@ yy810:
zendlval->type = IS_STRING;
return T_STRING;
}
-#line 7306 "Zend/zend_language_scanner.c"
-yy811:
- YYDEBUG(811, *YYCURSOR);
+#line 7328 "Zend/zend_language_scanner.c"
+yy815:
+ YYDEBUG(815, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy808;
-yy812:
- YYDEBUG(812, *YYCURSOR);
+ goto yy812;
+yy816:
+ YYDEBUG(816, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy813:
- YYDEBUG(813, *YYCURSOR);
+yy817:
+ YYDEBUG(817, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy812;
+ goto yy816;
}
- goto yy810;
-yy814:
- YYDEBUG(814, *YYCURSOR);
+ goto yy814;
+yy818:
+ YYDEBUG(818, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(815, *YYCURSOR);
+ YYDEBUG(819, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1181 "Zend/zend_language_scanner.l"
{
return T_OBJECT_OPERATOR;
}
-#line 7331 "Zend/zend_language_scanner.c"
-yy816:
- YYDEBUG(816, *YYCURSOR);
+#line 7353 "Zend/zend_language_scanner.c"
+yy820:
+ YYDEBUG(820, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy817:
- YYDEBUG(817, *YYCURSOR);
+yy821:
+ YYDEBUG(821, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy816;
+ goto yy820;
}
- goto yy806;
+ goto yy810;
}
/* *********************************** */
yyc_ST_LOOKING_FOR_VARNAME:
@@ -7377,74 +7399,74 @@ yyc_ST_LOOKING_FOR_VARNAME:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(818, *YYCURSOR);
+ YYDEBUG(822, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy822;
- if (yych <= 'Z') goto yy820;
- if (yych <= '^') goto yy822;
+ if (yych <= '@') goto yy826;
+ if (yych <= 'Z') goto yy824;
+ if (yych <= '^') goto yy826;
} else {
- if (yych <= '`') goto yy822;
- if (yych <= 'z') goto yy820;
- if (yych <= '~') goto yy822;
+ if (yych <= '`') goto yy826;
+ if (yych <= 'z') goto yy824;
+ if (yych <= '~') goto yy826;
}
-yy820:
- YYDEBUG(820, *YYCURSOR);
+yy824:
+ YYDEBUG(824, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '_') {
if (yych <= '@') {
- if (yych <= '/') goto yy821;
- if (yych <= '9') goto yy824;
+ if (yych <= '/') goto yy825;
+ if (yych <= '9') goto yy828;
} else {
- if (yych <= '[') goto yy824;
- if (yych >= '_') goto yy824;
+ if (yych <= '[') goto yy828;
+ if (yych >= '_') goto yy828;
}
} else {
if (yych <= '|') {
- if (yych <= '`') goto yy821;
- if (yych <= 'z') goto yy824;
+ if (yych <= '`') goto yy825;
+ if (yych <= 'z') goto yy828;
} else {
- if (yych != '~') goto yy824;
+ if (yych != '~') goto yy828;
}
}
-yy821:
- YYDEBUG(821, *YYCURSOR);
+yy825:
+ YYDEBUG(825, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1482 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state(TSRMLS_C);
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
goto restart;
}
-#line 7423 "Zend/zend_language_scanner.c"
-yy822:
- YYDEBUG(822, *YYCURSOR);
+#line 7445 "Zend/zend_language_scanner.c"
+yy826:
+ YYDEBUG(826, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy821;
-yy823:
- YYDEBUG(823, *YYCURSOR);
+ goto yy825;
+yy827:
+ YYDEBUG(827, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy824:
- YYDEBUG(824, *YYCURSOR);
+yy828:
+ YYDEBUG(828, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy823;
+ goto yy827;
}
- if (yych == '[') goto yy826;
- if (yych == '}') goto yy826;
- YYDEBUG(825, *YYCURSOR);
+ if (yych == '[') goto yy830;
+ if (yych == '}') goto yy830;
+ YYDEBUG(829, *YYCURSOR);
YYCURSOR = YYMARKER;
- goto yy821;
-yy826:
- YYDEBUG(826, *YYCURSOR);
+ goto yy825;
+yy830:
+ YYDEBUG(830, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(827, *YYCURSOR);
+ YYDEBUG(831, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1472 "Zend/zend_language_scanner.l"
+#line 1480 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_copy_value(zendlval, yytext, yyleng);
@@ -7453,18 +7475,18 @@ yy826:
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
return T_STRING_VARNAME;
}
-#line 7457 "Zend/zend_language_scanner.c"
+#line 7479 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_NOWDOC:
- YYDEBUG(828, *YYCURSOR);
+ YYDEBUG(832, *YYCURSOR);
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(830, *YYCURSOR);
+ YYDEBUG(834, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(831, *YYCURSOR);
+ YYDEBUG(835, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2302 "Zend/zend_language_scanner.l"
+#line 2310 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -7521,7 +7543,7 @@ nowdoc_scan_done:
HANDLE_NEWLINES(yytext, yyleng - newline);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 7525 "Zend/zend_language_scanner.c"
+#line 7547 "Zend/zend_language_scanner.c"
/* *********************************** */
yyc_ST_VAR_OFFSET:
{
@@ -7559,76 +7581,76 @@ yyc_ST_VAR_OFFSET:
16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16,
};
- YYDEBUG(832, *YYCURSOR);
+ YYDEBUG(836, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= '/') {
if (yych <= ' ') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy846;
- if (yych <= '\n') goto yy842;
- goto yy846;
+ if (yych <= 0x08) goto yy850;
+ if (yych <= '\n') goto yy846;
+ goto yy850;
} else {
- if (yych <= '\r') goto yy842;
- if (yych <= 0x1F) goto yy846;
- goto yy842;
+ if (yych <= '\r') goto yy846;
+ if (yych <= 0x1F) goto yy850;
+ goto yy846;
}
} else {
if (yych <= '$') {
- if (yych <= '"') goto yy841;
- if (yych <= '#') goto yy842;
- goto yy837;
- } else {
- if (yych == '\'') goto yy842;
+ if (yych <= '"') goto yy845;
+ if (yych <= '#') goto yy846;
goto yy841;
+ } else {
+ if (yych == '\'') goto yy846;
+ goto yy845;
}
}
} else {
if (yych <= '\\') {
if (yych <= '@') {
- if (yych <= '0') goto yy834;
- if (yych <= '9') goto yy836;
- goto yy841;
+ if (yych <= '0') goto yy838;
+ if (yych <= '9') goto yy840;
+ goto yy845;
} else {
- if (yych <= 'Z') goto yy844;
- if (yych <= '[') goto yy841;
- goto yy842;
+ if (yych <= 'Z') goto yy848;
+ if (yych <= '[') goto yy845;
+ goto yy846;
}
} else {
if (yych <= '_') {
- if (yych <= ']') goto yy839;
- if (yych <= '^') goto yy841;
- goto yy844;
+ if (yych <= ']') goto yy843;
+ if (yych <= '^') goto yy845;
+ goto yy848;
} else {
- if (yych <= '`') goto yy841;
- if (yych <= 'z') goto yy844;
- if (yych <= '~') goto yy841;
- goto yy844;
+ if (yych <= '`') goto yy845;
+ if (yych <= 'z') goto yy848;
+ if (yych <= '~') goto yy845;
+ goto yy848;
}
}
}
-yy834:
- YYDEBUG(834, *YYCURSOR);
+yy838:
+ YYDEBUG(838, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'W') {
if (yych <= '9') {
- if (yych >= '0') goto yy858;
+ if (yych >= '0') goto yy862;
} else {
- if (yych == 'B') goto yy855;
+ if (yych == 'B') goto yy859;
}
} else {
if (yych <= 'b') {
- if (yych <= 'X') goto yy857;
- if (yych >= 'b') goto yy855;
+ if (yych <= 'X') goto yy861;
+ if (yych >= 'b') goto yy859;
} else {
- if (yych == 'x') goto yy857;
+ if (yych == 'x') goto yy861;
}
}
-yy835:
- YYDEBUG(835, *YYCURSOR);
+yy839:
+ YYDEBUG(839, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1558 "Zend/zend_language_scanner.l"
+#line 1566 "Zend/zend_language_scanner.l"
{ /* Offset could be treated as a long */
if (yyleng < MAX_LENGTH_OF_LONG - 1 || (yyleng == MAX_LENGTH_OF_LONG - 1 && strcmp(yytext, long_min_digits) < 0)) {
ZVAL_LONG(zendlval, strtol(yytext, NULL, 10));
@@ -7637,81 +7659,81 @@ yy835:
}
return T_NUM_STRING;
}
-#line 7641 "Zend/zend_language_scanner.c"
-yy836:
- YYDEBUG(836, *YYCURSOR);
+#line 7663 "Zend/zend_language_scanner.c"
+yy840:
+ YYDEBUG(840, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy854;
-yy837:
- YYDEBUG(837, *YYCURSOR);
+ goto yy858;
+yy841:
+ YYDEBUG(841, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy838;
- if (yych <= 'Z') goto yy850;
- if (yych >= '_') goto yy850;
+ if (yych <= '@') goto yy842;
+ if (yych <= 'Z') goto yy854;
+ if (yych >= '_') goto yy854;
} else {
- if (yych <= '`') goto yy838;
- if (yych <= 'z') goto yy850;
- if (yych >= 0x7F) goto yy850;
+ if (yych <= '`') goto yy842;
+ if (yych <= 'z') goto yy854;
+ if (yych >= 0x7F) goto yy854;
}
-yy838:
- YYDEBUG(838, *YYCURSOR);
+yy842:
+ YYDEBUG(842, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1834 "Zend/zend_language_scanner.l"
+#line 1842 "Zend/zend_language_scanner.l"
{
/* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
return yytext[0];
}
-#line 7666 "Zend/zend_language_scanner.c"
-yy839:
- YYDEBUG(839, *YYCURSOR);
+#line 7688 "Zend/zend_language_scanner.c"
+yy843:
+ YYDEBUG(843, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(840, *YYCURSOR);
+ YYDEBUG(844, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1829 "Zend/zend_language_scanner.l"
+#line 1837 "Zend/zend_language_scanner.l"
{
yy_pop_state(TSRMLS_C);
return ']';
}
-#line 7677 "Zend/zend_language_scanner.c"
-yy841:
- YYDEBUG(841, *YYCURSOR);
+#line 7699 "Zend/zend_language_scanner.c"
+yy845:
+ YYDEBUG(845, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy838;
-yy842:
- YYDEBUG(842, *YYCURSOR);
+ goto yy842;
+yy846:
+ YYDEBUG(846, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(843, *YYCURSOR);
+ YYDEBUG(847, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1839 "Zend/zend_language_scanner.l"
+#line 1847 "Zend/zend_language_scanner.l"
{
/* Invalid rule to return a more explicit parse error with proper line number */
yyless(0);
yy_pop_state(TSRMLS_C);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 7694 "Zend/zend_language_scanner.c"
-yy844:
- YYDEBUG(844, *YYCURSOR);
+#line 7716 "Zend/zend_language_scanner.c"
+yy848:
+ YYDEBUG(848, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy849;
-yy845:
- YYDEBUG(845, *YYCURSOR);
+ goto yy853;
+yy849:
+ YYDEBUG(849, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1846 "Zend/zend_language_scanner.l"
+#line 1854 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
return T_STRING;
}
-#line 7709 "Zend/zend_language_scanner.c"
-yy846:
- YYDEBUG(846, *YYCURSOR);
+#line 7731 "Zend/zend_language_scanner.c"
+yy850:
+ YYDEBUG(850, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(847, *YYCURSOR);
+ YYDEBUG(851, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2360 "Zend/zend_language_scanner.l"
+#line 2368 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -7720,116 +7742,116 @@ yy846:
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 7724 "Zend/zend_language_scanner.c"
-yy848:
- YYDEBUG(848, *YYCURSOR);
+#line 7746 "Zend/zend_language_scanner.c"
+yy852:
+ YYDEBUG(852, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy849:
- YYDEBUG(849, *YYCURSOR);
+yy853:
+ YYDEBUG(853, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy848;
+ goto yy852;
}
- goto yy845;
-yy850:
- YYDEBUG(850, *YYCURSOR);
+ goto yy849;
+yy854:
+ YYDEBUG(854, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(851, *YYCURSOR);
+ YYDEBUG(855, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy850;
+ if (yych >= '0') goto yy854;
} else {
- if (yych <= '@') goto yy852;
- if (yych <= 'Z') goto yy850;
+ if (yych <= '@') goto yy856;
+ if (yych <= 'Z') goto yy854;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy850;
+ if (yych <= '_') goto yy854;
} else {
- if (yych <= 'z') goto yy850;
- if (yych >= 0x7F) goto yy850;
+ if (yych <= 'z') goto yy854;
+ if (yych >= 0x7F) goto yy854;
}
}
-yy852:
- YYDEBUG(852, *YYCURSOR);
+yy856:
+ YYDEBUG(856, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1831 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 7766 "Zend/zend_language_scanner.c"
-yy853:
- YYDEBUG(853, *YYCURSOR);
+#line 7788 "Zend/zend_language_scanner.c"
+yy857:
+ YYDEBUG(857, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy854:
- YYDEBUG(854, *YYCURSOR);
+yy858:
+ YYDEBUG(858, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy853;
+ goto yy857;
}
- goto yy835;
-yy855:
- YYDEBUG(855, *YYCURSOR);
+ goto yy839;
+yy859:
+ YYDEBUG(859, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy863;
+ goto yy867;
}
-yy856:
- YYDEBUG(856, *YYCURSOR);
+yy860:
+ YYDEBUG(860, *YYCURSOR);
YYCURSOR = YYMARKER;
- goto yy835;
-yy857:
- YYDEBUG(857, *YYCURSOR);
+ goto yy839;
+yy861:
+ YYDEBUG(861, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy861;
+ goto yy865;
}
- goto yy856;
-yy858:
- YYDEBUG(858, *YYCURSOR);
+ goto yy860;
+yy862:
+ YYDEBUG(862, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(859, *YYCURSOR);
- if (yych <= '/') goto yy860;
- if (yych <= '9') goto yy858;
-yy860:
- YYDEBUG(860, *YYCURSOR);
+ YYDEBUG(863, *YYCURSOR);
+ if (yych <= '/') goto yy864;
+ if (yych <= '9') goto yy862;
+yy864:
+ YYDEBUG(864, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1567 "Zend/zend_language_scanner.l"
+#line 1575 "Zend/zend_language_scanner.l"
{ /* Offset must be treated as a string */
ZVAL_STRINGL(zendlval, yytext, yyleng, 1);
return T_NUM_STRING;
}
-#line 7811 "Zend/zend_language_scanner.c"
-yy861:
- YYDEBUG(861, *YYCURSOR);
+#line 7833 "Zend/zend_language_scanner.c"
+yy865:
+ YYDEBUG(865, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(862, *YYCURSOR);
+ YYDEBUG(866, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy861;
+ goto yy865;
}
- goto yy860;
-yy863:
- YYDEBUG(863, *YYCURSOR);
+ goto yy864;
+yy867:
+ YYDEBUG(867, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(864, *YYCURSOR);
+ YYDEBUG(868, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy863;
+ goto yy867;
}
- goto yy860;
+ goto yy864;
}
}
-#line 2369 "Zend/zend_language_scanner.l"
+#line 2377 "Zend/zend_language_scanner.l"
}
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index ccf8a4ca00..4f50658a59 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -1383,6 +1383,14 @@ NEWLINE ("\r"|"\n"|"\r\n")
return T_MUL_EQUAL;
}
+<ST_IN_SCRIPTING>"*\*" {
+ return T_POW;
+}
+
+<ST_IN_SCRIPTING>"*\*=" {
+ return T_POW_EQUAL;
+}
+
<ST_IN_SCRIPTING>"/=" {
return T_DIV_EQUAL;
}
diff --git a/Zend/zend_language_scanner_defs.h b/Zend/zend_language_scanner_defs.h
index 70ce8b890c..5926e3c61d 100644
--- a/Zend/zend_language_scanner_defs.h
+++ b/Zend/zend_language_scanner_defs.h
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Sun Dec 22 13:03:33 2013 */
+/* Generated by re2c 0.13.5 */
#line 3 "Zend/zend_language_scanner_defs.h"
enum YYCONDTYPE {
diff --git a/Zend/zend_modules.h b/Zend/zend_modules.h
index 080d46168e..55f99c4b1d 100644
--- a/Zend/zend_modules.h
+++ b/Zend/zend_modules.h
@@ -33,7 +33,7 @@
#define ZEND_MODULE_INFO_FUNC_ARGS zend_module_entry *zend_module TSRMLS_DC
#define ZEND_MODULE_INFO_FUNC_ARGS_PASSTHRU zend_module TSRMLS_CC
-#define ZEND_MODULE_API_NO 20131226
+#define ZEND_MODULE_API_NO 20131227
#ifdef ZTS
#define USING_ZTS 1
#else
diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c
index 991dca2eec..0af8e278b2 100644
--- a/Zend/zend_object_handlers.c
+++ b/Zend/zend_object_handlers.c
@@ -29,6 +29,7 @@
#include "zend_interfaces.h"
#include "zend_closures.h"
#include "zend_compile.h"
+#include "zend_hash.h"
#define DEBUG_OBJECT_HANDLERS 0
@@ -188,7 +189,7 @@ static int zend_std_call_setter(zval *object, zval *member, zval *value TSRMLS_D
zval_ptr_dtor(&value);
if (retval) {
- result = i_zend_is_true(retval) ? SUCCESS : FAILURE;
+ result = i_zend_is_true(retval TSRMLS_CC) ? SUCCESS : FAILURE;
zval_ptr_dtor(&retval);
return result;
} else {
@@ -693,12 +694,12 @@ static int zend_std_has_dimension(zval *object, zval *offset, int check_empty TS
SEPARATE_ARG_IF_REF(offset);
zend_call_method_with_1_params(&object, ce, NULL, "offsetexists", &retval, offset);
if (EXPECTED(retval != NULL)) {
- result = i_zend_is_true(retval);
+ result = i_zend_is_true(retval TSRMLS_CC);
zval_ptr_dtor(&retval);
if (check_empty && result && EXPECTED(!EG(exception))) {
zend_call_method_with_1_params(&object, ce, NULL, "offsetget", &retval, offset);
if (retval) {
- result = i_zend_is_true(retval);
+ result = i_zend_is_true(retval TSRMLS_CC);
zval_ptr_dtor(&retval);
}
}
@@ -1442,7 +1443,7 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists,
guard->in_isset = 1; /* prevent circular getting */
rv = zend_std_call_issetter(object, member TSRMLS_CC);
if (rv) {
- result = zend_is_true(rv);
+ result = zend_is_true(rv TSRMLS_CC);
zval_ptr_dtor(&rv);
if (has_set_exists && result) {
if (EXPECTED(!EG(exception)) && zobj->ce->__get && !guard->in_get) {
@@ -1451,7 +1452,7 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists,
guard->in_get = 0;
if (rv) {
Z_ADDREF_P(rv);
- result = i_zend_is_true(rv);
+ result = i_zend_is_true(rv TSRMLS_CC);
zval_ptr_dtor(&rv);
} else {
result = 0;
@@ -1470,7 +1471,7 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists,
result = (Z_TYPE_PP(value) != IS_NULL);
break;
default:
- result = zend_is_true(*value);
+ result = zend_is_true(*value TSRMLS_CC);
break;
case 2:
result = 1;
diff --git a/Zend/zend_opcode.c b/Zend/zend_opcode.c
index af64e5a7f9..457f08f313 100644
--- a/Zend/zend_opcode.c
+++ b/Zend/zend_opcode.c
@@ -768,6 +768,9 @@ ZEND_API binary_op_type get_binary_op(int opcode)
case ZEND_ASSIGN_MUL:
return (binary_op_type) mul_function;
break;
+ case ZEND_POW:
+ return (binary_op_type) pow_function;
+ break;
case ZEND_DIV:
case ZEND_ASSIGN_DIV:
return (binary_op_type) div_function;
diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c
index 3434694f4c..03dbb15264 100644
--- a/Zend/zend_operators.c
+++ b/Zend/zend_operators.c
@@ -963,6 +963,87 @@ ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
}
/* }}} */
+ZEND_API int pow_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
+{
+ zval op1_copy, op2_copy;
+ int converted = 0;
+
+ while (1) {
+ switch (TYPE_PAIR(Z_TYPE_P(op1), Z_TYPE_P(op2))) {
+ case TYPE_PAIR(IS_LONG, IS_LONG):
+ if (Z_LVAL_P(op2) >= 0) {
+ long l1 = 1, l2 = Z_LVAL_P(op1), i = Z_LVAL_P(op2);
+
+ if (i == 0) {
+ ZVAL_LONG(result, 1L);
+ return SUCCESS;
+ } else if (l2 == 0) {
+ ZVAL_LONG(result, 0);
+ return SUCCESS;
+ }
+
+ while (i >= 1) {
+ long overflow;
+ double dval = 0.0;
+
+ if (i % 2) {
+ --i;
+ ZEND_SIGNED_MULTIPLY_LONG(l1, l2, l1, dval, overflow);
+ if (overflow) {
+ ZVAL_DOUBLE(result, dval * pow(l2, i));
+ return SUCCESS;
+ }
+ } else {
+ i /= 2;
+ ZEND_SIGNED_MULTIPLY_LONG(l2, l2, l2, dval, overflow);
+ if (overflow) {
+ ZVAL_DOUBLE(result, (double)l1 * pow(dval, i));
+ return SUCCESS;
+ }
+ }
+ }
+ /* i == 0 */
+ ZVAL_LONG(result, l1);
+ } else {
+ ZVAL_DOUBLE(result, pow((double)Z_LVAL_P(op1), (double)Z_LVAL_P(op2)));
+ }
+ return SUCCESS;
+
+ case TYPE_PAIR(IS_LONG, IS_DOUBLE):
+ ZVAL_DOUBLE(result, pow((double)Z_LVAL_P(op1), Z_DVAL_P(op2)));
+ return SUCCESS;
+
+ case TYPE_PAIR(IS_DOUBLE, IS_LONG):
+ ZVAL_DOUBLE(result, pow(Z_DVAL_P(op1), (double)Z_LVAL_P(op2)));
+ return SUCCESS;
+
+ case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
+ ZVAL_DOUBLE(result, pow(Z_DVAL_P(op1), Z_DVAL_P(op2)));
+ return SUCCESS;
+
+ default:
+ if (!converted) {
+ ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_POW);
+
+ if (Z_TYPE_P(op1) == IS_ARRAY) {
+ ZVAL_LONG(op1, 0);
+ } else {
+ zendi_convert_scalar_to_number(op1, op1_copy, result);
+ }
+ if (Z_TYPE_P(op2) == IS_ARRAY) {
+ ZVAL_LONG(op2, 0);
+ } else {
+ zendi_convert_scalar_to_number(op2, op2_copy, result);
+ }
+ converted = 1;
+ } else {
+ zend_error(E_ERROR, "Unsupported operand types");
+ return FAILURE;
+ }
+ }
+ }
+}
+
ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ */
{
zval op1_copy, op2_copy;
diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h
index cfc84063e4..1fab481269 100644
--- a/Zend/zend_operators.h
+++ b/Zend/zend_operators.h
@@ -47,6 +47,7 @@ BEGIN_EXTERN_C()
ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
+ZEND_API int pow_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
ZEND_API int mod_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
ZEND_API int boolean_xor_function(zval *result, zval *op1, zval *op2 TSRMLS_DC);
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index 1e8a831551..f44f201292 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -2104,7 +2104,7 @@ ZEND_VM_HANDLER(43, ZEND_JMPZ, CONST|TMP|VAR|CV, ANY)
if (OP1_TYPE == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
FREE_OP1();
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2134,7 +2134,7 @@ ZEND_VM_HANDLER(44, ZEND_JMPNZ, CONST|TMP|VAR|CV, ANY)
if (OP1_TYPE == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
FREE_OP1();
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2164,7 +2164,7 @@ ZEND_VM_HANDLER(45, ZEND_JMPZNZ, CONST|TMP|VAR|CV, ANY)
if (OP1_TYPE == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
FREE_OP1();
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2198,7 +2198,7 @@ ZEND_VM_HANDLER(46, ZEND_JMPZ_EX, CONST|TMP|VAR|CV, ANY)
if (OP1_TYPE == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
FREE_OP1();
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2229,7 +2229,7 @@ ZEND_VM_HANDLER(47, ZEND_JMPNZ_EX, CONST|TMP|VAR|CV, ANY)
if (OP1_TYPE == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
FREE_OP1();
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -3484,7 +3484,7 @@ ZEND_VM_HANDLER(52, ZEND_BOOL, CONST|TMP|VAR|CV, ANY)
SAVE_OPLINE();
/* PHP 3.0 returned "" for false and 1 for true, here we use 0 and 1 for now */
- ZVAL_BOOL(retval, i_zend_is_true(GET_OP1_ZVAL_PTR(BP_VAR_R)));
+ ZVAL_BOOL(retval, i_zend_is_true(GET_OP1_ZVAL_PTR(BP_VAR_R) TSRMLS_CC));
FREE_OP1();
CHECK_EXCEPTION();
@@ -4647,7 +4647,7 @@ ZEND_VM_HANDLER(114, ZEND_ISSET_ISEMPTY_VAR, CONST|TMP|VAR|CV, UNUSED|CONST|VAR)
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -4719,7 +4719,7 @@ ZEND_VM_C_LABEL(num_index_prop):
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -4913,7 +4913,7 @@ ZEND_VM_HANDLER(152, ZEND_JMP_SET, CONST|TMP|VAR|CV, ANY)
SAVE_OPLINE();
value = GET_OP1_ZVAL_PTR(BP_VAR_R);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
ZVAL_COPY_VALUE(&EX_T(opline->result.var).tmp_var, value);
if (!IS_OP1_TMP_FREE()) {
zendi_zval_copy_ctor(EX_T(opline->result.var).tmp_var);
@@ -4939,7 +4939,7 @@ ZEND_VM_HANDLER(158, ZEND_JMP_SET_VAR, CONST|TMP|VAR|CV, ANY)
SAVE_OPLINE();
value = GET_OP1_ZVAL_PTR(BP_VAR_R);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) {
Z_ADDREF_P(value);
EX_T(opline->result.var).var.ptr = value;
@@ -5094,7 +5094,7 @@ ZEND_VM_HANDLER(105, ZEND_TICKS, ANY, ANY)
if (++EG(ticks_count)>=opline->extended_value) {
EG(ticks_count)=0;
if (zend_ticks_function) {
- zend_ticks_function(opline->extended_value);
+ zend_ticks_function(opline->extended_value TSRMLS_CC);
}
}
CHECK_EXCEPTION();
@@ -5659,4 +5659,24 @@ ZEND_VM_HANDLER(163, ZEND_FAST_RET, ANY, ANY)
}
}
+ZEND_VM_HANDLER(166, ZEND_POW, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
+{
+ USE_OPLINE
+ zend_free_op free_op1, free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ GET_OP1_ZVAL_PTR(BP_VAR_R),
+ GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC);
+ FREE_OP1();
+ FREE_OP2();
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_HANDLER(167, ZEND_ASSIGN_POW, VAR|UNUSED|CV, CONST|TMP|VAR|UNUSED|CV)
+{
+ ZEND_VM_DISPATCH_TO_HELPER_EX(zend_binary_assign_op_helper, binary_op,pow_function);
+}
+
ZEND_VM_EXPORT_HELPER(zend_do_fcall, zend_do_fcall_common_helper)
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 7e613cd6e8..f913dc04e9 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -1107,7 +1107,7 @@ static int ZEND_FASTCALL ZEND_TICKS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (++EG(ticks_count)>=opline->extended_value) {
EG(ticks_count)=0;
if (zend_ticks_function) {
- zend_ticks_function(opline->extended_value);
+ zend_ticks_function(opline->extended_value TSRMLS_CC);
}
}
CHECK_EXCEPTION();
@@ -2416,7 +2416,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_CONST == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2446,7 +2446,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS
if (IS_CONST == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2476,7 +2476,7 @@ static int ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARG
if (IS_CONST == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2510,7 +2510,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_AR
if (IS_CONST == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2541,7 +2541,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_A
if (IS_CONST == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -2769,7 +2769,7 @@ static int ZEND_FASTCALL ZEND_BOOL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
SAVE_OPLINE();
/* PHP 3.0 returned "" for false and 1 for true, here we use 0 and 1 for now */
- ZVAL_BOOL(retval, i_zend_is_true(opline->op1.zv));
+ ZVAL_BOOL(retval, i_zend_is_true(opline->op1.zv TSRMLS_CC));
CHECK_EXCEPTION();
ZEND_VM_NEXT_OPCODE();
@@ -3226,7 +3226,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_AR
SAVE_OPLINE();
value = opline->op1.zv;
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
ZVAL_COPY_VALUE(&EX_T(opline->result.var).tmp_var, value);
if (!0) {
zendi_zval_copy_ctor(EX_T(opline->result.var).tmp_var);
@@ -3251,7 +3251,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_VAR_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLE
SAVE_OPLINE();
value = opline->op1.zv;
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
if (IS_CONST == IS_VAR || IS_CONST == IS_CV) {
Z_ADDREF_P(value);
EX_T(opline->result.var).var.ptr = value;
@@ -4282,7 +4282,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_CONST_HANDLER(ZEND_O
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -4492,6 +4492,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLE
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ opline->op1.zv,
+ opline->op2.zv TSRMLS_CC);
+
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -5179,6 +5194,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ opline->op1.zv,
+ _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+ zval_dtor(free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -6021,7 +6051,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_VAR_HANDLER(ZEND_OPC
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -6192,6 +6222,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ opline->op1.zv,
+ _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+ zval_ptr_dtor_nogc(&free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_CONST_UNUSED(int type, ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -6726,7 +6771,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -7660,6 +7705,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_A
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ opline->op1.zv,
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_BW_NOT_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -7726,7 +7786,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_TMP_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
zval_dtor(free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -7756,7 +7816,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_TMP_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
zval_dtor(free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -7786,7 +7846,7 @@ static int ZEND_FASTCALL ZEND_JMPZNZ_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_TMP_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_dtor(free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -7820,7 +7880,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS
if (IS_TMP_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_dtor(free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -7851,7 +7911,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARG
if (IS_TMP_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_dtor(free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -8067,7 +8127,7 @@ static int ZEND_FASTCALL ZEND_BOOL_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
SAVE_OPLINE();
/* PHP 3.0 returned "" for false and 1 for true, here we use 0 and 1 for now */
- ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC)));
+ ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC) TSRMLS_CC));
zval_dtor(free_op1.var);
CHECK_EXCEPTION();
@@ -8554,7 +8614,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS
SAVE_OPLINE();
value = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
ZVAL_COPY_VALUE(&EX_T(opline->result.var).tmp_var, value);
if (!1) {
zendi_zval_copy_ctor(EX_T(opline->result.var).tmp_var);
@@ -8580,7 +8640,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_VAR_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_
SAVE_OPLINE();
value = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) {
Z_ADDREF_P(value);
EX_T(opline->result.var).var.ptr = value;
@@ -9539,7 +9599,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_CONST_HANDLER(ZEND_OPC
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -9709,6 +9769,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ opline->op2.zv TSRMLS_CC);
+ zval_dtor(free_op1.var);
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -10398,6 +10473,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1, free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+ zval_dtor(free_op1.var);
+ zval_dtor(free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -11242,7 +11332,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_VAR_HANDLER(ZEND_OPCOD
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -11413,6 +11503,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1, free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+ zval_dtor(free_op1.var);
+ zval_ptr_dtor_nogc(&free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_TMP_UNUSED(int type, ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -11822,7 +11927,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_UNUSED_HANDLER(ZEND_OP
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -12678,6 +12783,21 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+ zval_dtor(free_op1.var);
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
static int ZEND_FASTCALL ZEND_BW_NOT_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -12924,7 +13044,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
zval_ptr_dtor_nogc(&free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -12954,7 +13074,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
zval_ptr_dtor_nogc(&free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -12984,7 +13104,7 @@ static int ZEND_FASTCALL ZEND_JMPZNZ_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_ptr_dtor_nogc(&free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -13018,7 +13138,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS
if (IS_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_ptr_dtor_nogc(&free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -13049,7 +13169,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
if (IS_VAR == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
zval_ptr_dtor_nogc(&free_op1.var);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -13370,7 +13490,7 @@ static int ZEND_FASTCALL ZEND_BOOL_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
SAVE_OPLINE();
/* PHP 3.0 returned "" for false and 1 for true, here we use 0 and 1 for now */
- ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC)));
+ ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC) TSRMLS_CC));
zval_ptr_dtor_nogc(&free_op1.var);
CHECK_EXCEPTION();
@@ -13969,7 +14089,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS
SAVE_OPLINE();
value = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
ZVAL_COPY_VALUE(&EX_T(opline->result.var).tmp_var, value);
if (!0) {
zendi_zval_copy_ctor(EX_T(opline->result.var).tmp_var);
@@ -13995,7 +14115,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_VAR_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_
SAVE_OPLINE();
value = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
if (IS_VAR == IS_VAR || IS_VAR == IS_CV) {
Z_ADDREF_P(value);
EX_T(opline->result.var).var.ptr = value;
@@ -16257,7 +16377,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_CONST_HANDLER(ZEND_OPC
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -16329,7 +16449,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -16575,6 +16695,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ opline->op2.zv TSRMLS_CC);
+ zval_ptr_dtor_nogc(&free_op1.var);
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_VAR_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -18399,7 +18539,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -18645,6 +18785,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1, free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+ zval_ptr_dtor_nogc(&free_op1.var);
+ zval_dtor(free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_VAR_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -20777,7 +20937,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_VAR_HANDLER(ZEND_OPCOD
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -20849,7 +21009,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -21096,6 +21256,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1, free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+ zval_ptr_dtor_nogc(&free_op1.var);
+ zval_ptr_dtor_nogc(&free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_VAR_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_VAR_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -22051,7 +22231,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_UNUSED_HANDLER(ZEND_OP
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -22243,6 +22423,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_VAR_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -24116,7 +24301,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -24362,6 +24547,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op1;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+ zval_ptr_dtor_nogc(&free_op1.var);
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_VAR_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_CLONE_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -25611,7 +25816,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -25854,6 +26059,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDL
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_UNUSED_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_TMP(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -26920,7 +27130,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -27163,6 +27373,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_UNUSED_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_VAR(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -28229,7 +28444,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -28473,6 +28688,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_UNUSED_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -28897,6 +29117,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HAND
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_UNUSED_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_UNUSED_CV(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -29960,7 +30185,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -30203,6 +30428,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_UNUSED_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_BW_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -30444,7 +30674,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_CV == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -30474,7 +30704,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_CV == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
ret = Z_LVAL_P(val);
} else {
- ret = i_zend_is_true(val);
+ ret = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -30504,7 +30734,7 @@ static int ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_CV == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -30538,7 +30768,7 @@ static int ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
if (IS_CV == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -30569,7 +30799,7 @@ static int ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
if (IS_CV == IS_TMP_VAR && EXPECTED(Z_TYPE_P(val) == IS_BOOL)) {
retval = Z_LVAL_P(val);
} else {
- retval = i_zend_is_true(val);
+ retval = i_zend_is_true(val TSRMLS_CC);
if (UNEXPECTED(EG(exception) != NULL)) {
HANDLE_EXCEPTION();
@@ -30874,7 +31104,7 @@ static int ZEND_FASTCALL ZEND_BOOL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
SAVE_OPLINE();
/* PHP 3.0 returned "" for false and 1 for true, here we use 0 and 1 for now */
- ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC)));
+ ZVAL_BOOL(retval, i_zend_is_true(_get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC) TSRMLS_CC));
CHECK_EXCEPTION();
ZEND_VM_NEXT_OPCODE();
@@ -31331,7 +31561,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
SAVE_OPLINE();
value = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
ZVAL_COPY_VALUE(&EX_T(opline->result.var).tmp_var, value);
if (!0) {
zendi_zval_copy_ctor(EX_T(opline->result.var).tmp_var);
@@ -31356,7 +31586,7 @@ static int ZEND_FASTCALL ZEND_JMP_SET_VAR_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_A
SAVE_OPLINE();
value = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
- if (i_zend_is_true(value)) {
+ if (i_zend_is_true(value TSRMLS_CC)) {
if (IS_CV == IS_VAR || IS_CV == IS_CV) {
Z_ADDREF_P(value);
EX_T(opline->result.var).var.ptr = value;
@@ -33384,7 +33614,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_CONST_HANDLER(ZEND_OPCO
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -33456,7 +33686,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -33699,6 +33929,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_A
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+ opline->op2.zv TSRMLS_CC);
+
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_CV_CONST(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -35387,7 +35637,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -35630,6 +35880,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARG
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+ _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+ zval_dtor(free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_CV_TMP(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -37625,7 +37895,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_VAR_HANDLER(ZEND_OPCODE
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -37697,7 +37967,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -37941,6 +38211,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+ zend_free_op free_op2;
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+ _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC);
+
+ zval_ptr_dtor_nogc(&free_op2.var);
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_CV_VAR(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL zend_binary_assign_op_obj_helper_SPEC_CV_UNUSED(int (*binary_op)(zval *result, zval *op1, zval *op2 TSRMLS_DC), ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -38769,7 +39059,7 @@ static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPC
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 1);
} else {
ZVAL_BOOL(&EX_T(opline->result.var).tmp_var, 0);
@@ -38939,6 +39229,11 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_CV_UNUSED(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_ADD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
USE_OPLINE
@@ -40675,7 +40970,7 @@ num_index_prop:
result = isset;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (!isset || !i_zend_is_true(*value)) {
+ if (!isset || !i_zend_is_true(*value TSRMLS_CC)) {
result = 0;
} else {
result = 1;
@@ -40918,6 +41213,26 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
ZEND_VM_RETURN();
}
+static int ZEND_FASTCALL ZEND_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ USE_OPLINE
+
+
+ SAVE_OPLINE();
+ pow_function(&EX_T(opline->result.var).tmp_var,
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+ _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC);
+
+
+ CHECK_EXCEPTION();
+ ZEND_VM_NEXT_OPCODE();
+}
+
+static int ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+ return zend_binary_assign_op_helper_SPEC_CV_CV(pow_function, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
+}
+
static int ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d.", OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);
@@ -45078,6 +45393,56 @@ void zend_init_opcodes_handlers(void)
ZEND_SEND_UNPACK_SPEC_HANDLER,
ZEND_SEND_UNPACK_SPEC_HANDLER,
ZEND_SEND_UNPACK_SPEC_HANDLER,
+ ZEND_POW_SPEC_CONST_CONST_HANDLER,
+ ZEND_POW_SPEC_CONST_TMP_HANDLER,
+ ZEND_POW_SPEC_CONST_VAR_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_POW_SPEC_CONST_CV_HANDLER,
+ ZEND_POW_SPEC_TMP_CONST_HANDLER,
+ ZEND_POW_SPEC_TMP_TMP_HANDLER,
+ ZEND_POW_SPEC_TMP_VAR_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_POW_SPEC_TMP_CV_HANDLER,
+ ZEND_POW_SPEC_VAR_CONST_HANDLER,
+ ZEND_POW_SPEC_VAR_TMP_HANDLER,
+ ZEND_POW_SPEC_VAR_VAR_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_POW_SPEC_VAR_CV_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_POW_SPEC_CV_CONST_HANDLER,
+ ZEND_POW_SPEC_CV_TMP_HANDLER,
+ ZEND_POW_SPEC_CV_VAR_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_POW_SPEC_CV_CV_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_NULL_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_VAR_TMP_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_VAR_VAR_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_UNUSED_TMP_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_UNUSED_VAR_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_CV_TMP_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_CV_VAR_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER,
+ ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER,
ZEND_NULL_HANDLER
};
zend_opcode_handlers = (opcode_handler_t*)labels;
diff --git a/Zend/zend_vm_opcodes.c b/Zend/zend_vm_opcodes.c
index d6f51cce5c..23edabc47f 100644
--- a/Zend/zend_vm_opcodes.c
+++ b/Zend/zend_vm_opcodes.c
@@ -21,7 +21,7 @@
#include <stdio.h>
#include <zend.h>
-const char *zend_vm_opcodes_map[166] = {
+const char *zend_vm_opcodes_map[168] = {
"ZEND_NOP",
"ZEND_ADD",
"ZEND_SUB",
@@ -188,6 +188,8 @@ const char *zend_vm_opcodes_map[166] = {
"ZEND_FAST_RET",
"ZEND_RECV_VARIADIC",
"ZEND_SEND_UNPACK",
+ "ZEND_POW",
+ "ZEND_ASSIGN_POW",
};
ZEND_API const char* zend_get_opcode_name(zend_uchar opcode) {
diff --git a/Zend/zend_vm_opcodes.h b/Zend/zend_vm_opcodes.h
index 0f75196ffb..f9c30ca126 100644
--- a/Zend/zend_vm_opcodes.h
+++ b/Zend/zend_vm_opcodes.h
@@ -171,5 +171,7 @@ ZEND_API const char *zend_get_opcode_name(zend_uchar opcode);
#define ZEND_FAST_RET 163
#define ZEND_RECV_VARIADIC 164
#define ZEND_SEND_UNPACK 165
+#define ZEND_POW 166
+#define ZEND_ASSIGN_POW 167
#endif
diff --git a/configure.in b/configure.in
index 3369b9a4f6..8781cbc459 100644
--- a/configure.in
+++ b/configure.in
@@ -118,7 +118,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
])
PHP_MAJOR_VERSION=5
-PHP_MINOR_VERSION=6
+PHP_MINOR_VERSION=7
PHP_RELEASE_VERSION=0
PHP_EXTRA_VERSION="-dev"
PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"
diff --git a/ext/date/lib/parse_date.re b/ext/date/lib/parse_date.re
index 0bb8fe68b3..f9595889ec 100644
--- a/ext/date/lib/parse_date.re
+++ b/ext/date/lib/parse_date.re
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
- | Copyright (c) 1997-2013 The PHP Group |
+ | Copyright (c) 1997-2014 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
diff --git a/ext/date/lib/parse_iso_intervals.re b/ext/date/lib/parse_iso_intervals.re
index cbbf8781bf..8c82cfc3b9 100644
--- a/ext/date/lib/parse_iso_intervals.re
+++ b/ext/date/lib/parse_iso_intervals.re
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
- | Copyright (c) 1997-2013 The PHP Group |
+ | Copyright (c) 1997-2014 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
diff --git a/ext/dba/dba_inifile.c b/ext/dba/dba_inifile.c
index 4d8eae73ac..6067e99154 100644
--- a/ext/dba/dba_inifile.c
+++ b/ext/dba/dba_inifile.c
@@ -124,14 +124,15 @@ DBA_EXISTS_FUNC(inifile)
DBA_DELETE_FUNC(inifile)
{
int res;
+ zend_bool found = 0;
INIFILE_DATA;
INIFILE_GKEY;
- res = inifile_delete(dba, &ini_key TSRMLS_CC);
+ res = inifile_delete_ex(dba, &ini_key, &found TSRMLS_CC);
INIFILE_DONE;
- return (res == -1 ? FAILURE : SUCCESS);
+ return (res == -1 || !found ? FAILURE : SUCCESS);
}
DBA_FIRSTKEY_FUNC(inifile)
diff --git a/ext/dba/libinifile/inifile.c b/ext/dba/libinifile/inifile.c
index 8c771beba4..218037ebe3 100644
--- a/ext/dba/libinifile/inifile.c
+++ b/ext/dba/libinifile/inifile.c
@@ -402,7 +402,7 @@ static int inifile_copy_to(inifile *dba, size_t pos_start, size_t pos_end, inifi
return FAILURE;
}
php_stream_seek(dba->fp, pos_start, SEEK_SET);
- if (!php_stream_copy_to_stream_ex(dba->fp, fp, pos_end - pos_start, NULL)) {
+ if (SUCCESS != php_stream_copy_to_stream_ex(dba->fp, fp, pos_end - pos_start, NULL)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not copy group [%zu - %zu] to temporary stream", pos_start, pos_end);
return FAILURE;
}
@@ -413,7 +413,7 @@ static int inifile_copy_to(inifile *dba, size_t pos_start, size_t pos_end, inifi
/* {{{ inifile_filter
* copy from to dba while ignoring key name (group must equal)
*/
-static int inifile_filter(inifile *dba, inifile *from, const key_type *key TSRMLS_DC)
+static int inifile_filter(inifile *dba, inifile *from, const key_type *key, zend_bool *found TSRMLS_DC)
{
size_t pos_start = 0, pos_next = 0, pos_curr;
int ret = SUCCESS;
@@ -424,10 +424,13 @@ static int inifile_filter(inifile *dba, inifile *from, const key_type *key TSRML
while(inifile_read(from, &ln TSRMLS_CC)) {
switch(inifile_key_cmp(&ln.key, key TSRMLS_CC)) {
case 0:
+ if (found) {
+ *found = (zend_bool) 1;
+ }
pos_curr = php_stream_tell(from->fp);
if (pos_start != pos_next) {
php_stream_seek(from->fp, pos_start, SEEK_SET);
- if (!php_stream_copy_to_stream_ex(from->fp, dba->fp, pos_next - pos_start, NULL)) {
+ if (SUCCESS != php_stream_copy_to_stream_ex(from->fp, dba->fp, pos_next - pos_start, NULL)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not copy [%zu - %zu] from temporary stream", pos_next, pos_start);
ret = FAILURE;
}
@@ -446,7 +449,7 @@ static int inifile_filter(inifile *dba, inifile *from, const key_type *key TSRML
}
if (pos_start != pos_next) {
php_stream_seek(from->fp, pos_start, SEEK_SET);
- if (!php_stream_copy_to_stream_ex(from->fp, dba->fp, pos_next - pos_start, NULL)) {
+ if (SUCCESS != php_stream_copy_to_stream_ex(from->fp, dba->fp, pos_next - pos_start, NULL)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not copy [%zu - %zu] from temporary stream", pos_next, pos_start);
ret = FAILURE;
}
@@ -458,7 +461,7 @@ static int inifile_filter(inifile *dba, inifile *from, const key_type *key TSRML
/* {{{ inifile_delete_replace_append
*/
-static int inifile_delete_replace_append(inifile *dba, const key_type *key, const val_type *value, int append TSRMLS_DC)
+static int inifile_delete_replace_append(inifile *dba, const key_type *key, const val_type *value, int append, zend_bool *found TSRMLS_DC)
{
size_t pos_grp_start=0, pos_grp_next;
inifile *ini_tmp = NULL;
@@ -497,7 +500,7 @@ static int inifile_delete_replace_append(inifile *dba, const key_type *key, cons
php_stream_seek(dba->fp, 0, SEEK_END);
if (pos_grp_next != (size_t)php_stream_tell(dba->fp)) {
php_stream_seek(dba->fp, pos_grp_next, SEEK_SET);
- if (!php_stream_copy_to_stream_ex(dba->fp, fp_tmp, PHP_STREAM_COPY_ALL, NULL)) {
+ if (SUCCESS != php_stream_copy_to_stream_ex(dba->fp, fp_tmp, PHP_STREAM_COPY_ALL, NULL)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not copy remainder to temporary stream");
ret = FAILURE;
}
@@ -516,7 +519,7 @@ static int inifile_delete_replace_append(inifile *dba, const key_type *key, cons
if (key->name && strlen(key->name)) {
/* 6 */
if (!append && ini_tmp) {
- ret = inifile_filter(dba, ini_tmp, key TSRMLS_CC);
+ ret = inifile_filter(dba, ini_tmp, key, found TSRMLS_CC);
}
/* 7 */
@@ -538,7 +541,7 @@ static int inifile_delete_replace_append(inifile *dba, const key_type *key, cons
if (fp_tmp && php_stream_tell(fp_tmp)) {
php_stream_seek(fp_tmp, 0, SEEK_SET);
php_stream_seek(dba->fp, 0, SEEK_END);
- if (!php_stream_copy_to_stream_ex(fp_tmp, dba->fp, PHP_STREAM_COPY_ALL, NULL)) {
+ if (SUCCESS != php_stream_copy_to_stream_ex(fp_tmp, dba->fp, PHP_STREAM_COPY_ALL, NULL)) {
php_error_docref(NULL TSRMLS_CC, E_RECOVERABLE_ERROR, "Could not copy from temporary stream - ini file truncated");
ret = FAILURE;
}
@@ -563,7 +566,15 @@ static int inifile_delete_replace_append(inifile *dba, const key_type *key, cons
*/
int inifile_delete(inifile *dba, const key_type *key TSRMLS_DC)
{
- return inifile_delete_replace_append(dba, key, NULL, 0 TSRMLS_CC);
+ return inifile_delete_replace_append(dba, key, NULL, 0, NULL TSRMLS_CC);
+}
+/* }}} */
+
+/* {{{ inifile_delete_ex
+ */
+int inifile_delete_ex(inifile *dba, const key_type *key, zend_bool *found TSRMLS_DC)
+{
+ return inifile_delete_replace_append(dba, key, NULL, 0, found TSRMLS_CC);
}
/* }}} */
@@ -571,7 +582,15 @@ int inifile_delete(inifile *dba, const key_type *key TSRMLS_DC)
*/
int inifile_replace(inifile *dba, const key_type *key, const val_type *value TSRMLS_DC)
{
- return inifile_delete_replace_append(dba, key, value, 0 TSRMLS_CC);
+ return inifile_delete_replace_append(dba, key, value, 0, NULL TSRMLS_CC);
+}
+/* }}} */
+
+/* {{{ inifile_replace_ex
+ */
+int inifile_replace_ex(inifile *dba, const key_type *key, const val_type *value, zend_bool *found TSRMLS_DC)
+{
+ return inifile_delete_replace_append(dba, key, value, 0, found TSRMLS_CC);
}
/* }}} */
@@ -579,7 +598,7 @@ int inifile_replace(inifile *dba, const key_type *key, const val_type *value TSR
*/
int inifile_append(inifile *dba, const key_type *key, const val_type *value TSRMLS_DC)
{
- return inifile_delete_replace_append(dba, key, value, 1 TSRMLS_CC);
+ return inifile_delete_replace_append(dba, key, value, 1, NULL TSRMLS_CC);
}
/* }}} */
diff --git a/ext/dba/libinifile/inifile.h b/ext/dba/libinifile/inifile.h
index 1177610185..e41dac0ca4 100644
--- a/ext/dba/libinifile/inifile.h
+++ b/ext/dba/libinifile/inifile.h
@@ -49,7 +49,9 @@ val_type inifile_fetch(inifile *dba, const key_type *key, int skip TSRMLS_DC);
int inifile_firstkey(inifile *dba TSRMLS_DC);
int inifile_nextkey(inifile *dba TSRMLS_DC);
int inifile_delete(inifile *dba, const key_type *key TSRMLS_DC);
+int inifile_delete_ex(inifile *dba, const key_type *key, zend_bool *found TSRMLS_DC);
int inifile_replace(inifile *dba, const key_type *key, const val_type *val TSRMLS_DC);
+int inifile_replace_ex(inifile *dba, const key_type *key, const val_type *val, zend_bool *found TSRMLS_DC);
int inifile_append(inifile *dba, const key_type *key, const val_type *val TSRMLS_DC);
char *inifile_version();
diff --git a/ext/dba/tests/bug62490.phpt b/ext/dba/tests/bug62490.phpt
new file mode 100644
index 0000000000..325dd34554
--- /dev/null
+++ b/ext/dba/tests/bug62490.phpt
@@ -0,0 +1,43 @@
+--TEST--
+Bug #62490 (dba_delete returns true on missing item (inifile))
+--SKIPIF--
+<?php
+$handler = "inifile";
+include "skipif.inc";
+?>
+--FILE--
+<?php
+$handler = "inifile";
+include "test.inc";
+
+$dba = dba_open($db_filename, "n", $handler)
+ or die;
+for ($i = 0; $i < 3; ++$i) {
+ echo "insert $i:";
+ var_dump(dba_insert("a", $i, $dba));
+}
+
+echo "exists:";
+var_dump(dba_exists("a", $dba));
+echo "delete:";
+var_dump(dba_delete("a", $dba));
+echo "exists:";
+var_dump(dba_exists("a", $dba));
+echo "delete:";
+var_dump(dba_delete("a", $dba));
+
+?>
+===DONE===
+--CLEAN--
+<?php
+include "clean.inc";
+?>
+--EXPECT--
+insert 0:bool(true)
+insert 1:bool(true)
+insert 2:bool(true)
+exists:bool(true)
+delete:bool(true)
+exists:bool(false)
+delete:bool(false)
+===DONE===
diff --git a/ext/dba/tests/dba_db4_003.phpt b/ext/dba/tests/dba_db4_003.phpt
index 7e8568c085..8708170fc1 100644
--- a/ext/dba/tests/dba_db4_003.phpt
+++ b/ext/dba/tests/dba_db4_003.phpt
@@ -39,8 +39,6 @@ require(dirname(__FILE__) .'/clean.inc');
database handler: db4
int(14)
-Notice: dba_open(): %stest0.dbm: unexpected file type or format in %sdba_db4_003.php on line %d
-
Warning: dba_open(%stest0.dbm,c): Driver initialization failed for handler: db4: Invalid argument in %sdba_db4_003.php on line %d
Error creating %stest0.dbm
Dummy contents
diff --git a/ext/dba/tests/dba_db4_007.phpt b/ext/dba/tests/dba_db4_007.phpt
index bd95e0bec7..027d0af032 100644
--- a/ext/dba/tests/dba_db4_007.phpt
+++ b/ext/dba/tests/dba_db4_007.phpt
@@ -35,7 +35,5 @@ require(dirname(__FILE__) .'/clean.inc');
database handler: db4
int(14)
-Notice: dba_popen(): %stest0.dbm: unexpected file type or format in %sdba_db4_007.php on line %d
-
Warning: dba_popen(%stest0.dbm,c): Driver initialization failed for handler: db4: Invalid argument in %sdba_db4_007.php on line %d
Error creating %stest0.dbm
diff --git a/ext/dba/tests/dba_db4_010.phpt b/ext/dba/tests/dba_db4_010.phpt
deleted file mode 100644
index fb31f05835..0000000000
--- a/ext/dba/tests/dba_db4_010.phpt
+++ /dev/null
@@ -1,38 +0,0 @@
---TEST--
-DBA DB4 magic_quotes_runtime Test
---SKIPIF--
-<?php
-$handler = "db4";
-require_once(dirname(__FILE__) .'/skipif.inc');
-die("info $HND handler used");
-?>
---FILE--
-<?php
-$handler = "db4";
-require_once(dirname(__FILE__) .'/test.inc');
-echo "database handler: $handler\n";
-if (($db_file=dba_open($db_file, "n", $handler))!==FALSE) {
- ini_set('magic_quotes_runtime', 0);
- dba_insert("key1", '"', $db_file);
- var_dump(dba_fetch("key1", $db_file));
- ini_set('magic_quotes_runtime', 1);
- var_dump(dba_fetch("key1", $db_file));
- dba_replace("key1", '\"', $db_file);
- var_dump(dba_fetch("key1", $db_file));
- ini_set('magic_quotes_runtime', 0);
- var_dump(dba_fetch("key1", $db_file));
- dba_close($db_file);
-} else {
- echo "Error creating database\n";
-}
-?>
---CLEAN--
-<?php
-require(dirname(__FILE__) .'/clean.inc');
-?>
---EXPECTF--
-database handler: db4
-string(1) """
-string(2) "\""
-string(2) "\""
-string(1) """
diff --git a/ext/dba/tests/dba_handler.inc b/ext/dba/tests/dba_handler.inc
index a950e903af..ed2a52400a 100644
--- a/ext/dba/tests/dba_handler.inc
+++ b/ext/dba/tests/dba_handler.inc
@@ -82,7 +82,7 @@ do {
dba_close($dba_reader);
}
if (($db_file = dba_popen($db_filename, 'r'.($lock_flag==''?'':'-'), $handler))!==FALSE) {
- if ($handler == 'dbm') {
+ if ($handler == 'dbm' || $handler == "tcadb") {
dba_close($db_file);
}
}
diff --git a/ext/dba/tests/dba_inifile.phpt b/ext/dba/tests/dba_inifile.phpt
index 5975d25f4d..ae06aee09f 100644
--- a/ext/dba/tests/dba_inifile.phpt
+++ b/ext/dba/tests/dba_inifile.phpt
@@ -12,6 +12,10 @@ DBA INIFILE handler test
require_once dirname(__FILE__) .'/dba_handler.inc';
?>
===DONE===
+--CLEAN--
+<?php
+ require(dirname(__FILE__) .'/clean.inc');
+?>
--EXPECT--
database handler: inifile
3NYNYY
@@ -19,7 +23,7 @@ Content String 2
Content 2 replaced
Read during write: not allowed
"key number 6" written
-Failed to write "key number 6" 2nd time
+"key number 6" written 2nd time
Content 2 replaced 2nd time
The 6th value
array(3) {
@@ -36,7 +40,7 @@ Content String 2
Content 2 replaced
Read during write: not allowed
"key number 6" written
-Failed to write "key number 6" 2nd time
+"key number 6" written 2nd time
Content 2 replaced 2nd time
The 6th value
array(3) {
diff --git a/ext/dba/tests/dba_tcadb.phpt b/ext/dba/tests/dba_tcadb.phpt
index 28b6dd8f0b..f75aa813d4 100644
--- a/ext/dba/tests/dba_tcadb.phpt
+++ b/ext/dba/tests/dba_tcadb.phpt
@@ -16,6 +16,12 @@ DBA TCADB handler test
require_once dirname(__FILE__) .'/dba_handler.inc';
?>
===DONE===
+--CLEAN--
+<?php
+$db_filename = $db_file = dirname(__FILE__) .'/test0.tch';
+@unlink($db_filename);
+@unlink($db_filename.'.lck');
+?>
--EXPECT--
database handler: tcadb
3NYNYY
diff --git a/ext/dom/php_dom.c b/ext/dom/php_dom.c
index 0623dbdcde..bfe966bd82 100644
--- a/ext/dom/php_dom.c
+++ b/ext/dom/php_dom.c
@@ -448,7 +448,7 @@ static int dom_property_exists(zval *object, zval *member, int check_empty, cons
Z_SET_REFCOUNT_P(tmp, 1);
Z_UNSET_ISREF_P(tmp);
if (check_empty == 1) {
- retval = zend_is_true(tmp);
+ retval = zend_is_true(tmp TSRMLS_CC);
} else if (check_empty == 0) {
retval = (Z_TYPE_P(tmp) != IS_NULL);
}
diff --git a/ext/gd/libgd/gdft.c b/ext/gd/libgd/gdft.c
index ac2bf344ff..aa8e8d3a74 100644
--- a/ext/gd/libgd/gdft.c
+++ b/ext/gd/libgd/gdft.c
@@ -1050,7 +1050,15 @@ gdImageStringFTEx (gdImage * im, int *brect, int fg, char *fontlist, double ptsi
}
/* transform glyph image */
- FT_Get_Glyph(slot, &image);
+ if (FT_Get_Glyph(slot, &image)) {
+ if (tmpstr) {
+ gdFree(tmpstr);
+ }
+ gdCacheDelete(tc_cache);
+ gdMutexUnlock(gdFontCacheMutex);
+ return "Problem loading glyph";
+ }
+
if (brect) { /* only if need brect */
FT_Glyph_Get_CBox(image, ft_glyph_bbox_gridfit, &glyph_bbox);
glyph_bbox.xMin += penf.x;
diff --git a/ext/gmp/gmp.c b/ext/gmp/gmp.c
index 954d4799af..8c4eec5518 100644
--- a/ext/gmp/gmp.c
+++ b/ext/gmp/gmp.c
@@ -532,6 +532,9 @@ static int gmp_do_operation(zend_uchar opcode, zval *result, zval *op1, zval *op
DO_BINARY_UI_OP(mpz_sub);
case ZEND_MUL:
DO_BINARY_UI_OP(mpz_mul);
+ case ZEND_POW:
+ shift_operator_helper(mpz_pow_ui, result, op1, op2 TSRMLS_CC);
+ return SUCCESS;
case ZEND_DIV:
DO_BINARY_UI_OP_EX(mpz_tdiv_q, mpz_tdiv_q_ui, 1);
case ZEND_MOD:
diff --git a/ext/gmp/tests/overloading.phpt b/ext/gmp/tests/overloading.phpt
index 18e0bb2aa9..0d8f5cfedb 100644
--- a/ext/gmp/tests/overloading.phpt
+++ b/ext/gmp/tests/overloading.phpt
@@ -83,6 +83,10 @@ var_dump(--$a);
var_dump($a--);
var_dump($a);
+$x = gmp_init(3);
+$y = gmp_init(2);
+var_dump($x ** $y);
+
?>
--EXPECTF--
object(GMP)#%d (1) {
@@ -256,4 +260,7 @@ object(GMP)#%d (1) {
["num"]=>
string(2) "42"
}
-
+object(GMP)#%d (1) {
+ ["num"]=>
+ string(1) "9"
+}
diff --git a/ext/json/json.c b/ext/json/json.c
index f38cc11ac5..d939a7deab 100644
--- a/ext/json/json.c
+++ b/ext/json/json.c
@@ -190,10 +190,10 @@ static int json_determine_array_type(zval **val TSRMLS_DC) /* {{{ */
}
if (i == HASH_KEY_IS_STRING) {
- return 1;
+ return PHP_JSON_OUTPUT_OBJECT;
} else {
if (index != idx) {
- return 1;
+ return PHP_JSON_OUTPUT_OBJECT;
}
}
idx++;
diff --git a/ext/libxml/tests/libxml_disable_entity_loader.phpt b/ext/libxml/tests/libxml_disable_entity_loader.phpt
new file mode 100644
index 0000000000..6477543fb2
--- /dev/null
+++ b/ext/libxml/tests/libxml_disable_entity_loader.phpt
@@ -0,0 +1,41 @@
+--TEST--
+libxml_disable_entity_loader()
+--SKIPIF--
+<?php if (!extension_loaded('libxml') || !extension_loaded('dom') || defined('PHP_WINDOWS_VERSION_MAJOR')) die('skip'); ?>
+--FILE--
+<?php
+
+$xml = <<<EOT
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE test [<!ENTITY xxe SYSTEM "XXE_URI">]>
+<foo>&xxe;</foo>
+EOT;
+
+$xml = str_replace('XXE_URI', __DIR__ . '/libxml_disable_entity_loader_payload.txt', $xml);
+
+function parseXML($xml) {
+ $doc = new DOMDocument();
+ $doc->resolveExternals = true;
+ $doc->substituteEntities = true;
+ $doc->validateOnParse = false;
+ $doc->loadXML($xml, 0);
+ return $doc->saveXML();
+}
+
+var_dump(strpos(parseXML($xml), 'SECRET_DATA') !== false);
+var_dump(libxml_disable_entity_loader(true));
+var_dump(strpos(parseXML($xml), 'SECRET_DATA') === false);
+
+echo "Done\n";
+?>
+--EXPECTF--
+bool(true)
+bool(false)
+
+Warning: DOMDocument::loadXML(): I/O warning : failed to load external entity "%s" in %s on line %d
+
+Warning: DOMDocument::loadXML(): Failure to process entity xxe in Entity, line: %d in %s on line %d
+
+Warning: DOMDocument::loadXML(): Entity 'xxe' not defined in Entity, line: %d in %s on line %d
+bool(true)
+Done
diff --git a/ext/libxml/tests/libxml_disable_entity_loader_payload.txt b/ext/libxml/tests/libxml_disable_entity_loader_payload.txt
new file mode 100644
index 0000000000..3b8a43cc1d
--- /dev/null
+++ b/ext/libxml/tests/libxml_disable_entity_loader_payload.txt
@@ -0,0 +1 @@
+SECRET_DATA \ No newline at end of file
diff --git a/ext/mysqlnd/mysqlnd_net.c b/ext/mysqlnd/mysqlnd_net.c
index fadcbd87f6..226c855b3d 100644
--- a/ext/mysqlnd/mysqlnd_net.c
+++ b/ext/mysqlnd/mysqlnd_net.c
@@ -900,7 +900,11 @@ MYSQLND_METHOD(mysqlnd_net, enable_ssl)(MYSQLND_NET * const net TSRMLS_DC)
ZVAL_STRING(&cipher_zval, net->data->options.ssl_cipher, 0);
php_stream_context_set_option(context, "ssl", "ciphers", &cipher_zval);
}
+#if PHP_API_VERSION >= 20131106
+ php_stream_context_set(net_stream, context TSRMLS_CC);
+#else
php_stream_context_set(net_stream, context);
+#endif
if (php_stream_xport_crypto_setup(net_stream, STREAM_CRYPTO_METHOD_TLS_CLIENT, NULL TSRMLS_CC) < 0 ||
php_stream_xport_crypto_enable(net_stream, 1 TSRMLS_CC) < 0)
{
@@ -916,7 +920,11 @@ MYSQLND_METHOD(mysqlnd_net, enable_ssl)(MYSQLND_NET * const net TSRMLS_DC)
of the context, which means usage of already freed memory, bad. Actually we don't need this
context anymore after we have enabled SSL on the connection. Thus it is very simple, we remove it.
*/
+#if PHP_API_VERSION >= 20131106
+ php_stream_context_set(net_stream, NULL TSRMLS_CC);
+#else
php_stream_context_set(net_stream, NULL);
+#endif
if (net->data->options.timeout_read) {
struct timeval tv;
diff --git a/ext/mysqlnd/mysqlnd_ps.c b/ext/mysqlnd/mysqlnd_ps.c
index 8096cbbbd9..2d270c9b2f 100644
--- a/ext/mysqlnd/mysqlnd_ps.c
+++ b/ext/mysqlnd/mysqlnd_ps.c
@@ -38,6 +38,7 @@ const char * const mysqlnd_stmt_not_prepared = "Statement not prepared";
/* Exported by mysqlnd_ps_codec.c */
enum_func_status mysqlnd_stmt_execute_generate_request(MYSQLND_STMT * const s, zend_uchar ** request, size_t *request_len, zend_bool * free_buffer TSRMLS_DC);
+enum_func_status mysqlnd_stmt_execute_batch_generate_request(MYSQLND_STMT * const s, zend_uchar ** request, size_t *request_len, zend_bool * free_buffer TSRMLS_DC);
enum_func_status mysqlnd_stmt_fetch_row_buffered(MYSQLND_RES *result, void *param,
unsigned int flags,
diff --git a/ext/opcache/Optimizer/block_pass.c b/ext/opcache/Optimizer/block_pass.c
index fff5d7e101..a6114733e3 100644
--- a/ext/opcache/Optimizer/block_pass.c
+++ b/ext/opcache/Optimizer/block_pass.c
@@ -1466,7 +1466,12 @@ static void zend_jmp_optimization(zend_code_block *block, zend_op_array *op_arra
case ZEND_JMPNZ:
/* constant conditional JMPs */
if (ZEND_OP1_TYPE(last_op) == IS_CONST) {
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(last_op) TSRMLS_CC);
+#else
int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(last_op));
+#endif
+
if (last_op->opcode == ZEND_JMPZ) {
should_jmp = !should_jmp;
}
@@ -1609,7 +1614,12 @@ next_target:
case ZEND_JMPZ_EX:
/* constant conditional JMPs */
if (ZEND_OP1_TYPE(last_op) == IS_CONST) {
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(last_op) TSRMLS_CC);
+#else
int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(last_op));
+#endif
+
if (last_op->opcode == ZEND_JMPZ_EX) {
should_jmp = !should_jmp;
}
@@ -1730,7 +1740,11 @@ next_target_ex:
}
if (ZEND_OP1_TYPE(last_op) == IS_CONST) {
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ if (!zend_is_true(&ZEND_OP1_LITERAL(last_op) TSRMLS_CC)) {
+#else
if (!zend_is_true(&ZEND_OP1_LITERAL(last_op))) {
+#endif
/* JMPZNZ(false,L1,L2) -> JMP(L1) */
zend_code_block *todel;
diff --git a/ext/opcache/Optimizer/pass2.c b/ext/opcache/Optimizer/pass2.c
index 30708a0935..d5f4f0492b 100644
--- a/ext/opcache/Optimizer/pass2.c
+++ b/ext/opcache/Optimizer/pass2.c
@@ -89,7 +89,11 @@ if (ZEND_OPTIMIZER_PASS_2 & OPTIMIZATION_LEVEL) {
/* convert Ti = JMPZ_EX(C, L) => Ti = QM_ASSIGN(C)
in case we know it wouldn't jump */
} else if (ZEND_OP1_TYPE(opline) == IS_CONST) {
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(opline) TSRMLS_CC);
+#else
int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(opline));
+#endif
if (opline->opcode == ZEND_JMPZ_EX) {
should_jmp = !should_jmp;
}
@@ -103,7 +107,11 @@ if (ZEND_OPTIMIZER_PASS_2 & OPTIMIZATION_LEVEL) {
case ZEND_JMPZ:
case ZEND_JMPNZ:
if (ZEND_OP1_TYPE(opline) == IS_CONST) {
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(opline) TSRMLS_CC);
+#else
int should_jmp = zend_is_true(&ZEND_OP1_LITERAL(opline));
+#endif
if (opline->opcode == ZEND_JMPZ) {
should_jmp = !should_jmp;
@@ -139,8 +147,11 @@ if (ZEND_OPTIMIZER_PASS_2 & OPTIMIZATION_LEVEL) {
case ZEND_JMPZNZ:
if (ZEND_OP1_TYPE(opline) == IS_CONST) {
int opline_num;
-
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ if (zend_is_true(&ZEND_OP1_LITERAL(opline) TSRMLS_CC)) {
+#else
if (zend_is_true(&ZEND_OP1_LITERAL(opline))) {
+#endif
opline_num = opline->extended_value; /* JMPNZ */
} else {
opline_num = ZEND_OP2(opline).opline_num; /* JMPZ */
diff --git a/ext/opcache/ZendAccelerator.c b/ext/opcache/ZendAccelerator.c
index 45c0cf628a..d1c9dfcd35 100644
--- a/ext/opcache/ZendAccelerator.c
+++ b/ext/opcache/ZendAccelerator.c
@@ -2550,7 +2550,11 @@ static int accel_startup(zend_extension *extension)
_setmaxstdio(2048); /* The default configuration is limited to 512 stdio files */
#endif
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+ if (start_accel_module(TSRMLS_C) == FAILURE) {
+#else
if (start_accel_module() == FAILURE) {
+#endif
accel_startup_ok = 0;
zend_error(E_WARNING, ACCELERATOR_PRODUCT_NAME ": module registration failed!");
return FAILURE;
diff --git a/ext/opcache/ZendAccelerator.h b/ext/opcache/ZendAccelerator.h
index e799f0ae02..56e6cd508d 100644
--- a/ext/opcache/ZendAccelerator.h
+++ b/ext/opcache/ZendAccelerator.h
@@ -92,6 +92,7 @@
#define PHP_5_3_X_API_NO 220090626
#define PHP_5_4_X_API_NO 220100525
#define PHP_5_5_X_API_NO 220121212
+#define PHP_5_6_X_API_NO 220131106
/*** file locking ***/
#ifndef ZEND_WIN32
diff --git a/ext/opcache/zend_accelerator_module.c b/ext/opcache/zend_accelerator_module.c
index 83e7d4ca2b..b98623e1f2 100644
--- a/ext/opcache/zend_accelerator_module.c
+++ b/ext/opcache/zend_accelerator_module.c
@@ -474,10 +474,17 @@ static zend_module_entry accel_module_entry = {
STANDARD_MODULE_PROPERTIES
};
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+int start_accel_module(TSRMLS_D)
+{
+ return zend_startup_module(&accel_module_entry TSRMLS_CC);
+}
+#else
int start_accel_module(void)
{
return zend_startup_module(&accel_module_entry);
}
+#endif
/* {{{ proto array accelerator_get_scripts()
Get the scripts which are accelerated by ZendAccelerator */
diff --git a/ext/opcache/zend_accelerator_module.h b/ext/opcache/zend_accelerator_module.h
index ece4a7d6b5..6e772b8c7e 100644
--- a/ext/opcache/zend_accelerator_module.h
+++ b/ext/opcache/zend_accelerator_module.h
@@ -22,7 +22,12 @@
#ifndef ZEND_ACCELERATOR_MODULE_H
#define ZEND_ACCELERATOR_MODULE_H
+#if ZEND_EXTENSION_API_NO > PHP_5_6_X_API_NO
+int start_accel_module(TSRMLS_D);
+#else
int start_accel_module(void);
+#endif
+
void zend_accel_override_file_functions(TSRMLS_D);
#endif /* _ZEND_ACCELERATOR_MODULE_H */
diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c
index 523062e043..a02d4f98aa 100644
--- a/ext/openssl/xp_ssl.c
+++ b/ext/openssl/xp_ssl.c
@@ -407,7 +407,7 @@ static inline int php_openssl_setup_crypto(php_stream *stream,
if (stream->context && SUCCESS == php_stream_context_get_option(
stream->context, "ssl", "no_ticket", &val) &&
- zend_is_true(*val)
+ zend_is_true(*val TSRMLS_CC)
) {
SSL_CTX_set_options(sslsock->ctx, SSL_OP_NO_TICKET);
}
@@ -420,7 +420,7 @@ static inline int php_openssl_setup_crypto(php_stream *stream,
if (stream->context && SUCCESS == php_stream_context_get_option(
stream->context, "ssl", "disable_compression", &val) &&
- zend_is_true(*val)
+ zend_is_true(*val TSRMLS_CC)
) {
SSL_CTX_set_options(sslsock->ctx, SSL_OP_NO_COMPRESSION);
}
@@ -471,7 +471,7 @@ static inline int php_openssl_enable_crypto(php_stream *stream,
if (sslsock->is_client
&& (php_stream_context_get_option(stream->context, "ssl", "SNI_enabled", &val) == FAILURE
- || zend_is_true(*val))
+ || zend_is_true(*val TSRMLS_CC))
) {
if (php_stream_context_get_option(stream->context, "ssl", "SNI_server_name", &val) == SUCCESS) {
convert_to_string_ex(val);
@@ -578,7 +578,7 @@ static inline int php_openssl_enable_crypto(php_stream *stream,
if (SUCCESS == php_stream_context_get_option(
stream->context, "ssl",
"capture_peer_cert", &val) &&
- zend_is_true(*val)) {
+ zend_is_true(*val TSRMLS_CC)) {
MAKE_STD_ZVAL(zcert);
ZVAL_RESOURCE(zcert, zend_list_insert(peer_cert,
php_openssl_get_x509_list_id() TSRMLS_CC));
@@ -592,7 +592,7 @@ static inline int php_openssl_enable_crypto(php_stream *stream,
if (SUCCESS == php_stream_context_get_option(
stream->context, "ssl",
"capture_peer_cert_chain", &val) &&
- zend_is_true(*val)) {
+ zend_is_true(*val TSRMLS_CC)) {
zval *arr;
STACK_OF(X509) *chain;
diff --git a/ext/pcntl/pcntl.c b/ext/pcntl/pcntl.c
index b7ef4c729c..4c7f1784aa 100644
--- a/ext/pcntl/pcntl.c
+++ b/ext/pcntl/pcntl.c
@@ -499,7 +499,7 @@ PHP_MINIT_FUNCTION(pcntl)
{
php_register_signal_constants(INIT_FUNC_ARGS_PASSTHRU);
php_pcntl_register_errno_constants(INIT_FUNC_ARGS_PASSTHRU);
- php_add_tick_function(pcntl_signal_dispatch);
+ php_add_tick_function(pcntl_signal_dispatch TSRMLS_CC);
return SUCCESS;
}
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index 32e88510e7..12f23bf0e2 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -1189,7 +1189,7 @@ static xmlNodePtr to_xml_bool(encodeTypePtr type, zval *data, int style, xmlNode
xmlAddChild(parent, ret);
FIND_ZVAL_NULL(data, ret, style);
- if (zend_is_true(data)) {
+ if (zend_is_true(data TSRMLS_CC)) {
xmlNodeSetContent(ret, BAD_CAST("true"));
} else {
xmlNodeSetContent(ret, BAD_CAST("false"));
diff --git a/ext/spl/spl_array.c b/ext/spl/spl_array.c
index f41d0fb9cd..9270132ff7 100644
--- a/ext/spl/spl_array.c
+++ b/ext/spl/spl_array.c
@@ -599,7 +599,7 @@ static int spl_array_has_dimension_ex(int check_inherited, zval *object, zval *o
SEPARATE_ARG_IF_REF(offset);
zend_call_method_with_1_params(&object, Z_OBJCE_P(object), &intern->fptr_offset_has, "offsetExists", &rv, offset);
zval_ptr_dtor(&offset);
- if (rv && zend_is_true(rv)) {
+ if (rv && zend_is_true(rv TSRMLS_CC)) {
zval_ptr_dtor(&rv);
return 1;
}
@@ -620,7 +620,7 @@ static int spl_array_has_dimension_ex(int check_inherited, zval *object, zval *o
case 2:
return 1;
default:
- return zend_is_true(*tmp);
+ return zend_is_true(*tmp TSRMLS_CC);
}
}
}
@@ -643,7 +643,7 @@ static int spl_array_has_dimension_ex(int check_inherited, zval *object, zval *o
case 2:
return 1;
default:
- return zend_is_true(*tmp);
+ return zend_is_true(*tmp TSRMLS_CC);
}
}
return 0;
diff --git a/ext/spl/spl_directory.c b/ext/spl/spl_directory.c
index 5f32feaaf0..4abbdf9df8 100644
--- a/ext/spl/spl_directory.c
+++ b/ext/spl/spl_directory.c
@@ -836,7 +836,7 @@ SPL_METHOD(DirectoryIterator, seek)
int valid = 0;
zend_call_method_with_0_params(&this_ptr, Z_OBJCE_P(getThis()), &intern->u.dir.func_valid, "valid", &retval);
if (retval) {
- valid = zend_is_true(retval);
+ valid = zend_is_true(retval TSRMLS_CC);
zval_ptr_dtor(&retval);
}
if (!valid) {
@@ -1497,7 +1497,7 @@ SPL_METHOD(RecursiveDirectoryIterator, hasChildren)
spl_filesystem_object_get_file_name(intern TSRMLS_CC);
if (!allow_links && !(intern->flags & SPL_FILE_DIR_FOLLOW_SYMLINKS)) {
php_stat(intern->file_name, intern->file_name_len, FS_IS_LINK, return_value TSRMLS_CC);
- if (zend_is_true(return_value)) {
+ if (zend_is_true(return_value TSRMLS_CC)) {
RETURN_FALSE;
}
}
diff --git a/ext/spl/spl_fixedarray.c b/ext/spl/spl_fixedarray.c
index 0519edaa2b..dcd1582d60 100644
--- a/ext/spl/spl_fixedarray.c
+++ b/ext/spl/spl_fixedarray.c
@@ -511,7 +511,7 @@ static inline int spl_fixedarray_object_has_dimension_helper(spl_fixedarray_obje
if (!intern->array->elements[index]) {
retval = 0;
} else if (check_empty) {
- if (zend_is_true(intern->array->elements[index])) {
+ if (zend_is_true(intern->array->elements[index] TSRMLS_CC)) {
retval = 1;
} else {
retval = 0;
@@ -540,7 +540,7 @@ static int spl_fixedarray_object_has_dimension(zval *object, zval *offset, int c
zval_ptr_dtor(&intern->retval);
MAKE_STD_ZVAL(intern->retval);
ZVAL_ZVAL(intern->retval, rv, 1, 1);
- return zend_is_true(intern->retval);
+ return zend_is_true(intern->retval TSRMLS_CC);
}
return 0;
}
diff --git a/ext/spl/spl_iterators.c b/ext/spl/spl_iterators.c
index a89fd548c5..867f5e4e7d 100644
--- a/ext/spl/spl_iterators.c
+++ b/ext/spl/spl_iterators.c
@@ -249,7 +249,7 @@ next_step:
}
}
if (retval) {
- has_children = zend_is_true(retval);
+ has_children = zend_is_true(retval TSRMLS_CC);
zval_ptr_dtor(&retval);
if (has_children) {
if (object->max_depth == -1 || object->max_depth > object->level) {
@@ -1774,7 +1774,7 @@ static inline void spl_filter_it_fetch(zval *zthis, spl_dual_it_object *intern T
while (spl_dual_it_fetch(intern, 1 TSRMLS_CC) == SUCCESS) {
zend_call_method_with_0_params(&zthis, intern->std.ce, NULL, "accept", &retval);
if (retval) {
- if (zend_is_true(retval)) {
+ if (zend_is_true(retval TSRMLS_CC)) {
zval_ptr_dtor(&retval);
return;
}
@@ -2598,7 +2598,7 @@ static inline void spl_caching_it_next(spl_dual_it_object *intern TSRMLS_DC)
return;
}
} else {
- if (zend_is_true(retval)) {
+ if (zend_is_true(retval TSRMLS_CC)) {
zend_call_method_with_0_params(&intern->inner.zobject, intern->inner.ce, NULL, "getchildren", &zchildren);
if (EG(exception)) {
if (zchildren) {
@@ -3573,7 +3573,7 @@ static int spl_iterator_func_apply(zend_object_iterator *iter, void *puser TSRML
apply_info->count++;
zend_fcall_info_call(&apply_info->fci, &apply_info->fcc, &retval, NULL TSRMLS_CC);
if (retval) {
- result = zend_is_true(retval) ? ZEND_HASH_APPLY_KEEP : ZEND_HASH_APPLY_STOP;
+ result = zend_is_true(retval TSRMLS_CC) ? ZEND_HASH_APPLY_KEEP : ZEND_HASH_APPLY_STOP;
zval_ptr_dtor(&retval);
} else {
result = ZEND_HASH_APPLY_STOP;
diff --git a/ext/standard/array.c b/ext/standard/array.c
index e84e019690..6642bc2c7b 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -4277,7 +4277,7 @@ PHP_FUNCTION(array_filter)
fci.params = args;
if (zend_call_function(&fci, &fci_cache TSRMLS_CC) == SUCCESS && retval) {
- int retval_true = zend_is_true(retval);
+ int retval_true = zend_is_true(retval TSRMLS_CC);
zval_ptr_dtor(&retval);
if (use_type) {
@@ -4290,7 +4290,7 @@ PHP_FUNCTION(array_filter)
php_error_docref(NULL TSRMLS_CC, E_WARNING, "An error occurred while invoking the filter callback");
return;
}
- } else if (!zend_is_true(*operand)) {
+ } else if (!zend_is_true(*operand TSRMLS_CC)) {
continue;
}
diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c
index 4f50ce6038..6409ff37d8 100644
--- a/ext/standard/basic_functions.c
+++ b/ext/standard/basic_functions.c
@@ -5751,7 +5751,7 @@ PHP_FUNCTION(register_tick_function)
zend_llist_init(BG(user_tick_functions),
sizeof(user_tick_function_entry),
(llist_dtor_func_t) user_tick_function_dtor, 0);
- php_add_tick_function(run_user_tick_functions);
+ php_add_tick_function(run_user_tick_functions TSRMLS_CC);
}
for (i = 0; i < tick_fe.arg_count; i++) {
diff --git a/ext/standard/ftp_fopen_wrapper.c b/ext/standard/ftp_fopen_wrapper.c
index d6eb3b8fbc..df03772c39 100644
--- a/ext/standard/ftp_fopen_wrapper.c
+++ b/ext/standard/ftp_fopen_wrapper.c
@@ -163,7 +163,7 @@ static php_stream *php_ftp_fopen_connect(php_stream_wrapper *wrapper, const char
goto connect_errexit;
}
- php_stream_context_set(stream, context);
+ php_stream_context_set(stream, context TSRMLS_CC);
php_stream_notify_info(context, PHP_STREAM_NOTIFY_CONNECT, NULL, 0);
/* Start talking to ftp server */
@@ -571,7 +571,7 @@ php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *pa
goto errexit;
}
- php_stream_context_set(datastream, context);
+ php_stream_context_set(datastream, context TSRMLS_CC);
php_stream_notify_progress_init(context, 0, file_size);
if (use_ssl_on_data && (php_stream_xport_crypto_setup(datastream,
@@ -745,7 +745,7 @@ php_stream * php_stream_ftp_opendir(php_stream_wrapper *wrapper, const char *pat
goto opendir_errexit;
}
- php_stream_context_set(datastream, context);
+ php_stream_context_set(datastream, context TSRMLS_CC);
if (use_ssl_on_data && (php_stream_xport_crypto_setup(stream,
STREAM_CRYPTO_METHOD_SSLv23_CLIENT, NULL TSRMLS_CC) < 0 ||
diff --git a/ext/standard/http_fopen_wrapper.c b/ext/standard/http_fopen_wrapper.c
index 73776ff0b9..3ef722bde0 100644
--- a/ext/standard/http_fopen_wrapper.c
+++ b/ext/standard/http_fopen_wrapper.c
@@ -337,7 +337,7 @@ finish:
eol_detect = stream->flags & (PHP_STREAM_FLAG_DETECT_EOL | PHP_STREAM_FLAG_EOL_MAC);
stream->flags &= ~(PHP_STREAM_FLAG_DETECT_EOL | PHP_STREAM_FLAG_EOL_MAC);
- php_stream_context_set(stream, context);
+ php_stream_context_set(stream, context TSRMLS_CC);
php_stream_notify_info(context, PHP_STREAM_NOTIFY_CONNECT, NULL, 0);
@@ -682,7 +682,7 @@ finish:
response_code = 0;
}
if (context && SUCCESS==php_stream_context_get_option(context, "http", "ignore_errors", &tmpzval)) {
- ignore_errors = zend_is_true(*tmpzval);
+ ignore_errors = zend_is_true(*tmpzval TSRMLS_CC);
}
/* when we request only the header, don't fail even on error codes */
if ((options & STREAM_ONLY_GET_HEADERS) || ignore_errors) {
diff --git a/ext/standard/math.c b/ext/standard/math.c
index 2be049f200..65702ddf14 100644
--- a/ext/standard/math.c
+++ b/ext/standard/math.c
@@ -604,43 +604,7 @@ PHP_FUNCTION(pow)
return;
}
- /* make sure we're dealing with numbers */
- convert_scalar_to_number(zbase TSRMLS_CC);
- convert_scalar_to_number(zexp TSRMLS_CC);
-
- /* if both base and exponent were longs, we'll try to get a long out */
- if (Z_TYPE_P(zbase) == IS_LONG && Z_TYPE_P(zexp) == IS_LONG && Z_LVAL_P(zexp) >= 0) {
- long l1 = 1, l2 = Z_LVAL_P(zbase), i = Z_LVAL_P(zexp);
-
- if (i == 0) {
- RETURN_LONG(1L);
- } else if (l2 == 0) {
- RETURN_LONG(0);
- }
-
- /* calculate pow(long,long) in O(log exp) operations, bail if overflow */
- while (i >= 1) {
- long overflow;
- double dval = 0.0;
-
- if (i % 2) {
- --i;
- ZEND_SIGNED_MULTIPLY_LONG(l1,l2,l1,dval,overflow);
- if (overflow) RETURN_DOUBLE(dval * pow(l2,i));
- } else {
- i /= 2;
- ZEND_SIGNED_MULTIPLY_LONG(l2,l2,l2,dval,overflow);
- if (overflow) RETURN_DOUBLE((double)l1 * pow(dval,i));
- }
- if (i == 0) {
- RETURN_LONG(l1);
- }
- }
- }
- convert_to_double(zbase);
- convert_to_double(zexp);
-
- RETURN_DOUBLE(pow(Z_DVAL_P(zbase), Z_DVAL_P(zexp)));
+ pow_function(return_value, zbase, zexp TSRMLS_CC);
}
/* }}} */
diff --git a/ext/standard/tests/math/pow-operator.phpt b/ext/standard/tests/math/pow-operator.phpt
new file mode 100644
index 0000000000..f80cae1962
--- /dev/null
+++ b/ext/standard/tests/math/pow-operator.phpt
@@ -0,0 +1,22 @@
+--TEST--
+Various pow() tests
+--FILE--
+<?php // $Id$
+
+$x = 2;
+$x **= 3;
+
+$tests = <<<TESTS
+ -3 ** 2 === -9
+ (-3) **2 === 9
+ 2 ** 3 ** 2 === 512
+ (2 ** 3) ** 2 === 64
+ $x === 8
+TESTS;
+
+ echo "On failure, please mail result to php-dev@lists.php.net\n";
+ include(dirname(__FILE__) . '/../../../../tests/quicktester.inc');
+
+--EXPECT--
+On failure, please mail result to php-dev@lists.php.net
+OK
diff --git a/ext/standard/tests/math/pow_variation1.phpt b/ext/standard/tests/math/pow_variation1.phpt
index df511906b0..5576e5b493 100644
--- a/ext/standard/tests/math/pow_variation1.phpt
+++ b/ext/standard/tests/math/pow_variation1.phpt
@@ -149,7 +149,7 @@ int(0)
int(0)
-- Iteration 19 --
-float(0)
+int(0)
-- Iteration 20 --
int(0)
diff --git a/ext/standard/tests/math/pow_variation1_64bit.phpt b/ext/standard/tests/math/pow_variation1_64bit.phpt
index 24b482680b..e1986ba858 100644
--- a/ext/standard/tests/math/pow_variation1_64bit.phpt
+++ b/ext/standard/tests/math/pow_variation1_64bit.phpt
@@ -149,7 +149,7 @@ int(0)
int(0)
-- Iteration 19 --
-float(0)
+int(0)
-- Iteration 20 --
int(0)
@@ -173,4 +173,4 @@ int(0)
-- Iteration 26 --
%s
-===Done=== \ No newline at end of file
+===Done===
diff --git a/ext/standard/type.c b/ext/standard/type.c
index dcc8083e41..15bdbb06c2 100644
--- a/ext/standard/type.c
+++ b/ext/standard/type.c
@@ -186,7 +186,7 @@ PHP_FUNCTION(boolval)
return;
}
- RETURN_BOOL(zend_is_true(*val));
+ RETURN_BOOL(zend_is_true(*val TSRMLS_CC));
}
/* }}} */
diff --git a/ext/tokenizer/tests/bug60097.phpt b/ext/tokenizer/tests/bug60097.phpt
index 2116866c93..c3f417a7d5 100644
--- a/ext/tokenizer/tests/bug60097.phpt
+++ b/ext/tokenizer/tests/bug60097.phpt
@@ -17,7 +17,7 @@ array(14) {
[0]=>
array(3) {
[0]=>
- int(374)
+ int(376)
[1]=>
string(6) "<?php
"
@@ -27,7 +27,7 @@ array(14) {
[1]=>
array(3) {
[0]=>
- int(378)
+ int(380)
[1]=>
string(8) "<<<DOC1
"
@@ -37,7 +37,7 @@ array(14) {
[2]=>
array(3) {
[0]=>
- int(381)
+ int(383)
[1]=>
string(1) "{"
[2]=>
@@ -46,7 +46,7 @@ array(14) {
[3]=>
array(3) {
[0]=>
- int(310)
+ int(312)
[1]=>
string(2) "$s"
[2]=>
@@ -57,7 +57,7 @@ array(14) {
[5]=>
array(3) {
[0]=>
- int(378)
+ int(380)
[1]=>
string(8) "<<<DOC2
"
@@ -67,7 +67,7 @@ array(14) {
[6]=>
array(3) {
[0]=>
- int(379)
+ int(381)
[1]=>
string(4) "DOC2"
[2]=>
@@ -76,7 +76,7 @@ array(14) {
[7]=>
array(3) {
[0]=>
- int(377)
+ int(379)
[1]=>
string(1) "
"
@@ -90,7 +90,7 @@ array(14) {
[10]=>
array(3) {
[0]=>
- int(315)
+ int(317)
[1]=>
string(1) "
"
@@ -100,7 +100,7 @@ array(14) {
[11]=>
array(3) {
[0]=>
- int(379)
+ int(381)
[1]=>
string(4) "DOC1"
[2]=>
@@ -111,7 +111,7 @@ array(14) {
[13]=>
array(3) {
[0]=>
- int(377)
+ int(379)
[1]=>
string(1) "
"
diff --git a/ext/xsl/php_xsl.c b/ext/xsl/php_xsl.c
index 3d63dd0642..aac93cd5c9 100644
--- a/ext/xsl/php_xsl.c
+++ b/ext/xsl/php_xsl.c
@@ -57,8 +57,8 @@ zend_module_entry xsl_module_entry = {
xsl_functions,
PHP_MINIT(xsl),
PHP_MSHUTDOWN(xsl),
- PHP_RINIT(xsl), /* Replace with NULL if there's nothing to do at request start */
- PHP_RSHUTDOWN(xsl), /* Replace with NULL if there's nothing to do at request end */
+ NULL,
+ NULL,
PHP_MINFO(xsl),
#if ZEND_MODULE_API_NO >= 20010901
"0.1", /* Replace with version number for your extension */
@@ -170,6 +170,7 @@ PHP_MINIT_FUNCTION(xsl)
xsltRegisterExtModuleFunction ((const xmlChar *) "function",
(const xmlChar *) "http://php.net/xsl",
xsl_ext_function_object_php);
+ xsltSetGenericErrorFunc(NULL, php_libxml_error_handler);
REGISTER_LONG_CONSTANT("XSL_CLONE_AUTO", 0, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("XSL_CLONE_NEVER", -1, CONST_CS | CONST_PERSISTENT);
@@ -273,7 +274,7 @@ PHP_MSHUTDOWN_FUNCTION(xsl)
(const xmlChar *) "http://php.net/xsl");
xsltUnregisterExtModuleFunction ((const xmlChar *) "function",
(const xmlChar *) "http://php.net/xsl");
-
+ xsltSetGenericErrorFunc(NULL, NULL);
xsltCleanupGlobals();
UNREGISTER_INI_ENTRIES();
@@ -282,24 +283,6 @@ PHP_MSHUTDOWN_FUNCTION(xsl)
}
/* }}} */
-/* {{{ PHP_RINIT_FUNCTION
- */
-PHP_RINIT_FUNCTION(xsl)
-{
- xsltSetGenericErrorFunc(NULL, php_libxml_error_handler);
- return SUCCESS;
-}
-/* }}} */
-
-/* {{{ PHP_RSHUTDOWN_FUNCTION
- */
-PHP_RSHUTDOWN_FUNCTION(xsl)
-{
- xsltSetGenericErrorFunc(NULL, NULL);
- return SUCCESS;
-}
-/* }}} */
-
/* {{{ PHP_MINFO_FUNCTION
*/
PHP_MINFO_FUNCTION(xsl)
diff --git a/main/SAPI.c b/main/SAPI.c
index b182909c71..f9e4a9fe7f 100644
--- a/main/SAPI.c
+++ b/main/SAPI.c
@@ -999,7 +999,7 @@ SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, ch
SAPI_API int sapi_flush(TSRMLS_D)
{
if (sapi_module.flush) {
- sapi_module.flush(SG(server_context));
+ sapi_module.flush(SG(server_context) TSRMLS_CC);
return SUCCESS;
} else {
return FAILURE;
diff --git a/main/SAPI.h b/main/SAPI.h
index a2158a9590..71942f5663 100644
--- a/main/SAPI.h
+++ b/main/SAPI.h
@@ -227,7 +227,7 @@ struct _sapi_module_struct {
int (*deactivate)(TSRMLS_D);
int (*ub_write)(const char *str, unsigned int str_length TSRMLS_DC);
- void (*flush)(void *server_context);
+ void (*flush)(void *server_context TSRMLS_DC);
struct stat *(*get_stat)(TSRMLS_D);
char *(*getenv)(char *name, size_t name_len TSRMLS_DC);
diff --git a/main/main.c b/main/main.c
index 2d59c46930..ebb158ac7c 100644
--- a/main/main.c
+++ b/main/main.c
@@ -179,7 +179,7 @@ static PHP_INI_MH(OnChangeMemoryLimit)
} else {
PG(memory_limit) = 1<<30; /* effectively, no limit */
}
- return zend_set_memory_limit(PG(memory_limit));
+ return zend_set_memory_limit(PG(memory_limit) TSRMLS_CC);
}
/* }}} */
@@ -460,40 +460,6 @@ static PHP_INI_MH(OnChangeMailForceExtra)
/* defined in browscap.c */
PHP_INI_MH(OnChangeBrowscap);
-/* {{{ PHP_INI_MH
- */
-static PHP_INI_MH(OnChangeAlwaysPopulateRawPostData)
-{
- signed char *p;
-#ifndef ZTS
- char *base = (char *) mh_arg2;
-#else
- char *base;
-
- base = (char *) ts_resource(*((int *) mh_arg2));
-#endif
-
- p = (signed char *) (base+(size_t) mh_arg1);
-
- *p = zend_atol(new_value, new_value_length);
- if (new_value_length == 2 && strcasecmp("on", new_value) == 0) {
- *p = (signed char) 1;
- }
- else if (new_value_length == 3 && strcasecmp("yes", new_value) == 0) {
- *p = (signed char) 1;
- }
- else if (new_value_length == 4 && strcasecmp("true", new_value) == 0) {
- *p = (signed char) 1;
- }
- else if (new_value_length == 5 && strcasecmp("never", new_value) == 0) {
- *p = (signed char) -1;
- }
- else {
- *p = (signed char) atoi(new_value);
- }
- return SUCCESS;
-}
-/* }}} */
/* Need to be read from the environment (?):
* PHP_AUTO_PREPEND_FILE
@@ -596,7 +562,6 @@ PHP_INI_BEGIN()
STD_PHP_INI_BOOLEAN("allow_url_fopen", "1", PHP_INI_SYSTEM, OnUpdateBool, allow_url_fopen, php_core_globals, core_globals)
STD_PHP_INI_BOOLEAN("allow_url_include", "0", PHP_INI_SYSTEM, OnUpdateBool, allow_url_include, php_core_globals, core_globals)
STD_PHP_INI_BOOLEAN("enable_post_data_reading", "1", PHP_INI_SYSTEM|PHP_INI_PERDIR, OnUpdateBool, enable_post_data_reading, php_core_globals, core_globals)
- STD_PHP_INI_ENTRY("always_populate_raw_post_data", "0", PHP_INI_SYSTEM|PHP_INI_PERDIR, OnChangeAlwaysPopulateRawPostData, always_populate_raw_post_data, php_core_globals, core_globals)
STD_PHP_INI_ENTRY("realpath_cache_size", "16K", PHP_INI_SYSTEM, OnUpdateLong, realpath_cache_size_limit, virtual_cwd_globals, cwd_globals)
STD_PHP_INI_ENTRY("realpath_cache_ttl", "120", PHP_INI_SYSTEM, OnUpdateLong, realpath_cache_ttl, virtual_cwd_globals, cwd_globals)
@@ -1201,7 +1166,7 @@ static void php_error_cb(int type, const char *error_filename, const uint error_
CG(parse_error) = 0;
} else {
/* restore memory limit */
- zend_set_memory_limit(PG(memory_limit));
+ zend_set_memory_limit(PG(memory_limit) TSRMLS_CC);
efree(buffer);
zend_objects_store_mark_destructed(&EG(objects_store) TSRMLS_CC);
zend_bailout();
@@ -1828,7 +1793,7 @@ void php_request_shutdown(void *dummy)
}
} zend_end_try();
- /* 7.5 free last error information */
+ /* 8. free last error information */
if (PG(last_error_message)) {
free(PG(last_error_message));
PG(last_error_message) = NULL;
@@ -1838,34 +1803,34 @@ void php_request_shutdown(void *dummy)
PG(last_error_file) = NULL;
}
- /* 7. Shutdown scanner/executor/compiler and restore ini entries */
+ /* 9. Shutdown scanner/executor/compiler and restore ini entries */
zend_deactivate(TSRMLS_C);
- /* 8. Call all extensions post-RSHUTDOWN functions */
+ /* 10. Call all extensions post-RSHUTDOWN functions */
zend_try {
zend_post_deactivate_modules(TSRMLS_C);
} zend_end_try();
- /* 9. SAPI related shutdown (free stuff) */
+ /* 11. SAPI related shutdown (free stuff) */
zend_try {
sapi_deactivate(TSRMLS_C);
} zend_end_try();
- /* 9.5 free virtual CWD memory */
+ /* 12. free virtual CWD memory */
virtual_cwd_deactivate(TSRMLS_C);
- /* 10. Destroy stream hashes */
+ /* 13. Destroy stream hashes */
zend_try {
php_shutdown_stream_hashes(TSRMLS_C);
} zend_end_try();
- /* 11. Free Willy (here be crashes) */
+ /* 14. Free Willy (here be crashes) */
zend_try {
shutdown_memory_manager(CG(unclean_shutdown) || !report_memleaks, 0 TSRMLS_CC);
} zend_end_try();
zend_interned_strings_restore(TSRMLS_C);
- /* 12. Reset max_execution_time */
+ /* 15. Reset max_execution_time */
zend_try {
zend_unset_timeout(TSRMLS_C);
} zend_end_try();
@@ -2678,9 +2643,9 @@ PHPAPI int php_lint_script(zend_file_handle *file TSRMLS_DC)
#ifdef PHP_WIN32
/* {{{ dummy_indent
just so that this symbol gets exported... */
-PHPAPI void dummy_indent(void)
+PHPAPI void dummy_indent(TSRMLS_D)
{
- zend_indent();
+ zend_indent(TSRMLS_C);
}
/* }}} */
#endif
diff --git a/main/php.h b/main/php.h
index 8f8ad33d87..c2d0d936ca 100644
--- a/main/php.h
+++ b/main/php.h
@@ -26,7 +26,7 @@
#include <dmalloc.h>
#endif
-#define PHP_API_VERSION 20131106
+#define PHP_API_VERSION 20131218
#define PHP_HAVE_STREAMS
#define YYDEBUG 0
diff --git a/main/php_content_types.c b/main/php_content_types.c
index bc42c8094b..c8db921421 100644
--- a/main/php_content_types.c
+++ b/main/php_content_types.c
@@ -33,19 +33,6 @@ static sapi_post_entry php_post_entries[] = {
};
/* }}} */
-static zend_bool populate_raw_post_data(TSRMLS_D)
-{
- if (!SG(request_info).request_body) {
- return (zend_bool) 0;
- }
-
- if (!PG(always_populate_raw_post_data)) {
- return (zend_bool) !SG(request_info).post_entry;
- }
-
- return (zend_bool) (PG(always_populate_raw_post_data) > 0);
-}
-
/* {{{ SAPI_POST_READER_FUNC
*/
SAPI_API SAPI_POST_READER_FUNC(php_default_post_reader)
@@ -55,23 +42,6 @@ SAPI_API SAPI_POST_READER_FUNC(php_default_post_reader)
/* no post handler registered, so we just swallow the data */
sapi_read_standard_form_data(TSRMLS_C);
}
-
- if (populate_raw_post_data(TSRMLS_C)) {
- size_t length;
- char *data = NULL;
-
- php_stream_rewind(SG(request_info).request_body);
- length = php_stream_copy_to_mem(SG(request_info).request_body, &data, PHP_STREAM_COPY_ALL, 0);
- php_stream_rewind(SG(request_info).request_body);
-
- SET_VAR_STRINGL("HTTP_RAW_POST_DATA", data, length);
-
- sapi_module.sapi_error(E_DEPRECATED,
- "Automatically populating $HTTP_RAW_POST_DATA is deprecated and "
- "will be removed in a future version. To avoid this warning set "
- "'always_populate_raw_post_data' to '-1' in php.ini and use the "
- "php://input stream instead.");
- }
}
}
/* }}} */
diff --git a/main/php_globals.h b/main/php_globals.h
index cf7998b83d..b8f64d6d31 100644
--- a/main/php_globals.h
+++ b/main/php_globals.h
@@ -131,7 +131,6 @@ struct _php_core_globals {
zend_bool during_request_startup;
zend_bool allow_url_fopen;
zend_bool enable_post_data_reading;
- signed char always_populate_raw_post_data;
zend_bool report_zend_debug;
int last_error_type;
diff --git a/main/php_ini.c b/main/php_ini.c
index e20ba4ba73..f7f4686e84 100644
--- a/main/php_ini.c
+++ b/main/php_ini.c
@@ -361,7 +361,7 @@ static void php_load_zend_extension_cb(void *arg TSRMLS_DC)
int length = strlen(filename);
if (IS_ABSOLUTE_PATH(filename, length)) {
- zend_load_extension(filename);
+ zend_load_extension(filename TSRMLS_CC);
} else {
char *libpath;
char *extension_dir = INI_STR("extension_dir");
@@ -372,7 +372,7 @@ static void php_load_zend_extension_cb(void *arg TSRMLS_DC)
} else {
spprintf(&libpath, 0, "%s%c%s", extension_dir, DEFAULT_SLASH, filename);
}
- zend_load_extension(libpath);
+ zend_load_extension(libpath TSRMLS_CC);
efree(libpath);
}
}
diff --git a/main/php_ticks.c b/main/php_ticks.c
index b07f925fab..248b5a9e04 100644
--- a/main/php_ticks.c
+++ b/main/php_ticks.c
@@ -46,17 +46,13 @@ static int php_compare_tick_functions(void *elem1, void *elem2)
return (func1 == func2);
}
-PHPAPI void php_add_tick_function(void (*func)(int))
+PHPAPI void php_add_tick_function(void (*func)(int) TSRMLS_DC)
{
- TSRMLS_FETCH();
-
zend_llist_add_element(&PG(tick_functions), (void *)&func);
}
-PHPAPI void php_remove_tick_function(void (*func)(int))
+PHPAPI void php_remove_tick_function(void (*func)(int) TSRMLS_DC)
{
- TSRMLS_FETCH();
-
zend_llist_del_element(&PG(tick_functions), (void *)func,
(int(*)(void*, void*))php_compare_tick_functions);
}
@@ -69,10 +65,8 @@ static void php_tick_iterator(void *data, void *arg TSRMLS_DC)
func(*((int *)arg));
}
-void php_run_ticks(int count)
+void php_run_ticks(int count TSRMLS_DC)
{
- TSRMLS_FETCH();
-
zend_llist_apply_with_argument(&PG(tick_functions), (llist_apply_with_arg_func_t) php_tick_iterator, &count TSRMLS_CC);
}
diff --git a/main/php_ticks.h b/main/php_ticks.h
index 0f58adac6a..b511949d80 100644
--- a/main/php_ticks.h
+++ b/main/php_ticks.h
@@ -24,11 +24,11 @@
int php_startup_ticks(TSRMLS_D);
void php_deactivate_ticks(TSRMLS_D);
void php_shutdown_ticks(TSRMLS_D);
-void php_run_ticks(int count);
+void php_run_ticks(int count TSRMLS_DC);
BEGIN_EXTERN_C()
-PHPAPI void php_add_tick_function(void (*func)(int));
-PHPAPI void php_remove_tick_function(void (*func)(int));
+PHPAPI void php_add_tick_function(void (*func)(int) TSRMLS_DC);
+PHPAPI void php_remove_tick_function(void (*func)(int) TSRMLS_DC);
END_EXTERN_C()
#endif
diff --git a/main/php_variables.c b/main/php_variables.c
index f529898bf0..38cf043839 100644
--- a/main/php_variables.c
+++ b/main/php_variables.c
@@ -734,6 +734,7 @@ static zend_bool php_auto_globals_create_post(const char *name, uint name_len TS
if (PG(variables_order) &&
(strchr(PG(variables_order),'P') || strchr(PG(variables_order),'p')) &&
+ !SG(headers_sent) &&
SG(request_info).request_method &&
!strcasecmp(SG(request_info).request_method, "POST")) {
sapi_module.treat_data(PARSE_POST, NULL, NULL TSRMLS_CC);
diff --git a/main/php_version.h b/main/php_version.h
index d48bf13c6f..87c2e4ac4d 100644
--- a/main/php_version.h
+++ b/main/php_version.h
@@ -1,8 +1,8 @@
/* automatically generated by configure */
/* edit configure.in to change version number */
#define PHP_MAJOR_VERSION 5
-#define PHP_MINOR_VERSION 6
+#define PHP_MINOR_VERSION 7
#define PHP_RELEASE_VERSION 0
#define PHP_EXTRA_VERSION "-dev"
-#define PHP_VERSION "5.6.0-dev"
-#define PHP_VERSION_ID 50600
+#define PHP_VERSION "5.7.0-dev"
+#define PHP_VERSION_ID 50700
diff --git a/main/streams/php_stream_context.h b/main/streams/php_stream_context.h
index 58b298b689..5c6925a856 100644
--- a/main/streams/php_stream_context.h
+++ b/main/streams/php_stream_context.h
@@ -87,7 +87,7 @@ END_EXTERN_C()
BEGIN_EXTERN_C()
PHPAPI void php_stream_notification_notify(php_stream_context *context, int notifycode, int severity,
char *xmsg, int xcode, size_t bytes_sofar, size_t bytes_max, void * ptr TSRMLS_DC);
-PHPAPI php_stream_context *php_stream_context_set(php_stream *stream, php_stream_context *context);
+PHPAPI php_stream_context *php_stream_context_set(php_stream *stream, php_stream_context *context TSRMLS_DC);
END_EXTERN_C()
#define php_stream_notify_info(context, code, xmsg, xcode) do { if ((context) && (context)->notifier) { \
diff --git a/main/streams/streams.c b/main/streams/streams.c
index 4713db151b..4c4764c1ea 100644
--- a/main/streams/streams.c
+++ b/main/streams/streams.c
@@ -2148,10 +2148,9 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
/* }}} */
/* {{{ context API */
-PHPAPI php_stream_context *php_stream_context_set(php_stream *stream, php_stream_context *context)
+PHPAPI php_stream_context *php_stream_context_set(php_stream *stream, php_stream_context *context TSRMLS_DC)
{
php_stream_context *oldcontext = stream->context;
- TSRMLS_FETCH();
stream->context = context;
diff --git a/main/streams/transports.c b/main/streams/transports.c
index a633b059fa..f54e8e6cdf 100644
--- a/main/streams/transports.c
+++ b/main/streams/transports.c
@@ -134,7 +134,7 @@ PHPAPI php_stream *_php_stream_xport_create(const char *name, size_t namelen, in
context STREAMS_REL_CC TSRMLS_CC);
if (stream) {
- php_stream_context_set(stream, context);
+ php_stream_context_set(stream, context TSRMLS_CC);
if ((flags & STREAM_XPORT_SERVER) == 0) {
/* client */
diff --git a/main/streams/userspace.c b/main/streams/userspace.c
index 5990464a6e..7d958729e5 100644
--- a/main/streams/userspace.c
+++ b/main/streams/userspace.c
@@ -1121,7 +1121,7 @@ static int php_userstreamop_set_option(php_stream *stream, int option, int value
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s::" USERSTREAM_SET_OPTION " is not implemented!",
us->wrapper->classname);
ret = PHP_STREAM_OPTION_RETURN_ERR;
- } else if (retval && zend_is_true(retval)) {
+ } else if (retval && zend_is_true(retval TSRMLS_CC)) {
ret = PHP_STREAM_OPTION_RETURN_OK;
} else {
ret = PHP_STREAM_OPTION_RETURN_ERR;
@@ -1629,7 +1629,7 @@ static int php_userstreamop_cast(php_stream *stream, int castas, void **retptr T
us->wrapper->classname);
break;
}
- if (retval == NULL || !zend_is_true(retval)) {
+ if (retval == NULL || !zend_is_true(retval TSRMLS_CC)) {
break;
}
php_stream_from_zval_no_verify(intstream, &retval);
diff --git a/php.ini-development b/php.ini-development
index 0ca81e8ffe..137574bdee 100644
--- a/php.ini-development
+++ b/php.ini-development
@@ -682,13 +682,6 @@ default_mimetype = "text/html"
; http://php.net/default-charset
;default_charset = "UTF-8"
-; Always populate the $HTTP_RAW_POST_DATA variable. PHP's default behavior is
-; to disable this feature and it will be removed in a future version.
-; If post reading is disabled through enable_post_data_reading,
-; $HTTP_RAW_POST_DATA is *NOT* populated.
-; http://php.net/always-populate-raw-post-data
-;always_populate_raw_post_data = -1
-
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
diff --git a/php.ini-production b/php.ini-production
index 3b6f5e3cf8..3fa1788a00 100644
--- a/php.ini-production
+++ b/php.ini-production
@@ -682,13 +682,6 @@ default_mimetype = "text/html"
; http://php.net/default-charset
;default_charset = "UTF-8"
-; Always populate the $HTTP_RAW_POST_DATA variable. PHP's default behavior is
-; to disable this feature and it will be removed in a future version.
-; If post reading is disabled through enable_post_data_reading,
-; $HTTP_RAW_POST_DATA is *NOT* populated.
-; http://php.net/always-populate-raw-post-data
-;always_populate_raw_post_data = -1
-
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
diff --git a/sapi/apache/mod_php5.c b/sapi/apache/mod_php5.c
index a1e5a70e89..37252e1126 100644
--- a/sapi/apache/mod_php5.c
+++ b/sapi/apache/mod_php5.c
@@ -108,7 +108,7 @@ static int sapi_apache_ub_write(const char *str, uint str_length TSRMLS_DC)
/* {{{ sapi_apache_flush
*/
-static void sapi_apache_flush(void *server_context)
+static void sapi_apache_flush(void *server_context TSRMLS_DC)
{
if (server_context) {
#if MODULE_MAGIC_NUMBER > 19970110
diff --git a/sapi/apache2filter/sapi_apache2.c b/sapi/apache2filter/sapi_apache2.c
index da920f818c..6b56e78545 100644
--- a/sapi/apache2filter/sapi_apache2.c
+++ b/sapi/apache2filter/sapi_apache2.c
@@ -245,14 +245,13 @@ php_apache_sapi_register_variables(zval *track_vars_array TSRMLS_DC)
}
static void
-php_apache_sapi_flush(void *server_context)
+php_apache_sapi_flush(void *server_context TSRMLS_DC)
{
php_struct *ctx;
apr_bucket_brigade *bb;
apr_bucket_alloc_t *ba;
apr_bucket *b;
ap_filter_t *f; /* output filters */
- TSRMLS_FETCH();
ctx = server_context;
diff --git a/sapi/apache2handler/sapi_apache2.c b/sapi/apache2handler/sapi_apache2.c
index d2b3a327ff..37d862f889 100644
--- a/sapi/apache2handler/sapi_apache2.c
+++ b/sapi/apache2handler/sapi_apache2.c
@@ -287,11 +287,10 @@ php_apache_sapi_register_variables(zval *track_vars_array TSRMLS_DC)
}
static void
-php_apache_sapi_flush(void *server_context)
+php_apache_sapi_flush(void *server_context TSRMLS_DC)
{
php_struct *ctx;
request_rec *r;
- TSRMLS_FETCH();
ctx = server_context;
diff --git a/sapi/apache_hooks/mod_php5.c b/sapi/apache_hooks/mod_php5.c
index a069e324c1..901d3b57a3 100644
--- a/sapi/apache_hooks/mod_php5.c
+++ b/sapi/apache_hooks/mod_php5.c
@@ -253,7 +253,7 @@ static int sapi_apache_ub_write(const char *str, uint str_length TSRMLS_DC)
/* {{{ sapi_apache_flush
*/
-static void sapi_apache_flush(void *server_context)
+static void sapi_apache_flush(void *server_context TSRMLS_DC)
{
if (server_context) {
#if MODULE_MAGIC_NUMBER > 19970110
diff --git a/sapi/apache_hooks/php_apache.c b/sapi/apache_hooks/php_apache.c
index 6531ca20ee..76a4219b0a 100644
--- a/sapi/apache_hooks/php_apache.c
+++ b/sapi/apache_hooks/php_apache.c
@@ -155,15 +155,13 @@ static request_rec *get_apache_request(zval *z TSRMLS_DC)
return r;
}
-/* {{{ php_apache_request_new(request_rec *r)
+/* {{{ php_apache_request_new(request_rec *r TSRMLS_DC)
* create a new zval-instance for ApacheRequest that wraps request_rec
*/
-zval *php_apache_request_new(request_rec *r)
+zval *php_apache_request_new(request_rec *r TSRMLS_DC)
{
zval *req;
zval *addr;
-
- TSRMLS_FETCH();
MAKE_STD_ZVAL(addr);
Z_TYPE_P(addr) = IS_LONG;
@@ -1170,7 +1168,7 @@ PHP_FUNCTION(apache_request_sub_req_lookup_uri)
if (!sub_r) {
RETURN_FALSE;
}
- return_value = php_apache_request_new(sub_r);
+ return_value = php_apache_request_new(sub_r TSRMLS_CC);
}
/* }}} */
@@ -1196,7 +1194,7 @@ PHP_FUNCTION(apache_request_sub_req_lookup_file)
if (!sub_r) {
RETURN_FALSE;
}
- return_value = php_apache_request_new(sub_r);
+ return_value = php_apache_request_new(sub_r TSRMLS_CC);
}
/* }}} */
@@ -1222,7 +1220,7 @@ PHP_FUNCTION(apache_request_sub_req_method_uri)
if (!sub_r) {
RETURN_FALSE;
}
- return_value = php_apache_request_new(sub_r);
+ return_value = php_apache_request_new(sub_r TSRMLS_CC);
}
/* }}} */
diff --git a/sapi/caudium/caudium.c b/sapi/caudium/caudium.c
index e707f3576e..946f7a039e 100644
--- a/sapi/caudium/caudium.c
+++ b/sapi/caudium/caudium.c
@@ -395,11 +395,10 @@ php_caudium_sapi_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC)
* the client. Used for POST/PUT requests.
*/
-INLINE static int php_caudium_low_read_post(char *buf, uint count_bytes)
+INLINE static int php_caudium_low_read_post(char *buf, uint count_bytes TSRMLS_DC)
{
uint total_read = 0;
GET_THIS();
- TSRMLS_FETCH();
if(!MY_FD_OBJ->prog)
{
@@ -423,7 +422,7 @@ static int
php_caudium_sapi_read_post(char *buf, uint count_bytes TSRMLS_DC)
{
uint total_read = 0;
- THREAD_SAFE_RUN(total_read = php_caudium_low_read_post(buf, count_bytes), "read post");
+ THREAD_SAFE_RUN(total_read = php_caudium_low_read_post(buf, count_bytes TSRMLS_CC), "read post");
return total_read;
}
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index f464e1e92a..5b22fa580f 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -324,14 +324,14 @@ static int sapi_fcgi_ub_write(const char *str, uint str_length TSRMLS_DC)
return str_length;
}
-static void sapi_cgi_flush(void *server_context)
+static void sapi_cgi_flush(void *server_context TSRMLS_DC)
{
if (fflush(stdout) == EOF) {
php_handle_aborted_connection();
}
}
-static void sapi_fcgi_flush(void *server_context)
+static void sapi_fcgi_flush(void *server_context TSRMLS_DC)
{
fcgi_request *request = (fcgi_request*) server_context;
@@ -928,7 +928,7 @@ static int sapi_cgi_deactivate(TSRMLS_D)
php_handle_aborted_connection();
}
} else {
- sapi_cgi_flush(SG(server_context));
+ sapi_cgi_flush(SG(server_context) TSRMLS_CC);
}
}
return SUCCESS;
@@ -2240,7 +2240,7 @@ consult the installation file that came with this distribution, or visit \n\
break;
case 'z': /* load extension file */
- zend_load_extension(php_optarg);
+ zend_load_extension(php_optarg TSRMLS_CC);
break;
default:
@@ -2493,7 +2493,7 @@ consult the installation file that came with this distribution, or visit \n\
/* Zeev might want to do something with this one day */
case PHP_MODE_INDENT:
open_file_for_scanning(&file_handle TSRMLS_CC);
- zend_indent();
+ zend_indent(TSRMLS_C);
zend_file_handle_dtor(&file_handle TSRMLS_CC);
php_output_teardown();
return SUCCESS;
diff --git a/sapi/cli/php_cli.c b/sapi/cli/php_cli.c
index 9daa382eec..7c971176b6 100644
--- a/sapi/cli/php_cli.c
+++ b/sapi/cli/php_cli.c
@@ -320,7 +320,7 @@ static int sapi_cli_ub_write(const char *str, uint str_length TSRMLS_DC) /* {{{
}
/* }}} */
-static void sapi_cli_flush(void *server_context) /* {{{ */
+static void sapi_cli_flush(void *server_context TSRMLS_DC) /* {{{ */
{
/* Ignore EBADF here, it's caused by the fact that STDIN/STDOUT/STDERR streams
* are/could be closed before fflush() is called.
@@ -870,7 +870,7 @@ static int do_cli(int argc, char **argv TSRMLS_DC) /* {{{ */
break;
case 'z': /* load extension file */
- zend_load_extension(php_optarg);
+ zend_load_extension(php_optarg TSRMLS_CC);
break;
case 'H':
hide_argv = 1;
@@ -1024,7 +1024,7 @@ static int do_cli(int argc, char **argv TSRMLS_DC) /* {{{ */
/* Zeev might want to do something with this one day */
case PHP_MODE_INDENT:
open_file_for_scanning(&file_handle TSRMLS_CC);
- zend_indent();
+ zend_indent(TSRMLS_C);
zend_file_handle_dtor(file_handle.handle TSRMLS_CC);
goto out;
break;
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c
index 3f2aaf0088..2c68fa17a4 100644
--- a/sapi/cli/php_cli_server.c
+++ b/sapi/cli/php_cli_server.c
@@ -614,10 +614,9 @@ static int sapi_cli_server_ub_write(const char *str, uint str_length TSRMLS_DC)
return php_cli_server_client_send_through(client, str, str_length);
} /* }}} */
-static void sapi_cli_server_flush(void *server_context) /* {{{ */
+static void sapi_cli_server_flush(void *server_context TSRMLS_DC) /* {{{ */
{
php_cli_server_client *client = server_context;
- TSRMLS_FETCH();
if (!client) {
return;
@@ -1144,7 +1143,7 @@ static int php_cli_server_content_sender_send(php_cli_server_content_sender *sen
return 0;
} /* }}} */
-static int php_cli_server_content_sender_pull(php_cli_server_content_sender *sender, int fd, size_t *nbytes_read) /* {{{ */
+static int php_cli_server_content_sender_pull(php_cli_server_content_sender *sender, int fd, size_t *nbytes_read TSRMLS_DC) /* {{{ */
{
ssize_t _nbytes_read;
php_cli_server_chunk *chunk = php_cli_server_chunk_heap_new_self_contained(131072);
@@ -1152,7 +1151,6 @@ static int php_cli_server_content_sender_pull(php_cli_server_content_sender *sen
_nbytes_read = read(fd, chunk->data.heap.p, chunk->data.heap.len);
if (_nbytes_read < 0) {
char *errstr = get_last_error();
- TSRMLS_FETCH();
php_cli_server_logf("%s" TSRMLS_CC, errstr);
pefree(errstr, 1);
php_cli_server_chunk_dtor(chunk);
@@ -2368,7 +2366,7 @@ static int php_cli_server_send_event(php_cli_server *server, php_cli_server_clie
if (client->content_sender_initialized) {
if (client->file_fd >= 0 && !client->content_sender.buffer.first) {
size_t nbytes_read;
- if (php_cli_server_content_sender_pull(&client->content_sender, client->file_fd, &nbytes_read)) {
+ if (php_cli_server_content_sender_pull(&client->content_sender, client->file_fd, &nbytes_read TSRMLS_CC)) {
php_cli_server_close_connection(server, client TSRMLS_CC);
return FAILURE;
}
diff --git a/sapi/continuity/capi.c b/sapi/continuity/capi.c
index 953991474d..87fd9328f2 100644
--- a/sapi/continuity/capi.c
+++ b/sapi/continuity/capi.c
@@ -462,7 +462,7 @@ int phpFinit(lstTset * opt)
core_globals = ts_resource(core_globals_id);
logFmsg(0, "mod/php: PHP Interface v3 (module)");
- logFmsg(0, "mod/php: Copyright (c) 1999-2005 The PHP Group. All rights reserved.");
+ logFmsg(0, "mod/php: Copyright (c) 1999-2013 The PHP Group. All rights reserved.");
sapi_startup(&capi_sapi_module);
capi_sapi_module.startup(&capi_sapi_module);
diff --git a/sapi/embed/php_embed.c b/sapi/embed/php_embed.c
index dad54de1ae..b4fc5aaf10 100644
--- a/sapi/embed/php_embed.c
+++ b/sapi/embed/php_embed.c
@@ -79,7 +79,7 @@ static int php_embed_ub_write(const char *str, uint str_length TSRMLS_DC)
return str_length;
}
-static void php_embed_flush(void *server_context)
+static void php_embed_flush(void *server_context TSRMLS_DC)
{
if (fflush(stdout)==EOF) {
php_handle_aborted_connection();
diff --git a/sapi/fpm/fpm/fpm_main.c b/sapi/fpm/fpm/fpm_main.c
index 93090832f5..807ea8bb5d 100644
--- a/sapi/fpm/fpm/fpm_main.c
+++ b/sapi/fpm/fpm/fpm_main.c
@@ -316,7 +316,7 @@ static int sapi_cgibin_ub_write(const char *str, uint str_length TSRMLS_DC)
}
-static void sapi_cgibin_flush(void *server_context)
+static void sapi_cgibin_flush(void *server_context TSRMLS_DC)
{
/* fpm has started, let use fcgi instead of stdout */
if (fpm_is_running) {
diff --git a/sapi/litespeed/lsapi_main.c b/sapi/litespeed/lsapi_main.c
index 33ebb988a6..850433d29c 100644
--- a/sapi/litespeed/lsapi_main.c
+++ b/sapi/litespeed/lsapi_main.c
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: lsapi_main.c,v 1.57 2013/08/23 14:50:25 gwang Exp $ */
+/* $Id: lsapi_main.c,v 1.59 2013/11/18 21:14:38 gwang Exp $ */
#include "php.h"
#include "SAPI.h"
@@ -157,7 +157,7 @@ static int sapi_lsapi_ub_write(const char *str, uint str_length TSRMLS_DC)
/* {{{ sapi_lsapi_flush
*/
-static void sapi_lsapi_flush( void * server_context )
+static void sapi_lsapi_flush( void * server_context TSRMLS_DC )
{
if ( lsapi_mode ) {
if ( LSAPI_Flush() == -1) {
@@ -372,7 +372,7 @@ static void sapi_lsapi_log_message(char *message TSRMLS_DC)
static sapi_module_struct lsapi_sapi_module =
{
"litespeed",
- "LiteSpeed V6.4",
+ "LiteSpeed V6.6",
php_lsapi_startup, /* startup */
php_module_shutdown_wrapper, /* shutdown */
diff --git a/sapi/litespeed/lsapilib.c b/sapi/litespeed/lsapilib.c
index 4a9affc60f..cdd60763db 100644
--- a/sapi/litespeed/lsapilib.c
+++ b/sapi/litespeed/lsapilib.c
@@ -1211,6 +1211,7 @@ int LSAPI_IsRunning(void)
int LSAPI_InitRequest( LSAPI_Request * pReq, int fd )
{
+ int newfd;
if ( !pReq )
return -1;
memset( pReq, 0, sizeof( LSAPI_Request ) );
@@ -1224,7 +1225,14 @@ int LSAPI_InitRequest( LSAPI_Request * pReq, int fd )
pReq->m_respPktHeaderEnd = &pReq->m_respPktHeader[5];
if ( allocateRespHeaderBuf( pReq, LSAPI_INIT_RESP_HEADER_LEN ) == -1 )
return -1;
-
+
+ if ( fd == STDIN_FILENO )
+ {
+ fd = dup( fd );
+ newfd = open( "/dev/null", O_RDWR );
+ dup2( newfd, STDIN_FILENO );
+ }
+
if ( isPipe( fd ) )
{
pReq->m_fdListen = -1;
@@ -2386,6 +2394,8 @@ typedef struct _lsapi_prefork_server
int m_iAvoidFork;
lsapi_child_status * m_pChildrenStatus;
+ lsapi_child_status * m_pChildrenStatusCur;
+ lsapi_child_status * m_pChildrenStatusEnd;
}lsapi_prefork_server;
@@ -2474,11 +2484,15 @@ static void lsapi_cleanup(int signal)
static lsapi_child_status * find_child_status( int pid )
{
lsapi_child_status * pStatus = g_prefork_server->m_pChildrenStatus;
- lsapi_child_status * pEnd = g_prefork_server->m_pChildrenStatus + g_prefork_server->m_iMaxChildren * 2;
+ lsapi_child_status * pEnd = g_prefork_server->m_pChildrenStatusEnd;
while( pStatus < pEnd )
{
if ( pStatus->m_pid == pid )
+ {
+ if ( pStatus + 1 > g_prefork_server->m_pChildrenStatusCur )
+ g_prefork_server->m_pChildrenStatusCur = pStatus + 1;
return pStatus;
+ }
++pStatus;
}
return NULL;
@@ -2513,8 +2527,12 @@ static void lsapi_sigchild( int signal )
{
child_status->m_pid = 0;
--g_prefork_server->m_iCurChildren;
+
}
}
+ while(( g_prefork_server->m_pChildrenStatusCur > g_prefork_server->m_pChildrenStatus )
+ &&( g_prefork_server->m_pChildrenStatusCur[-1].m_pid == 0 ))
+ --g_prefork_server->m_pChildrenStatusCur;
}
@@ -2523,7 +2541,7 @@ static int lsapi_init_children_status()
int size = 4096;
char * pBuf;
- size = g_prefork_server->m_iMaxChildren * sizeof( lsapi_child_status ) * 2;
+ size = (g_prefork_server->m_iMaxChildren + g_prefork_server->m_iExtraChildren ) * sizeof( lsapi_child_status ) * 2;
size = (size + 4095 ) / 4096 * 4096;
pBuf =( char*) mmap( NULL, size, PROT_READ | PROT_WRITE,
MAP_ANON | MAP_SHARED, -1, 0 );
@@ -2533,7 +2551,9 @@ static int lsapi_init_children_status()
return -1;
}
memset( pBuf, 0, size );
- g_prefork_server->m_pChildrenStatus = (lsapi_child_status *)pBuf;
+ g_prefork_server->m_pChildrenStatus = (lsapi_child_status *)pBuf;
+ g_prefork_server->m_pChildrenStatusCur = (lsapi_child_status *)pBuf;
+ g_prefork_server->m_pChildrenStatusEnd = (lsapi_child_status *)pBuf + size / sizeof( lsapi_child_status );
return 0;
}
@@ -2563,7 +2583,7 @@ static void lsapi_check_child_status( long tmCur )
int dying = 0;
int count = 0;
lsapi_child_status * pStatus = g_prefork_server->m_pChildrenStatus;
- lsapi_child_status * pEnd = g_prefork_server->m_pChildrenStatus + g_prefork_server->m_iMaxChildren * 2;
+ lsapi_child_status * pEnd = g_prefork_server->m_pChildrenStatusCur;
while( pStatus < pEnd )
{
tobekilled = 0;
@@ -2576,13 +2596,15 @@ static void lsapi_check_child_status( long tmCur )
if (( g_prefork_server->m_iCurChildren - dying > g_prefork_server->m_iMaxChildren)||
( idle > g_prefork_server->m_iMaxIdleChildren ))
{
- tobekilled = SIGUSR1;
+ ++pStatus->m_iKillSent;
+ //tobekilled = SIGUSR1;
}
else
{
if (( s_max_idle_secs> 0)&&(tmCur - pStatus->m_tmWaitBegin > s_max_idle_secs + 5 ))
{
- tobekilled = SIGUSR1;
+ ++pStatus->m_iKillSent;
+ //tobekilled = SIGUSR1;
}
}
if ( !tobekilled )
@@ -2716,6 +2738,8 @@ static int lsapi_prefork_server_accept( lsapi_prefork_server * pServer, LSAPI_Re
if ( pServer->m_iCurChildren >= (pServer->m_iMaxChildren + pServer->m_iExtraChildren ) )
{
+ fprintf( stderr, "Reached max children process limit: %d, extra: %d, current: %d, please increase LSAPI_CHILDREN.\n",
+ pServer->m_iMaxChildren, pServer->m_iExtraChildren, pServer->m_iCurChildren );
usleep( 100000 );
continue;
}
@@ -2876,7 +2900,7 @@ int LSAPI_Prefork_Accept_r( LSAPI_Request * pReq )
{
if ( !g_running )
return -1;
- if (( s_pChildStatus )&&( s_pChildStatus->m_iKillSent ))
+ if ((s_req_processed)&&( s_pChildStatus )&&( s_pChildStatus->m_iKillSent ))
return -1;
FD_ZERO( &readfds );
FD_SET( fd, &readfds );
@@ -2904,7 +2928,7 @@ int LSAPI_Prefork_Accept_r( LSAPI_Request * pReq )
}
else if ( ret >= 1 )
{
- if (( s_pChildStatus )&&( s_pChildStatus->m_iKillSent ))
+ if (s_req_processed && ( s_pChildStatus )&&( s_pChildStatus->m_iKillSent ))
return -1;
if ( fd == pReq->m_fdListen )
{
@@ -3066,6 +3090,8 @@ static int lsapi_initSuEXEC()
{
if ( g_prefork_server->m_iMaxChildren < 100 )
g_prefork_server->m_iMaxChildren = 100;
+ if ( g_prefork_server->m_iExtraChildren < 1000 )
+ g_prefork_server->m_iExtraChildren = 1000;
}
}
if ( !s_defaultUid || !s_defaultGid )
diff --git a/sapi/milter/php_milter.c b/sapi/milter/php_milter.c
index 432fd806c2..e0b2d0a0af 100644
--- a/sapi/milter/php_milter.c
+++ b/sapi/milter/php_milter.c
@@ -860,10 +860,6 @@ static int sapi_milter_ub_write(const char *str, uint str_length TSRMLS_DC)
return str_length;
}
-static void sapi_milter_flush(void *server_context)
-{
-}
-
static void sapi_milter_register_variables(zval *track_vars_array TSRMLS_DC)
{
php_register_variable ("SERVER_SOFTWARE", "Sendmail Milter", track_vars_array TSRMLS_CC);
@@ -906,7 +902,7 @@ static sapi_module_struct milter_sapi_module = {
NULL, /* deactivate */
sapi_milter_ub_write, /* unbuffered write */
- sapi_milter_flush, /* flush */
+ NULL, /* flush */
NULL, /* get uid */
NULL, /* getenv */
@@ -1119,7 +1115,7 @@ int main(int argc, char *argv[])
break;
case 'z': /* load extension file */
- zend_load_extension(ap_php_optarg);
+ zend_load_extension(ap_php_optarg TSRMLS_CC);
break;
default:
diff --git a/sapi/nsapi/nsapi.c b/sapi/nsapi/nsapi.c
index ec3137ca51..5ed133c18d 100644
--- a/sapi/nsapi/nsapi.c
+++ b/sapi/nsapi/nsapi.c
@@ -467,10 +467,9 @@ static int sapi_nsapi_ub_write(const char *str, unsigned int str_length TSRMLS_D
}
/* modified version of apache2 */
-static void sapi_nsapi_flush(void *server_context)
+static void sapi_nsapi_flush(void *server_context TSRMLS_DC)
{
nsapi_request_context *rc = (nsapi_request_context *)server_context;
- TSRMLS_FETCH();
if (!rc) {
/* we have no context, so no flushing needed. This fixes a SIGSEGV on shutdown */
diff --git a/sapi/pi3web/pi3web_sapi.c b/sapi/pi3web/pi3web_sapi.c
index 4bc08e5382..0e17c0e029 100644
--- a/sapi/pi3web/pi3web_sapi.c
+++ b/sapi/pi3web/pi3web_sapi.c
@@ -385,7 +385,7 @@ MODULE_API DWORD PHP5_wrapper(LPCONTROL_BLOCK lpCB)
}
if ( open_file_for_scanning( &file_handle TSRMLS_CC ) == SUCCESS )
{
- zend_indent();
+ zend_indent(TSRMLS_C);
}
else
{
diff --git a/sapi/roxen/roxen.c b/sapi/roxen/roxen.c
index b3a64345ea..14456477b0 100644
--- a/sapi/roxen/roxen.c
+++ b/sapi/roxen/roxen.c
@@ -387,13 +387,12 @@ php_roxen_sapi_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC)
* the client. Used for POST/PUT requests.
*/
-INLINE static int php_roxen_low_read_post(char *buf, uint count_bytes)
+INLINE static int php_roxen_low_read_post(char *buf, uint count_bytes TSRMLS_DC)
{
uint total_read = 0;
#ifdef ROXEN_USE_ZTS
GET_THIS();
#endif
- TSRMLS_FETCH();
if(!MY_FD_OBJ->prog)
{
@@ -417,7 +416,7 @@ static int
php_roxen_sapi_read_post(char *buf, uint count_bytes TSRMLS_DC)
{
uint total_read = 0;
- THREAD_SAFE_RUN(total_read = php_roxen_low_read_post(buf, count_bytes), "read post");
+ THREAD_SAFE_RUN(total_read = php_roxen_low_read_post(buf, count_bytes TSRMLS_CC), "read post");
return total_read;
}
diff --git a/sapi/thttpd/thttpd.c b/sapi/thttpd/thttpd.c
index 843e4a62fb..f6ba8585b9 100644
--- a/sapi/thttpd/thttpd.c
+++ b/sapi/thttpd/thttpd.c
@@ -349,11 +349,12 @@ static zend_module_entry php_thttpd_module = {
STANDARD_MODULE_PROPERTIES
};
-static int php_thttpd_startup(sapi_module_struct *sapi_module)
+static int php_thttpd_startup(sapi_module_struct *sapi_module TSRMLS_DC)
{
#if PHP_API_VERSION >= 20020918
if (php_module_startup(sapi_module, &php_thttpd_module, 1) == FAILURE) {
#else
+ /* No TSRMLS_CC here to zend_startup_module() as 5.6 and older does not have that parameter */
if (php_module_startup(sapi_module) == FAILURE
|| zend_startup_module(&php_thttpd_module) == FAILURE) {
#endif
diff --git a/sapi/tux/php_tux.c b/sapi/tux/php_tux.c
index 55d911f8ab..9dba8efbfe 100644
--- a/sapi/tux/php_tux.c
+++ b/sapi/tux/php_tux.c
@@ -96,7 +96,7 @@ static int sapi_tux_ub_write(const char *str, uint str_length TSRMLS_DC)
return n;
}
-static int sapi_tux_send_headers(sapi_headers_struct *sapi_headers)
+static int sapi_tux_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC)
{
char buf[1024];
struct iovec *vec;
@@ -107,7 +107,6 @@ static int sapi_tux_send_headers(sapi_headers_struct *sapi_headers)
size_t len;
char *status_line;
int locate_cl;
- TSRMLS_FETCH();
max_headers = 30;
n = 1;
@@ -158,11 +157,10 @@ static int sapi_tux_send_headers(sapi_headers_struct *sapi_headers)
return SAPI_HEADER_SENT_SUCCESSFULLY;
}
-static int sapi_tux_read_post(char *buffer, uint count_bytes)
+static int sapi_tux_read_post(char *buffer, uint count_bytes TSRMLS_DC)
{
#if 0
int amount = 0;
- TSRMLS_FETCH();
TG(req)->objectlen = count_bytes;
TG(req)->object_addr = buffer;
@@ -177,10 +175,8 @@ static int sapi_tux_read_post(char *buffer, uint count_bytes)
#endif
}
-static char *sapi_tux_read_cookies(void)
+static char *sapi_tux_read_cookies(TSRMLS_D)
{
- TSRMLS_FETCH();
-
return TG(req)->cookies;
}
diff --git a/tests/basic/024.phpt b/tests/basic/024.phpt
deleted file mode 100644
index 2e046c0cd8..0000000000
--- a/tests/basic/024.phpt
+++ /dev/null
@@ -1,31 +0,0 @@
---TEST--
-Test HTTP_RAW_POST_DATA creation
---INI--
-always_populate_raw_post_data=1
-max_input_vars=1000
---POST--
-a=ABC&y=XYZ&c[]=1&c[]=2&c[a]=3
---FILE--
-<?php
-var_dump($_POST, $HTTP_RAW_POST_DATA);
-?>
---EXPECT--
-Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0
-
-Warning: Cannot modify header information - headers already sent in Unknown on line 0
-array(3) {
- ["a"]=>
- string(3) "ABC"
- ["y"]=>
- string(3) "XYZ"
- ["c"]=>
- array(3) {
- [0]=>
- string(1) "1"
- [1]=>
- string(1) "2"
- ["a"]=>
- string(1) "3"
- }
-}
-string(30) "a=ABC&y=XYZ&c[]=1&c[]=2&c[a]=3"
diff --git a/tests/basic/024_1.phpt b/tests/basic/024_1.phpt
deleted file mode 100644
index f98af82995..0000000000
--- a/tests/basic/024_1.phpt
+++ /dev/null
@@ -1,29 +0,0 @@
---TEST--
-Test HTTP_RAW_POST_DATA creation
---INI--
-always_populate_raw_post_data=-1
-max_input_vars=1000
---POST--
-a=ABC&y=XYZ&c[]=1&c[]=2&c[a]=3
---FILE--
-<?php
-var_dump($_POST, $HTTP_RAW_POST_DATA);
-?>
---EXPECTF--
-Notice: Undefined variable: HTTP_RAW_POST_DATA in %s on line %d
-array(3) {
- ["a"]=>
- string(3) "ABC"
- ["y"]=>
- string(3) "XYZ"
- ["c"]=>
- array(3) {
- [0]=>
- string(1) "1"
- [1]=>
- string(1) "2"
- ["a"]=>
- string(1) "3"
- }
-}
-NULL
diff --git a/tests/basic/026.phpt b/tests/basic/026.phpt
deleted file mode 100644
index a3e34f49f2..0000000000
--- a/tests/basic/026.phpt
+++ /dev/null
@@ -1,18 +0,0 @@
---TEST--
-Registration of HTTP_RAW_POST_DATA due to unknown content-type
---INI--
-always_populate_raw_post_data=0
---POST_RAW--
-Content-Type: unknown/type
-a=1&b=ZYX
---FILE--
-<?php
-var_dump($_POST, $HTTP_RAW_POST_DATA);
-?>
---EXPECT--
-Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0
-
-Warning: Cannot modify header information - headers already sent in Unknown on line 0
-array(0) {
-}
-string(9) "a=1&b=ZYX"
diff --git a/tests/basic/026_1.phpt b/tests/basic/026_1.phpt
deleted file mode 100644
index 527a795f67..0000000000
--- a/tests/basic/026_1.phpt
+++ /dev/null
@@ -1,16 +0,0 @@
---TEST--
-Registration of HTTP_RAW_POST_DATA due to unknown content-type
---INI--
-always_populate_raw_post_data=-1
---POST_RAW--
-Content-Type: unknown/type
-a=1&b=ZYX
---FILE--
-<?php
-var_dump($_POST, $HTTP_RAW_POST_DATA);
-?>
---EXPECTF--
-Notice: Undefined variable: HTTP_RAW_POST_DATA in %s on line %d
-array(0) {
-}
-NULL