diff options
author | Ondřej Surý <ondrej@sury.org> | 2014-04-17 11:11:51 +0200 |
---|---|---|
committer | Ondřej Surý <ondrej@sury.org> | 2014-04-17 11:11:51 +0200 |
commit | 9566c3fcaf4cfaa866ea395ee5d1a480785fef0d (patch) | |
tree | d053b8b66afe080ea2250d5fbcdfc21c243d54ab /Zend | |
parent | 30bdcf2392ef8cc7b8b4a07b49367571ae1db286 (diff) | |
download | php-9566c3fcaf4cfaa866ea395ee5d1a480785fef0d.tar.gz |
New upstream version 5.6.0~beta1+dfsgupstream/5.6.0_beta1+dfsg
Diffstat (limited to 'Zend')
-rw-r--r-- | Zend/tests/constant_expressions.phpt | 5 | ||||
-rw-r--r-- | Zend/zend_ast.c | 7 | ||||
-rw-r--r-- | Zend/zend_exceptions.c | 2 | ||||
-rw-r--r-- | Zend/zend_hash.c | 413 | ||||
-rw-r--r-- | Zend/zend_hash.h | 5 | ||||
-rw-r--r-- | Zend/zend_ini_scanner.c | 9326 | ||||
-rw-r--r-- | Zend/zend_ini_scanner_defs.h | 26 | ||||
-rw-r--r-- | Zend/zend_language_parser.c | 3281 | ||||
-rw-r--r-- | Zend/zend_language_parser.output | 5357 | ||||
-rw-r--r-- | Zend/zend_language_parser.y | 1 | ||||
-rw-r--r-- | Zend/zend_language_scanner.c | 15714 | ||||
-rw-r--r-- | Zend/zend_language_scanner_defs.h | 30 | ||||
-rw-r--r-- | Zend/zend_vm_gen.php | 2 |
13 files changed, 17162 insertions, 17007 deletions
diff --git a/Zend/tests/constant_expressions.phpt b/Zend/tests/constant_expressions.phpt index 7dea0d83f..cf6474bd6 100644 --- a/Zend/tests/constant_expressions.phpt +++ b/Zend/tests/constant_expressions.phpt @@ -35,6 +35,9 @@ const T_25 = 1 + 2 * 3; // Test for memory leaks const T_26 = "1" + 2 + "3"; +// Allow T_POW +const T_27 = 2 ** 3; + var_dump(T_1); var_dump(T_2); var_dump(T_3); @@ -61,6 +64,7 @@ var_dump(T_23); var_dump(T_24); var_dump(T_25); var_dump(T_26); +var_dump(T_27); ?> --EXPECT-- int(2) @@ -89,3 +93,4 @@ bool(false) bool(true) int(7) int(6) +int(8) diff --git a/Zend/zend_ast.c b/Zend/zend_ast.c index cf595b4d5..9a0808db9 100644 --- a/Zend/zend_ast.c +++ b/Zend/zend_ast.c @@ -107,6 +107,13 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s zval_dtor(&op1); zval_dtor(&op2); break; + case ZEND_POW: + zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC); + zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC); + pow_function(result, &op1, &op2 TSRMLS_CC); + zval_dtor(&op1); + zval_dtor(&op2); + break; case ZEND_DIV: zend_ast_evaluate(&op1, (&ast->u.child)[0], scope TSRMLS_CC); zend_ast_evaluate(&op2, (&ast->u.child)[1], scope TSRMLS_CC); diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c index 9b7d3689c..e4570269e 100644 --- a/Zend/zend_exceptions.c +++ b/Zend/zend_exceptions.c @@ -363,7 +363,7 @@ ZEND_METHOD(error_exception, getSeverity) #define TRACE_ARG_APPEND(vallen) \ *str = (char*)erealloc(*str, *len + 1 + vallen); \ - memcpy((*str) + *len - l_added + 1 + vallen, (*str) + *len - l_added + 1, l_added); + memmove((*str) + *len - l_added + 1 + vallen, (*str) + *len - l_added + 1, l_added); /* }}} */ diff --git a/Zend/zend_hash.c b/Zend/zend_hash.c index 829cd3364..309631338 100644 --- a/Zend/zend_hash.c +++ b/Zend/zend_hash.c @@ -29,18 +29,24 @@ (element)->pNext->pLast = (element); \ } -#define CONNECT_TO_GLOBAL_DLLIST(element, ht) \ - (element)->pListLast = (ht)->pListTail; \ - (ht)->pListTail = (element); \ - (element)->pListNext = NULL; \ - if ((element)->pListLast != NULL) { \ - (element)->pListLast->pListNext = (element); \ - } \ - if (!(ht)->pListHead) { \ +#define CONNECT_TO_GLOBAL_DLLIST_EX(element, ht, last, next)\ + (element)->pListLast = (last); \ + (element)->pListNext = (next); \ + if ((last) != NULL) { \ + (last)->pListNext = (element); \ + } else { \ (ht)->pListHead = (element); \ } \ - if ((ht)->pInternalPointer == NULL) { \ - (ht)->pInternalPointer = (element); \ + if ((next) != NULL) { \ + (next)->pListLast = (element); \ + } else { \ + (ht)->pListTail = (element); \ + } \ + +#define CONNECT_TO_GLOBAL_DLLIST(element, ht) \ + CONNECT_TO_GLOBAL_DLLIST_EX(element, ht, (ht)->pListTail, (Bucket *) NULL); \ + if ((ht)->pInternalPointer == NULL) { \ + (ht)->pInternalPointer = (element); \ } #if ZEND_DEBUG @@ -122,13 +128,13 @@ ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength) memcpy((p)->pData, pData, nDataSize); \ } -#define INIT_DATA(ht, p, pData, nDataSize); \ +#define INIT_DATA(ht, p, _pData, nDataSize); \ if (nDataSize == sizeof(void*)) { \ - memcpy(&(p)->pDataPtr, pData, sizeof(void *)); \ + memcpy(&(p)->pDataPtr, (_pData), sizeof(void *)); \ (p)->pData = &(p)->pDataPtr; \ } else { \ (p)->pData = (void *) pemalloc_rel(nDataSize, (ht)->persistent);\ - memcpy((p)->pData, pData, nDataSize); \ + memcpy((p)->pData, (_pData), nDataSize); \ (p)->pDataPtr=NULL; \ } @@ -141,6 +147,51 @@ ZEND_API ulong zend_hash_func(const char *arKey, uint nKeyLength) static const Bucket *uninitialized_bucket = NULL; +static zend_always_inline void i_zend_hash_bucket_delete(HashTable *ht, Bucket *p) +{ +#ifdef ZEND_SIGNALS + TSRMLS_FETCH(); +#endif + + HANDLE_BLOCK_INTERRUPTIONS(); + if (p->pLast) { + p->pLast->pNext = p->pNext; + } else { + ht->arBuckets[p->h & ht->nTableMask] = p->pNext; + } + if (p->pNext) { + p->pNext->pLast = p->pLast; + } + if (p->pListLast != NULL) { + p->pListLast->pListNext = p->pListNext; + } else { + /* Deleting the head of the list */ + ht->pListHead = p->pListNext; + } + if (p->pListNext != NULL) { + p->pListNext->pListLast = p->pListLast; + } else { + /* Deleting the tail of the list */ + ht->pListTail = p->pListLast; + } + if (ht->pInternalPointer == p) { + ht->pInternalPointer = p->pListNext; + } + ht->nNumOfElements--; + if (ht->pDestructor) { + ht->pDestructor(p->pData); + } + if (p->pData != &p->pDataPtr) { + pefree(p->pData, ht->persistent); + } + pefree(p, ht->persistent); + HANDLE_UNBLOCK_INTERRUPTIONS(); +} + +static void zend_hash_bucket_delete(HashTable *ht, Bucket *p) { + i_zend_hash_bucket_delete(ht, p); +} + ZEND_API int _zend_hash_init(HashTable *ht, uint nSize, dtor_func_t pDestructor, zend_bool persistent ZEND_FILE_LINE_DC) { uint i = 3; @@ -358,9 +409,6 @@ ZEND_API int _zend_hash_index_update_or_next_insert(HashTable *ht, ulong h, void } UPDATE_DATA(ht, p, pData, nDataSize); HANDLE_UNBLOCK_INTERRUPTIONS(); - if ((long)h >= (long)ht->nNextFreeElement) { - ht->nNextFreeElement = h < LONG_MAX ? h + 1 : LONG_MAX; - } if (pDest) { *pDest = p->pData; } @@ -424,23 +472,42 @@ ZEND_API int zend_hash_rehash(HashTable *ht) } memset(ht->arBuckets, 0, ht->nTableSize * sizeof(Bucket *)); - p = ht->pListHead; - while (p != NULL) { + for (p = ht->pListHead; p != NULL; p = p->pListNext) { nIndex = p->h & ht->nTableMask; CONNECT_TO_BUCKET_DLLIST(p, ht->arBuckets[nIndex]); ht->arBuckets[nIndex] = p; - p = p->pListNext; } return SUCCESS; } +ZEND_API void zend_hash_reindex(HashTable *ht, zend_bool only_integer_keys) { + Bucket *p; + uint nIndex; + ulong offset = 0; + + IS_CONSISTENT(ht); + if (UNEXPECTED(ht->nNumOfElements == 0)) { + return; + } + + memset(ht->arBuckets, 0, ht->nTableSize * sizeof(Bucket *)); + for (p = ht->pListHead; p != NULL; p = p->pListNext) { + if (!only_integer_keys || p->nKeyLength == 0) { + p->h = offset++; + p->nKeyLength = 0; + } + + nIndex = p->h & ht->nTableMask; + CONNECT_TO_BUCKET_DLLIST(p, ht->arBuckets[nIndex]); + ht->arBuckets[nIndex] = p; + } + ht->nNextFreeElement = offset; +} + ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint nKeyLength, ulong h, int flag) { uint nIndex; Bucket *p; -#ifdef ZEND_SIGNALS - TSRMLS_FETCH(); -#endif IS_CONSISTENT(ht); @@ -455,38 +522,7 @@ ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint n && (p->nKeyLength == nKeyLength) && ((p->nKeyLength == 0) /* Numeric index (short circuits the memcmp() check) */ || !memcmp(p->arKey, arKey, nKeyLength))) { /* String index */ - HANDLE_BLOCK_INTERRUPTIONS(); - if (p == ht->arBuckets[nIndex]) { - ht->arBuckets[nIndex] = p->pNext; - } else { - p->pLast->pNext = p->pNext; - } - if (p->pNext) { - p->pNext->pLast = p->pLast; - } - if (p->pListLast != NULL) { - p->pListLast->pListNext = p->pListNext; - } else { - /* Deleting the head of the list */ - ht->pListHead = p->pListNext; - } - if (p->pListNext != NULL) { - p->pListNext->pListLast = p->pListLast; - } else { - ht->pListTail = p->pListLast; - } - if (ht->pInternalPointer == p) { - ht->pInternalPointer = p->pListNext; - } - ht->nNumOfElements--; - if (ht->pDestructor) { - ht->pDestructor(p->pData); - } - if (p->pData != &p->pDataPtr) { - pefree(p->pData, ht->persistent); - } - pefree(p, ht->persistent); - HANDLE_UNBLOCK_INTERRUPTIONS(); + i_zend_hash_bucket_delete(ht, p); return SUCCESS; } p = p->pNext; @@ -553,73 +589,14 @@ ZEND_API void zend_hash_clean(HashTable *ht) } } -/* This function is used by the various apply() functions. - * It deletes the passed bucket, and returns the address of the - * next bucket. The hash *may* be altered during that time, the - * returned value will still be valid. - */ -static Bucket *zend_hash_apply_deleter(HashTable *ht, Bucket *p) -{ - Bucket *retval; -#ifdef ZEND_SIGNALS - TSRMLS_FETCH(); -#endif - - HANDLE_BLOCK_INTERRUPTIONS(); - if (p->pLast) { - p->pLast->pNext = p->pNext; - } else { - uint nIndex; - - nIndex = p->h & ht->nTableMask; - ht->arBuckets[nIndex] = p->pNext; - } - if (p->pNext) { - p->pNext->pLast = p->pLast; - } else { - /* Nothing to do as this list doesn't have a tail */ - } - - if (p->pListLast != NULL) { - p->pListLast->pListNext = p->pListNext; - } else { - /* Deleting the head of the list */ - ht->pListHead = p->pListNext; - } - if (p->pListNext != NULL) { - p->pListNext->pListLast = p->pListLast; - } else { - ht->pListTail = p->pListLast; - } - if (ht->pInternalPointer == p) { - ht->pInternalPointer = p->pListNext; - } - ht->nNumOfElements--; - HANDLE_UNBLOCK_INTERRUPTIONS(); - - if (ht->pDestructor) { - ht->pDestructor(p->pData); - } - if (p->pData != &p->pDataPtr) { - pefree(p->pData, ht->persistent); - } - retval = p->pListNext; - pefree(p, ht->persistent); - - return retval; -} - - ZEND_API void zend_hash_graceful_destroy(HashTable *ht) { - Bucket *p; - IS_CONSISTENT(ht); - p = ht->pListHead; - while (p != NULL) { - p = zend_hash_apply_deleter(ht, p); + while (ht->pListHead != NULL) { + zend_hash_bucket_delete(ht, ht->pListHead); } + if (ht->nTableMask) { pefree(ht->arBuckets, ht->persistent); } @@ -629,14 +606,10 @@ ZEND_API void zend_hash_graceful_destroy(HashTable *ht) ZEND_API void zend_hash_graceful_reverse_destroy(HashTable *ht) { - Bucket *p; - IS_CONSISTENT(ht); - p = ht->pListTail; - while (p != NULL) { - zend_hash_apply_deleter(ht, p); - p = ht->pListTail; + while (ht->pListTail != NULL) { + zend_hash_bucket_delete(ht, ht->pListTail); } if (ht->nTableMask) { @@ -665,12 +638,13 @@ ZEND_API void zend_hash_apply(HashTable *ht, apply_func_t apply_func TSRMLS_DC) p = ht->pListHead; while (p != NULL) { int result = apply_func(p->pData TSRMLS_CC); - + + Bucket *p_next = p->pListNext; if (result & ZEND_HASH_APPLY_REMOVE) { - p = zend_hash_apply_deleter(ht, p); - } else { - p = p->pListNext; + zend_hash_bucket_delete(ht, p); } + p = p_next; + if (result & ZEND_HASH_APPLY_STOP) { break; } @@ -690,11 +664,12 @@ ZEND_API void zend_hash_apply_with_argument(HashTable *ht, apply_func_arg_t appl while (p != NULL) { int result = apply_func(p->pData, argument TSRMLS_CC); + Bucket *p_next = p->pListNext; if (result & ZEND_HASH_APPLY_REMOVE) { - p = zend_hash_apply_deleter(ht, p); - } else { - p = p->pListNext; + zend_hash_bucket_delete(ht, p); } + p = p_next; + if (result & ZEND_HASH_APPLY_STOP) { break; } @@ -716,17 +691,20 @@ ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func p = ht->pListHead; while (p != NULL) { int result; + Bucket *p_next; + va_start(args, num_args); hash_key.arKey = p->arKey; hash_key.nKeyLength = p->nKeyLength; hash_key.h = p->h; result = apply_func(p->pData TSRMLS_CC, num_args, args, &hash_key); + p_next = p->pListNext; if (result & ZEND_HASH_APPLY_REMOVE) { - p = zend_hash_apply_deleter(ht, p); - } else { - p = p->pListNext; + zend_hash_bucket_delete(ht, p); } + p = p_next; + if (result & ZEND_HASH_APPLY_STOP) { va_end(args); break; @@ -740,7 +718,7 @@ ZEND_API void zend_hash_apply_with_arguments(HashTable *ht TSRMLS_DC, apply_func ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSRMLS_DC) { - Bucket *p, *q; + Bucket *p; IS_CONSISTENT(ht); @@ -749,11 +727,12 @@ ZEND_API void zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func TSR while (p != NULL) { int result = apply_func(p->pData TSRMLS_CC); - q = p; - p = p->pListLast; + Bucket *p_last = p->pListLast; if (result & ZEND_HASH_APPLY_REMOVE) { - zend_hash_apply_deleter(ht, q); + zend_hash_bucket_delete(ht, p); } + p = p_last; + if (result & ZEND_HASH_APPLY_STOP) { break; } @@ -1223,8 +1202,6 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const return FAILURE; } - HANDLE_BLOCK_INTERRUPTIONS(); - if (q) { if (mode != HASH_UPDATE_KEY_ANYWAY) { Bucket *r = p->pListLast; @@ -1239,73 +1216,17 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const } if (mode & found) { /* delete current bucket */ - if (p == ht->arBuckets[p->h & ht->nTableMask]) { - ht->arBuckets[p->h & ht->nTableMask] = p->pNext; - } else { - p->pLast->pNext = p->pNext; - } - if (p->pNext) { - p->pNext->pLast = p->pLast; - } - if (p->pListLast != NULL) { - p->pListLast->pListNext = p->pListNext; - } else { - /* Deleting the head of the list */ - ht->pListHead = p->pListNext; - } - if (p->pListNext != NULL) { - p->pListNext->pListLast = p->pListLast; - } else { - ht->pListTail = p->pListLast; - } - if (ht->pInternalPointer == p) { - ht->pInternalPointer = p->pListNext; - } - ht->nNumOfElements--; - if (ht->pDestructor) { - ht->pDestructor(p->pData); - } - if (p->pData != &p->pDataPtr) { - pefree(p->pData, ht->persistent); - } - pefree(p, ht->persistent); - HANDLE_UNBLOCK_INTERRUPTIONS(); + zend_hash_bucket_delete(ht, p); return FAILURE; } } + /* delete another bucket with the same key */ - if (q == ht->arBuckets[q->h & ht->nTableMask]) { - ht->arBuckets[q->h & ht->nTableMask] = q->pNext; - } else { - q->pLast->pNext = q->pNext; - } - if (q->pNext) { - q->pNext->pLast = q->pLast; - } - if (q->pListLast != NULL) { - q->pListLast->pListNext = q->pListNext; - } else { - /* Deleting the head of the list */ - ht->pListHead = q->pListNext; - } - if (q->pListNext != NULL) { - q->pListNext->pListLast = q->pListLast; - } else { - ht->pListTail = q->pListLast; - } - if (ht->pInternalPointer == q) { - ht->pInternalPointer = q->pListNext; - } - ht->nNumOfElements--; - if (ht->pDestructor) { - ht->pDestructor(q->pData); - } - if (q->pData != &q->pDataPtr) { - pefree(q->pData, ht->persistent); - } - pefree(q, ht->persistent); + zend_hash_bucket_delete(ht, q); } + HANDLE_BLOCK_INTERRUPTIONS(); + if (p->pNext) { p->pNext->pLast = p->pLast; } @@ -1332,21 +1253,12 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const q->pData = p->pData; } q->pDataPtr = p->pDataPtr; - q->pListNext = p->pListNext; - q->pListLast = p->pListLast; - if (q->pListNext) { - p->pListNext->pListLast = q; - } else { - ht->pListTail = q; - } - if (q->pListLast) { - p->pListLast->pListNext = q; - } else { - ht->pListHead = q; - } + + CONNECT_TO_GLOBAL_DLLIST_EX(q, ht, p->pListLast, p->pListNext); if (ht->pInternalPointer == p) { ht->pInternalPointer = q; } + if (pos) { *pos = q; } @@ -1377,6 +1289,75 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const } } +/* Performs an in-place splice operation on a hashtable: + * The elements between offset and offset+length are removed and the elements in list[list_count] + * are inserted in their place. The removed elements can be optionally collected into a hashtable. + * This operation reindexes the hashtable, i.e. integer keys will be zero-based and sequential, + * while string keys stay intact. The same applies to the elements inserted into the removed HT. */ +ZEND_API void _zend_hash_splice(HashTable *ht, uint nDataSize, copy_ctor_func_t pCopyConstructor, uint offset, uint length, void **list, uint list_count, HashTable *removed ZEND_FILE_LINE_DC) /* {{{ */ +{ + int pos; + Bucket *p; + + IS_CONSISTENT(ht); + CHECK_INIT(ht); + + /* Skip all elements until offset */ + for (pos = 0, p = ht->pListHead; pos < offset && p; pos++, p = p->pListNext); + + while (pos < offset + length && p) { + /* Copy removed element into HT, if it was specified */ + if (removed != NULL) { + void *new_entry; + + if (p->nKeyLength == 0) { + zend_hash_next_index_insert(removed, p->pData, sizeof(zval *), &new_entry); + } else { + zend_hash_quick_update(removed, p->arKey, p->nKeyLength, p->h, p->pData, sizeof(zval *), &new_entry); + } + + if (pCopyConstructor) { + pCopyConstructor(new_entry); + } + } + + /* Remove element */ + { + Bucket *p_next = p->pListNext; + zend_hash_bucket_delete(ht, p); + p = p_next; + } + + pos++; + } + + if (list != NULL) { + int i; + for (i = 0; i < list_count; i++) { + /* Add new element only to the global linked list, not the bucket list. + * Also use key 0 for everything, as we'll reindex the hashtable anyways. */ + Bucket *q = pemalloc_rel(sizeof(Bucket), ht->persistent); + q->arKey = NULL; + q->nKeyLength = 0; + q->h = 0; + INIT_DATA(ht, q, list[i], nDataSize); + + CONNECT_TO_GLOBAL_DLLIST_EX(q, ht, p ? p->pListLast : ht->pListTail, p); + + ht->nNumOfElements++; + + if (pCopyConstructor) { + pCopyConstructor(q->pData); + } + } + + ZEND_HASH_IF_FULL_DO_RESIZE(ht); + } + + zend_hash_reindex(ht, 1); +} +/* }}} */ + ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func, compare_func_t compar, int renumber TSRMLS_DC) { @@ -1423,15 +1404,7 @@ ZEND_API int zend_hash_sort(HashTable *ht, sort_func_t sort_func, HANDLE_UNBLOCK_INTERRUPTIONS(); if (renumber) { - p = ht->pListHead; - i=0; - while (p != NULL) { - p->nKeyLength = 0; - p->h = i++; - p = p->pListNext; - } - ht->nNextFreeElement = i; - zend_hash_rehash(ht); + zend_hash_reindex(ht, 0); } return SUCCESS; } diff --git a/Zend/zend_hash.h b/Zend/zend_hash.h index d990c1667..03f83dfb1 100644 --- a/Zend/zend_hash.h +++ b/Zend/zend_hash.h @@ -227,6 +227,11 @@ ZEND_API int zend_hash_minmax(const HashTable *ht, compare_func_t compar, int fl ZEND_API int zend_hash_num_elements(const HashTable *ht); ZEND_API int zend_hash_rehash(HashTable *ht); +ZEND_API void zend_hash_reindex(HashTable *ht, zend_bool only_integer_keys); + +ZEND_API void _zend_hash_splice(HashTable *ht, uint nDataSize, copy_ctor_func_t pCopyConstructor, uint offset, uint length, void **list, uint list_count, HashTable *removed ZEND_FILE_LINE_DC); +#define zend_hash_splice(ht, nDataSize, pCopyConstructor, offset, length, list, list_count, removed) \ + _zend_hash_splice(ht, nDataSize, pCopyConstructor, offset, length, list, list_count, removed ZEND_FILE_LINE_CC) /* * DJBX33A (Daniel J. Bernstein, Times 33 with Addition) diff --git a/Zend/zend_ini_scanner.c b/Zend/zend_ini_scanner.c index 521e98e25..c73f3cedd 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 287d7bc1f..572395497 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_language_parser.c b/Zend/zend_language_parser.c index 95764bdd7..53ef3457c 100644 --- a/Zend/zend_language_parser.c +++ b/Zend/zend_language_parser.c @@ -655,16 +655,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6073 +#define YYLAST 6153 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 163 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 227 /* YYNRULES -- Number of rules. */ -#define YYNRULES 590 +#define YYNRULES 591 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1088 +#define YYNSTATES 1090 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -766,22 +766,22 @@ static const yytype_uint16 yyprhs[] = 1326, 1327, 1330, 1332, 1333, 1335, 1337, 1338, 1340, 1342, 1344, 1346, 1348, 1350, 1352, 1354, 1356, 1358, 1360, 1364, 1367, 1371, 1373, 1378, 1382, 1384, 1386, 1388, 1392, 1395, - 1397, 1399, 1401, 1405, 1409, 1413, 1417, 1421, 1424, 1427, + 1397, 1399, 1401, 1405, 1409, 1413, 1417, 1421, 1425, 1428, 1431, 1435, 1439, 1443, 1447, 1451, 1455, 1459, 1463, 1467, - 1471, 1475, 1479, 1483, 1487, 1491, 1495, 1499, 1503, 1508, - 1514, 1517, 1520, 1524, 1526, 1528, 1530, 1532, 1536, 1539, - 1541, 1545, 1549, 1551, 1552, 1555, 1556, 1558, 1564, 1568, - 1572, 1574, 1576, 1578, 1582, 1586, 1588, 1590, 1592, 1593, - 1594, 1602, 1604, 1607, 1608, 1609, 1614, 1619, 1624, 1625, - 1628, 1630, 1632, 1633, 1635, 1638, 1642, 1646, 1648, 1653, - 1654, 1660, 1662, 1664, 1666, 1668, 1671, 1673, 1678, 1683, - 1685, 1687, 1692, 1693, 1695, 1697, 1698, 1701, 1706, 1711, - 1713, 1715, 1719, 1721, 1724, 1728, 1730, 1732, 1733, 1739, - 1740, 1741, 1744, 1750, 1754, 1758, 1760, 1767, 1772, 1777, - 1780, 1783, 1786, 1788, 1791, 1793, 1794, 1800, 1804, 1808, - 1815, 1819, 1821, 1823, 1825, 1830, 1835, 1840, 1843, 1846, - 1851, 1854, 1857, 1859, 1860, 1865, 1867, 1869, 1873, 1877, - 1881 + 1471, 1475, 1479, 1483, 1487, 1491, 1495, 1499, 1503, 1507, + 1512, 1518, 1521, 1524, 1528, 1530, 1532, 1534, 1536, 1540, + 1543, 1545, 1549, 1553, 1555, 1556, 1559, 1560, 1562, 1568, + 1572, 1576, 1578, 1580, 1582, 1586, 1590, 1592, 1594, 1596, + 1597, 1598, 1606, 1608, 1611, 1612, 1613, 1618, 1623, 1628, + 1629, 1632, 1634, 1636, 1637, 1639, 1642, 1646, 1650, 1652, + 1657, 1658, 1664, 1666, 1668, 1670, 1672, 1675, 1677, 1682, + 1687, 1689, 1691, 1696, 1697, 1699, 1701, 1702, 1705, 1710, + 1715, 1717, 1719, 1723, 1725, 1728, 1732, 1734, 1736, 1737, + 1743, 1744, 1745, 1748, 1754, 1758, 1762, 1764, 1771, 1776, + 1781, 1784, 1787, 1790, 1792, 1795, 1797, 1798, 1804, 1808, + 1812, 1819, 1823, 1825, 1827, 1829, 1834, 1839, 1844, 1847, + 1850, 1855, 1858, 1861, 1863, 1864, 1869, 1871, 1873, 1877, + 1881, 1885 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -928,54 +928,54 @@ static const yytype_int16 yyrhs[] = 160, -1, 335, -1, 388, -1, 167, -1, 149, 152, 167, -1, 152, 167, -1, 336, -1, 132, -1, 339, -1, 338, 44, 338, -1, 338, 45, 338, -1, 338, - 47, 338, -1, 338, 48, 338, -1, 338, 49, 338, - -1, 50, 338, -1, 52, 338, -1, 338, 31, 338, - -1, 338, 33, 338, -1, 338, 32, 338, -1, 338, - 43, 338, -1, 338, 42, 338, -1, 338, 46, 338, - -1, 338, 10, 338, -1, 338, 11, 338, -1, 338, - 9, 338, -1, 338, 30, 338, -1, 338, 29, 338, - -1, 338, 35, 338, -1, 338, 34, 338, -1, 338, - 37, 338, -1, 338, 36, 338, -1, 338, 38, 338, - -1, 338, 39, 338, -1, 338, 41, 338, -1, 338, - 40, 338, -1, 338, 27, 28, 338, -1, 338, 27, - 338, 28, 338, -1, 44, 338, -1, 45, 338, -1, - 154, 338, 155, -1, 75, -1, 389, -1, 387, -1, - 167, -1, 149, 152, 167, -1, 152, 167, -1, 335, - -1, 162, 379, 162, -1, 144, 379, 145, -1, 132, - -1, -1, 343, 342, -1, -1, 8, -1, 343, 8, - 337, 128, 337, -1, 343, 8, 337, -1, 337, 128, - 337, -1, 337, -1, 346, -1, 295, -1, 154, 344, - 155, -1, 154, 309, 155, -1, 349, -1, 349, -1, - 349, -1, -1, -1, 364, 127, 350, 369, 351, 358, - 352, -1, 364, -1, 352, 353, -1, -1, -1, 127, - 369, 354, 358, -1, 355, 64, 368, 160, -1, 356, - 64, 368, 160, -1, -1, 357, 254, -1, 356, -1, - 355, -1, -1, 366, -1, 373, 366, -1, 324, 148, - 359, -1, 361, 148, 359, -1, 366, -1, 362, 64, - 368, 160, -1, -1, 315, 363, 64, 368, 160, -1, - 365, -1, 362, -1, 315, -1, 366, -1, 373, 366, - -1, 360, -1, 366, 64, 368, 160, -1, 366, 157, - 344, 158, -1, 367, -1, 76, -1, 159, 157, 344, - 158, -1, -1, 344, -1, 371, -1, -1, 359, 370, - -1, 371, 64, 368, 160, -1, 371, 157, 344, 158, - -1, 372, -1, 74, -1, 157, 344, 158, -1, 159, - -1, 373, 159, -1, 374, 8, 375, -1, 375, -1, - 349, -1, -1, 129, 154, 376, 374, 155, -1, -1, - -1, 378, 342, -1, 378, 8, 344, 128, 344, -1, - 378, 8, 344, -1, 344, 128, 344, -1, 344, -1, - 378, 8, 344, 128, 33, 347, -1, 378, 8, 33, - 347, -1, 344, 128, 33, 347, -1, 33, 347, -1, - 379, 380, -1, 379, 81, -1, 380, -1, 81, 380, - -1, 76, -1, -1, 76, 64, 381, 382, 160, -1, - 76, 127, 74, -1, 146, 344, 158, -1, 146, 75, - 64, 344, 160, 158, -1, 147, 349, 158, -1, 74, - -1, 77, -1, 76, -1, 119, 154, 384, 155, -1, - 120, 154, 349, 155, -1, 120, 154, 295, 155, -1, - 7, 344, -1, 6, 344, -1, 5, 154, 344, 155, - -1, 4, 344, -1, 3, 344, -1, 386, -1, -1, - 384, 8, 385, 386, -1, 349, -1, 295, -1, 324, - 148, 74, -1, 361, 148, 74, -1, 324, 148, 122, - -1, 324, 148, 122, -1 + 47, 338, -1, 338, 63, 338, -1, 338, 48, 338, + -1, 338, 49, 338, -1, 50, 338, -1, 52, 338, + -1, 338, 31, 338, -1, 338, 33, 338, -1, 338, + 32, 338, -1, 338, 43, 338, -1, 338, 42, 338, + -1, 338, 46, 338, -1, 338, 10, 338, -1, 338, + 11, 338, -1, 338, 9, 338, -1, 338, 30, 338, + -1, 338, 29, 338, -1, 338, 35, 338, -1, 338, + 34, 338, -1, 338, 37, 338, -1, 338, 36, 338, + -1, 338, 38, 338, -1, 338, 39, 338, -1, 338, + 41, 338, -1, 338, 40, 338, -1, 338, 27, 28, + 338, -1, 338, 27, 338, 28, 338, -1, 44, 338, + -1, 45, 338, -1, 154, 338, 155, -1, 75, -1, + 389, -1, 387, -1, 167, -1, 149, 152, 167, -1, + 152, 167, -1, 335, -1, 162, 379, 162, -1, 144, + 379, 145, -1, 132, -1, -1, 343, 342, -1, -1, + 8, -1, 343, 8, 337, 128, 337, -1, 343, 8, + 337, -1, 337, 128, 337, -1, 337, -1, 346, -1, + 295, -1, 154, 344, 155, -1, 154, 309, 155, -1, + 349, -1, 349, -1, 349, -1, -1, -1, 364, 127, + 350, 369, 351, 358, 352, -1, 364, -1, 352, 353, + -1, -1, -1, 127, 369, 354, 358, -1, 355, 64, + 368, 160, -1, 356, 64, 368, 160, -1, -1, 357, + 254, -1, 356, -1, 355, -1, -1, 366, -1, 373, + 366, -1, 324, 148, 359, -1, 361, 148, 359, -1, + 366, -1, 362, 64, 368, 160, -1, -1, 315, 363, + 64, 368, 160, -1, 365, -1, 362, -1, 315, -1, + 366, -1, 373, 366, -1, 360, -1, 366, 64, 368, + 160, -1, 366, 157, 344, 158, -1, 367, -1, 76, + -1, 159, 157, 344, 158, -1, -1, 344, -1, 371, + -1, -1, 359, 370, -1, 371, 64, 368, 160, -1, + 371, 157, 344, 158, -1, 372, -1, 74, -1, 157, + 344, 158, -1, 159, -1, 373, 159, -1, 374, 8, + 375, -1, 375, -1, 349, -1, -1, 129, 154, 376, + 374, 155, -1, -1, -1, 378, 342, -1, 378, 8, + 344, 128, 344, -1, 378, 8, 344, -1, 344, 128, + 344, -1, 344, -1, 378, 8, 344, 128, 33, 347, + -1, 378, 8, 33, 347, -1, 344, 128, 33, 347, + -1, 33, 347, -1, 379, 380, -1, 379, 81, -1, + 380, -1, 81, 380, -1, 76, -1, -1, 76, 64, + 381, 382, 160, -1, 76, 127, 74, -1, 146, 344, + 158, -1, 146, 75, 64, 344, 160, 158, -1, 147, + 349, 158, -1, 74, -1, 77, -1, 76, -1, 119, + 154, 384, 155, -1, 120, 154, 349, 155, -1, 120, + 154, 295, 155, -1, 7, 344, -1, 6, 344, -1, + 5, 154, 344, 155, -1, 4, 344, -1, 3, 344, + -1, 386, -1, -1, 384, 8, 385, 386, -1, 349, + -1, 295, -1, 324, 148, 74, -1, 361, 148, 74, + -1, 324, 148, 122, -1, 324, 148, 122, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -1028,19 +1028,19 @@ static const yytype_uint16 yyrline[] = 1001, 1002, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, - 1034, 1035, 1036, 1041, 1042, 1043, 1044, 1045, 1046, 1047, - 1048, 1049, 1050, 1055, 1056, 1059, 1061, 1065, 1066, 1067, - 1068, 1072, 1073, 1077, 1078, 1083, 1088, 1093, 1098, 1099, - 1098, 1101, 1105, 1106, 1111, 1111, 1115, 1116, 1120, 1120, - 1125, 1126, 1127, 1131, 1132, 1136, 1137, 1142, 1146, 1147, - 1147, 1152, 1153, 1154, 1159, 1160, 1161, 1165, 1166, 1167, - 1172, 1173, 1177, 1178, 1183, 1184, 1184, 1188, 1189, 1190, - 1194, 1195, 1199, 1200, 1204, 1205, 1210, 1211, 1211, 1212, - 1217, 1218, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, - 1233, 1234, 1235, 1236, 1242, 1243, 1243, 1244, 1245, 1246, - 1247, 1252, 1253, 1254, 1259, 1260, 1261, 1262, 1263, 1264, - 1265, 1266, 1270, 1271, 1271, 1275, 1276, 1280, 1281, 1285, - 1289 + 1034, 1035, 1036, 1037, 1042, 1043, 1044, 1045, 1046, 1047, + 1048, 1049, 1050, 1051, 1056, 1057, 1060, 1062, 1066, 1067, + 1068, 1069, 1073, 1074, 1078, 1079, 1084, 1089, 1094, 1099, + 1100, 1099, 1102, 1106, 1107, 1112, 1112, 1116, 1117, 1121, + 1121, 1126, 1127, 1128, 1132, 1133, 1137, 1138, 1143, 1147, + 1148, 1148, 1153, 1154, 1155, 1160, 1161, 1162, 1166, 1167, + 1168, 1173, 1174, 1178, 1179, 1184, 1185, 1185, 1189, 1190, + 1191, 1195, 1196, 1200, 1201, 1205, 1206, 1211, 1212, 1212, + 1213, 1218, 1219, 1223, 1224, 1225, 1226, 1227, 1228, 1229, + 1230, 1234, 1235, 1236, 1237, 1243, 1244, 1244, 1245, 1246, + 1247, 1248, 1253, 1254, 1255, 1260, 1261, 1262, 1263, 1264, + 1265, 1266, 1267, 1271, 1272, 1272, 1276, 1277, 1281, 1282, + 1286, 1290 }; #endif @@ -1253,19 +1253,19 @@ static const yytype_uint16 yyr1[] = 338, 338, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, - 339, 339, 339, 340, 340, 340, 340, 340, 340, 340, - 340, 340, 340, 341, 341, 342, 342, 343, 343, 343, - 343, 344, 344, 345, 345, 346, 347, 348, 350, 351, - 349, 349, 352, 352, 354, 353, 355, 355, 357, 356, - 358, 358, 358, 359, 359, 360, 360, 361, 362, 363, - 362, 364, 364, 364, 365, 365, 365, 366, 366, 366, - 367, 367, 368, 368, 369, 370, 369, 371, 371, 371, - 372, 372, 373, 373, 374, 374, 375, 376, 375, 375, - 377, 377, 378, 378, 378, 378, 378, 378, 378, 378, - 379, 379, 379, 379, 380, 381, 380, 380, 380, 380, - 380, 382, 382, 382, 383, 383, 383, 383, 383, 383, - 383, 383, 384, 385, 384, 386, 386, 387, 387, 388, - 389 + 339, 339, 339, 339, 340, 340, 340, 340, 340, 340, + 340, 340, 340, 340, 341, 341, 342, 342, 343, 343, + 343, 343, 344, 344, 345, 345, 346, 347, 348, 350, + 351, 349, 349, 352, 352, 354, 353, 355, 355, 357, + 356, 358, 358, 358, 359, 359, 360, 360, 361, 362, + 363, 362, 364, 364, 364, 365, 365, 365, 366, 366, + 366, 367, 367, 368, 368, 369, 370, 369, 371, 371, + 371, 372, 372, 373, 373, 374, 374, 375, 376, 375, + 375, 377, 377, 378, 378, 378, 378, 378, 378, 378, + 378, 379, 379, 379, 379, 380, 381, 380, 380, 380, + 380, 380, 382, 382, 382, 383, 383, 383, 383, 383, + 383, 383, 383, 384, 385, 384, 386, 386, 387, 387, + 388, 389 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1315,22 +1315,22 @@ static const yytype_uint8 yyr2[] = 0, 2, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 3, 1, 4, 3, 1, 1, 1, 3, 2, 1, - 1, 1, 3, 3, 3, 3, 3, 2, 2, 3, + 1, 1, 3, 3, 3, 3, 3, 3, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 4, 5, - 2, 2, 3, 1, 1, 1, 1, 3, 2, 1, - 3, 3, 1, 0, 2, 0, 1, 5, 3, 3, - 1, 1, 1, 3, 3, 1, 1, 1, 0, 0, - 7, 1, 2, 0, 0, 4, 4, 4, 0, 2, - 1, 1, 0, 1, 2, 3, 3, 1, 4, 0, - 5, 1, 1, 1, 1, 2, 1, 4, 4, 1, - 1, 4, 0, 1, 1, 0, 2, 4, 4, 1, - 1, 3, 1, 2, 3, 1, 1, 0, 5, 0, - 0, 2, 5, 3, 3, 1, 6, 4, 4, 2, - 2, 2, 1, 2, 1, 0, 5, 3, 3, 6, - 3, 1, 1, 1, 4, 4, 4, 2, 2, 4, - 2, 2, 1, 0, 4, 1, 1, 3, 3, 3, - 3 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, + 5, 2, 2, 3, 1, 1, 1, 1, 3, 2, + 1, 3, 3, 1, 0, 2, 0, 1, 5, 3, + 3, 1, 1, 1, 3, 3, 1, 1, 1, 0, + 0, 7, 1, 2, 0, 0, 4, 4, 4, 0, + 2, 1, 1, 0, 1, 2, 3, 3, 1, 4, + 0, 5, 1, 1, 1, 1, 2, 1, 4, 4, + 1, 1, 4, 0, 1, 1, 0, 2, 4, 4, + 1, 1, 3, 1, 2, 3, 1, 1, 0, 5, + 0, 0, 2, 5, 3, 3, 1, 6, 4, 4, + 2, 2, 2, 1, 2, 1, 0, 5, 3, 3, + 6, 3, 1, 1, 1, 4, 4, 4, 2, 2, + 4, 2, 2, 1, 0, 4, 1, 1, 3, 3, + 3, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1340,1514 +1340,1530 @@ static const yytype_uint16 yydefact[] = { 5, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 357, 0, 0, 0, 0, 350, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 550, 0, 0, 410, - 0, 418, 419, 6, 473, 530, 80, 420, 0, 60, + 0, 0, 0, 0, 0, 0, 551, 0, 0, 410, + 0, 418, 419, 6, 474, 531, 80, 420, 0, 60, 57, 0, 0, 89, 0, 0, 0, 0, 371, 0, 0, 92, 0, 0, 0, 0, 0, 394, 0, 0, - 0, 0, 128, 130, 134, 0, 0, 482, 424, 425, + 0, 0, 128, 130, 134, 0, 0, 483, 424, 425, 426, 421, 422, 0, 0, 427, 423, 0, 0, 91, - 43, 542, 413, 0, 476, 4, 0, 8, 48, 9, - 10, 116, 117, 0, 0, 333, 492, 0, 353, 354, - 118, 523, 0, 479, 352, 0, 332, 491, 0, 495, - 392, 526, 0, 522, 501, 521, 524, 529, 0, 341, - 475, 474, 357, 6, 394, 0, 118, 581, 580, 0, - 578, 577, 356, 492, 0, 495, 319, 320, 321, 322, + 43, 543, 413, 0, 477, 4, 0, 8, 48, 9, + 10, 116, 117, 0, 0, 333, 493, 0, 353, 354, + 118, 524, 0, 480, 352, 0, 332, 492, 0, 496, + 392, 527, 0, 523, 502, 522, 525, 530, 0, 341, + 476, 475, 357, 6, 394, 0, 118, 582, 581, 0, + 579, 578, 356, 493, 0, 496, 319, 320, 321, 322, 0, 348, 347, 346, 345, 344, 343, 342, 394, 0, - 0, 378, 0, 297, 497, 0, 295, 0, 555, 0, - 485, 281, 0, 0, 395, 401, 273, 402, 0, 406, - 524, 0, 0, 349, 412, 0, 51, 49, 532, 0, + 0, 378, 0, 297, 498, 0, 295, 0, 556, 0, + 486, 281, 0, 0, 395, 401, 273, 402, 0, 406, + 525, 0, 0, 349, 412, 0, 51, 49, 533, 0, 256, 0, 0, 257, 0, 0, 67, 69, 0, 71, - 0, 0, 0, 73, 492, 0, 495, 0, 0, 0, + 0, 0, 0, 73, 493, 0, 496, 0, 0, 0, 0, 0, 23, 0, 22, 199, 0, 0, 198, 131, - 129, 204, 0, 118, 0, 0, 0, 0, 275, 550, - 564, 0, 429, 0, 0, 0, 562, 0, 15, 0, - 478, 333, 0, 0, 41, 0, 414, 0, 415, 0, - 0, 0, 0, 0, 20, 132, 126, 76, 532, 532, + 129, 204, 0, 118, 0, 0, 0, 0, 275, 551, + 565, 0, 429, 0, 0, 0, 563, 0, 15, 0, + 479, 333, 0, 0, 41, 0, 414, 0, 415, 0, + 0, 0, 0, 0, 20, 132, 126, 76, 533, 533, 119, 358, 0, 0, 302, 0, 304, 336, 298, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 296, 294, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 532, - 498, 532, 0, 543, 525, 358, 0, 0, 351, 0, - 382, 0, 0, 559, 496, 0, 370, 486, 551, 0, - 397, 0, 416, 0, 403, 525, 411, 54, 0, 533, - 0, 0, 79, 0, 58, 0, 258, 261, 492, 495, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 533, + 499, 533, 0, 544, 526, 358, 0, 0, 351, 0, + 382, 0, 0, 560, 497, 0, 370, 487, 552, 0, + 397, 0, 416, 0, 403, 526, 411, 54, 0, 534, + 0, 0, 79, 0, 58, 0, 258, 261, 493, 496, 0, 0, 70, 72, 96, 0, 74, 75, 43, 95, 0, 29, 0, 28, 0, 35, 0, 34, 25, 0, - 0, 17, 0, 200, 495, 0, 77, 0, 0, 78, - 360, 0, 113, 115, 492, 495, 0, 582, 492, 495, - 0, 549, 0, 565, 0, 428, 563, 473, 0, 0, - 561, 481, 560, 477, 5, 12, 13, 0, 334, 494, - 493, 50, 0, 0, 355, 480, 7, 0, 379, 0, - 0, 124, 135, 0, 0, 122, 0, 532, 587, 590, - 0, 515, 513, 384, 0, 0, 306, 0, 339, 0, + 0, 17, 0, 200, 496, 0, 77, 0, 0, 78, + 360, 0, 113, 115, 493, 496, 0, 583, 493, 496, + 0, 550, 0, 566, 0, 428, 564, 474, 0, 0, + 562, 482, 561, 478, 5, 12, 13, 0, 334, 495, + 494, 50, 0, 0, 355, 481, 7, 0, 379, 0, + 0, 124, 135, 0, 0, 122, 0, 533, 588, 591, + 0, 516, 514, 384, 0, 0, 306, 0, 339, 0, 0, 0, 307, 309, 308, 324, 323, 326, 325, 327, 329, 330, 328, 318, 317, 311, 312, 310, 313, 315, 316, 331, 314, 0, 277, 285, 293, 292, 291, 290, - 289, 288, 287, 286, 284, 283, 282, 393, 588, 516, - 388, 0, 0, 0, 0, 579, 492, 495, 380, 540, - 0, 554, 0, 553, 396, 515, 417, 274, 516, 0, + 289, 288, 287, 286, 284, 283, 282, 393, 589, 517, + 388, 0, 0, 0, 0, 580, 493, 496, 380, 541, + 0, 555, 0, 554, 396, 516, 417, 274, 517, 0, 43, 52, 368, 255, 61, 0, 63, 259, 86, 83, - 0, 0, 159, 159, 68, 0, 0, 0, 0, 483, + 0, 0, 159, 159, 68, 0, 0, 0, 0, 484, 420, 0, 440, 0, 0, 0, 0, 436, 0, 434, 439, 40, 431, 441, 435, 41, 31, 0, 0, 18, 37, 0, 0, 19, 0, 24, 21, 0, 197, 205, - 202, 0, 0, 0, 583, 574, 576, 575, 11, 0, - 546, 0, 545, 369, 0, 567, 0, 568, 570, 0, - 3, 5, 383, 270, 0, 42, 44, 45, 46, 531, - 0, 0, 188, 0, 191, 492, 0, 495, 0, 0, + 202, 0, 0, 0, 584, 575, 577, 576, 11, 0, + 547, 0, 546, 369, 0, 568, 0, 569, 571, 0, + 3, 5, 383, 270, 0, 42, 44, 45, 46, 532, + 0, 0, 188, 0, 191, 493, 0, 496, 0, 0, 0, 398, 133, 137, 0, 0, 367, 366, 0, 184, - 0, 0, 0, 0, 514, 303, 305, 0, 0, 299, - 301, 0, 278, 0, 0, 518, 535, 499, 534, 539, - 527, 528, 558, 557, 0, 404, 41, 168, 0, 43, + 0, 0, 0, 0, 515, 303, 305, 0, 0, 299, + 301, 0, 278, 0, 0, 519, 536, 500, 535, 540, + 528, 529, 559, 558, 0, 404, 41, 168, 0, 43, 166, 59, 257, 0, 0, 0, 0, 0, 0, 159, - 0, 159, 0, 470, 471, 447, 448, 490, 0, 485, - 483, 0, 0, 438, 0, 0, 0, 0, 0, 0, + 0, 159, 0, 471, 472, 448, 449, 491, 0, 486, + 484, 0, 0, 438, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 97, 0, 30, 27, 0, 36, 33, 26, 201, - 0, 184, 114, 82, 0, 547, 549, 0, 571, 573, - 572, 0, 0, 381, 16, 3, 335, 0, 0, 195, - 196, 0, 189, 190, 39, 0, 400, 0, 0, 136, - 139, 207, 184, 185, 186, 0, 178, 180, 118, 187, - 520, 541, 387, 385, 340, 337, 279, 391, 389, 536, - 512, 532, 0, 0, 552, 408, 171, 174, 0, 41, - 0, 260, 0, 0, 141, 143, 141, 153, 0, 43, - 151, 90, 0, 0, 0, 0, 0, 155, 0, 433, - 486, 484, 0, 437, 472, 430, 589, 457, 455, 456, - 0, 0, 459, 458, 449, 451, 450, 461, 460, 463, - 462, 464, 465, 467, 466, 453, 452, 442, 443, 454, - 444, 445, 446, 0, 93, 32, 38, 203, 0, 584, - 549, 544, 0, 566, 0, 14, 532, 0, 269, 268, - 272, 263, 0, 192, 399, 138, 207, 0, 239, 0, - 372, 184, 120, 0, 416, 511, 510, 0, 503, 0, - 0, 556, 405, 176, 0, 0, 53, 62, 0, 64, - 144, 145, 0, 0, 0, 0, 41, 0, 157, 0, - 164, 165, 162, 156, 489, 488, 432, 468, 0, 98, - 103, 372, 0, 276, 569, 0, 504, 262, 532, 0, - 47, 239, 140, 0, 0, 243, 244, 245, 248, 247, - 246, 238, 127, 206, 211, 208, 0, 237, 241, 0, - 0, 0, 0, 181, 121, 0, 338, 280, 532, 532, - 509, 500, 537, 538, 0, 407, 0, 0, 0, 169, - 175, 167, 257, 549, 142, 87, 84, 154, 0, 158, - 160, 43, 0, 469, 0, 104, 94, 0, 548, 265, - 512, 0, 267, 125, 0, 0, 215, 0, 118, 242, - 0, 210, 43, 0, 43, 182, 0, 0, 502, 409, - 0, 43, 0, 0, 0, 0, 0, 0, 152, 43, - 41, 487, 99, 0, 43, 505, 264, 0, 0, 217, - 219, 214, 251, 0, 0, 0, 41, 0, 376, 0, - 41, 0, 506, 507, 172, 41, 56, 170, 65, 146, - 43, 149, 88, 85, 41, 0, 43, 41, 254, 216, - 6, 0, 220, 221, 0, 0, 229, 0, 0, 0, - 0, 209, 212, 0, 123, 377, 0, 373, 359, 183, - 43, 0, 41, 0, 41, 361, 218, 222, 223, 233, - 0, 224, 0, 252, 249, 0, 253, 0, 374, 41, - 43, 147, 66, 0, 100, 105, 0, 232, 225, 226, - 230, 0, 184, 375, 41, 150, 0, 231, 0, 250, - 0, 0, 43, 227, 0, 148, 41, 235, 43, 213, - 101, 41, 107, 236, 0, 102, 106, 108, 0, 109, - 110, 0, 0, 111, 0, 43, 41, 112 + 0, 0, 97, 0, 30, 27, 0, 36, 33, 26, + 201, 0, 184, 114, 82, 0, 548, 550, 0, 572, + 574, 573, 0, 0, 381, 16, 3, 335, 0, 0, + 195, 196, 0, 189, 190, 39, 0, 400, 0, 0, + 136, 139, 207, 184, 185, 186, 0, 178, 180, 118, + 187, 521, 542, 387, 385, 340, 337, 279, 391, 389, + 537, 513, 533, 0, 0, 553, 408, 171, 174, 0, + 41, 0, 260, 0, 0, 141, 143, 141, 153, 0, + 43, 151, 90, 0, 0, 0, 0, 0, 155, 0, + 433, 487, 485, 0, 437, 473, 430, 590, 458, 456, + 457, 0, 0, 460, 459, 450, 452, 451, 462, 461, + 464, 463, 465, 466, 468, 467, 454, 453, 442, 443, + 455, 444, 446, 447, 445, 0, 93, 32, 38, 203, + 0, 585, 550, 545, 0, 567, 0, 14, 533, 0, + 269, 268, 272, 263, 0, 192, 399, 138, 207, 0, + 239, 0, 372, 184, 120, 0, 416, 512, 511, 0, + 504, 0, 0, 557, 405, 176, 0, 0, 53, 62, + 0, 64, 144, 145, 0, 0, 0, 0, 41, 0, + 157, 0, 164, 165, 162, 156, 490, 489, 432, 469, + 0, 98, 103, 372, 0, 276, 570, 0, 505, 262, + 533, 0, 47, 239, 140, 0, 0, 243, 244, 245, + 248, 247, 246, 238, 127, 206, 211, 208, 0, 237, + 241, 0, 0, 0, 0, 181, 121, 0, 338, 280, + 533, 533, 510, 501, 538, 539, 0, 407, 0, 0, + 0, 169, 175, 167, 257, 550, 142, 87, 84, 154, + 0, 158, 160, 43, 0, 470, 0, 104, 94, 0, + 549, 265, 513, 0, 267, 125, 0, 0, 215, 0, + 118, 242, 0, 210, 43, 0, 43, 182, 0, 0, + 503, 409, 0, 43, 0, 0, 0, 0, 0, 0, + 152, 43, 41, 488, 99, 0, 43, 506, 264, 0, + 0, 217, 219, 214, 251, 0, 0, 0, 41, 0, + 376, 0, 41, 0, 507, 508, 172, 41, 56, 170, + 65, 146, 43, 149, 88, 85, 41, 0, 43, 41, + 254, 216, 6, 0, 220, 221, 0, 0, 229, 0, + 0, 0, 0, 209, 212, 0, 123, 377, 0, 373, + 359, 183, 43, 0, 41, 0, 41, 361, 218, 222, + 223, 233, 0, 224, 0, 252, 249, 0, 253, 0, + 374, 41, 43, 147, 66, 0, 100, 105, 0, 232, + 225, 226, 230, 0, 184, 375, 41, 150, 0, 231, + 0, 250, 0, 0, 43, 227, 0, 148, 41, 235, + 43, 213, 101, 41, 107, 236, 0, 102, 106, 108, + 0, 109, 110, 0, 0, 111, 0, 43, 41, 112 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 1, 2, 4, 84, 85, 561, 394, 203, 204, - 352, 353, 356, 357, 86, 234, 402, 565, 991, 88, - 328, 617, 490, 736, 182, 495, 181, 618, 622, 912, - 1021, 341, 625, 957, 624, 956, 185, 197, 860, 794, - 924, 995, 1056, 1072, 926, 963, 1075, 1076, 1077, 1081, - 1084, 371, 372, 89, 90, 251, 895, 91, 588, 92, - 583, 412, 93, 411, 94, 585, 708, 709, 843, 744, - 913, 1042, 992, 751, 501, 504, 630, 959, 921, 852, - 621, 737, 953, 833, 1020, 836, 908, 715, 716, 717, - 718, 486, 573, 574, 207, 208, 212, 818, 883, 937, - 1035, 884, 935, 971, 1001, 1002, 1003, 1004, 1048, 1005, - 1006, 1007, 1046, 1069, 885, 886, 887, 888, 973, 889, - 179, 335, 336, 623, 808, 809, 810, 869, 696, 697, - 95, 322, 96, 381, 824, 430, 431, 425, 427, 563, - 429, 823, 597, 140, 416, 541, 97, 98, 99, 126, - 892, 979, 101, 242, 559, 397, 593, 592, 604, 603, - 297, 102, 719, 166, 167, 489, 735, 832, 905, 173, + 352, 353, 356, 357, 86, 234, 402, 565, 993, 88, + 328, 617, 490, 737, 182, 495, 181, 618, 622, 914, + 1023, 341, 625, 959, 624, 958, 185, 197, 862, 796, + 926, 997, 1058, 1074, 928, 965, 1077, 1078, 1079, 1083, + 1086, 371, 372, 89, 90, 251, 897, 91, 588, 92, + 583, 412, 93, 411, 94, 585, 709, 710, 845, 745, + 915, 1044, 994, 752, 501, 504, 630, 961, 923, 854, + 621, 738, 955, 835, 1022, 838, 910, 716, 717, 718, + 719, 486, 573, 574, 207, 208, 212, 820, 885, 939, + 1037, 886, 937, 973, 1003, 1004, 1005, 1006, 1050, 1007, + 1008, 1009, 1048, 1071, 887, 888, 889, 890, 975, 891, + 179, 335, 336, 623, 810, 811, 812, 871, 697, 698, + 95, 322, 96, 381, 826, 430, 431, 425, 427, 563, + 429, 825, 597, 140, 416, 541, 97, 98, 99, 126, + 894, 981, 101, 242, 559, 397, 593, 592, 604, 603, + 297, 102, 720, 166, 167, 489, 736, 834, 907, 173, 237, 487, 103, 520, 637, 522, 523, 104, 638, 318, - 639, 105, 106, 107, 313, 108, 109, 472, 730, 901, - 811, 930, 825, 826, 827, 828, 110, 111, 112, 113, - 252, 114, 115, 116, 117, 330, 607, 729, 608, 609, - 118, 551, 552, 800, 159, 160, 225, 226, 554, 691, - 119, 376, 684, 377, 120, 524, 121 + 639, 105, 106, 107, 313, 108, 109, 472, 731, 903, + 813, 932, 827, 828, 829, 830, 110, 111, 112, 113, + 252, 114, 115, 116, 117, 330, 607, 730, 608, 609, + 118, 551, 552, 802, 159, 160, 225, 226, 554, 692, + 119, 376, 685, 377, 120, 524, 121 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -860 +#define YYPACT_NINF -864 static const yytype_int16 yypact[] = { - -860, 79, 81, -860, 1941, 4371, 4371, -41, 4371, 4371, - 4371, 4371, 4371, 4371, 4371, 4371, -860, 4371, 4371, 4371, - 4371, 4371, 4371, 4371, 204, 204, 3156, 4371, 243, -33, - -31, -860, -860, 103, -860, -860, -860, 83, 4371, -860, - -860, 69, 86, -860, -31, 3291, 3426, 169, -860, 177, - 3561, -860, 4371, 2, -11, 152, 166, 15, 99, 117, - 139, 222, -860, -860, -860, 226, 233, -860, -860, -860, - -860, -860, -860, 270, 14, -860, -860, 263, 4506, -860, - -860, 213, 153, 313, 93, -860, 17, -860, -860, -860, - -860, -860, -860, 284, 319, -860, -860, 245, 368, 379, - 438, 410, 331, -860, -860, 1604, -860, -860, 200, 1433, - -860, -860, 345, 441, 380, -860, 56, -860, 13, -860, - -860, -860, -860, -860, 414, 365, 438, 5560, 5560, 4371, - 5560, 5560, 5827, 242, 5254, 1733, 456, 456, 34, 456, - 4371, 456, 456, 456, 456, 456, 456, 456, -860, 374, - 263, -62, 381, -860, -860, 389, -860, 204, 5298, 383, - 533, -860, 392, 263, 393, 399, -860, -860, 402, 424, - -13, 13, 3696, -860, -860, 4506, 525, -860, 4371, 23, - 5560, 2751, -31, 4371, 4371, 401, -860, -860, 4995, -860, - 5039, 403, 543, -860, 405, 5560, 3307, 406, 5082, 45, - 66, 263, 3, 25, -860, -860, 190, 27, -860, -860, - -860, 548, 28, 438, 204, 4371, 4371, 409, -860, 3156, - 16, 258, -860, 4641, 204, 307, -860, 263, -860, 210, - 294, 411, 412, 5125, 413, 4371, 208, 408, 315, 208, - 135, 496, 421, 499, -860, 453, -860, -860, 4371, 4371, - -860, 505, 516, 172, -860, 4371, -860, 562, -860, -860, - 4371, 4371, 4371, 4371, 4371, 4371, 4371, 4371, 4371, 4371, - 4371, 4371, 4371, 4371, 4371, 4371, 4371, 4371, 4371, 243, - 4371, -860, -860, -860, 3831, 4371, 4371, 4371, 4371, 4371, - 4371, 4371, 4371, 4371, 4371, 4371, 4371, 421, 58, 4371, - -860, 4371, 4371, 213, 10, -860, 5169, 4371, 456, 263, - -53, 62, 62, -860, -860, 3966, -860, 4101, -860, 263, - 393, 39, 421, 39, -860, 4, -860, -860, 2751, 5560, - 433, 4371, -860, 506, -860, 440, 586, 5560, 510, 4387, - 524, 6, -860, -860, -860, 5363, -860, -860, -860, -860, - 263, 149, 30, -860, 263, 156, 31, -860, 183, 530, - 68, -860, 4371, -860, -860, -11, -860, 5363, 523, -860, - -860, 19, -860, -860, 37, 994, 38, -860, 451, 3577, - 454, 216, 452, -860, 535, -860, -860, 547, 1496, 459, - -860, -860, -860, 321, -860, -860, -860, 421, -860, -860, - -860, -860, 2076, 1794, -860, -860, -860, 2886, -860, 600, - 78, -860, 495, 461, 493, -860, 500, 4371, 504, -860, - 4371, 507, 4, -860, 13, 4371, 5641, 4371, -860, 4371, - 4371, 4371, 2937, 3072, 3205, 3340, 3340, 3340, 3340, 997, - 997, 997, 997, 476, 476, 209, 209, 209, 34, 34, - 34, -860, 456, 1, 5827, 5827, 5827, 5827, 5827, 5827, - 5827, 5827, 5827, 5827, 5827, 5827, 5827, -860, 504, 509, - -860, 508, 62, 512, 4777, -860, 267, 1855, 131, -860, - 204, 5560, 204, 5354, 393, -860, -860, -860, -860, 62, - -860, -860, -860, 5560, -860, 2211, -860, -860, -860, -860, - 645, 40, 511, 513, -860, 5388, 5388, 5388, 5388, 5363, - -860, 519, -860, -18, 514, 263, 5388, -62, 522, -860, - -860, -860, 5725, -860, -860, 517, 198, 602, 45, -860, - 285, 605, 66, -860, 606, -860, -860, 4820, -860, -860, - 668, 531, 204, 528, -860, -860, -860, -860, -860, 532, - -860, 41, -860, -860, 248, -860, 4371, -860, -860, 421, - 534, -860, -860, 87, 539, -860, -860, -860, -860, -860, - 204, 4371, -860, 44, -860, 46, 540, 1709, 5363, 538, - 263, 393, -860, 568, 78, 541, -860, -860, 542, 278, - 537, 4863, 421, 421, 4, 5602, 5827, 4371, 5517, 5896, - 5929, 243, -860, 421, 421, -860, -860, -860, 5, -860, - -860, -860, -860, -860, 4236, -860, 36, -860, -31, -860, - -860, -860, 4371, 4371, 189, 189, 5363, 626, 2346, -860, - 33, -860, 314, 371, 371, -860, -860, 574, 544, 695, - 5363, 566, 263, -53, 5212, -4, 5388, 5388, 5388, 362, - 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, - 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, 5388, - 5388, 612, 646, -860, -860, 650, -860, -860, -860, -860, - 5363, 278, -860, -860, 4371, -860, 216, 705, -860, -860, - -860, 565, 1364, -860, -860, 569, -860, 125, 571, -860, - 5560, 3021, -860, -860, -860, 263, 393, 78, 572, 720, - -860, -860, 278, -860, -860, 576, 724, -860, 438, -860, - -860, -860, -860, -860, 5862, -860, -860, -860, -860, -860, - 581, 4371, 4371, 204, 5560, -860, -860, 407, 582, 651, - 583, 5560, 204, 587, 614, -860, 614, -860, 726, -860, - -860, -860, 354, 589, 4371, 9, 329, -860, 5363, -860, - 5363, -860, 588, 131, -860, -860, -860, 5765, 5804, 5964, - 5388, 5684, 6005, 6024, 3477, 3611, 2070, 2745, 2745, 2745, - 2745, 1208, 1208, 1208, 1208, 487, 487, 371, 371, 371, - -860, -860, -860, 593, -860, -860, -860, -860, 596, -860, - 216, -860, 4371, -860, 594, -860, 4371, 62, 633, 142, - -860, -860, 607, -860, 393, 720, -860, 78, 642, 613, - 654, 230, 616, 4371, 421, 706, 707, 421, -860, 618, - 4907, -860, 647, 431, -31, 2751, -860, -860, 617, -860, - -860, -860, 189, 624, 625, 5363, 680, 627, -860, 4952, - -860, -860, -860, -860, -860, 653, -860, 5985, 5388, -860, - 678, 654, 52, 5827, -860, 630, -860, -860, 4371, 633, - -860, 727, -860, 712, 78, -860, -860, -860, -860, -860, - -860, -860, -860, -860, -860, -860, 414, 471, -860, 32, - 634, 638, 637, -860, -860, 711, 5862, -860, 4371, 4371, - -860, 633, -860, -860, 62, -860, -31, 767, 725, -860, - -860, -860, 4371, 216, -860, -860, -860, -860, 643, -860, - -860, -860, 5363, 5985, 78, -860, -860, 644, -860, -860, - 581, 652, 633, -860, 788, 12, -860, 728, 438, -860, - 729, -860, -860, 61, -860, 791, 655, 656, -860, -860, - 778, -860, 657, 2751, 659, 53, 2481, 2481, -860, -860, - 214, -860, -860, 662, -860, -860, -860, 5363, 78, -860, - 164, -860, 793, 35, 736, 808, 665, 748, -860, 54, - 667, 5363, -860, -860, -860, 755, -860, -860, -860, -860, - -860, -860, -860, -860, 370, 751, -860, 670, -860, -860, - 743, 679, 164, -860, 689, 753, 739, 693, 703, 5363, - 776, -860, -860, 5363, -860, -860, 192, -860, -860, -860, - -860, 2616, 790, 731, 723, -860, -860, -860, -860, 536, - 78, -860, 814, -860, 868, 737, -860, 816, -860, 419, - -860, -860, -860, 734, -860, -860, 820, 822, 889, -860, - -860, 5363, 278, -860, 811, -860, 745, -860, 78, -860, - 749, 747, -860, -860, 283, -860, 772, -860, -860, -860, - -860, 773, 827, -860, 779, -860, 827, -860, 78, -860, - -860, 858, 780, -860, 781, -860, 783, -860 + -864, 68, 88, -864, 1803, 4233, 4233, -64, 4233, 4233, + 4233, 4233, 4233, 4233, 4233, 4233, -864, 4233, 4233, 4233, + 4233, 4233, 4233, 4233, 159, 159, 3018, 4233, 175, -51, + -46, -864, -864, 94, -864, -864, -864, 71, 4233, -864, + -864, 74, 82, -864, -46, 3153, 3288, 171, -864, 178, + 3423, -864, 4233, 152, -34, 137, 139, 18, 123, 163, + 165, 181, -864, -864, -864, 197, 204, -864, -864, -864, + -864, -864, -864, 247, -28, -864, -864, 220, 4368, -864, + -864, 131, 195, 203, 114, -864, 23, -864, -864, -864, + -864, -864, -864, 240, 251, -864, -864, -8, 269, 323, + 341, 325, 261, -864, -864, 4944, -864, -864, 358, 1629, + -864, -864, 264, 359, 300, -864, -17, -864, 38, -864, + -864, -864, -864, -864, 336, 302, 341, 5607, 5607, 4233, + 5607, 5607, 1724, 288, 5288, 948, 399, 399, 55, 399, + 4233, 399, 399, 399, 399, 399, 399, 399, -864, 319, + 220, -74, 348, -864, -864, 352, -864, 159, 5358, 347, + 504, -864, 364, 220, 365, 373, -864, -864, 374, 386, + -2, 38, 3558, -864, -864, 4368, 509, -864, 4233, 24, + 5607, 2613, -46, 4233, 4233, 393, -864, -864, 4987, -864, + 5031, 389, 534, -864, 395, 5607, 1531, 392, 5074, 98, + 118, 220, 146, 27, -864, -864, 140, 29, -864, -864, + -864, 538, 31, 341, 159, 4233, 4233, 398, -864, 3018, + 34, 231, -864, 4503, 159, 271, -864, 220, -864, 211, + 243, 400, 402, 5117, 403, 4233, 214, 401, 234, 214, + -5, 492, 414, 495, -864, 446, -864, -864, 4233, 4233, + -864, 498, 510, 10, -864, 4233, -864, 545, -864, -864, + 4233, 4233, 4233, 4233, 4233, 4233, 4233, 4233, 4233, 4233, + 4233, 4233, 4233, 4233, 4233, 4233, 4233, 4233, 4233, 175, + 4233, -864, -864, -864, 3693, 4233, 4233, 4233, 4233, 4233, + 4233, 4233, 4233, 4233, 4233, 4233, 4233, 414, 60, 4233, + -864, 4233, 4233, 131, 9, -864, 5161, 4233, 399, 220, + 96, 75, 75, -864, -864, 3828, -864, 3963, -864, 220, + 365, 62, 414, 62, -864, 2, -864, -864, 2613, 5607, + 415, 4233, -864, 493, -864, 426, 572, 5607, 490, 1275, + 512, -1, -864, -864, -864, 5409, -864, -864, -864, -864, + 220, 170, 32, -864, 220, 179, 33, -864, 187, 513, + 157, -864, 4233, -864, -864, -34, -864, 5409, 508, -864, + -864, 15, -864, -864, 26, 786, 40, -864, 433, 1558, + 435, 144, 437, -864, 519, -864, -864, 530, 4639, 438, + -864, -864, -864, 248, -864, -864, -864, 414, -864, -864, + -864, -864, 1938, 4682, -864, -864, -864, 2748, -864, 583, + 73, -864, 473, 443, 444, -864, 451, 4233, 452, -864, + 4233, 454, 2, -864, 38, 4233, 5812, 4233, -864, 4233, + 4233, 4233, 1791, 2934, 3202, 3337, 3337, 3337, 3337, 1676, + 1676, 1676, 1676, 404, 404, 53, 53, 53, 55, 55, + 55, -864, 399, 1, 1724, 1724, 1724, 1724, 1724, 1724, + 1724, 1724, 1724, 1724, 1724, 1724, 1724, -864, 452, 455, + -864, 450, 75, 457, 4725, -864, 324, 1447, 259, -864, + 159, 5607, 159, 5401, 365, -864, -864, -864, -864, 75, + -864, -864, -864, 5607, -864, 2073, -864, -864, -864, -864, + 597, 41, 459, 463, -864, 5435, 5435, 5435, 5435, 5409, + -864, 466, -864, -18, 469, 220, 5435, -74, 501, -864, + -864, -864, 5691, -864, -864, 494, 253, 576, 98, -864, + 262, 577, 118, -864, 579, -864, -864, 4769, -864, -864, + 640, 502, 159, 499, -864, -864, -864, -864, -864, 505, + -864, 43, -864, -864, 354, -864, 4233, -864, -864, 414, + 503, -864, -864, 151, 506, -864, -864, -864, -864, -864, + 159, 4233, -864, 44, -864, 49, 507, 1335, 5409, 514, + 220, 365, -864, 539, 73, 515, -864, -864, 516, 207, + 517, 4812, 414, 414, 2, 5731, 1724, 4233, 5564, 5990, + 6057, 175, -864, 414, 414, -864, -864, -864, 8, -864, + -864, -864, -864, -864, 4098, -864, 390, -864, -46, -864, + -864, -864, 4233, 4233, 153, 153, 5409, 593, 2208, -864, + 369, -864, -14, 48, 48, 606, 606, 550, 520, 665, + 5409, 536, 220, 96, 5204, -9, 5435, 5435, 5435, 5229, + 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, + 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, 5435, + 5435, 5435, 578, 611, -864, -864, 612, -864, -864, -864, + -864, 5409, 207, -864, -864, 4233, -864, 144, 673, -864, + -864, -864, 531, 1631, -864, -864, 532, -864, 160, 537, + -864, 5607, 2883, -864, -864, -864, 220, 365, 73, 542, + 686, -864, -864, 207, -864, -864, 546, 694, -864, 341, + -864, -864, -864, -864, -864, 5921, -864, -864, -864, -864, + -864, 549, 4233, 4233, 159, 5607, -864, -864, 420, 552, + 619, 553, 5607, 159, 557, 585, -864, 585, -864, 700, + -864, -864, -864, 391, 559, 4233, 57, 276, -864, 5409, + -864, 5409, -864, 563, 259, -864, -864, -864, 5773, 5851, + 5886, 5435, 5650, 6024, 6090, 2799, 3068, 3472, 3607, 3607, + 3607, 3607, 2812, 2812, 2812, 2812, 487, 487, 48, 48, + 48, 606, 606, 606, 606, 567, -864, -864, -864, -864, + 573, -864, 144, -864, 4233, -864, 571, -864, 4233, 75, + 603, 173, -864, -864, 580, -864, 365, 686, -864, 73, + 361, 584, 624, 134, 588, 4233, 414, 669, 674, 414, + -864, 582, 4855, -864, 617, 429, -46, 2613, -864, -864, + 589, -864, -864, -864, 153, 601, 602, 5409, 654, 592, + -864, 4901, -864, -864, -864, -864, -864, 630, -864, 5956, + 5435, -864, 653, 624, 51, 1724, -864, 604, -864, -864, + 4233, 603, -864, 412, -864, 687, 73, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -864, -864, 336, 639, + -864, 35, 605, 609, 608, -864, -864, 690, 5921, -864, + 4233, 4233, -864, 603, -864, -864, 75, -864, -46, 739, + 697, -864, -864, -864, 4233, 144, -864, -864, -864, -864, + 613, -864, -864, -864, 5409, 5956, 73, -864, -864, 615, + -864, -864, 549, 610, 603, -864, 760, 17, -864, 699, + 341, -864, 702, -864, -864, 47, -864, 763, 620, 621, + -864, -864, 751, -864, 626, 2613, 628, 52, 2343, 2343, + -864, -864, -4, -864, -864, 627, -864, -864, -864, 5409, + 73, -864, 164, -864, 771, 37, 712, 773, 631, 715, + -864, 56, 634, 5409, -864, -864, -864, 726, -864, -864, + -864, -864, -864, -864, -864, -864, 287, 722, -864, 655, + -864, -864, 721, 659, 164, -864, 662, 729, 717, 668, + 679, 5409, 752, -864, -864, 5409, -864, -864, 54, -864, + -864, -864, -864, 2478, 740, 676, 671, -864, -864, -864, + -864, 428, 73, -864, 759, -864, 820, 681, -864, 761, + -864, 424, -864, -864, -864, 683, -864, -864, 766, 767, + 837, -864, -864, 5409, 207, -864, 758, -864, 693, -864, + 73, -864, 698, 703, -864, -864, 346, -864, 696, -864, + -864, -864, -864, 704, 750, -864, 706, -864, 750, -864, + 73, -864, -864, 780, 708, -864, 733, -864, 735, -864 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -860, -860, -376, -860, -24, -860, -860, -860, -860, 577, - -860, 417, -860, 404, -860, 201, -860, -860, 43, -860, - -860, -860, -860, -860, -860, -860, -860, -860, -860, -860, - -860, -860, -860, -860, -860, -860, -860, -860, -860, -860, - -860, -860, -860, -860, -860, -860, -860, -860, -137, -860, - -860, -860, 400, 545, 546, -121, -860, -860, -860, -860, - -860, -860, -860, -860, -860, -860, -860, 244, 206, -603, - -860, -860, -3, -860, -860, -860, -473, -860, -860, 104, - -860, -860, -860, -860, -860, -860, -860, -671, -860, 134, - -860, -219, -860, 255, -860, 595, -860, 143, -860, -860, - -860, -860, -860, -860, -860, -860, -44, -860, -860, -860, - -860, -860, -860, -860, -860, -860, -860, -859, -860, -860, - -860, -605, -860, -860, 92, -860, -860, -860, -860, -860, - 884, -860, 21, -860, -860, -860, -860, -860, -860, -860, - -860, -860, -860, -860, -860, -860, -63, -860, -860, -2, - 102, -860, -860, -860, -860, -860, -860, -860, -860, -860, - -860, 207, -269, -268, -860, -860, -860, -860, -860, -860, - -860, 140, 930, -860, -303, 259, -860, -860, 326, 330, - -860, 1061, -23, 762, -456, 478, 980, -860, -860, -860, - -752, -860, -860, -860, -860, 42, -239, -860, -12, -860, - -860, -860, -20, -25, -860, -191, -480, -860, -860, -187, - -9, -756, 287, -860, 752, -860, 427, -138, -860, -860, - -860, -860, -860, 286, -860, -860, -860 + -864, -864, -377, -864, -24, -864, -864, -864, -864, 535, + -864, 333, -864, 366, -864, -249, -864, -864, 20, -864, + -864, -864, -864, -864, -864, -864, -864, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -864, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -864, -864, -174, -864, + -864, -864, 378, 526, 527, -124, -864, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -864, 198, 161, -604, + -864, -864, -52, -864, -864, -864, -467, -864, -864, 81, + -864, -864, -864, -864, -864, -864, -864, -675, -864, 110, + -864, -239, -864, 209, -864, 569, -864, 117, -864, -864, + -864, -864, -864, -864, -864, -864, -68, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -864, -863, -864, -864, + -864, -608, -864, -864, 67, -864, -864, -864, -864, -864, + 861, -864, -6, -864, -864, -864, -864, -864, -864, -864, + -864, -864, -864, -864, -864, -864, -63, -864, -864, 4, + 77, -864, -864, -864, -864, -864, -864, -864, -864, -864, + -864, 218, 310, -269, -864, -864, -864, -864, -864, -864, + -864, 121, 769, -864, 90, 591, -864, -864, 303, 305, + -864, 904, -11, 745, -460, 481, 1001, -864, -864, -864, + -782, -864, -864, -864, -864, 21, -242, -864, -12, -864, + -864, -864, -22, 87, -864, -194, -480, -864, -864, 135, + 92, -772, 268, -864, 738, -864, 427, 200, -864, -864, + -864, -864, -864, 273, -864, -864, -864 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -587 +#define YYTABLE_NINF -588 static const yytype_int16 yytable[] = { - 151, 151, 100, 170, 164, 305, 174, 176, 169, 615, - 798, 451, 155, 155, 421, 232, 168, 740, 560, 171, - 968, 186, 746, 408, 612, 243, 613, 542, 939, 202, - 632, 331, 133, 360, 502, 365, 368, 850, 528, 532, - 940, 819, 521, 1010, 862, -586, 544, 87, 627, 686, - 229, 301, 701, 230, -193, 213, 867, 413, 414, 469, - 686, 686, 1016, 641, 539, 205, 423, 601, 301, 731, - 765, 194, 421, 469, 301, 123, 123, 35, 467, 3, - 383, -2, 485, 386, 488, 279, -395, 392, 123, 35, - 241, 211, 370, 304, 977, -397, 359, 280, 386, 241, - 392, 386, 392, 199, 200, -55, -55, -55, 471, 232, - 473, 470, 232, 129, 699, 35, 48, 148, 766, 123, - 301, 172, 213, 175, 423, 470, 310, 222, 753, 754, - 755, 177, 468, 151, 35, -517, 479, 978, 35, 320, - 123, 582, 123, 384, 302, 155, 325, 178, 206, 948, - 149, -271, 123, 150, 201, 241, 752, 955, 756, 334, - 81, 302, 732, 503, -514, 851, 227, 302, 969, 970, - 1047, 228, 303, 244, 543, 351, 355, 358, 562, 332, - 867, 361, 151, 366, 369, 695, 529, 533, 941, 806, - 151, 1011, -586, 545, 155, 628, 687, 350, 81, 702, - 151, -193, 155, 393, -517, 338, 868, 928, 989, 1017, - -513, 220, 155, 302, -271, 420, 390, 81, 354, 420, - 201, 81, 742, 183, 333, 1037, 590, 579, 422, 220, - 580, 152, 152, 606, 236, 165, 374, 378, 1000, 914, - 184, -395, 527, 191, 424, 241, 418, -378, 35, 531, - 606, 192, 807, 214, 170, 164, 276, 277, 278, 169, - 279, 282, 283, 123, 123, 35, 35, 168, 1038, -266, - 171, 215, 280, 422, 209, 704, 534, 831, 123, -396, - 35, 223, 224, 241, 220, 478, 422, 422, 210, 424, - 123, 672, 35, 216, 419, 484, 422, 405, 422, 223, - 224, 241, 424, 424, 123, 148, 148, 954, 241, -163, - -163, -163, 424, 579, 424, 710, 580, 123, 743, 35, - 148, 517, 688, 747, 689, 690, 526, 866, 476, 420, - 530, 81, 148, 726, 220, 241, 202, 123, 149, 149, - 693, 150, 150, 517, 576, 549, 220, 362, 81, 81, - 241, 221, 123, 149, 223, 224, 150, 151, 245, 148, - 713, 714, 241, 81, 152, 149, 395, 396, 150, 155, - 235, 491, -163, 722, 723, 81, 217, 797, 675, 579, - 218, 1060, 580, 220, 727, 728, 581, 219, 390, 220, - 770, 220, 162, 246, 239, 163, 390, -362, -362, 594, - 100, 247, 81, 385, 223, 224, 505, 506, 713, 714, - 754, 755, 507, 152, 508, 222, 223, 224, 668, 669, - 670, 152, -364, -364, 949, 754, 755, 579, 575, 151, - 580, 152, 248, -179, 31, 32, 123, 241, 710, 1067, - 1068, 155, -397, 249, 510, 566, 241, 422, -382, 847, - 754, 755, 391, 223, 224, 854, 151, 855, 151, 223, - 224, 223, 224, 424, 422, -161, -161, -161, 155, -396, - 155, 250, 757, 241, -519, -380, 834, 835, 148, 253, - 424, 517, 517, 517, 517, 517, 165, 853, -173, -173, - -173, 643, 517, 298, 512, 68, 69, 70, 71, 72, - 906, 907, 153, 156, 351, 299, 513, 300, 355, 238, - 240, 514, 75, 76, 515, 48, 516, 227, 151, 280, - 273, 274, 275, 276, 277, 278, 309, 279, -161, 311, - 155, 665, 666, 667, 668, 669, 670, 312, 620, 280, - 829, 317, 917, 316, 319, 241, 151, 321, 872, 525, - 323, 324, 518, 327, 517, 340, 706, 345, 155, 344, - 581, 346, 367, 348, 380, 581, 398, 399, 606, 404, - 406, 401, -240, 409, 518, 407, 170, 164, 410, 415, - 417, 169, 875, 876, 877, 878, 879, 880, 152, 168, - 428, 494, 171, 492, 497, 738, 496, 822, 500, 540, - 151, 151, 517, 498, 535, 936, 546, 553, 900, 555, - 548, 556, 155, 155, 578, 865, 517, 558, 763, 961, - 584, 586, 517, 517, 517, 517, 517, 517, 517, 517, + 151, 151, 305, 408, 164, 133, 169, 800, 100, 615, + 451, 421, 155, 155, 741, 232, 168, 560, 174, 176, + 612, 747, 613, 542, 87, 970, 941, 502, 869, 202, + 864, 243, 331, 186, -587, 360, 632, 365, 821, 368, + 528, 532, 205, 942, 194, 1012, 123, 301, 544, 627, + 229, 687, 702, 230, 413, 414, 469, -193, 467, 687, + 687, 213, 301, 641, 1018, 766, 301, 601, 3, 421, + 469, 220, 732, 301, -395, 123, 390, 35, 241, 485, + 979, 488, 755, 756, 418, 852, 35, 1039, -2, 370, + 129, -163, -163, -163, 211, 668, 669, 670, 383, 525, + 276, 277, 278, 172, 279, 471, 279, 473, 175, 232, + 700, 671, 232, 767, 35, 170, 280, 148, 280, 48, + 171, 950, 177, 980, 227, 206, 310, 222, 213, 228, + 1040, -518, 419, 151, 468, 178, 35, -514, 35, 320, + 302, 223, 224, 957, 758, 155, -518, 123, 247, 479, + 149, 35, 869, 150, -163, 302, 503, 405, 562, 302, + 81, 384, 753, -515, 757, 733, 302, 420, 1049, 81, + 543, 334, 123, 971, 972, 351, 355, 358, 338, 244, + 332, -587, 151, 361, 696, 366, 743, 369, 529, 533, + 151, 943, 123, 1013, 155, 545, 628, 303, 688, 703, + 151, 333, 155, 393, -193, 304, 930, 991, 123, 374, + 378, 1019, 155, 853, 123, -271, 35, 420, 123, 81, + 35, 81, 579, 590, 808, 580, 123, 123, 183, 35, + 606, 123, 420, 123, 81, 35, 184, 870, 1002, 359, + 916, 616, 152, 152, -397, 191, 165, 606, 241, 123, + 350, 35, 192, 199, 200, 164, 148, 169, 325, 209, + 148, 210, -395, 527, 714, 715, 241, 168, -378, 148, + 354, 220, 531, 549, 833, 148, 236, 214, -271, 220, + 534, 123, 744, 579, 239, 478, 580, 809, 235, 149, + 220, 148, 150, 149, 123, 484, 150, 362, 241, 81, + -266, 476, 149, 81, 201, 150, 956, 220, 149, 201, + 220, 150, 81, 579, 245, 390, 580, 215, 81, 216, + 694, 517, 241, 220, 162, 246, 526, 163, 221, 868, + 530, 241, 727, 248, 81, 217, 202, 714, 715, 241, + 422, 223, 224, 517, 576, 424, 673, 220, 491, 223, + 224, 218, 390, 723, 724, 676, 579, 151, 219, 580, + 223, 224, -179, 241, 728, 729, 170, 395, 396, 155, + 740, 171, 755, 756, 250, 152, 385, 223, 224, 1062, + 223, 224, -161, -161, -161, 422, 581, 249, 423, -520, + 424, -397, 222, 223, 224, 241, -396, -382, 422, 422, + 241, 575, -380, 424, 424, 241, 100, -396, 422, 253, + 422, 241, 298, 424, 241, 424, 391, 223, 224, 282, + 283, 386, 566, 299, 152, 392, 951, 300, 689, 151, + 690, 691, 152, 470, 855, 521, 386, 48, 392, 386, + 392, 155, 152, -362, -362, -161, 423, 470, 273, 274, + 275, 276, 277, 278, 227, 279, 151, 539, 151, -55, + -55, -55, 280, 875, 754, 755, 756, 280, 155, 876, + 155, 309, 877, 878, 879, 880, 881, 882, 883, -364, + -364, 517, 517, 517, 517, 517, 849, 755, 756, 836, + 837, 643, 517, -173, -173, -173, 311, 165, 908, 909, + 312, 848, 1069, 1070, 351, 153, 156, 316, 355, 238, + 240, 594, 317, 324, 875, 620, 319, 241, 151, 884, + 876, 321, 323, 877, 878, 879, 880, 881, 882, 883, + 155, 665, 666, 667, 668, 669, 670, 327, 831, 877, + 878, 879, 880, 881, 882, 344, 151, 340, 345, 348, + 671, 346, 367, 380, 517, 398, 707, 399, 155, 422, + 581, 401, 404, 518, 424, 581, 406, 606, 407, 409, + 935, 410, 415, 428, 417, 492, 422, 164, 494, 169, + 497, 424, 496, 498, 540, 518, 500, 535, 546, 168, + 902, 548, 553, 555, 556, 824, 558, 578, 584, 152, + 151, 151, 517, 586, 587, 589, -541, 739, -386, -390, + 605, 626, 155, 155, 867, 629, 517, 610, 764, 631, + 640, 642, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, - 517, 517, 517, 517, 517, 517, 517, 875, 876, 877, - 878, 879, 880, 587, 589, 962, 517, 581, -540, 626, - 152, -386, 151, -390, 998, 606, 642, 629, 605, 631, - 645, 750, 610, 640, 155, 671, 673, 931, 1019, 676, - 678, 814, 680, 581, 683, 681, 685, 152, 581, 152, - 705, 616, 694, 698, 707, 703, 712, 720, 711, 999, - 748, 1008, 758, 760, 759, 374, 1033, 946, 947, 151, - 1036, 385, 518, 518, 518, 518, 518, 793, 151, 802, - 795, 155, 575, 518, 796, 803, 812, 805, 817, 816, - 155, 820, 821, 1008, 517, -508, 517, 838, 837, 839, - 845, 841, 842, 856, 873, 848, 517, 859, 1059, 152, - 874, 861, 864, 875, 876, 877, 878, 879, 880, 881, - 807, 1049, 891, 870, 633, 634, 635, 636, 890, 894, - 898, 899, 918, 911, 904, 644, 151, 152, 902, 915, - 916, 922, 422, 919, 925, 518, 934, 945, 155, 1063, - 929, 942, 943, 581, 944, 951, 952, 581, 424, 958, - 882, 964, 967, 975, 972, 981, 984, 1009, 165, 1080, - 1012, 909, 966, 986, 988, 982, 983, 974, 151, 996, - 739, 517, 1013, 1014, 1015, 1018, -177, 1023, 1025, 873, - 155, 152, 152, 518, 517, 874, -228, 1026, 875, 876, - 877, 878, 879, 880, 881, 1028, 1029, 518, 1030, 1031, - 581, 1032, 1034, 518, 518, 518, 518, 518, 518, 518, + 517, 517, 517, 517, 517, 517, 517, 517, 751, 645, + 674, 677, 672, 679, 681, 684, 682, 517, 581, 686, + 699, 695, 704, 151, 606, 708, 706, 749, 705, 671, + 713, 152, 712, 761, 962, 155, 933, 721, 759, 374, + 760, 385, 816, 795, 581, 797, 798, 804, 170, 581, + 807, 805, 814, 171, 819, 978, 575, 982, 152, 818, + 152, 822, 823, -509, 987, 840, 948, 949, 839, 841, + 151, 843, 996, 844, 847, 850, 748, 999, 858, 151, + 582, 861, 155, 518, 518, 518, 518, 518, 863, 866, + 809, 155, 893, 900, 518, 517, 872, 517, 901, 892, + -240, 896, 904, 1024, 906, 913, 920, 517, 921, 1026, + 877, 878, 879, 880, 881, 882, 917, 918, 924, 927, + 152, 936, 944, 945, 931, 946, 947, 953, 954, 960, + 968, 799, 966, 1041, 969, 974, 977, 983, 151, 986, + 984, 985, 988, 990, 998, 1011, 1014, 1015, 152, 1016, + 155, 1017, 1020, 1056, -586, 581, 518, -177, 1025, 581, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 1027, -228, 1068, 976, 1028, 1030, 165, + 151, 1073, 1031, 517, 1033, 911, 1032, 1034, 1036, 1047, + 1045, 1046, 155, 1052, 1053, 1054, 517, 1055, 1088, 1057, + 1059, -234, 152, 152, 518, 1060, 1063, -498, -498, 856, + 1064, 857, 581, 1066, 1072, 1076, 1084, 912, 518, 1067, + 1080, 675, 1075, 1085, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, - 518, 518, 518, 518, 518, 518, 518, 518, 910, 422, - 1043, 1045, 1051, 950, 938, 933, 1044, 518, 1050, 151, - 1055, 1052, 1053, 152, 1057, 424, -234, 1058, 517, 1061, - 581, 155, 1062, 1065, 1064, 767, 768, 769, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, - 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, - 1070, 1073, 1074, 1078, 1082, 1083, 677, 536, 1085, 1079, - 152, 1087, 682, 517, 581, 674, 581, 567, 568, 152, - 846, 815, 844, 920, 993, 893, 813, 517, 1027, 871, - 538, 932, 231, 927, 897, 518, 762, 518, 363, 761, - 799, 382, 965, 801, 0, 0, 0, 518, 581, 0, - 0, 0, 0, 0, 0, 517, 0, 0, 0, 517, - 0, 135, 0, 0, 0, 0, 987, 0, 0, 0, - 0, 0, -585, 0, 154, 154, 581, 152, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 0, 0, 0, 0, 0, 0, 517, 581, 857, - 196, 0, 0, 0, 581, -587, -587, -587, -587, 271, - 272, 273, 274, 275, 276, 277, 278, 0, 279, 152, - 0, 0, 518, 0, 581, -497, -497, 0, 0, 0, - 280, 0, 0, 0, 1041, 518, 127, 128, 0, 130, - 131, 132, 134, 136, 137, 138, 139, 0, 141, 142, - 143, 144, 145, 146, 147, 0, 0, 158, 161, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, - 0, 0, 0, 0, 0, 0, 188, 190, 0, 0, - 0, 195, 0, 198, 0, 0, 0, 923, 0, 0, - 152, 0, 960, 0, 0, 0, 0, 0, 0, 518, - 0, 0, 0, 0, 0, 0, 0, 314, 0, 233, - 0, 0, 0, 976, 0, 980, 0, 0, 0, -585, - 0, 0, 985, 0, 0, 0, 0, 0, 0, 0, - 994, 0, 0, 0, 339, 997, 0, 0, 0, 0, - 0, 0, 0, 0, 518, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 364, 0, 518, 0, - 306, 1022, 0, 0, 373, 375, 379, 1024, 0, 0, - 0, 308, 0, 0, 389, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 518, 0, 0, 0, - 518, 1039, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 233, 0, 0, 233, 0, 0, 329, - 0, 1054, 0, 0, 337, 195, -587, -587, -587, -587, - 663, 664, 665, 666, 667, 668, 669, 670, 518, 0, - 0, 0, 0, 1066, 0, 0, 0, 0, 0, 1071, - 0, 0, 0, 0, 0, 519, 195, 195, 0, 0, - 158, 0, 0, 0, 388, 0, 1086, 477, 0, 0, - 0, 0, 0, 0, 0, 0, 403, 519, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 329, - 329, 0, 0, 0, 0, 0, 426, 0, 0, 0, - 0, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, - 0, 452, 0, 0, 0, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464, 465, 466, 0, 0, - 329, 550, 329, 474, 0, 0, 0, 0, 195, 0, - 0, 0, 0, 254, 255, 256, 481, 0, 483, 0, - 0, 0, 0, 0, 0, 0, 0, 577, 0, 0, - 0, 257, 493, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 0, 279, 0, 0, 0, 0, - 0, 0, 0, 537, 0, 0, 0, 280, 0, 0, - 0, 0, 0, 602, 0, 519, 519, 519, 519, 519, - 0, 0, 0, 0, 0, 0, 519, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 314, 0, 314, 0, 0, 0, 0, 0, 195, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 329, 0, - 0, 591, 0, 0, 0, 0, 595, 0, 596, 0, - 598, 599, 600, 0, -497, -497, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 254, 255, 256, 519, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 373, 257, 804, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 0, 279, 0, 0, - 314, 0, 0, 0, 0, 0, 519, 0, 0, 280, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 519, 0, 0, 0, 0, 0, 519, 519, 519, 519, + 518, 518, 518, 518, 518, 518, 518, 518, 518, 518, + 1087, 151, 940, 1089, 711, 536, 422, 952, 678, 518, + 517, 424, 581, 155, 1081, 152, 817, 995, 846, 127, + 128, 815, 130, 131, 132, 134, 136, 137, 138, 139, + 683, 141, 142, 143, 144, 145, 146, 147, 567, 568, + 158, 161, 922, 895, 538, 873, 1029, 919, 934, 231, + 929, -586, 180, 763, 762, 517, 581, 899, 581, 188, + 190, 363, 152, 967, 195, 803, 198, 382, 801, 517, + 0, 152, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 989, 0, 518, 0, 518, + 581, 0, 233, 0, 0, 0, 0, 517, 0, 518, + 0, 517, 0, 422, 0, 0, 0, 0, 424, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 581, -498, + -498, 0, 135, 0, 963, 0, 0, 0, 711, 0, + 152, 0, 0, 0, 0, 154, 154, 0, 0, 517, + 581, 0, 0, 306, 0, 0, 581, 0, 0, 0, + 0, 0, 0, 1043, 308, 0, 0, 0, 0, 0, + 0, 196, 0, 0, 0, 0, 581, 0, 0, 1000, + 0, 0, 152, 0, 0, 518, 0, 0, 0, 0, + 0, 0, 0, 1021, 0, 0, 233, 0, 518, 233, + 0, 0, 329, 0, 0, 0, 0, 337, 195, 0, + 0, 0, 0, 0, 0, 0, 633, 634, 635, 636, + 0, 1035, 0, -363, -363, 1038, 0, 644, 0, 0, + 0, 0, 0, 0, 519, 0, 0, 0, 0, 195, + 195, 0, 0, 158, 0, 0, 0, 388, 0, 874, + 0, 0, 0, 152, 0, 0, 519, 0, 0, 403, + 0, 0, 518, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 329, 329, 0, 0, 0, 0, 314, 426, + 0, 0, 0, 0, 432, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, + 448, 449, 450, 0, 452, 339, 938, 518, 454, 455, + 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, + 466, 518, 0, 329, 0, 329, 474, 364, 0, 0, + 0, 195, 0, 0, 0, 373, 375, 379, 0, 481, + 0, 483, 0, 0, 0, 389, 0, 0, 0, 518, + 0, 0, 0, 518, 0, 493, 964, 768, 769, 770, + 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, + 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, + 792, 793, 794, 0, 0, 0, 537, 0, 0, 0, + 0, 518, 0, 0, 519, 519, 519, 519, 519, 0, + 1001, 0, 1010, 0, 0, 519, 0, 0, 0, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 0, 0, 0, 0, 0, 0, 477, 0, + 0, 195, 0, 0, 1010, 0, 0, 0, 0, 0, + 0, 329, 0, 0, 591, 0, 0, 0, 0, 595, + 0, 596, 0, 598, 599, 600, -498, -498, 0, 0, + 0, 0, 1051, -194, 0, 0, 0, 519, 0, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 859, 0, 0, 0, 0, 0, 499, 0, + 1065, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 1082, 0, 0, 0, 0, 519, -498, -498, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 577, 519, + 0, 0, 0, 0, 0, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, - 519, 0, 0, 0, 745, 745, 0, 0, 0, 0, - 519, 0, 0, 254, 255, 256, 0, 692, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 257, 700, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 557, 279, 0, 0, 724, 0, - 0, 0, 0, 0, 375, 0, 550, 280, 0, 0, - 0, 0, 0, 0, 0, 734, 0, 0, 0, 0, - 0, 577, 0, 337, 741, 0, 0, 0, 519, 0, 519, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 519, 925, 0, 0, 602, 0, 0, 0, 0, 0, + 693, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 0, 701, 0, 0, 0, 0, + 0, 314, 0, 314, 0, 0, 0, 0, 0, 0, + -194, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 725, 0, 0, 0, 0, 0, 0, -498, -498, + 0, 0, 0, 0, 0, 0, 0, 0, 735, 0, + 0, 0, 0, 0, 0, 0, 337, 742, 519, 0, 519, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 314, 0, 0, 0, -194, 0, 0, - 0, 0, 840, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 195, 0, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 281, 0, 195, 0, 0, 0, 0, 0, 0, 0, - -497, -497, 0, 0, 0, 519, 0, 0, 0, 0, - 550, 0, 0, 0, 0, 0, 0, 0, 519, 0, - 0, 0, 329, 830, -497, -497, 0, 0, 0, 0, - 0, 0, 0, 254, 255, 256, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 849, 0, 0, 0, 0, - 0, 257, 745, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 0, 279, 0, 0, 0, 0, - 0, 0, 519, 0, 0, 0, 0, 280, 0, 0, - 0, 0, 0, 863, -194, 0, 0, 329, 0, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 0, 0, 896, 0, 0, 0, -363, -363, - 0, 0, 0, 550, 0, 0, 0, 519, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 519, 0, 0, 0, 0, -497, -497, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 329, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 519, - 0, 0, 0, 519, 5, 6, 7, 8, 9, 0, - 0, 0, 569, 10, 11, 0, 0, 0, 0, 329, - 329, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 337, 0, 0, 0, 0, 0, 0, - 0, 519, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 30, - -365, -365, 0, 31, 32, 33, 34, 35, 0, 36, - 0, 0, 0, 37, 38, 39, 40, 0, 41, 0, - 42, 0, 43, 0, 0, 44, 0, 0, 0, 45, - 46, 47, 48, 49, 50, 51, 0, 0, 52, 53, - 0, 54, 0, 0, 0, 55, 56, 57, 0, 58, - 59, 60, 61, 62, 63, 64, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 74, 75, 76, 77, 0, 78, 0, 79, 80, 0, - 81, 0, 82, 83, 655, 656, 657, 658, 659, 660, - 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 30, 0, 0, 0, 31, 32, - 33, 34, 35, 0, 36, 0, 0, 0, 37, 38, - 39, 40, 0, 41, 0, 42, 0, 43, 0, 0, - 44, 0, 0, 0, 45, 46, 47, 48, 0, 50, - 51, 0, 0, 52, 0, 0, 54, 0, 0, 0, - 55, 56, 57, 0, 58, 59, 60, 564, 62, 63, - 64, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 11, 125, 75, 76, 77, 0, - 78, 0, 79, 80, 0, 81, 0, 82, 83, 619, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 30, - 0, 0, 0, 31, 32, 33, 34, 35, 0, 36, - 0, 0, 0, 37, 38, 39, 40, 0, 41, 0, - 42, 0, 43, 0, 0, 44, 0, 0, 0, 45, - 46, 47, 48, 0, 50, 51, 0, 0, 52, 0, - 0, 54, 0, 0, 0, 0, 0, 57, 0, 58, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 125, 75, 76, 77, 0, 78, 0, 79, 80, 0, - 81, 0, 82, 83, 749, 0, 0, 0, 0, 0, + 519, 0, 0, 373, 0, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 30, 0, 0, 0, 31, 32, - 33, 34, 35, 0, 36, 0, 0, 0, 37, 38, - 39, 40, 0, 41, 0, 42, 0, 43, 0, 0, - 44, 0, 0, 0, 45, 46, 47, 48, 0, 50, - 51, 0, 0, 52, 0, 0, 54, 0, 0, 0, - 0, 0, 57, 0, 58, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 11, 125, 75, 76, 77, 0, - 78, 0, 79, 80, 0, 81, 0, 82, 83, 990, + 0, 314, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 0, 0, 0, 0, 195, + 0, 0, -498, -498, 0, 0, 0, 0, 0, 0, + 0, 0, -365, -365, 0, 0, 195, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 519, 0, 0, -498, + -498, 0, 0, 0, 0, 746, 746, 0, 0, 519, + 0, 0, 0, 0, 0, 0, 329, 832, 0, 0, + 254, 255, 256, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 0, 0, 257, 851, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 0, 0, 0, 375, 347, 550, 0, + -498, -498, 0, 519, 280, 0, 0, 0, 0, 0, + 0, 0, 0, 577, 0, 0, 0, 0, 865, 0, + 0, 0, 329, 547, -588, -588, -588, -588, 271, 272, + 273, 274, 275, 276, 277, 278, 0, 279, 0, 898, + 0, 0, 0, 0, 0, 314, 0, 0, 519, 280, + 0, 0, 0, 0, 842, 0, 0, 0, 0, 0, + 0, 257, 519, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 329, 279, 0, 0, 0, 0, + 519, 0, 0, 0, 519, 0, 0, 280, 0, 0, + 0, 806, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 550, 329, 329, 5, 6, 7, 8, + 9, 0, 0, 0, 0, 10, 11, 0, 337, 0, + 0, 0, 519, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 0, 0, 746, 0, 12, 13, 0, + 0, 0, 0, 14, 280, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 30, 0, 0, 0, 31, 32, 33, 34, 35, + 0, 36, 0, 0, 0, 37, 38, 39, 40, 0, + 41, 0, 42, 0, 43, 0, 0, 44, 0, 0, + 0, 45, 46, 47, 48, 49, 50, 51, 0, 0, + 52, 53, 0, 54, 0, 0, 550, 55, 56, 57, + 0, 58, 59, 60, 61, 62, 63, 64, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 74, 75, 76, 77, 0, 78, 0, 79, + 80, 0, 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 30, - 0, 0, 0, 31, 32, 33, 34, 35, 0, 36, - 0, 0, 0, 37, 38, 39, 40, 0, 41, 0, - 42, 0, 43, 0, 0, 44, 0, 0, 0, 45, - 46, 47, 48, 0, 50, 51, 0, 0, 52, 0, - 0, 54, 0, 0, 0, 0, 0, 57, 0, 58, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 125, 75, 76, 77, 0, 78, 0, 79, 80, 0, - 81, 0, 82, 83, 1040, 0, 0, 0, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 30, 0, 0, 0, + 31, 32, 33, 34, 35, 0, 36, 0, 0, 0, + 37, 38, 39, 40, 0, 41, 0, 42, 0, 43, + 0, 0, 44, 0, 0, 0, 45, 46, 47, 48, + 0, 50, 51, 0, 0, 52, 0, 0, 54, 0, + 0, 0, 55, 56, 57, 0, 58, 59, 60, 564, + 62, 63, 64, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 11, 125, 75, 76, + 77, 0, 78, 0, 79, 80, 0, 81, 0, 82, + 83, 619, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 30, 0, 0, 0, 31, 32, 33, 34, 35, + 0, 36, 0, 0, 0, 37, 38, 39, 40, 0, + 41, 0, 42, 0, 43, 0, 0, 44, 0, 0, + 0, 45, 46, 47, 48, 0, 50, 51, 0, 0, + 52, 0, 0, 54, 0, 0, 0, 0, 0, 57, + 0, 58, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 125, 75, 76, 77, 0, 78, 0, 79, + 80, 0, 81, 0, 82, 83, 750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 30, 0, 0, 0, 31, 32, - 33, 34, 35, 0, 36, 0, 0, 0, 37, 38, - 39, 40, 0, 41, 0, 42, 0, 43, 0, 0, - 44, 0, 0, 0, 45, 46, 47, 48, 0, 50, - 51, 0, 0, 52, 0, 0, 54, 0, 0, 0, - 0, 0, 57, 0, 58, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 11, 125, 75, 76, 77, 0, - 78, 0, 79, 80, 0, 81, 0, 82, 83, -587, - -587, -587, -587, 659, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 30, - 0, 0, 0, 31, 32, 33, 34, 35, 0, 36, - 0, 0, 0, 37, 38, 39, 40, 0, 41, 0, - 42, 0, 43, 0, 0, 44, 0, 0, 0, 45, - 46, 47, 48, 0, 50, 51, 0, 0, 52, 0, - 0, 54, 0, 0, 0, 0, 0, 57, 0, 58, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 125, 75, 76, 77, 0, 78, 0, 79, 80, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 570, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 30, 0, 0, 0, + 31, 32, 33, 34, 35, 0, 36, 0, 0, 0, + 37, 38, 39, 40, 0, 41, 0, 42, 0, 43, + 0, 0, 44, 0, 0, 0, 45, 46, 47, 48, + 0, 50, 51, 0, 0, 52, 0, 0, 54, 0, + 0, 0, 0, 0, 57, 0, 58, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 11, 125, 75, 76, + 77, 0, 78, 0, 79, 80, 0, 81, 0, 82, + 83, 992, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 30, 0, 0, 0, 31, 32, 33, 34, 35, + 0, 36, 0, 0, 0, 37, 38, 39, 40, 0, + 41, 0, 42, 0, 43, 0, 0, 44, 0, 0, + 0, 45, 46, 47, 48, 0, 50, 51, 0, 0, + 52, 0, 0, 54, 0, 0, 0, 0, 0, 57, + 0, 58, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 125, 75, 76, 77, 0, 78, 0, 79, + 80, 0, 81, 0, 82, 83, 1042, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 48, 279, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 30, 0, 0, 0, + 31, 32, 33, 34, 35, 0, 36, 0, 0, 0, + 37, 38, 39, 40, 0, 41, 0, 42, 0, 43, + 0, 0, 44, 0, 0, 0, 45, 46, 47, 48, + 0, 50, 51, 0, 0, 52, 0, 0, 54, 0, + 0, 0, 0, 0, 57, 0, 58, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 11, 125, 75, 76, + 77, 0, 78, 0, 79, 80, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 30, 0, 0, 0, 31, 32, 33, 34, 35, + 0, 36, 0, 0, 0, 37, 38, 39, 40, 0, + 41, 0, 42, 0, 43, 0, 0, 44, 0, 0, + 0, 45, 46, 47, 48, 0, 50, 51, 0, 0, + 52, 0, 0, 54, 0, 0, 0, 0, 0, 57, + 0, 58, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 125, 75, 76, 77, 0, 78, 0, 79, + 80, 0, 81, 0, 82, 83, 0, 0, 0, 0, + 0, 570, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, 653, 654, 655, 656, 657, 658, 659, 660, 661, + 662, 663, 664, 665, 666, 667, 668, 669, 670, 48, + -588, -588, -588, -588, 663, 664, 665, 666, 667, 668, + 669, 670, 671, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 671, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 571, 78, 572, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 570, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 0, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 48, 279, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 280, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 122, 125, 75, 76, 77, 571, 78, 0, 0, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, + 0, 157, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, 654, 655, 656, 657, 658, 659, 660, 661, 662, + 663, 664, 665, 666, 667, 668, 669, 670, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 280, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 571, - 78, 572, 0, 0, 0, 81, 0, 82, 83, 0, - 0, 0, 0, 0, 570, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, 0, 0, - 0, 0, 0, 37, 0, 262, 263, 264, 265, 266, + 0, 671, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 0, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 48, 279, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 280, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 122, - 125, 75, 76, 77, 571, 78, 0, 0, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 157, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 0, 279, 48, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 280, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 0, 0, 0, 0, 81, 0, 82, 83, 0, - 0, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, -497, -497, - 0, 0, 0, 37, -587, -587, -587, -587, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 0, 279, 48, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 280, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 122, - 125, 75, 76, 77, 0, 78, 0, 187, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 347, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 48, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 0, 189, 0, 0, 81, 0, 82, 83, 0, - 0, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, -497, -497, - 0, 0, 0, 37, 654, 655, 656, 657, 658, 659, - 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, - 670, 0, 48, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 125, 75, 76, 77, 0, 78, 0, 193, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, - 0, 0, 547, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, + 277, 278, 0, 279, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 280, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 122, 125, 75, 76, 77, 0, 78, 0, 187, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 326, 0, 0, 0, 81, 0, 82, 83, 0, - 0, 0, 0, 0, 453, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, 0, 0, - 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 122, - 125, 75, 76, 77, 0, 78, 0, 0, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 480, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, -588, -588, -588, -588, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 0, 279, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 0, 0, 0, 0, 81, 0, 82, 83, 0, - 0, 0, 0, 0, 482, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, 0, 0, - 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 280, 0, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 0, 189, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 655, 656, 657, 658, + 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, + 669, 670, 0, 0, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 671, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 125, 75, 76, 77, 0, 78, 0, 193, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 122, - 125, 75, 76, 77, 0, 78, 0, 0, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 733, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, -588, -588, -588, -588, 659, 660, 661, 662, 663, + 664, 665, 666, 667, 668, 669, 670, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 0, + 671, 0, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 326, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 453, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, + 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 122, 125, 75, 76, 77, 0, 78, 0, 0, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, + 0, 480, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 0, 0, 0, 0, 81, 0, 82, 83, 0, - 0, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 34, 35, -497, -497, - 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 0, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 482, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, - 499, 0, 0, 0, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 5, - 6, 7, 8, 9, 0, 73, 0, 0, 10, 11, - 125, 75, 76, 77, 0, 78, 0, 0, 0, 0, - 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 122, 125, 75, 76, 77, 0, 78, 0, 0, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, + 0, 734, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 13, 0, 0, 0, 0, 14, 0, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, - 26, 27, 28, 29, 0, 0, 0, 0, 31, 32, - 123, 34, 35, 0, 0, 0, 0, 0, 37, 0, + 0, 0, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 0, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 34, 35, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, + 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 5, 6, 7, 8, 9, 0, 73, 0, 0, + 10, 11, 125, 75, 76, 77, 0, 78, 0, 0, + 0, 0, 81, 0, 82, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 124, 0, 0, 59, 60, 0, 0, 0, - 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, - 69, 70, 71, 72, 5, 6, 7, 8, 9, 0, - 73, 0, 0, 10, 122, 125, 75, 76, 77, 0, - 78, 0, 0, 0, 0, 81, 0, 82, 83, 0, + 0, 0, 12, 13, 0, 0, 0, 0, 14, 0, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 0, 26, 27, 28, 29, 0, 0, 0, 0, + 31, 32, 123, 34, 35, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, - 0, 14, 0, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 0, 26, 27, 28, 29, 0, - 0, 0, 0, 31, 32, 123, 387, 35, 0, 0, - 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 124, 0, 0, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 65, 66, 0, + 67, 68, 69, 70, 71, 72, 5, 6, 7, 8, + 9, 0, 73, 0, 0, 10, 122, 125, 75, 76, + 77, 0, 78, 0, 0, 0, 0, 81, 0, 82, + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, + 0, 0, 0, 14, 0, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 0, 26, 27, 28, + 29, 0, 0, 0, 0, 31, 32, 123, 387, 35, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 66, 0, 67, 68, 69, 70, 71, 72, 0, - 0, 0, 0, 0, 0, 73, 254, 255, 256, 0, - 125, 75, 76, 77, 0, 78, 0, 0, 0, 0, - 81, 0, 82, 83, 257, 0, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 0, 279, 254, - 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, - 280, 0, 0, 0, 0, 0, 0, 257, 0, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 0, 279, 254, 255, 256, 0, 0, 0, 0, 0, - 0, 0, 0, 280, 0, 0, 0, 0, 0, 0, - 257, 0, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 0, 279, 0, 254, 255, 256, 0, - 0, 0, 0, 0, 0, 0, 280, 0, 0, 0, - 0, 0, 0, 0, 257, 611, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 0, 279, 0, - 0, 254, 255, 256, 0, 0, 0, 0, 0, 0, - 280, 0, 0, 0, 0, 0, 0, 0, 679, 257, - 850, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, + 0, 0, 59, 60, 0, 0, 0, 0, 0, 0, + 0, 0, 65, 66, 0, 67, 68, 69, 70, 71, + 72, 0, 0, 0, 0, 0, 0, 73, 254, 255, + 256, 0, 125, 75, 76, 77, 0, 78, 0, 0, + 0, 0, 81, 0, 82, 83, 257, 0, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, + 279, 254, 255, 256, 0, 0, 0, 0, 0, 0, + 0, 0, 280, 0, 0, 0, 0, 0, 0, 257, + 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, 280, 0, 0, 0, 0, - 0, 721, 257, 0, 258, 259, 260, 261, 262, 263, + 0, 0, 257, 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, 0, 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, 280, 0, - 0, 0, 0, 0, 0, 903, 257, 0, 258, 259, + 0, 0, 0, 0, 0, 0, 257, 557, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, 0, 0, - 0, 0, 280, 0, 0, 0, 0, 0, 851, 257, - 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 0, 0, 280, 0, 0, 0, 0, 0, 0, 257, + 569, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, 280, 0, 0, 0, 0, - 0, 342, 257, 0, 258, 259, 260, 261, 262, 263, + 0, 0, 257, 611, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 0, 279, 0, 254, 255, - 256, 0, 0, 0, 0, 0, 0, 0, 280, 0, - 0, 0, 0, 0, 0, 343, 257, 0, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, - 279, 646, 647, 648, 0, 0, 0, 0, 0, 0, - 0, 0, 280, 0, 0, 0, 0, 0, 349, 649, - 0, 650, 651, 652, 653, 654, 655, 656, 657, 658, - 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, - 669, 670, 0, 254, 255, 256, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 400, 257, 0, 258, 259, 260, 261, 262, 263, 264, + 274, 275, 276, 277, 278, 0, 279, 0, 0, 0, + 254, 255, 256, 0, 0, 0, 0, 0, 280, 0, + 0, 0, 0, 0, 0, 0, 0, 680, 257, 852, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, + 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, + 722, 257, 0, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, + 0, 0, 0, 0, 0, 0, 0, 280, 0, 0, + 0, 0, 0, 905, 257, 0, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 0, 279, 0, + 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, + 280, 0, 0, 0, 0, 0, 0, 853, 257, 0, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, + 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, + 281, 257, 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 0, 279, 0, 254, 255, 256, + 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, 280, 0, 0, - 0, 0, 0, 0, 475, 257, 0, 258, 259, 260, + 0, 0, 0, 342, 257, 0, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 0, 279, 0, + 254, 255, 256, 0, 0, 0, 0, 0, 0, 0, + 280, 0, 0, 0, 0, 0, 0, 343, 257, 0, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 646, 647, 648, 0, 0, 0, 0, + 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, + 349, 649, 0, 650, 651, 652, 653, 654, 655, 656, + 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, + 667, 668, 669, 670, 0, 0, 0, 771, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 671, 0, 0, + 0, 0, 400, 505, 506, 0, 0, 0, 0, 507, + 0, 508, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 254, 255, 256, + 0, 31, 32, 123, 0, 0, 0, 0, 0, 0, + 0, 510, 0, 0, 0, 257, 475, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 280, 0, 254, 255, 256, 0, 764, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 257, 307, 258, 259, 260, 261, 262, 263, 264, + 0, 0, 0, 0, 0, 148, 0, 0, 0, 0, + 0, 280, 0, 0, 0, 0, 0, 0, 0, 765, + 0, 512, 68, 69, 70, 71, 72, 254, 255, 256, + 0, 0, 0, 513, 0, 0, 0, 0, 514, 75, + 76, 515, 0, 516, 0, 257, 0, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, + 254, 255, 256, 0, 0, 0, 307, 0, 0, 0, + 0, 280, 0, 0, 0, 0, 0, 0, 257, 0, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 505, 506, 0, 0, 0, 0, 507, + 0, 508, 0, 0, 280, 0, 0, 0, 0, 0, + 0, 0, 0, 509, 0, 0, 0, 0, 0, 505, + 506, 31, 32, 123, 0, 507, 315, 508, 0, 0, + 0, 510, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 31, 32, 123, + 0, 0, 0, 0, 0, 0, 0, 510, 0, 0, + 0, 0, 0, 0, 0, 148, 0, 0, 0, 614, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 511, + 0, 512, 68, 69, 70, 71, 72, 0, 0, 0, + 0, 148, 0, 513, 0, 0, 0, 0, 514, 75, + 76, 515, 0, 516, 0, 0, 0, 512, 68, 69, + 70, 71, 72, 254, 255, 256, 0, 0, 0, 513, + 0, 0, 0, 0, 514, 75, 76, 515, 0, 516, + 0, 257, 726, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 0, 279, 0, 505, 506, 0, - 0, 0, 0, 507, 0, 508, 0, 280, 0, 0, - 0, 0, 0, 0, 0, 0, 315, 509, 0, 0, - 0, 0, 505, 506, 0, 31, 32, 123, 507, 0, - 508, 0, 0, 0, 0, 510, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 31, 32, 123, 0, 0, 0, 0, 0, 0, 0, - 510, 0, 0, 0, 0, 0, 0, 0, 0, 148, - 0, 0, 614, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 511, 0, 512, 68, 69, 70, 71, - 72, 0, 0, 0, 148, 0, 0, 513, 0, 0, - 0, 0, 514, 75, 76, 515, 0, 516, 0, 0, - 512, 68, 69, 70, 71, 72, 254, 255, 256, 0, - 0, 0, 513, 0, 0, 0, 0, 514, 75, 76, - 515, 0, 516, 0, 257, 725, 258, 259, 260, 261, + 275, 276, 277, 278, 0, 279, 254, 255, 256, 0, + 0, 0, 0, 0, 0, 0, 0, 280, 0, 0, + 0, 0, 0, 0, 257, 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 0, 279, 254, - 255, 256, 0, 0, 0, 0, 0, 0, 0, 0, - 280, 0, 0, 0, 0, 0, 0, 257, 0, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 0, 279, 255, 256, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 280, 0, 0, 0, 0, 0, 257, + 272, 273, 274, 275, 276, 277, 278, 0, 279, 646, + 647, 648, 0, 0, 0, 0, 0, 0, 0, 0, + 280, 0, 0, 0, 0, 0, 0, 649, 860, 650, + 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, + 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, + 646, 647, 648, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 671, 0, 0, 0, 0, 649, 0, + 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, + 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, + 670, 255, 256, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 671, 0, 0, 0, 257, 0, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 0, 279, 647, 648, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, + 649, 0, 650, 651, 652, 653, 654, 655, 656, 657, + 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, + 668, 669, 670, 256, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 671, 0, 0, 257, 0, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 256, 279, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 280, 0, 0, 257, 0, + 277, 278, 648, 279, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 280, 0, 0, 649, 0, + 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, + 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, + 670, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 649, 671, 650, 651, 652, 653, 654, + 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, + 665, 666, 667, 668, 669, 670, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 671, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 0, 279, 646, 647, 648, 0, 0, 0, 0, - 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, - 0, 649, 858, 650, 651, 652, 653, 654, 655, 656, - 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 646, 647, 648, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 649, 0, 650, 651, 652, 653, 654, 655, - 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 647, 648, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 649, 0, 650, 651, 652, 653, 654, 655, - 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 648, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 649, 0, 650, 651, 652, 653, 654, 655, 656, + 278, 0, 279, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 280, 650, 651, 652, 653, 654, + 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, + 665, 666, 667, 668, 669, 670, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 671, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 0, 279, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 280, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 257, 0, 258, 259, 260, 261, + 667, 668, 669, 670, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 671, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, 279, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 280, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 0, 279, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 280, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 0, 279, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 280, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 0, - 279, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 649, 280, 650, 651, 652, 653, 654, 655, 656, - 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 650, 651, 652, 653, 654, 655, - 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 651, 652, 653, 654, 655, - 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 652, 653, 654, 655, 656, - 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670 + 280, 652, 653, 654, 655, 656, 657, 658, 659, 660, + 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 671 }; static const yytype_int16 yycheck[] = { - 24, 25, 4, 28, 28, 126, 29, 30, 28, 489, - 681, 279, 24, 25, 253, 78, 28, 622, 394, 28, - 8, 44, 625, 242, 480, 8, 482, 8, 887, 53, - 503, 8, 11, 8, 28, 8, 8, 28, 8, 8, - 8, 712, 345, 8, 800, 8, 8, 4, 8, 8, - 74, 64, 8, 77, 8, 57, 808, 248, 249, 298, - 8, 8, 8, 81, 367, 76, 253, 66, 64, 64, - 74, 50, 311, 312, 64, 74, 74, 76, 297, 0, - 64, 0, 321, 221, 323, 51, 148, 225, 74, 76, - 152, 76, 213, 118, 33, 148, 93, 63, 236, 152, - 238, 239, 240, 101, 102, 69, 70, 71, 299, 172, - 301, 298, 175, 154, 570, 76, 101, 116, 122, 74, - 64, 154, 124, 154, 311, 312, 150, 145, 95, 96, - 97, 28, 74, 157, 76, 148, 74, 76, 76, 163, - 74, 410, 74, 127, 157, 157, 171, 64, 159, 901, - 149, 64, 74, 152, 152, 152, 629, 913, 631, 182, - 159, 157, 157, 157, 154, 156, 152, 157, 156, 157, - 1029, 157, 159, 156, 155, 199, 200, 201, 397, 156, - 932, 156, 206, 156, 156, 561, 156, 156, 156, 64, - 214, 156, 155, 155, 206, 155, 155, 152, 159, 155, - 224, 155, 214, 227, 148, 184, 64, 155, 155, 155, - 154, 76, 224, 157, 127, 157, 81, 159, 152, 157, - 152, 159, 33, 154, 181, 33, 417, 149, 253, 76, - 152, 24, 25, 472, 81, 28, 215, 216, 74, 842, - 154, 148, 93, 74, 253, 152, 74, 154, 76, 93, - 489, 74, 127, 154, 279, 279, 47, 48, 49, 279, - 51, 61, 62, 74, 74, 76, 76, 279, 76, 127, - 279, 154, 63, 298, 122, 578, 93, 733, 74, 148, - 76, 146, 147, 152, 76, 309, 311, 312, 122, 298, - 74, 93, 76, 154, 122, 319, 321, 162, 323, 146, - 147, 152, 311, 312, 74, 116, 116, 912, 152, 95, - 96, 97, 321, 149, 323, 584, 152, 74, 129, 76, - 116, 345, 74, 626, 76, 77, 350, 807, 307, 157, - 354, 159, 116, 601, 76, 152, 360, 74, 149, 149, - 559, 152, 152, 367, 407, 129, 76, 157, 159, 159, - 152, 81, 74, 149, 146, 147, 152, 381, 74, 116, - 130, 131, 152, 159, 157, 149, 156, 157, 152, 381, - 157, 328, 158, 592, 593, 159, 154, 680, 93, 149, - 154, 1052, 152, 76, 603, 604, 410, 154, 81, 76, - 28, 76, 149, 74, 81, 152, 81, 155, 156, 424, - 402, 156, 159, 145, 146, 147, 44, 45, 130, 131, - 96, 97, 50, 206, 52, 145, 146, 147, 47, 48, - 49, 214, 155, 156, 904, 96, 97, 149, 407, 453, - 152, 224, 64, 155, 72, 73, 74, 152, 707, 156, - 157, 453, 148, 64, 82, 402, 152, 472, 154, 95, - 96, 97, 145, 146, 147, 758, 480, 760, 482, 146, - 147, 146, 147, 472, 489, 95, 96, 97, 480, 148, - 482, 33, 158, 152, 64, 154, 69, 70, 116, 148, - 489, 505, 506, 507, 508, 509, 279, 158, 69, 70, - 71, 515, 516, 148, 132, 133, 134, 135, 136, 137, - 69, 70, 24, 25, 528, 64, 144, 127, 532, 82, - 83, 149, 150, 151, 152, 101, 154, 152, 542, 63, - 44, 45, 46, 47, 48, 49, 152, 51, 158, 148, - 542, 44, 45, 46, 47, 48, 49, 148, 495, 63, - 731, 8, 845, 160, 152, 152, 570, 148, 817, 348, - 148, 127, 345, 28, 578, 154, 580, 14, 570, 156, - 584, 156, 14, 157, 155, 589, 155, 155, 807, 161, - 74, 158, 101, 74, 367, 154, 601, 601, 125, 74, - 64, 601, 111, 112, 113, 114, 115, 116, 381, 601, - 28, 85, 601, 160, 8, 618, 156, 718, 74, 76, - 624, 625, 626, 93, 74, 874, 155, 155, 827, 74, - 156, 64, 624, 625, 14, 806, 640, 158, 642, 922, - 125, 160, 646, 647, 648, 649, 650, 651, 652, 653, + 24, 25, 126, 242, 28, 11, 28, 682, 4, 489, + 279, 253, 24, 25, 622, 78, 28, 394, 29, 30, + 480, 625, 482, 8, 4, 8, 889, 28, 810, 53, + 802, 8, 8, 44, 8, 8, 503, 8, 713, 8, + 8, 8, 76, 8, 50, 8, 74, 64, 8, 8, + 74, 8, 8, 77, 248, 249, 298, 8, 297, 8, + 8, 57, 64, 81, 8, 74, 64, 66, 0, 311, + 312, 76, 64, 64, 148, 74, 81, 76, 152, 321, + 33, 323, 96, 97, 74, 28, 76, 33, 0, 213, + 154, 95, 96, 97, 76, 47, 48, 49, 64, 348, + 47, 48, 49, 154, 51, 299, 51, 301, 154, 172, + 570, 63, 175, 122, 76, 28, 63, 116, 63, 101, + 28, 903, 28, 76, 152, 159, 150, 145, 124, 157, + 76, 148, 122, 157, 74, 64, 76, 154, 76, 163, + 157, 146, 147, 915, 158, 157, 148, 74, 156, 74, + 149, 76, 934, 152, 158, 157, 157, 162, 397, 157, + 159, 127, 629, 154, 631, 157, 157, 157, 1031, 159, + 155, 182, 74, 156, 157, 199, 200, 201, 184, 156, + 156, 155, 206, 156, 561, 156, 33, 156, 156, 156, + 214, 156, 74, 156, 206, 155, 155, 159, 155, 155, + 224, 181, 214, 227, 155, 118, 155, 155, 74, 215, + 216, 155, 224, 156, 74, 64, 76, 157, 74, 159, + 76, 159, 149, 417, 64, 152, 74, 74, 154, 76, + 472, 74, 157, 74, 159, 76, 154, 64, 74, 93, + 844, 490, 24, 25, 148, 74, 28, 489, 152, 74, + 152, 76, 74, 101, 102, 279, 116, 279, 171, 122, + 116, 122, 148, 93, 130, 131, 152, 279, 154, 116, + 152, 76, 93, 129, 734, 116, 81, 154, 127, 76, + 93, 74, 129, 149, 81, 309, 152, 127, 157, 149, + 76, 116, 152, 149, 74, 319, 152, 157, 152, 159, + 127, 307, 149, 159, 152, 152, 914, 76, 149, 152, + 76, 152, 159, 149, 74, 81, 152, 154, 159, 154, + 559, 345, 152, 76, 149, 74, 350, 152, 81, 809, + 354, 152, 601, 64, 159, 154, 360, 130, 131, 152, + 253, 146, 147, 367, 407, 253, 93, 76, 328, 146, + 147, 154, 81, 592, 593, 93, 149, 381, 154, 152, + 146, 147, 155, 152, 603, 604, 279, 156, 157, 381, + 619, 279, 96, 97, 33, 157, 145, 146, 147, 1054, + 146, 147, 95, 96, 97, 298, 410, 64, 253, 64, + 298, 148, 145, 146, 147, 152, 148, 154, 311, 312, + 152, 407, 154, 311, 312, 152, 402, 148, 321, 148, + 323, 152, 148, 321, 152, 323, 145, 146, 147, 61, + 62, 221, 402, 64, 206, 225, 906, 127, 74, 453, + 76, 77, 214, 298, 158, 345, 236, 101, 238, 239, + 240, 453, 224, 155, 156, 158, 311, 312, 44, 45, + 46, 47, 48, 49, 152, 51, 480, 367, 482, 69, + 70, 71, 63, 102, 95, 96, 97, 63, 480, 108, + 482, 152, 111, 112, 113, 114, 115, 116, 117, 155, + 156, 505, 506, 507, 508, 509, 95, 96, 97, 69, + 70, 515, 516, 69, 70, 71, 148, 279, 69, 70, + 148, 750, 156, 157, 528, 24, 25, 160, 532, 82, + 83, 424, 8, 127, 102, 495, 152, 152, 542, 158, + 108, 148, 148, 111, 112, 113, 114, 115, 116, 117, + 542, 44, 45, 46, 47, 48, 49, 28, 732, 111, + 112, 113, 114, 115, 116, 156, 570, 154, 14, 157, + 63, 156, 14, 155, 578, 155, 580, 155, 570, 472, + 584, 158, 161, 345, 472, 589, 74, 809, 154, 74, + 158, 125, 74, 28, 64, 160, 489, 601, 85, 601, + 8, 489, 156, 93, 76, 367, 74, 74, 155, 601, + 829, 156, 155, 74, 64, 719, 158, 14, 125, 381, + 624, 625, 626, 160, 160, 154, 154, 618, 154, 154, + 160, 14, 624, 625, 808, 156, 640, 160, 642, 156, + 154, 152, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 111, 112, 113, - 114, 115, 116, 160, 154, 924, 680, 681, 154, 14, - 453, 154, 686, 154, 967, 904, 152, 156, 160, 156, - 148, 628, 160, 154, 686, 158, 74, 868, 981, 74, - 74, 705, 14, 707, 156, 154, 154, 480, 712, 482, - 152, 490, 158, 154, 126, 155, 154, 160, 157, 968, - 74, 970, 128, 8, 160, 684, 1009, 898, 899, 733, - 1013, 145, 505, 506, 507, 508, 509, 105, 742, 14, - 74, 733, 701, 516, 74, 160, 155, 158, 8, 157, - 742, 155, 8, 1002, 758, 154, 760, 86, 156, 156, - 14, 154, 128, 155, 102, 156, 770, 154, 1051, 542, - 108, 155, 158, 111, 112, 113, 114, 115, 116, 117, - 127, 1030, 108, 156, 505, 506, 507, 508, 155, 153, - 64, 64, 92, 156, 127, 516, 800, 570, 160, 155, - 155, 128, 807, 156, 106, 578, 74, 76, 800, 1058, - 160, 157, 154, 817, 157, 28, 71, 821, 807, 156, - 158, 157, 14, 74, 76, 14, 28, 14, 601, 1078, - 74, 834, 160, 156, 155, 160, 160, 938, 842, 157, - 619, 845, 14, 158, 76, 158, 71, 76, 158, 102, - 842, 624, 625, 626, 858, 108, 93, 158, 111, 112, - 113, 114, 115, 116, 117, 156, 93, 640, 109, 156, - 874, 148, 76, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 835, 904, - 90, 158, 14, 906, 886, 158, 155, 680, 74, 913, - 156, 154, 76, 686, 74, 904, 74, 8, 922, 88, - 924, 913, 157, 156, 155, 646, 647, 648, 649, 650, + 664, 665, 666, 667, 668, 669, 670, 671, 628, 148, + 74, 74, 158, 74, 14, 156, 154, 681, 682, 154, + 154, 158, 155, 687, 906, 126, 152, 74, 578, 63, + 154, 453, 157, 8, 923, 687, 870, 160, 128, 685, + 160, 145, 706, 105, 708, 74, 74, 14, 601, 713, + 158, 160, 155, 601, 8, 944, 702, 946, 480, 157, + 482, 155, 8, 154, 953, 86, 900, 901, 156, 156, + 734, 154, 961, 128, 14, 156, 626, 966, 155, 743, + 410, 154, 734, 505, 506, 507, 508, 509, 155, 158, + 127, 743, 108, 64, 516, 759, 156, 761, 64, 155, + 101, 153, 160, 992, 127, 156, 92, 771, 156, 998, + 111, 112, 113, 114, 115, 116, 155, 155, 128, 106, + 542, 74, 157, 154, 160, 157, 76, 28, 71, 156, + 160, 681, 157, 1022, 14, 76, 74, 14, 802, 28, + 160, 160, 156, 155, 157, 14, 74, 14, 570, 158, + 802, 76, 158, 1042, 8, 819, 578, 71, 76, 823, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 158, 93, 1064, 940, 158, 156, 601, + 844, 1070, 93, 847, 156, 836, 109, 148, 76, 158, + 90, 155, 844, 74, 14, 154, 860, 76, 1087, 156, + 74, 74, 624, 625, 626, 8, 88, 61, 62, 759, + 157, 761, 876, 155, 158, 105, 76, 837, 640, 156, + 154, 528, 158, 155, 646, 647, 648, 649, 650, 651, + 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, + 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, + 157, 915, 888, 158, 584, 360, 809, 908, 532, 681, + 924, 809, 926, 915, 1078, 687, 708, 959, 747, 5, + 6, 702, 8, 9, 10, 11, 12, 13, 14, 15, + 542, 17, 18, 19, 20, 21, 22, 23, 402, 402, + 26, 27, 851, 823, 365, 818, 1004, 847, 871, 78, + 863, 155, 38, 640, 639, 969, 970, 826, 972, 45, + 46, 206, 734, 932, 50, 687, 52, 219, 685, 983, + -1, 743, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 955, -1, 759, -1, 761, + 1004, -1, 78, -1, -1, -1, -1, 1011, -1, 771, + -1, 1015, -1, 906, -1, -1, -1, -1, 906, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1032, 61, + 62, -1, 11, -1, 924, -1, -1, -1, 708, -1, + 802, -1, -1, -1, -1, 24, 25, -1, -1, 1053, + 1054, -1, -1, 129, -1, -1, 1060, -1, -1, -1, + -1, -1, -1, 1023, 140, -1, -1, -1, -1, -1, + -1, 50, -1, -1, -1, -1, 1080, -1, -1, 969, + -1, -1, 844, -1, -1, 847, -1, -1, -1, -1, + -1, -1, -1, 983, -1, -1, 172, -1, 860, 175, + -1, -1, 178, -1, -1, -1, -1, 183, 184, -1, + -1, -1, -1, -1, -1, -1, 505, 506, 507, 508, + -1, 1011, -1, 155, 156, 1015, -1, 516, -1, -1, + -1, -1, -1, -1, 345, -1, -1, -1, -1, 215, + 216, -1, -1, 219, -1, -1, -1, 223, -1, 819, + -1, -1, -1, 915, -1, -1, 367, -1, -1, 235, + -1, -1, 924, 1053, -1, -1, -1, -1, -1, -1, + -1, -1, 248, 249, -1, -1, -1, -1, 157, 255, + -1, -1, -1, -1, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, -1, 280, 184, 876, 969, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 983, -1, 299, -1, 301, 302, 206, -1, -1, + -1, 307, -1, -1, -1, 214, 215, 216, -1, 315, + -1, 317, -1, -1, -1, 224, -1, -1, -1, 1011, + -1, -1, -1, 1015, -1, 331, 926, 646, 647, 648, + 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, + 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, + 669, 670, 671, -1, -1, -1, 362, -1, -1, -1, + -1, 1053, -1, -1, 505, 506, 507, 508, 509, -1, + 970, -1, 972, -1, -1, 516, -1, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, -1, -1, -1, -1, -1, -1, 307, -1, + -1, 407, -1, -1, 1004, -1, -1, -1, -1, -1, + -1, 417, -1, -1, 420, -1, -1, -1, -1, 425, + -1, 427, -1, 429, 430, 431, 61, 62, -1, -1, + -1, -1, 1032, 8, -1, -1, -1, 578, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 771, -1, -1, -1, -1, -1, 93, -1, + 1060, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 381, -1, -1, -1, -1, -1, -1, -1, + 1080, -1, -1, -1, -1, 626, 61, 62, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 407, 640, + -1, -1, -1, -1, -1, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, - 158, 158, 105, 154, 76, 155, 532, 360, 157, 1076, - 733, 158, 542, 967, 968, 528, 970, 402, 402, 742, - 749, 707, 746, 849, 957, 821, 701, 981, 1002, 816, - 365, 869, 78, 861, 824, 758, 640, 760, 206, 639, - 684, 219, 930, 686, -1, -1, -1, 770, 1002, -1, - -1, -1, -1, -1, -1, 1009, -1, -1, -1, 1013, - -1, 11, -1, -1, -1, -1, 953, -1, -1, -1, - -1, -1, 8, -1, 24, 25, 1030, 800, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, -1, -1, -1, -1, -1, -1, 1051, 1052, 770, - 50, -1, -1, -1, 1058, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, -1, 51, 842, - -1, -1, 845, -1, 1078, 61, 62, -1, -1, -1, - 63, -1, -1, -1, 1021, 858, 5, 6, -1, 8, - 9, 10, 11, 12, 13, 14, 15, -1, 17, 18, - 19, 20, 21, 22, 23, -1, -1, 26, 27, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 38, - -1, -1, -1, -1, -1, -1, 45, 46, -1, -1, - -1, 50, -1, 52, -1, -1, -1, 858, -1, -1, - 913, -1, 921, -1, -1, -1, -1, -1, -1, 922, - -1, -1, -1, -1, -1, -1, -1, 157, -1, 78, - -1, -1, -1, 942, -1, 944, -1, -1, -1, 155, - -1, -1, 951, -1, -1, -1, -1, -1, -1, -1, - 959, -1, -1, -1, 184, 964, -1, -1, -1, -1, - -1, -1, -1, -1, 967, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 206, -1, 981, -1, - 129, 990, -1, -1, 214, 215, 216, 996, -1, -1, - -1, 140, -1, -1, 224, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1009, -1, -1, -1, - 1013, 1020, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 172, -1, -1, 175, -1, -1, 178, - -1, 1040, -1, -1, 183, 184, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 1051, -1, - -1, -1, -1, 1062, -1, -1, -1, -1, -1, 1068, - -1, -1, -1, -1, -1, 345, 215, 216, -1, -1, - 219, -1, -1, -1, 223, -1, 1085, 307, -1, -1, - -1, -1, -1, -1, -1, -1, 235, 367, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 248, - 249, -1, -1, -1, -1, -1, 255, -1, -1, -1, - -1, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - -1, 280, -1, -1, -1, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, -1, -1, - 299, 381, 301, 302, -1, -1, -1, -1, 307, -1, - -1, -1, -1, 9, 10, 11, 315, -1, 317, -1, - -1, -1, -1, -1, -1, -1, -1, 407, -1, -1, - -1, 27, 331, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, -1, 51, -1, -1, -1, -1, - -1, -1, -1, 362, -1, -1, -1, 63, -1, -1, - -1, -1, -1, 453, -1, 505, 506, 507, 508, 509, - -1, -1, -1, -1, -1, -1, 516, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 480, -1, 482, -1, -1, -1, -1, -1, 407, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 417, -1, - -1, 420, -1, -1, -1, -1, 425, -1, 427, -1, - 429, 430, 431, -1, 61, 62, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 9, 10, 11, 578, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 542, 27, 160, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, -1, 51, -1, -1, - 570, -1, -1, -1, -1, -1, 626, -1, -1, 63, + 671, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 681, 860, -1, -1, 453, -1, -1, -1, -1, -1, + 556, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, -1, 571, -1, -1, -1, -1, + -1, 480, -1, 482, -1, -1, -1, -1, -1, -1, + 155, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 597, -1, -1, -1, -1, -1, -1, 61, 62, + -1, -1, -1, -1, -1, -1, -1, -1, 614, -1, + -1, -1, -1, -1, -1, -1, 622, 623, 759, -1, + 761, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 771, -1, -1, 542, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 640, -1, -1, -1, -1, -1, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, - 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, - 670, -1, -1, -1, 624, 625, -1, -1, -1, -1, - 680, -1, -1, 9, 10, 11, -1, 556, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 27, 571, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 158, 51, -1, -1, 597, -1, - -1, -1, -1, -1, 684, -1, 686, 63, -1, -1, - -1, -1, -1, -1, -1, 614, -1, -1, -1, -1, - -1, 701, -1, 622, 623, -1, -1, -1, 758, -1, - 760, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 770, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 733, -1, -1, -1, 8, -1, -1, - -1, -1, 742, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 684, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 156, -1, 701, -1, -1, -1, -1, -1, -1, -1, - 61, 62, -1, -1, -1, 845, -1, -1, -1, -1, - 800, -1, -1, -1, -1, -1, -1, -1, 858, -1, - -1, -1, 731, 732, 61, 62, -1, -1, -1, -1, - -1, -1, -1, 9, 10, 11, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 754, -1, -1, -1, -1, - -1, 27, 842, 29, 30, 31, 32, 33, 34, 35, + -1, 570, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, -1, -1, -1, -1, 685, + -1, -1, 61, 62, -1, -1, -1, -1, -1, -1, + -1, -1, 155, 156, -1, -1, 702, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 847, -1, -1, 61, + 62, -1, -1, -1, -1, 624, 625, -1, -1, 860, + -1, -1, -1, -1, -1, -1, 732, 733, -1, -1, + 9, 10, 11, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, -1, -1, 27, 755, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, -1, -1, -1, 685, 156, 687, -1, + 61, 62, -1, 924, 63, -1, -1, -1, -1, -1, + -1, -1, -1, 702, -1, -1, -1, -1, 804, -1, + -1, -1, 808, 155, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, -1, 51, -1, 825, + -1, -1, -1, -1, -1, 734, -1, -1, 969, 63, + -1, -1, -1, -1, 743, -1, -1, -1, -1, -1, + -1, 27, 983, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, -1, 51, -1, -1, -1, -1, - -1, -1, 922, -1, -1, -1, -1, 63, -1, -1, - -1, -1, -1, 802, 155, -1, -1, 806, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, -1, -1, 823, -1, -1, -1, 155, 156, - -1, -1, -1, 913, -1, -1, -1, 967, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 981, -1, -1, -1, -1, 61, 62, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 868, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1009, - -1, -1, -1, 1013, 3, 4, 5, 6, 7, -1, - -1, -1, 158, 12, 13, -1, -1, -1, -1, 898, - 899, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 912, -1, -1, -1, -1, -1, -1, - -1, 1051, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, 68, - 155, 156, -1, 72, 73, 74, 75, 76, -1, 78, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - 89, -1, 91, -1, -1, 94, -1, -1, -1, 98, - 99, 100, 101, 102, 103, 104, -1, -1, 107, 108, - -1, 110, -1, -1, -1, 114, 115, 116, -1, 118, - 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, 157, -1, - 159, -1, 161, 162, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, 68, -1, -1, -1, 72, 73, - 74, 75, 76, -1, 78, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, - 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, - 104, -1, -1, 107, -1, -1, 110, -1, -1, -1, - 114, 115, 116, -1, 118, 119, 120, 121, 122, 123, - 124, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, 156, 157, -1, 159, -1, 161, 162, 28, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, 68, - -1, -1, -1, 72, 73, 74, 75, 76, -1, 78, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - 89, -1, 91, -1, -1, 94, -1, -1, -1, 98, - 99, 100, 101, -1, 103, 104, -1, -1, 107, -1, - -1, 110, -1, -1, -1, -1, -1, 116, -1, 118, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, 157, -1, - 159, -1, 161, 162, 28, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, 68, -1, -1, -1, 72, 73, - 74, 75, 76, -1, 78, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, - 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, - 104, -1, -1, 107, -1, -1, 110, -1, -1, -1, - -1, -1, 116, -1, 118, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, 156, 157, -1, 159, -1, 161, 162, 28, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, 68, - -1, -1, -1, 72, 73, 74, 75, 76, -1, 78, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - 89, -1, 91, -1, -1, 94, -1, -1, -1, 98, - 99, 100, 101, -1, 103, 104, -1, -1, 107, -1, - -1, 110, -1, -1, -1, -1, -1, 116, -1, 118, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, 157, -1, - 159, -1, 161, 162, 28, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, 68, -1, -1, -1, 72, 73, - 74, 75, 76, -1, 78, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, 89, -1, 91, -1, -1, - 94, -1, -1, -1, 98, 99, 100, 101, -1, 103, - 104, -1, -1, 107, -1, -1, 110, -1, -1, -1, - -1, -1, 116, -1, 118, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, 156, 157, -1, 159, -1, 161, 162, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, 68, - -1, -1, -1, 72, 73, 74, 75, 76, -1, 78, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - 89, -1, 91, -1, -1, 94, -1, -1, -1, 98, - 99, 100, 101, -1, 103, 104, -1, -1, 107, -1, - -1, 110, -1, -1, -1, -1, -1, 116, -1, 118, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, 157, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 101, 51, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 63, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, 153, - 154, 155, -1, -1, -1, 159, -1, 161, 162, -1, - -1, -1, -1, -1, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, -1, -1, - -1, -1, -1, 82, -1, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 101, 51, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 63, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, 153, 154, -1, -1, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, -1, 51, 101, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 63, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, -1, -1, -1, 159, -1, 161, 162, -1, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, 61, 62, - -1, -1, -1, 82, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - -1, 51, 101, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 63, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 156, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 101, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, 156, -1, -1, 159, -1, 161, 162, -1, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, 61, 62, - -1, -1, -1, 82, 33, 34, 35, 36, 37, 38, + 46, 47, 48, 49, 870, 51, -1, -1, -1, -1, + 1011, -1, -1, -1, 1015, -1, -1, 63, -1, -1, + -1, 160, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 802, 900, 901, 3, 4, 5, 6, + 7, -1, -1, -1, -1, 12, 13, -1, 914, -1, + -1, -1, 1053, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, -1, 101, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, 156, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, - -1, -1, 155, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, -1, + 49, -1, 51, -1, -1, 844, -1, 44, 45, -1, + -1, -1, -1, 50, 63, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, 68, -1, -1, -1, 72, 73, 74, 75, 76, + -1, 78, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, 89, -1, 91, -1, -1, 94, -1, -1, + -1, 98, 99, 100, 101, 102, 103, 104, -1, -1, + 107, 108, -1, 110, -1, -1, 915, 114, 115, 116, + -1, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + 157, -1, 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, 68, -1, -1, -1, + 72, 73, 74, 75, 76, -1, 78, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, + -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, + -1, 103, 104, -1, -1, 107, -1, -1, 110, -1, + -1, -1, 114, 115, 116, -1, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, 156, 157, -1, 159, -1, 161, + 162, 28, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, 68, -1, -1, -1, 72, 73, 74, 75, 76, + -1, 78, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, 89, -1, 91, -1, -1, 94, -1, -1, + -1, 98, 99, 100, 101, -1, 103, 104, -1, -1, + 107, -1, -1, 110, -1, -1, -1, -1, -1, 116, + -1, 118, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + 157, -1, 159, -1, 161, 162, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, 155, -1, -1, -1, 159, -1, 161, 162, -1, - -1, -1, -1, -1, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, 68, -1, -1, -1, + 72, 73, 74, 75, 76, -1, 78, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, + -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, + -1, 103, 104, -1, -1, 107, -1, -1, 110, -1, + -1, -1, -1, -1, 116, -1, 118, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, 156, 157, -1, 159, -1, 161, + 162, 28, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, 68, -1, -1, -1, 72, 73, 74, 75, 76, + -1, 78, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, 89, -1, 91, -1, -1, 94, -1, -1, + -1, 98, 99, 100, 101, -1, 103, 104, -1, -1, + 107, -1, -1, 110, -1, -1, -1, -1, -1, 116, + -1, 118, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + 157, -1, 159, -1, 161, 162, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, -1, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, 33, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, 68, -1, -1, -1, + 72, 73, 74, 75, 76, -1, 78, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, 89, -1, 91, + -1, -1, 94, -1, -1, -1, 98, 99, 100, 101, + -1, 103, 104, -1, -1, 107, -1, -1, 110, -1, + -1, -1, -1, -1, 116, -1, 118, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, 156, 157, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, 68, -1, -1, -1, 72, 73, 74, 75, 76, + -1, 78, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, 89, -1, 91, -1, -1, 94, -1, -1, + -1, 98, 99, 100, 101, -1, 103, 104, -1, -1, + 107, -1, -1, 110, -1, -1, -1, -1, -1, 116, + -1, 118, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + 157, -1, 159, -1, 161, 162, -1, -1, -1, -1, + -1, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 101, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 63, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, 63, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, 153, 154, 155, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, 33, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, -1, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 101, 51, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 63, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, 153, 154, -1, -1, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, + -1, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, -1, + -1, 63, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, -1, 51, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, -1, 51, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, -1, -1, -1, 159, -1, 161, 162, -1, - -1, -1, -1, -1, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, + 63, -1, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, 156, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, 156, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, -1, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, 33, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, -1, + 63, -1, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, 155, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, 33, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, -1, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, + -1, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, -1, -1, -1, 159, -1, 161, 162, -1, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, 61, 62, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, 33, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, - 93, -1, -1, -1, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, 3, - 4, 5, 6, 7, -1, 144, -1, -1, 12, 13, - 149, 150, 151, 152, -1, 154, -1, -1, -1, -1, - 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, -1, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, + -1, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 44, 45, -1, -1, -1, -1, 50, -1, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - 74, 75, 76, -1, -1, -1, -1, -1, 82, -1, + -1, -1, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, 3, 4, 5, 6, 7, -1, 144, -1, -1, + 12, 13, 149, 150, 151, 152, -1, 154, -1, -1, + -1, -1, 159, -1, 161, 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, -1, -1, 119, 120, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, -1, 132, 133, - 134, 135, 136, 137, 3, 4, 5, 6, 7, -1, - 144, -1, -1, 12, 13, 149, 150, 151, 152, -1, - 154, -1, -1, -1, -1, 159, -1, 161, 162, -1, + -1, -1, 44, 45, -1, -1, -1, -1, 50, -1, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, 74, 75, 76, -1, -1, -1, -1, -1, + 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 44, 45, -1, -1, -1, - -1, 50, -1, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, 72, 73, 74, 75, 76, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, -1, -1, 119, 120, -1, + -1, -1, -1, -1, -1, -1, -1, 129, 130, -1, + 132, 133, 134, 135, 136, 137, 3, 4, 5, 6, + 7, -1, 144, -1, -1, 12, 13, 149, 150, 151, + 152, -1, 154, -1, -1, -1, -1, 159, -1, 161, + 162, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 44, 45, -1, + -1, -1, -1, 50, -1, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, -1, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, + -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, -1, -1, - 119, 120, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, -1, 132, 133, 134, 135, 136, 137, -1, - -1, -1, -1, -1, -1, 144, 9, 10, 11, -1, - 149, 150, 151, 152, -1, 154, -1, -1, -1, -1, - 159, -1, 161, 162, 27, -1, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, -1, 51, 9, - 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, -1, 27, -1, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, - -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, - 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, -1, 51, -1, 9, 10, 11, -1, - -1, -1, -1, -1, -1, -1, 63, -1, -1, -1, - -1, -1, -1, -1, 27, 158, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, -1, 51, -1, - -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, -1, -1, 158, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, - -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, 158, 27, -1, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, -1, 51, -1, 9, 10, - 11, -1, -1, -1, -1, -1, -1, -1, 63, -1, - -1, -1, -1, -1, -1, 158, 27, -1, 29, 30, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + -1, -1, 119, 120, -1, -1, -1, -1, -1, -1, + -1, -1, 129, 130, -1, 132, 133, 134, 135, 136, + 137, -1, -1, -1, -1, -1, -1, 144, 9, 10, + 11, -1, 149, 150, 151, 152, -1, 154, -1, -1, + -1, -1, 159, -1, 161, 162, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, -1, - -1, -1, 63, -1, -1, -1, -1, -1, 156, 27, + -1, -1, 63, -1, -1, -1, -1, -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, 156, 27, -1, 29, 30, 31, 32, 33, 34, + -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, -1, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, 63, -1, - -1, -1, -1, -1, -1, 156, 27, -1, 29, 30, + -1, -1, -1, -1, -1, -1, 27, 158, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, -1, - -1, -1, 63, -1, -1, -1, -1, -1, 156, 27, - -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, + -1, -1, 63, -1, -1, -1, -1, -1, -1, 27, + 158, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, -1, 9, 10, 11, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 155, 27, -1, 29, 30, 31, 32, 33, 34, 35, + 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, + -1, -1, 27, 158, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, -1, 51, -1, -1, -1, + 9, 10, 11, -1, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, 158, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + 158, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, -1, 51, -1, 9, 10, 11, + 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, - -1, -1, -1, -1, 155, 27, -1, 29, 30, 31, + -1, -1, -1, 158, 27, -1, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, -1, 51, -1, + 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, 156, 27, -1, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + 156, 27, -1, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, + -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, + -1, -1, -1, 156, 27, -1, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, -1, 51, -1, + 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, 156, 27, -1, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + 156, 27, -1, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, -1, -1, -1, 28, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, + -1, -1, 155, 44, 45, -1, -1, -1, -1, 50, + -1, 52, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 9, 10, 11, + -1, 72, 73, 74, -1, -1, -1, -1, -1, -1, + -1, 82, -1, -1, -1, 27, 155, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 63, -1, 9, 10, 11, -1, 155, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 27, 128, 29, 30, 31, 32, 33, 34, 35, + -1, -1, -1, -1, -1, 116, -1, -1, -1, -1, + -1, 63, -1, -1, -1, -1, -1, -1, -1, 155, + -1, 132, 133, 134, 135, 136, 137, 9, 10, 11, + -1, -1, -1, 144, -1, -1, -1, -1, 149, 150, + 151, 152, -1, 154, -1, 27, -1, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, + 9, 10, 11, -1, -1, -1, 128, -1, -1, -1, + -1, 63, -1, -1, -1, -1, -1, -1, 27, -1, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, 44, 45, -1, -1, -1, -1, 50, + -1, 52, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, 64, -1, -1, -1, -1, -1, 44, + 45, 72, 73, 74, -1, 50, 128, 52, -1, -1, + -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, + -1, -1, -1, -1, -1, -1, -1, 82, -1, -1, + -1, -1, -1, -1, -1, 116, -1, -1, -1, 128, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 130, + -1, 132, 133, 134, 135, 136, 137, -1, -1, -1, + -1, 116, -1, 144, -1, -1, -1, -1, 149, 150, + 151, 152, -1, 154, -1, -1, -1, 132, 133, 134, + 135, 136, 137, 9, 10, 11, -1, -1, -1, 144, + -1, -1, -1, -1, 149, 150, 151, 152, -1, 154, + -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, -1, 51, -1, 44, 45, -1, - -1, -1, -1, 50, -1, 52, -1, 63, -1, -1, - -1, -1, -1, -1, -1, -1, 128, 64, -1, -1, - -1, -1, 44, 45, -1, 72, 73, 74, 50, -1, - 52, -1, -1, -1, -1, 82, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 72, 73, 74, -1, -1, -1, -1, -1, -1, -1, - 82, -1, -1, -1, -1, -1, -1, -1, -1, 116, - -1, -1, 128, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 130, -1, 132, 133, 134, 135, 136, - 137, -1, -1, -1, 116, -1, -1, 144, -1, -1, - -1, -1, 149, 150, 151, 152, -1, 154, -1, -1, - 132, 133, 134, 135, 136, 137, 9, 10, 11, -1, - -1, -1, 144, -1, -1, -1, -1, 149, 150, 151, - 152, -1, 154, -1, 27, 28, 29, 30, 31, 32, + 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, + -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, + -1, -1, -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, -1, - 63, -1, -1, -1, -1, -1, -1, 27, -1, 29, + 63, -1, -1, -1, -1, -1, -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - -1, 51, 10, 11, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 63, -1, -1, -1, -1, -1, 27, + 9, 10, 11, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 63, -1, -1, -1, -1, 27, -1, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 10, 11, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 63, -1, -1, -1, 27, -1, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, 10, 11, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 11, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 63, -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 11, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, -1, 51, 9, 10, 11, -1, -1, -1, -1, - -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, - -1, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 9, 10, 11, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 10, 11, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 27, -1, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 11, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 27, -1, 29, 30, 31, 32, 33, 34, 35, + 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 27, 63, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, -1, 51, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 63, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + -1, 51, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 63, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 27, -1, 29, 30, 31, 32, + 46, 47, 48, 49, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 63, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 63, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, -1, 51, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 63, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, -1, 51, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, -1, - 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 27, 63, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49 + 63, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 63 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2921,48 +2937,48 @@ static const yytype_uint16 yystos[] = 154, 81, 152, 167, 338, 148, 9, 10, 11, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 158, 93, 74, 174, 93, 74, 176, 74, 158, - 14, 154, 215, 156, 385, 154, 8, 155, 74, 76, - 77, 382, 344, 254, 158, 165, 291, 292, 154, 347, - 344, 8, 155, 155, 337, 152, 167, 126, 229, 230, - 325, 157, 154, 130, 131, 250, 251, 252, 253, 325, - 160, 158, 254, 254, 344, 28, 326, 254, 254, 370, - 351, 64, 157, 33, 344, 329, 186, 244, 345, 178, - 284, 344, 33, 129, 232, 349, 232, 337, 74, 28, - 181, 236, 239, 95, 96, 97, 239, 158, 128, 160, - 8, 342, 341, 167, 155, 74, 122, 338, 338, 338, - 28, 338, 338, 338, 338, 338, 338, 338, 338, 338, + 49, 63, 158, 93, 74, 174, 93, 74, 176, 74, + 158, 14, 154, 215, 156, 385, 154, 8, 155, 74, + 76, 77, 382, 344, 254, 158, 165, 291, 292, 154, + 347, 344, 8, 155, 155, 337, 152, 167, 126, 229, + 230, 325, 157, 154, 130, 131, 250, 251, 252, 253, + 325, 160, 158, 254, 254, 344, 28, 326, 254, 254, + 370, 351, 64, 157, 33, 344, 329, 186, 244, 345, + 178, 284, 344, 33, 129, 232, 349, 232, 337, 74, + 28, 181, 236, 239, 95, 96, 97, 239, 158, 128, + 160, 8, 342, 341, 167, 155, 74, 122, 338, 338, + 338, 28, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, 338, - 338, 338, 338, 105, 202, 74, 74, 337, 250, 386, - 376, 375, 14, 160, 160, 158, 64, 127, 287, 288, - 289, 353, 155, 256, 167, 230, 157, 8, 260, 250, - 155, 8, 218, 304, 297, 355, 356, 357, 358, 368, - 344, 347, 330, 246, 69, 70, 248, 156, 86, 156, - 349, 154, 128, 231, 231, 14, 178, 95, 156, 344, - 28, 156, 242, 158, 337, 337, 155, 338, 28, 154, - 201, 155, 374, 344, 158, 368, 369, 353, 64, 290, - 156, 260, 325, 102, 108, 111, 112, 113, 114, 115, - 116, 117, 158, 261, 264, 277, 278, 279, 280, 282, - 155, 108, 313, 252, 153, 219, 344, 334, 64, 64, - 254, 352, 160, 158, 127, 331, 69, 70, 249, 345, - 181, 156, 192, 233, 232, 155, 155, 337, 92, 156, - 242, 241, 128, 338, 203, 106, 207, 313, 155, 160, - 354, 368, 287, 158, 74, 265, 325, 262, 312, 280, - 8, 156, 157, 154, 157, 76, 368, 368, 353, 369, - 345, 28, 71, 245, 284, 374, 198, 196, 156, 240, - 178, 337, 325, 208, 157, 358, 160, 14, 8, 156, - 157, 266, 76, 281, 218, 74, 178, 33, 76, 314, - 178, 14, 160, 160, 28, 178, 156, 181, 155, 155, - 28, 181, 235, 235, 178, 204, 157, 178, 337, 325, - 74, 267, 268, 269, 270, 272, 273, 274, 325, 14, - 8, 156, 74, 14, 158, 76, 8, 155, 158, 337, - 247, 193, 178, 76, 178, 158, 158, 269, 156, 93, - 109, 156, 148, 337, 76, 263, 337, 33, 76, 178, - 28, 181, 234, 90, 155, 158, 275, 280, 271, 325, - 74, 14, 154, 76, 178, 156, 205, 74, 8, 337, - 250, 88, 157, 325, 155, 156, 178, 156, 157, 276, - 158, 178, 206, 158, 105, 209, 210, 211, 154, 211, - 325, 212, 76, 155, 213, 157, 178, 158 + 338, 338, 338, 338, 338, 105, 202, 74, 74, 337, + 250, 386, 376, 375, 14, 160, 160, 158, 64, 127, + 287, 288, 289, 353, 155, 256, 167, 230, 157, 8, + 260, 250, 155, 8, 218, 304, 297, 355, 356, 357, + 358, 368, 344, 347, 330, 246, 69, 70, 248, 156, + 86, 156, 349, 154, 128, 231, 231, 14, 178, 95, + 156, 344, 28, 156, 242, 158, 337, 337, 155, 338, + 28, 154, 201, 155, 374, 344, 158, 368, 369, 353, + 64, 290, 156, 260, 325, 102, 108, 111, 112, 113, + 114, 115, 116, 117, 158, 261, 264, 277, 278, 279, + 280, 282, 155, 108, 313, 252, 153, 219, 344, 334, + 64, 64, 254, 352, 160, 158, 127, 331, 69, 70, + 249, 345, 181, 156, 192, 233, 232, 155, 155, 337, + 92, 156, 242, 241, 128, 338, 203, 106, 207, 313, + 155, 160, 354, 368, 287, 158, 74, 265, 325, 262, + 312, 280, 8, 156, 157, 154, 157, 76, 368, 368, + 353, 369, 345, 28, 71, 245, 284, 374, 198, 196, + 156, 240, 178, 337, 325, 208, 157, 358, 160, 14, + 8, 156, 157, 266, 76, 281, 218, 74, 178, 33, + 76, 314, 178, 14, 160, 160, 28, 178, 156, 181, + 155, 155, 28, 181, 235, 235, 178, 204, 157, 178, + 337, 325, 74, 267, 268, 269, 270, 272, 273, 274, + 325, 14, 8, 156, 74, 14, 158, 76, 8, 155, + 158, 337, 247, 193, 178, 76, 178, 158, 158, 269, + 156, 93, 109, 156, 148, 337, 76, 263, 337, 33, + 76, 178, 28, 181, 234, 90, 155, 158, 275, 280, + 271, 325, 74, 14, 154, 76, 178, 156, 205, 74, + 8, 337, 250, 88, 157, 325, 155, 156, 178, 156, + 157, 276, 158, 178, 206, 158, 105, 209, 210, 211, + 154, 211, 325, 212, 76, 155, 213, 157, 178, 158 }; #define yyerrok (yyerrstatus = 0) @@ -5674,147 +5690,147 @@ yyreduce: case 445: - { (yyval).u.ast = zend_ast_create_binary(ZEND_DIV, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_POW, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 446: - { (yyval).u.ast = zend_ast_create_binary(ZEND_MOD, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_DIV, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 447: - { (yyval).u.ast = zend_ast_create_unary(ZEND_BOOL_NOT, (yyvsp[(2) - (2)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_MOD, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 448: - { (yyval).u.ast = zend_ast_create_unary(ZEND_BW_NOT, (yyvsp[(2) - (2)]).u.ast); } + { (yyval).u.ast = zend_ast_create_unary(ZEND_BOOL_NOT, (yyvsp[(2) - (2)]).u.ast); } break; case 449: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_unary(ZEND_BW_NOT, (yyvsp[(2) - (2)]).u.ast); } break; case 450: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 451: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_XOR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 452: - { (yyval).u.ast = zend_ast_create_binary(ZEND_SL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BW_XOR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 453: - { (yyval).u.ast = zend_ast_create_binary(ZEND_SR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_SL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 454: - { (yyval).u.ast = zend_ast_create_binary(ZEND_CONCAT, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_SR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 455: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_XOR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_CONCAT, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 456: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_XOR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 457: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 458: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 459: - { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_AND, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 460: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_IDENTICAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_BOOL_OR, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 461: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_NOT_IDENTICAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_IDENTICAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 462: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_NOT_IDENTICAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 463: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_NOT_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 464: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_NOT_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 465: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER, (yyvsp[(3) - (3)]).u.ast, (yyvsp[(1) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 466: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER, (yyvsp[(3) - (3)]).u.ast, (yyvsp[(1) - (3)]).u.ast); } break; case 467: - { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[(3) - (3)]).u.ast, (yyvsp[(1) - (3)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[(1) - (3)]).u.ast, (yyvsp[(3) - (3)]).u.ast); } break; case 468: - { (yyval).u.ast = zend_ast_create_ternary(ZEND_SELECT, (yyvsp[(1) - (4)]).u.ast, NULL, (yyvsp[(4) - (4)]).u.ast); } + { (yyval).u.ast = zend_ast_create_binary(ZEND_IS_SMALLER_OR_EQUAL, (yyvsp[(3) - (3)]).u.ast, (yyvsp[(1) - (3)]).u.ast); } break; case 469: - { (yyval).u.ast = zend_ast_create_ternary(ZEND_SELECT, (yyvsp[(1) - (5)]).u.ast, (yyvsp[(3) - (5)]).u.ast, (yyvsp[(5) - (5)]).u.ast); } + { (yyval).u.ast = zend_ast_create_ternary(ZEND_SELECT, (yyvsp[(1) - (4)]).u.ast, NULL, (yyvsp[(4) - (4)]).u.ast); } break; case 470: - { (yyval).u.ast = zend_ast_create_unary(ZEND_UNARY_PLUS, (yyvsp[(2) - (2)]).u.ast); } + { (yyval).u.ast = zend_ast_create_ternary(ZEND_SELECT, (yyvsp[(1) - (5)]).u.ast, (yyvsp[(3) - (5)]).u.ast, (yyvsp[(5) - (5)]).u.ast); } break; case 471: - { (yyval).u.ast = zend_ast_create_unary(ZEND_UNARY_MINUS, (yyvsp[(2) - (2)]).u.ast); } + { (yyval).u.ast = zend_ast_create_unary(ZEND_UNARY_PLUS, (yyvsp[(2) - (2)]).u.ast); } break; case 472: - { (yyval) = (yyvsp[(2) - (3)]); } + { (yyval).u.ast = zend_ast_create_unary(ZEND_UNARY_MINUS, (yyvsp[(2) - (2)]).u.ast); } break; case 473: - { (yyval) = (yyvsp[(1) - (1)]); } + { (yyval) = (yyvsp[(2) - (3)]); } break; case 474: @@ -5829,27 +5845,27 @@ yyreduce: case 476: - { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 477: - { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant); zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); (yyvsp[(3) - (3)]) = (yyval); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); } + { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC); } break; case 478: - { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(2) - (2)]), ZEND_RT, 0 TSRMLS_CC); } + { (yyval).op_type = IS_CONST; ZVAL_EMPTY_STRING(&(yyval).u.constant); zend_do_build_namespace_name(&(yyval), &(yyval), &(yyvsp[(3) - (3)]) TSRMLS_CC); (yyvsp[(3) - (3)]) = (yyval); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); } break; case 479: - { (yyval) = (yyvsp[(1) - (1)]); } + { char *tmp = estrndup(Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL((yyvsp[(2) - (2)]).u.constant), Z_STRLEN((yyvsp[(2) - (2)]).u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL((yyvsp[(2) - (2)]).u.constant)); Z_STRVAL((yyvsp[(2) - (2)]).u.constant) = tmp; ++Z_STRLEN((yyvsp[(2) - (2)]).u.constant); zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(2) - (2)]), ZEND_RT, 0 TSRMLS_CC); } break; case 480: - { (yyval) = (yyvsp[(2) - (3)]); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 481: @@ -5859,42 +5875,42 @@ yyreduce: case 482: - { if (Z_TYPE((yyvsp[(1) - (1)]).u.constant) == IS_CONSTANT) {zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC);} else {(yyval) = (yyvsp[(1) - (1)]);} } + { (yyval) = (yyvsp[(2) - (3)]); } break; case 483: - { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); } + { if (Z_TYPE((yyvsp[(1) - (1)]).u.constant) == IS_CONSTANT) {zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT, 1 TSRMLS_CC);} else {(yyval) = (yyvsp[(1) - (1)]);} } break; case 484: - { (yyval) = (yyvsp[(1) - (2)]); } + { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); } break; - case 487: + case 485: - { zend_do_add_static_array_element(&(yyval), &(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)])); } + { (yyval) = (yyvsp[(1) - (2)]); } break; case 488: - { zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(3) - (3)])); } + { zend_do_add_static_array_element(&(yyval), &(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)])); } break; case 489: - { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)])); } + { zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(3) - (3)])); } break; case 490: - { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(1) - (1)])); } + { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)])); } break; case 491: - { (yyval) = (yyvsp[(1) - (1)]); } + { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(1) - (1)])); } break; case 492: @@ -5904,7 +5920,7 @@ yyreduce: case 493: - { (yyval) = (yyvsp[(2) - (3)]); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 494: @@ -5914,109 +5930,109 @@ yyreduce: case 495: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); } + { (yyval) = (yyvsp[(2) - (3)]); } break; case 496: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_W, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); - zend_check_writable_variable(&(yyvsp[(1) - (1)])); } + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); } break; case 497: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_RW, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_W, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); zend_check_writable_variable(&(yyvsp[(1) - (1)])); } break; case 498: - { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); } + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_RW, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); + zend_check_writable_variable(&(yyvsp[(1) - (1)])); } break; case 499: - { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); } + { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); } break; case 500: - { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).EA = (yyvsp[(1) - (7)]).EA | ((yyvsp[(7) - (7)]).EA ? (yyvsp[(7) - (7)]).EA : (yyvsp[(6) - (7)]).EA); } + { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); } break; case 501: - { (yyval) = (yyvsp[(1) - (1)]); } + { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).EA = (yyvsp[(1) - (7)]).EA | ((yyvsp[(7) - (7)]).EA ? (yyvsp[(7) - (7)]).EA : (yyvsp[(6) - (7)]).EA); } break; case 502: - { (yyval).EA = (yyvsp[(2) - (2)]).EA; } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 503: - { (yyval).EA = 0; } + { (yyval).EA = (yyvsp[(2) - (2)]).EA; } break; case 504: - { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); } + { (yyval).EA = 0; } break; case 505: - { (yyval).EA = (yyvsp[(4) - (4)]).EA; } + { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 506: - { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { (yyval).EA = (yyvsp[(4) - (4)]).EA; } break; case 507: - { (yyvsp[(1) - (4)]).EA = ZEND_PARSED_METHOD_CALL; fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 508: - { zend_do_pop_object(&(yyval) TSRMLS_CC); zend_do_begin_method_call(&(yyval) TSRMLS_CC); } + { (yyvsp[(1) - (4)]).EA = ZEND_PARSED_METHOD_CALL; fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 509: - { zend_do_end_function_call(&(yyvsp[(1) - (2)]), &(yyval), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); } + { zend_do_pop_object(&(yyval) TSRMLS_CC); zend_do_begin_method_call(&(yyval) TSRMLS_CC); } break; case 510: - { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_METHOD_CALL; zend_do_push_object(&(yyval) TSRMLS_CC); } + { zend_do_end_function_call(&(yyvsp[(1) - (2)]), &(yyval), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); } break; case 511: - { (yyval) = (yyvsp[(1) - (1)]); zend_do_push_object(&(yyval) TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_METHOD_CALL; zend_do_push_object(&(yyval) TSRMLS_CC); } break; case 512: - { (yyval).EA = ZEND_PARSED_MEMBER; } + { (yyval) = (yyvsp[(1) - (1)]); zend_do_push_object(&(yyval) TSRMLS_CC); } break; case 513: - { (yyval) = (yyvsp[(1) - (1)]); } + { (yyval).EA = ZEND_PARSED_MEMBER; } break; case 514: - { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 515: - { (yyval) = (yyvsp[(3) - (3)]); zend_do_fetch_static_member(&(yyval), &(yyvsp[(1) - (3)]) TSRMLS_CC); } + { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 516: @@ -6026,27 +6042,27 @@ yyreduce: case 517: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (1)]);; } + { (yyval) = (yyvsp[(3) - (3)]); zend_do_fetch_static_member(&(yyval), &(yyvsp[(1) - (3)]) TSRMLS_CC); } break; case 518: - { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (1)]);; } break; case 519: - { zend_do_begin_variable_parse(TSRMLS_C); (yyvsp[(1) - (1)]).EA = ZEND_PARSED_FUNCTION_CALL; } + { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 520: - { fetch_array_dim(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); } + { zend_do_begin_variable_parse(TSRMLS_C); (yyvsp[(1) - (1)]).EA = ZEND_PARSED_FUNCTION_CALL; } break; case 521: - { (yyval) = (yyvsp[(1) - (1)]); } + { fetch_array_dim(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); } break; case 522: @@ -6056,57 +6072,57 @@ yyreduce: case 523: - { zend_do_begin_variable_parse(TSRMLS_C); (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_FUNCTION_CALL; } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 524: - { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_VARIABLE; } + { zend_do_begin_variable_parse(TSRMLS_C); (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_FUNCTION_CALL; } break; case 525: - { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); (yyval).EA = ZEND_PARSED_VARIABLE; } + { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_VARIABLE; } break; case 526: - { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_STATIC_MEMBER; } + { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); (yyval).EA = ZEND_PARSED_VARIABLE; } break; case 527: - { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); (yyval).EA = ZEND_PARSED_STATIC_MEMBER; } break; case 528: - { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 529: - { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } + { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 530: - { (yyval) = (yyvsp[(1) - (1)]); } + { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } break; case 531: - { (yyval) = (yyvsp[(3) - (4)]); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 532: - { (yyval).op_type = IS_UNUSED; } + { (yyval) = (yyvsp[(3) - (4)]); } break; case 533: - { (yyval) = (yyvsp[(1) - (1)]); } + { (yyval).op_type = IS_UNUSED; } break; case 534: @@ -6116,177 +6132,177 @@ yyreduce: case 535: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 536: - { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (2)]) TSRMLS_CC);} + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); } break; case 537: - { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (2)]) TSRMLS_CC);} break; case 538: - { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 539: - { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (1)]) TSRMLS_CC);} + { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 540: - { (yyval) = (yyvsp[(1) - (1)]); } + { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (1)]) TSRMLS_CC);} break; case 541: - { (yyval) = (yyvsp[(2) - (3)]); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 542: - { Z_LVAL((yyval).u.constant) = 1; } + { (yyval) = (yyvsp[(2) - (3)]); } break; case 543: - { Z_LVAL((yyval).u.constant)++; } + { Z_LVAL((yyval).u.constant) = 1; } break; - case 546: + case 544: - { zend_do_add_list_element(&(yyvsp[(1) - (1)]) TSRMLS_CC); } + { Z_LVAL((yyval).u.constant)++; } break; case 547: - { zend_do_new_list_begin(TSRMLS_C); } + { zend_do_add_list_element(&(yyvsp[(1) - (1)]) TSRMLS_CC); } break; case 548: - { zend_do_new_list_end(TSRMLS_C); } + { zend_do_new_list_begin(TSRMLS_C); } break; case 549: - { zend_do_add_list_element(NULL TSRMLS_CC); } + { zend_do_new_list_end(TSRMLS_C); } break; case 550: - { zend_do_init_array(&(yyval), NULL, NULL, 0 TSRMLS_CC); } + { zend_do_add_list_element(NULL TSRMLS_CC); } break; case 551: - { (yyval) = (yyvsp[(1) - (2)]); } + { zend_do_init_array(&(yyval), NULL, NULL, 0 TSRMLS_CC); } break; case 552: - { zend_do_add_array_element(&(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(3) - (5)]), 0 TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (2)]); } break; case 553: - { zend_do_add_array_element(&(yyval), &(yyvsp[(3) - (3)]), NULL, 0 TSRMLS_CC); } + { zend_do_add_array_element(&(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(3) - (5)]), 0 TSRMLS_CC); } break; case 554: - { zend_do_init_array(&(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]), 0 TSRMLS_CC); } + { zend_do_add_array_element(&(yyval), &(yyvsp[(3) - (3)]), NULL, 0 TSRMLS_CC); } break; case 555: - { zend_do_init_array(&(yyval), &(yyvsp[(1) - (1)]), NULL, 0 TSRMLS_CC); } + { zend_do_init_array(&(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]), 0 TSRMLS_CC); } break; case 556: - { zend_do_add_array_element(&(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), 1 TSRMLS_CC); } + { zend_do_init_array(&(yyval), &(yyvsp[(1) - (1)]), NULL, 0 TSRMLS_CC); } break; case 557: - { zend_do_add_array_element(&(yyval), &(yyvsp[(4) - (4)]), NULL, 1 TSRMLS_CC); } + { zend_do_add_array_element(&(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), 1 TSRMLS_CC); } break; case 558: - { zend_do_init_array(&(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), 1 TSRMLS_CC); } + { zend_do_add_array_element(&(yyval), &(yyvsp[(4) - (4)]), NULL, 1 TSRMLS_CC); } break; case 559: - { zend_do_init_array(&(yyval), &(yyvsp[(2) - (2)]), NULL, 1 TSRMLS_CC); } + { zend_do_init_array(&(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), 1 TSRMLS_CC); } break; case 560: - { zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_init_array(&(yyval), &(yyvsp[(2) - (2)]), NULL, 1 TSRMLS_CC); } break; case 561: - { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 562: - { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), NULL, &(yyvsp[(1) - (1)]) TSRMLS_CC); } + { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 563: - { zend_do_add_string(&(yyval), NULL, &(yyvsp[(1) - (2)]) TSRMLS_CC); zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_end_variable_parse(&(yyvsp[(1) - (1)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), NULL, &(yyvsp[(1) - (1)]) TSRMLS_CC); } break; case 564: - { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } + { zend_do_add_string(&(yyval), NULL, &(yyvsp[(1) - (2)]) TSRMLS_CC); zend_do_end_variable_parse(&(yyvsp[(2) - (2)]), BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 565: - { zend_do_begin_variable_parse(TSRMLS_C); } + { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } break; case 566: - { fetch_array_begin(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); } + { zend_do_begin_variable_parse(TSRMLS_C); } break; case 567: - { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyvsp[(2) - (3)]), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); zend_do_fetch_property(&(yyval), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); } + { fetch_array_begin(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); } break; case 568: - { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(2) - (3)]), 1 TSRMLS_CC); } + { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyvsp[(2) - (3)]), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); zend_do_fetch_property(&(yyval), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); } break; case 569: - { zend_do_begin_variable_parse(TSRMLS_C); fetch_array_begin(&(yyval), &(yyvsp[(2) - (6)]), &(yyvsp[(4) - (6)]) TSRMLS_CC); } + { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(2) - (3)]), 1 TSRMLS_CC); } break; case 570: - { (yyval) = (yyvsp[(2) - (3)]); } + { zend_do_begin_variable_parse(TSRMLS_C); fetch_array_begin(&(yyval), &(yyvsp[(2) - (6)]), &(yyvsp[(4) - (6)]) TSRMLS_CC); } break; case 571: - { (yyval) = (yyvsp[(1) - (1)]); } + { (yyval) = (yyvsp[(2) - (3)]); } break; case 572: @@ -6296,77 +6312,77 @@ yyreduce: case 573: - { fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 574: - { (yyval) = (yyvsp[(3) - (4)]); } + { fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); } break; case 575: - { zend_do_isset_or_isempty(ZEND_ISEMPTY, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { (yyval) = (yyvsp[(3) - (4)]); } break; case 576: - { zend_do_unary_op(ZEND_BOOL_NOT, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { zend_do_isset_or_isempty(ZEND_ISEMPTY, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 577: - { zend_do_include_or_eval(ZEND_INCLUDE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_unary_op(ZEND_BOOL_NOT, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 578: - { zend_do_include_or_eval(ZEND_INCLUDE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_include_or_eval(ZEND_INCLUDE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 579: - { zend_do_include_or_eval(ZEND_EVAL, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } + { zend_do_include_or_eval(ZEND_INCLUDE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 580: - { zend_do_include_or_eval(ZEND_REQUIRE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_include_or_eval(ZEND_EVAL, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); } break; case 581: - { zend_do_include_or_eval(ZEND_REQUIRE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { zend_do_include_or_eval(ZEND_REQUIRE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 582: - { (yyval) = (yyvsp[(1) - (1)]); } + { zend_do_include_or_eval(ZEND_REQUIRE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 583: - { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } + { (yyval) = (yyvsp[(1) - (1)]); } break; case 584: - { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); } + { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); } break; case 585: - { zend_do_isset_or_isempty(ZEND_ISSET, &(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); } + { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); } break; case 586: - { zend_error_noreturn(E_COMPILE_ERROR, "Cannot use isset() on the result of an expression (you can use \"null !== expression\" instead)"); } + { zend_do_isset_or_isempty(ZEND_ISSET, &(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); } break; case 587: - { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); } + { zend_error_noreturn(E_COMPILE_ERROR, "Cannot use isset() on the result of an expression (you can use \"null !== expression\" instead)"); } break; case 588: @@ -6376,11 +6392,16 @@ yyreduce: case 589: - { zend_do_resolve_class_name(&(yyval), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); } + { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_RT, 0 TSRMLS_CC); } break; case 590: + { zend_do_resolve_class_name(&(yyval), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); } + break; + + case 591: + { zend_do_resolve_class_name(&(yyval), &(yyvsp[(1) - (3)]), 0 TSRMLS_CC); } break; diff --git a/Zend/zend_language_parser.output b/Zend/zend_language_parser.output index 19c314fc0..0f3678b8e 100644 --- a/Zend/zend_language_parser.output +++ b/Zend/zend_language_parser.output @@ -11,7 +11,7 @@ Terminals unused in grammar State 231 conflicts: 1 shift/reduce -State 737 conflicts: 2 shift/reduce +State 738 conflicts: 2 shift/reduce Grammar @@ -676,256 +676,257 @@ Grammar 441 static_operation: static_scalar_value '+' static_scalar_value 442 | static_scalar_value '-' static_scalar_value 443 | static_scalar_value '*' static_scalar_value - 444 | static_scalar_value '/' static_scalar_value - 445 | static_scalar_value '%' static_scalar_value - 446 | '!' static_scalar_value - 447 | '~' static_scalar_value - 448 | static_scalar_value '|' static_scalar_value - 449 | static_scalar_value '&' static_scalar_value - 450 | static_scalar_value '^' static_scalar_value - 451 | static_scalar_value "<< (T_SL)" static_scalar_value - 452 | static_scalar_value ">> (T_SR)" static_scalar_value - 453 | static_scalar_value '.' static_scalar_value - 454 | static_scalar_value "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value '<' static_scalar_value - 464 | static_scalar_value '>' static_scalar_value - 465 | static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value '?' ':' static_scalar_value - 468 | static_scalar_value '?' static_scalar_value ':' static_scalar_value - 469 | '+' static_scalar_value - 470 | '-' static_scalar_value - 471 | '(' static_scalar_value ')' + 444 | static_scalar_value "** (T_POW)" static_scalar_value + 445 | static_scalar_value '/' static_scalar_value + 446 | static_scalar_value '%' static_scalar_value + 447 | '!' static_scalar_value + 448 | '~' static_scalar_value + 449 | static_scalar_value '|' static_scalar_value + 450 | static_scalar_value '&' static_scalar_value + 451 | static_scalar_value '^' static_scalar_value + 452 | static_scalar_value "<< (T_SL)" static_scalar_value + 453 | static_scalar_value ">> (T_SR)" static_scalar_value + 454 | static_scalar_value '.' static_scalar_value + 455 | static_scalar_value "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value '<' static_scalar_value + 465 | static_scalar_value '>' static_scalar_value + 466 | static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value '?' ':' static_scalar_value + 469 | static_scalar_value '?' static_scalar_value ':' static_scalar_value + 470 | '+' static_scalar_value + 471 | '-' static_scalar_value + 472 | '(' static_scalar_value ')' - 472 scalar: "variable name (T_STRING_VARNAME)" - 473 | class_name_scalar - 474 | class_constant - 475 | namespace_name - 476 | "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name - 477 | "\\ (T_NS_SEPARATOR)" namespace_name - 478 | common_scalar - 479 | '"' encaps_list '"' - 480 | "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" - 481 | "__CLASS__ (T_CLASS_C)" + 473 scalar: "variable name (T_STRING_VARNAME)" + 474 | class_name_scalar + 475 | class_constant + 476 | namespace_name + 477 | "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name + 478 | "\\ (T_NS_SEPARATOR)" namespace_name + 479 | common_scalar + 480 | '"' encaps_list '"' + 481 | "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" + 482 | "__CLASS__ (T_CLASS_C)" - 482 static_array_pair_list: /* empty */ - 483 | non_empty_static_array_pair_list possible_comma + 483 static_array_pair_list: /* empty */ + 484 | non_empty_static_array_pair_list possible_comma - 484 possible_comma: /* empty */ - 485 | ',' + 485 possible_comma: /* empty */ + 486 | ',' - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar - 487 | non_empty_static_array_pair_list ',' static_scalar - 488 | static_scalar "=> (T_DOUBLE_ARROW)" static_scalar - 489 | static_scalar + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar + 488 | non_empty_static_array_pair_list ',' static_scalar + 489 | static_scalar "=> (T_DOUBLE_ARROW)" static_scalar + 490 | static_scalar - 490 expr: r_variable - 491 | expr_without_variable + 491 expr: r_variable + 492 | expr_without_variable - 492 parenthesis_expr: '(' expr ')' - 493 | '(' yield_expr ')' + 493 parenthesis_expr: '(' expr ')' + 494 | '(' yield_expr ')' - 494 r_variable: variable + 495 r_variable: variable - 495 w_variable: variable + 496 w_variable: variable - 496 rw_variable: variable + 497 rw_variable: variable - 497 $@68: /* empty */ + 498 $@68: /* empty */ - 498 $@69: /* empty */ + 499 $@69: /* empty */ - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties - 500 | base_variable_with_function_calls + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties + 501 | base_variable_with_function_calls - 501 variable_properties: variable_properties variable_property - 502 | /* empty */ + 502 variable_properties: variable_properties variable_property + 503 | /* empty */ - 503 $@70: /* empty */ + 504 $@70: /* empty */ - 504 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 method_or_not + 505 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 method_or_not - 505 array_method_dereference: array_method_dereference '[' dim_offset ']' - 506 | method '[' dim_offset ']' + 506 array_method_dereference: array_method_dereference '[' dim_offset ']' + 507 | method '[' dim_offset ']' - 507 @71: /* empty */ + 508 @71: /* empty */ - 508 method: @71 function_call_parameter_list + 509 method: @71 function_call_parameter_list - 509 method_or_not: method - 510 | array_method_dereference - 511 | /* empty */ + 510 method_or_not: method + 511 | array_method_dereference + 512 | /* empty */ - 512 variable_without_objects: reference_variable - 513 | simple_indirect_reference reference_variable + 513 variable_without_objects: reference_variable + 514 | simple_indirect_reference reference_variable - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects - 515 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 516 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects - 516 variable_class_name: reference_variable + 517 variable_class_name: reference_variable - 517 array_function_dereference: array_function_dereference '[' dim_offset ']' + 518 array_function_dereference: array_function_dereference '[' dim_offset ']' - 518 $@72: /* empty */ + 519 $@72: /* empty */ - 519 array_function_dereference: function_call $@72 '[' dim_offset ']' + 520 array_function_dereference: function_call $@72 '[' dim_offset ']' - 520 base_variable_with_function_calls: base_variable - 521 | array_function_dereference - 522 | function_call + 521 base_variable_with_function_calls: base_variable + 522 | array_function_dereference + 523 | function_call - 523 base_variable: reference_variable - 524 | simple_indirect_reference reference_variable - 525 | static_member + 524 base_variable: reference_variable + 525 | simple_indirect_reference reference_variable + 526 | static_member - 526 reference_variable: reference_variable '[' dim_offset ']' - 527 | reference_variable '{' expr '}' - 528 | compound_variable + 527 reference_variable: reference_variable '[' dim_offset ']' + 528 | reference_variable '{' expr '}' + 529 | compound_variable - 529 compound_variable: "variable (T_VARIABLE)" - 530 | '$' '{' expr '}' + 530 compound_variable: "variable (T_VARIABLE)" + 531 | '$' '{' expr '}' - 531 dim_offset: /* empty */ - 532 | expr + 532 dim_offset: /* empty */ + 533 | expr - 533 object_property: object_dim_list + 534 object_property: object_dim_list - 534 $@73: /* empty */ + 535 $@73: /* empty */ - 535 object_property: variable_without_objects $@73 + 536 object_property: variable_without_objects $@73 - 536 object_dim_list: object_dim_list '[' dim_offset ']' - 537 | object_dim_list '{' expr '}' - 538 | variable_name + 537 object_dim_list: object_dim_list '[' dim_offset ']' + 538 | object_dim_list '{' expr '}' + 539 | variable_name - 539 variable_name: "identifier (T_STRING)" - 540 | '{' expr '}' + 540 variable_name: "identifier (T_STRING)" + 541 | '{' expr '}' - 541 simple_indirect_reference: '$' - 542 | simple_indirect_reference '$' + 542 simple_indirect_reference: '$' + 543 | simple_indirect_reference '$' - 543 assignment_list: assignment_list ',' assignment_list_element - 544 | assignment_list_element + 544 assignment_list: assignment_list ',' assignment_list_element + 545 | assignment_list_element - 545 assignment_list_element: variable + 546 assignment_list_element: variable - 546 $@74: /* empty */ + 547 $@74: /* empty */ - 547 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list ')' - 548 | /* empty */ + 548 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list ')' + 549 | /* empty */ - 549 array_pair_list: /* empty */ - 550 | non_empty_array_pair_list possible_comma + 550 array_pair_list: /* empty */ + 551 | non_empty_array_pair_list possible_comma - 551 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" expr - 552 | non_empty_array_pair_list ',' expr - 553 | expr "=> (T_DOUBLE_ARROW)" expr - 554 | expr - 555 | non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable - 556 | non_empty_array_pair_list ',' '&' w_variable - 557 | expr "=> (T_DOUBLE_ARROW)" '&' w_variable - 558 | '&' w_variable + 552 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" expr + 553 | non_empty_array_pair_list ',' expr + 554 | expr "=> (T_DOUBLE_ARROW)" expr + 555 | expr + 556 | non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable + 557 | non_empty_array_pair_list ',' '&' w_variable + 558 | expr "=> (T_DOUBLE_ARROW)" '&' w_variable + 559 | '&' w_variable - 559 encaps_list: encaps_list encaps_var - 560 | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" - 561 | encaps_var - 562 | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var + 560 encaps_list: encaps_list encaps_var + 561 | encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" + 562 | encaps_var + 563 | "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var - 563 encaps_var: "variable (T_VARIABLE)" + 564 encaps_var: "variable (T_VARIABLE)" - 564 $@75: /* empty */ + 565 $@75: /* empty */ - 565 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset ']' - 566 | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" - 567 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' - 568 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' - 569 | "{$ (T_CURLY_OPEN)" variable '}' + 566 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset ']' + 567 | "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" + 568 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' + 569 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' + 570 | "{$ (T_CURLY_OPEN)" variable '}' - 570 encaps_var_offset: "identifier (T_STRING)" - 571 | "number (T_NUM_STRING)" - 572 | "variable (T_VARIABLE)" + 571 encaps_var_offset: "identifier (T_STRING)" + 572 | "number (T_NUM_STRING)" + 573 | "variable (T_VARIABLE)" - 573 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')' - 574 | "empty (T_EMPTY)" '(' variable ')' - 575 | "empty (T_EMPTY)" '(' expr_without_variable ')' - 576 | "include (T_INCLUDE)" expr - 577 | "include_once (T_INCLUDE_ONCE)" expr - 578 | "eval (T_EVAL)" '(' expr ')' - 579 | "require (T_REQUIRE)" expr - 580 | "require_once (T_REQUIRE_ONCE)" expr + 574 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')' + 575 | "empty (T_EMPTY)" '(' variable ')' + 576 | "empty (T_EMPTY)" '(' expr_without_variable ')' + 577 | "include (T_INCLUDE)" expr + 578 | "include_once (T_INCLUDE_ONCE)" expr + 579 | "eval (T_EVAL)" '(' expr ')' + 580 | "require (T_REQUIRE)" expr + 581 | "require_once (T_REQUIRE_ONCE)" expr - 581 isset_variables: isset_variable + 582 isset_variables: isset_variable - 582 $@76: /* empty */ + 583 $@76: /* empty */ - 583 isset_variables: isset_variables ',' $@76 isset_variable + 584 isset_variables: isset_variables ',' $@76 isset_variable - 584 isset_variable: variable - 585 | expr_without_variable + 585 isset_variable: variable + 586 | expr_without_variable - 586 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" - 587 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" + 587 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" + 588 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" - 588 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" + 589 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" - 589 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" + 590 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" Terminals, with rules where they appear "end of file" (0) 0 -'!' (33) 320 446 -'"' (34) 479 -'$' (36) 199 200 530 541 542 -'%' (37) 315 445 -'&' (38) 118 143 194 277 279 307 374 376 449 555 556 557 558 +'!' (33) 320 447 +'"' (34) 480 +'$' (36) 199 200 531 542 543 +'%' (37) 315 446 +'&' (38) 118 143 194 277 279 307 374 376 450 556 557 558 559 '(' (40) 10 46 65 81 84 87 89 101 111 122 145 187 188 189 212 275 334 - 358 360 368 372 410 431 471 492 493 547 573 574 575 578 + 358 360 368 372 410 431 472 493 494 548 574 575 576 579 ')' (41) 10 46 65 81 84 87 89 101 111 122 145 187 188 189 212 275 334 - 358 360 368 372 410 431 471 492 493 547 573 574 575 578 + 358 360 368 372 410 431 472 493 494 548 574 575 576 579 '*' (42) 312 443 -'+' (43) 310 318 441 469 +'+' (43) 310 318 441 470 ',' (44) 20 26 32 38 113 139 153 180 191 196 201 202 215 226 248 249 - 252 254 259 373 374 485 486 487 543 551 552 555 556 583 -'-' (45) 311 319 442 470 -'.' (46) 309 453 -'/' (47) 314 444 -':' (58) 48 55 147 149 151 156 157 163 166 172 176 337 339 467 468 + 252 254 259 373 374 486 487 488 544 552 553 556 557 584 +'-' (45) 311 319 442 471 +'.' (46) 309 454 +'/' (47) 314 445 +':' (58) 48 55 147 149 151 156 157 163 166 172 176 337 339 468 469 ';' (59) 10 11 16 17 18 19 46 55 61 65 68 69 70 71 72 73 74 75 76 77 78 80 81 90 94 95 147 149 151 155 156 157 164 166 208 209 216 222 223 234 -'<' (60) 326 463 +'<' (60) 326 464 '=' (61) 38 39 152 153 182 202 204 249 251 252 253 275 276 277 279 -'>' (62) 328 464 -'?' (63) 337 339 467 468 +'>' (62) 328 465 +'?' (63) 337 339 468 469 '@' (64) 350 -'[' (91) 263 264 365 366 367 369 432 505 506 517 519 526 536 565 568 -']' (93) 263 264 365 366 367 369 432 505 506 517 519 526 536 565 568 -'^' (94) 308 450 +'[' (91) 263 264 365 366 367 369 432 506 507 518 520 527 537 566 569 +']' (93) 263 264 365 366 367 369 432 506 507 518 520 527 537 566 569 +'^' (94) 308 451 '`' (96) 354 '{' (123) 13 15 49 93 101 104 111 122 124 126 154 155 200 217 235 358 - 360 527 530 537 540 -'|' (124) 306 448 + 360 528 531 538 541 +'|' (124) 306 449 '}' (125) 13 15 49 93 101 104 111 122 124 126 154 155 200 217 235 358 - 360 527 530 537 540 567 568 569 -'~' (126) 321 447 + 360 528 531 538 541 568 569 570 +'~' (126) 321 448 error (256) -"require_once (T_REQUIRE_ONCE)" (258) 580 -"require (T_REQUIRE)" (259) 579 -"eval (T_EVAL)" (260) 578 -"include_once (T_INCLUDE_ONCE)" (261) 577 -"include (T_INCLUDE)" (262) 576 -"or (T_LOGICAL_OR)" (263) 302 456 -"xor (T_LOGICAL_XOR)" (264) 305 454 -"and (T_LOGICAL_AND)" (265) 304 455 +"require_once (T_REQUIRE_ONCE)" (258) 581 +"require (T_REQUIRE)" (259) 580 +"eval (T_EVAL)" (260) 579 +"include_once (T_INCLUDE_ONCE)" (261) 578 +"include (T_INCLUDE)" (262) 577 +"or (T_LOGICAL_OR)" (263) 302 457 +"xor (T_LOGICAL_XOR)" (264) 305 455 +"and (T_LOGICAL_AND)" (265) 304 456 "print (T_PRINT)" (266) 355 "yield (T_YIELD)" (267) 356 361 362 363 364 "**= (T_POW_EQUAL)" (268) 284 @@ -940,16 +941,16 @@ error (256) "*= (T_MUL_EQUAL)" (277) 283 "-= (T_MINUS_EQUAL)" (278) 282 "+= (T_PLUS_EQUAL)" (279) 281 -"|| (T_BOOLEAN_OR)" (280) 298 458 -"&& (T_BOOLEAN_AND)" (281) 300 457 -"!== (T_IS_NOT_IDENTICAL)" (282) 323 460 -"=== (T_IS_IDENTICAL)" (283) 322 459 -"!= (T_IS_NOT_EQUAL)" (284) 325 462 -"== (T_IS_EQUAL)" (285) 324 461 -">= (T_IS_GREATER_OR_EQUAL)" (286) 329 466 -"<= (T_IS_SMALLER_OR_EQUAL)" (287) 327 465 -">> (T_SR)" (288) 317 452 -"<< (T_SL)" (289) 316 451 +"|| (T_BOOLEAN_OR)" (280) 298 459 +"&& (T_BOOLEAN_AND)" (281) 300 458 +"!== (T_IS_NOT_IDENTICAL)" (282) 323 461 +"=== (T_IS_IDENTICAL)" (283) 322 460 +"!= (T_IS_NOT_EQUAL)" (284) 325 463 +"== (T_IS_EQUAL)" (285) 324 462 +">= (T_IS_GREATER_OR_EQUAL)" (286) 329 467 +"<= (T_IS_SMALLER_OR_EQUAL)" (287) 327 466 +">> (T_SR)" (288) 317 453 +"<< (T_SL)" (289) 316 452 "instanceof (T_INSTANCEOF)" (290) 330 "(unset) (T_UNSET_CAST)" (291) 347 "(bool) (T_BOOL_CAST)" (292) 346 @@ -960,7 +961,7 @@ error (256) "(int) (T_INT_CAST)" (297) 341 "-- (T_DEC)" (298) 295 296 "++ (T_INC)" (299) 293 294 -"** (T_POW)" (300) 313 +"** (T_POW)" (300) 313 444 "clone (T_CLONE)" (301) 280 "new (T_NEW)" (302) 273 279 "exit (T_EXIT)" (303) 348 @@ -971,16 +972,16 @@ error (256) "integer number (T_LNUMBER)" (308) 417 "floating-point number (T_DNUMBER)" (309) 418 "identifier (T_STRING)" (310) 5 6 23 25 29 31 35 37 38 39 48 95 122 - 124 126 152 153 212 227 229 230 252 253 429 539 566 570 586 587 -"variable name (T_STRING_VARNAME)" (311) 472 568 + 124 126 152 153 212 227 229 230 252 253 429 540 567 571 587 588 +"variable name (T_STRING_VARNAME)" (311) 473 569 "variable (T_VARIABLE)" (312) 101 111 181 182 198 201 202 203 204 248 - 249 250 251 373 374 375 376 529 563 565 566 572 -"number (T_NUM_STRING)" (313) 571 + 249 250 251 373 374 375 376 530 564 566 567 573 +"number (T_NUM_STRING)" (313) 572 T_INLINE_HTML (314) 79 T_CHARACTER (315) T_BAD_CHARACTER (316) "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" (317) 413 - 427 560 562 + 427 561 563 "quoted-string (T_CONSTANT_ENCAPSED_STRING)" (318) 367 419 "echo (T_ECHO)" (319) 78 "do (T_DO)" (320) 61 @@ -1018,20 +1019,20 @@ T_BAD_CHARACTER (316) "static (T_STATIC)" (352) 77 245 360 393 "var (T_VAR)" (353) 237 "unset (T_UNSET)" (354) 81 -"isset (T_ISSET)" (355) 573 -"empty (T_EMPTY)" (356) 574 575 +"isset (T_ISSET)" (355) 574 +"empty (T_EMPTY)" (356) 575 576 "__halt_compiler (T_HALT_COMPILER)" (357) 10 46 -"class (T_CLASS)" (358) 127 128 130 588 589 +"class (T_CLASS)" (358) 127 128 130 589 590 "trait (T_TRAIT)" (359) 129 "interface (T_INTERFACE)" (360) 133 "extends (T_EXTENDS)" (361) 132 135 "implements (T_IMPLEMENTS)" (362) 137 -"-> (T_OBJECT_OPERATOR)" (363) 404 408 499 504 566 -"=> (T_DOUBLE_ARROW)" (364) 141 363 364 486 488 551 553 555 557 -"list (T_LIST)" (365) 145 275 547 +"-> (T_OBJECT_OPERATOR)" (363) 404 408 500 505 567 +"=> (T_DOUBLE_ARROW)" (364) 141 363 364 487 489 552 554 556 558 +"list (T_LIST)" (365) 145 275 548 "array (T_ARRAY)" (366) 184 368 431 "callable (T_CALLABLE)" (367) 185 -"__CLASS__ (T_CLASS_C)" (368) 439 481 +"__CLASS__ (T_CLASS_C)" (368) 439 482 "__TRAIT__ (T_TRAIT_C)" (369) 423 "__METHOD__ (T_METHOD_C)" (370) 424 "__FUNCTION__ (T_FUNC_C)" (371) 425 @@ -1043,17 +1044,17 @@ T_BAD_CHARACTER (316) "open tag with echo (T_OPEN_TAG_WITH_ECHO)" (377) "close tag (T_CLOSE_TAG)" (378) "whitespace (T_WHITESPACE)" (379) -"heredoc start (T_START_HEREDOC)" (380) 427 428 480 -"heredoc end (T_END_HEREDOC)" (381) 427 428 480 -"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (382) 567 568 -"{$ (T_CURLY_OPEN)" (383) 569 -":: (T_PAAMAYIM_NEKUDOTAYIM)" (384) 229 384 386 388 390 429 514 515 - 586 587 588 589 -"namespace (T_NAMESPACE)" (385) 11 13 15 380 395 398 436 476 +"heredoc start (T_START_HEREDOC)" (380) 427 428 481 +"heredoc end (T_END_HEREDOC)" (381) 427 428 481 +"${ (T_DOLLAR_OPEN_CURLY_BRACES)" (382) 568 569 +"{$ (T_CURLY_OPEN)" (383) 570 +":: (T_PAAMAYIM_NEKUDOTAYIM)" (384) 229 384 386 388 390 429 515 516 + 587 588 589 590 +"namespace (T_NAMESPACE)" (385) 11 13 15 380 395 398 436 477 "__NAMESPACE__ (T_NS_C)" (386) 426 "__DIR__ (T_DIR)" (387) 422 "\\ (T_NS_SEPARATOR)" (388) 6 24 25 30 31 36 37 380 382 395 396 398 - 399 436 437 476 477 + 399 436 437 477 478 "... (T_ELLIPSIS)" (389) 120 195 @@ -1069,7 +1070,7 @@ $@1 (166) on left: 2, on right: 3 namespace_name (167) on left: 5 6, on right: 6 11 13 22 23 24 25 28 29 30 31 34 35 36 - 37 378 380 382 394 395 396 397 398 399 435 436 437 475 476 477 + 37 378 380 382 394 395 396 397 398 399 435 436 437 476 477 478 top_statement (168) on left: 7 8 9 10 11 13 15 16 17 18 19, on right: 3 $@2 (169) @@ -1246,7 +1247,7 @@ optional_class_type (253) on left: 183 184 185 186, on right: 181 182 function_call_parameter_list (254) on left: 187 188 189, on right: 378 380 382 384 386 388 390 392 - 416 508 + 416 509 non_empty_function_call_parameter_list (255) on left: 190 191, on right: 188 191 function_call_parameter (256) @@ -1333,7 +1334,7 @@ expr_without_variable (295) 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 334 337 339 340 341 342 343 344 345 346 347 348 350 351 352 353 354 355 356 358 360, on right: 73 87 - 192 361 363 491 575 585 + 192 361 363 492 576 586 $@45 (296) on left: 274, on right: 275 $@46 (297) @@ -1361,7 +1362,7 @@ $@55 (306) @57 (308) on left: 359, on right: 360 yield_expr (309) - on left: 361 362 363 364, on right: 75 189 493 + on left: 361 362 363 364, on right: 75 189 494 combined_scalar_offset (310) on left: 365 366 367, on right: 352 366 combined_scalar (311) @@ -1373,7 +1374,7 @@ lexical_vars (313) lexical_var_list (314) on left: 373 374 375 376, on right: 372 373 374 function_call (315) - on left: 378 380 382 384 386 388 390 392, on right: 519 522 + on left: 378 380 382 384 386 388 390 392, on right: 520 523 @58 (316) on left: 377, on right: 378 @59 (317) @@ -1391,8 +1392,8 @@ $@64 (322) $@65 (323) on left: 391, on right: 392 class_name (324) - on left: 393 394 395 396, on right: 384 386 400 429 514 586 588 - 589 + on left: 393 394 395 396, on right: 384 386 400 429 515 587 589 + 590 fully_qualified_class_name (325) on left: 397 398 399, on right: 101 111 132 138 139 186 214 215 225 226 229 @@ -1416,129 +1417,129 @@ ctor_arguments (334) on left: 415 416, on right: 273 279 common_scalar (335) on left: 417 418 419 420 421 422 423 424 425 426 427 428, on right: - 433 478 + 433 479 static_class_constant (336) on left: 429, on right: 438 static_scalar (337) on left: 430 431 432, on right: 38 39 152 153 182 202 204 249 251 - 252 253 486 487 488 489 + 252 253 487 488 489 490 static_scalar_value (338) on left: 433 434 435 436 437 438 439 440, on right: 430 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 - 459 460 461 462 463 464 465 466 467 468 469 470 471 + 459 460 461 462 463 464 465 466 467 468 469 470 471 472 static_operation (339) on left: 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 - 471, on right: 440 + 471 472, on right: 440 scalar (340) - on left: 472 473 474 475 476 477 478 479 480 481, on right: 351 + on left: 473 474 475 476 477 478 479 480 481 482, on right: 351 static_array_pair_list (341) - on left: 482 483, on right: 431 432 + on left: 483 484, on right: 431 432 possible_comma (342) - on left: 484 485, on right: 483 550 + on left: 485 486, on right: 484 551 non_empty_static_array_pair_list (343) - on left: 486 487 488 489, on right: 483 486 487 + on left: 487 488 489 490, on right: 484 487 488 expr (344) - on left: 490 491, on right: 69 71 80 94 160 195 200 254 255 259 + on left: 491 492, on right: 69 71 80 94 160 195 200 254 255 259 260 275 276 280 281 282 283 284 285 286 287 288 289 290 291 292 298 300 302 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 337 339 - 341 342 343 344 345 346 347 350 355 363 364 492 527 530 532 537 - 540 551 552 553 554 555 557 567 568 576 577 578 579 580 + 341 342 343 344 345 346 347 350 355 363 364 493 528 531 533 538 + 541 552 553 554 555 556 558 568 569 577 578 579 580 581 parenthesis_expr (345) - on left: 492 493, on right: 52 55 58 61 67 169 172 331 411 + on left: 493 494, on right: 52 55 58 61 67 169 172 331 411 r_variable (346) - on left: 494, on right: 199 490 + on left: 495, on right: 199 491 w_variable (347) - on left: 495, on right: 194 555 556 557 558 + on left: 496, on right: 194 556 557 558 559 rw_variable (348) - on left: 496, on right: 293 294 295 296 + on left: 497, on right: 293 294 295 296 variable (349) - on left: 499 500, on right: 74 84 114 142 143 193 276 277 279 281 - 282 283 284 285 286 287 288 289 290 291 292 362 364 494 495 496 - 545 569 574 584 + on left: 500 501, on right: 74 84 114 142 143 193 276 277 279 281 + 282 283 284 285 286 287 288 289 290 291 292 362 364 495 496 497 + 546 570 575 585 $@68 (350) - on left: 497, on right: 499 + on left: 498, on right: 500 $@69 (351) - on left: 498, on right: 499 + on left: 499, on right: 500 variable_properties (352) - on left: 501 502, on right: 499 501 + on left: 502 503, on right: 500 502 variable_property (353) - on left: 504, on right: 261 262 501 + on left: 505, on right: 261 262 502 $@70 (354) - on left: 503, on right: 504 + on left: 504, on right: 505 array_method_dereference (355) - on left: 505 506, on right: 505 510 + on left: 506 507, on right: 506 511 method (356) - on left: 508, on right: 506 509 + on left: 509, on right: 507 510 @71 (357) - on left: 507, on right: 508 + on left: 508, on right: 509 method_or_not (358) - on left: 509 510 511, on right: 499 504 + on left: 510 511 512, on right: 500 505 variable_without_objects (359) - on left: 512 513, on right: 386 390 392 514 515 535 + on left: 513 514, on right: 386 390 392 515 516 536 static_member (360) - on left: 514 515, on right: 525 + on left: 515 516, on right: 526 variable_class_name (361) - on left: 516, on right: 388 390 515 587 + on left: 517, on right: 388 390 516 588 array_function_dereference (362) - on left: 517 519, on right: 517 521 + on left: 518 520, on right: 518 522 $@72 (363) - on left: 518, on right: 519 + on left: 519, on right: 520 base_variable_with_function_calls (364) - on left: 520 521 522, on right: 499 500 + on left: 521 522 523, on right: 500 501 base_variable (365) - on left: 523 524 525, on right: 404 405 520 + on left: 524 525 526, on right: 404 405 521 reference_variable (366) - on left: 526 527 528, on right: 512 513 516 523 524 526 527 + on left: 527 528 529, on right: 513 514 517 524 525 527 528 compound_variable (367) - on left: 529 530, on right: 528 + on left: 530 531, on right: 529 dim_offset (368) - on left: 531 532, on right: 263 264 365 366 367 505 506 517 519 - 526 536 + on left: 532 533, on right: 263 264 365 366 367 506 507 518 520 + 527 537 object_property (369) - on left: 533 535, on right: 404 408 499 504 + on left: 534 536, on right: 404 408 500 505 $@73 (370) - on left: 534, on right: 535 + on left: 535, on right: 536 object_dim_list (371) - on left: 536 537 538, on right: 533 536 537 + on left: 537 538 539, on right: 534 537 538 variable_name (372) - on left: 539 540, on right: 384 388 538 + on left: 540 541, on right: 384 388 539 simple_indirect_reference (373) - on left: 541 542, on right: 513 524 542 + on left: 542 543, on right: 514 525 543 assignment_list (374) - on left: 543 544, on right: 145 275 543 547 + on left: 544 545, on right: 145 275 544 548 assignment_list_element (375) - on left: 545 547 548, on right: 543 544 + on left: 546 548 549, on right: 544 545 $@74 (376) - on left: 546, on right: 547 + on left: 547, on right: 548 array_pair_list (377) - on left: 549 550, on right: 368 369 + on left: 550 551, on right: 368 369 non_empty_array_pair_list (378) - on left: 551 552 553 554 555 556 557 558, on right: 550 551 552 - 555 556 + on left: 552 553 554 555 556 557 558 559, on right: 551 552 553 + 556 557 encaps_list (379) - on left: 559 560 561 562, on right: 414 479 480 559 560 + on left: 560 561 562 563, on right: 414 480 481 560 561 encaps_var (380) - on left: 563 565 566 567 568 569, on right: 559 561 562 + on left: 564 566 567 568 569 570, on right: 560 562 563 $@75 (381) - on left: 564, on right: 565 + on left: 565, on right: 566 encaps_var_offset (382) - on left: 570 571 572, on right: 565 + on left: 571 572 573, on right: 566 internal_functions_in_yacc (383) - on left: 573 574 575 576 577 578 579 580, on right: 340 + on left: 574 575 576 577 578 579 580 581, on right: 340 isset_variables (384) - on left: 581 583, on right: 573 583 + on left: 582 584, on right: 574 584 $@76 (385) - on left: 582, on right: 583 + on left: 583, on right: 584 isset_variable (386) - on left: 584 585, on right: 581 583 + on left: 585 586, on right: 582 584 class_constant (387) - on left: 586 587, on right: 474 + on left: 587 588, on right: 475 static_class_name_scalar (388) - on left: 588, on right: 434 + on left: 589, on right: 434 class_name_scalar (389) - on left: 589, on right: 473 + on left: 590, on right: 474 state 0 @@ -1702,7 +1703,7 @@ state 4 state 5 - 580 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" . expr + 581 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" . expr "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -1788,7 +1789,7 @@ state 5 state 6 - 579 internal_functions_in_yacc: "require (T_REQUIRE)" . expr + 580 internal_functions_in_yacc: "require (T_REQUIRE)" . expr "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -1874,14 +1875,14 @@ state 6 state 7 - 578 internal_functions_in_yacc: "eval (T_EVAL)" . '(' expr ')' + 579 internal_functions_in_yacc: "eval (T_EVAL)" . '(' expr ')' '(' shift, and go to state 129 state 8 - 577 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" . expr + 578 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" . expr "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -1967,7 +1968,7 @@ state 8 state 9 - 576 internal_functions_in_yacc: "include (T_INCLUDE)" . expr + 577 internal_functions_in_yacc: "include (T_INCLUDE)" . expr "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -3296,7 +3297,7 @@ state 26 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 549 (array_pair_list) + $default reduce using rule 550 (array_pair_list) namespace_name go to state 84 new_expr go to state 95 @@ -3486,16 +3487,16 @@ state 33 state 34 - 472 scalar: "variable name (T_STRING_VARNAME)" . + 473 scalar: "variable name (T_STRING_VARNAME)" . - $default reduce using rule 472 (scalar) + $default reduce using rule 473 (scalar) state 35 - 529 compound_variable: "variable (T_VARIABLE)" . + 530 compound_variable: "variable (T_VARIABLE)" . - $default reduce using rule 529 (compound_variable) + $default reduce using rule 530 (compound_variable) state 36 @@ -4099,15 +4100,15 @@ state 58 state 59 - 573 internal_functions_in_yacc: "isset (T_ISSET)" . '(' isset_variables ')' + 574 internal_functions_in_yacc: "isset (T_ISSET)" . '(' isset_variables ')' '(' shift, and go to state 215 state 60 - 574 internal_functions_in_yacc: "empty (T_EMPTY)" . '(' variable ')' - 575 | "empty (T_EMPTY)" . '(' expr_without_variable ')' + 575 internal_functions_in_yacc: "empty (T_EMPTY)" . '(' variable ')' + 576 | "empty (T_EMPTY)" . '(' expr_without_variable ')' '(' shift, and go to state 216 @@ -4156,9 +4157,9 @@ state 66 state 67 - 481 scalar: "__CLASS__ (T_CLASS_C)" . + 482 scalar: "__CLASS__ (T_CLASS_C)" . - $default reduce using rule 481 (scalar) + $default reduce using rule 482 (scalar) state 68 @@ -4200,7 +4201,7 @@ state 73 427 common_scalar: "heredoc start (T_START_HEREDOC)" . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "heredoc end (T_END_HEREDOC)" 428 | "heredoc start (T_START_HEREDOC)" . "heredoc end (T_END_HEREDOC)" - 480 scalar: "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)" + 481 scalar: "heredoc start (T_START_HEREDOC)" . encaps_list "heredoc end (T_END_HEREDOC)" "variable (T_VARIABLE)" shift, and go to state 220 "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" shift, and go to state 221 @@ -4219,7 +4220,7 @@ state 74 15 | "namespace (T_NAMESPACE)" . '{' $@3 top_statement_list '}' 380 function_call: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name @59 function_call_parameter_list 395 class_name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name - 476 scalar: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name + 477 scalar: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name "identifier (T_STRING)" shift, and go to state 123 "\\ (T_NS_SEPARATOR)" shift, and go to state 227 @@ -4246,7 +4247,7 @@ state 77 382 function_call: "\\ (T_NS_SEPARATOR)" . namespace_name @60 function_call_parameter_list 396 class_name: "\\ (T_NS_SEPARATOR)" . namespace_name - 477 scalar: "\\ (T_NS_SEPARATOR)" . namespace_name + 478 scalar: "\\ (T_NS_SEPARATOR)" . namespace_name "identifier (T_STRING)" shift, and go to state 123 @@ -4256,8 +4257,8 @@ state 77 state 78 334 expr_without_variable: '(' . new_expr ')' @51 instance_call - 492 parenthesis_expr: '(' . expr ')' - 493 | '(' . yield_expr ')' + 493 parenthesis_expr: '(' . expr ')' + 494 | '(' . yield_expr ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -4360,12 +4361,12 @@ state 80 state 81 - 530 compound_variable: '$' . '{' expr '}' - 541 simple_indirect_reference: '$' . + 531 compound_variable: '$' . '{' expr '}' + 542 simple_indirect_reference: '$' . '{' shift, and go to state 235 - $default reduce using rule 541 (simple_indirect_reference) + $default reduce using rule 542 (simple_indirect_reference) state 82 @@ -4386,7 +4387,7 @@ state 82 state 83 - 479 scalar: '"' . encaps_list '"' + 480 scalar: '"' . encaps_list '"' "variable (T_VARIABLE)" shift, and go to state 220 "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" shift, and go to state 239 @@ -4402,13 +4403,13 @@ state 84 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 378 function_call: namespace_name . @58 function_call_parameter_list 394 class_name: namespace_name . - 475 scalar: namespace_name . + 476 scalar: namespace_name . "\\ (T_NS_SEPARATOR)" shift, and go to state 241 ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 394 (class_name) '(' reduce using rule 377 (@58) - $default reduce using rule 475 (scalar) + $default reduce using rule 476 (scalar) @58 go to state 242 @@ -4494,9 +4495,9 @@ state 95 state 96 - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 97 @@ -4540,11 +4541,11 @@ state 100 state 101 - 519 array_function_dereference: function_call . $@72 '[' dim_offset ']' - 522 base_variable_with_function_calls: function_call . + 520 array_function_dereference: function_call . $@72 '[' dim_offset ']' + 523 base_variable_with_function_calls: function_call . - '[' reduce using rule 518 ($@72) - $default reduce using rule 522 (base_variable_with_function_calls) + '[' reduce using rule 519 ($@72) + $default reduce using rule 523 (base_variable_with_function_calls) $@72 go to state 252 @@ -4553,18 +4554,18 @@ state 102 384 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name @61 function_call_parameter_list 386 | class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@62 function_call_parameter_list - 514 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects - 586 class_constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" - 589 class_name_scalar: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" + 515 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 587 class_constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" + 590 class_name_scalar: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 253 state 103 - 478 scalar: common_scalar . + 479 scalar: common_scalar . - $default reduce using rule 478 (scalar) + $default reduce using rule 479 (scalar) state 104 @@ -4645,9 +4646,9 @@ state 106 state 107 - 490 expr: r_variable . + 491 expr: r_variable . - $default reduce using rule 490 (expr) + $default reduce using rule 491 (expr) state 108 @@ -4676,8 +4677,8 @@ state 109 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -4693,9 +4694,9 @@ state 109 "-= (T_MINUS_EQUAL)" shift, and go to state 295 "+= (T_PLUS_EQUAL)" shift, and go to state 296 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) - $default reduce using rule 494 (r_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) + $default reduce using rule 495 (r_variable) state 110 @@ -4709,76 +4710,76 @@ state 110 state 111 - 525 base_variable: static_member . + 526 base_variable: static_member . - $default reduce using rule 525 (base_variable) + $default reduce using rule 526 (base_variable) state 112 388 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name $@63 function_call_parameter_list 390 | variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@64 function_call_parameter_list - 515 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects - 587 class_constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" + 516 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 588 class_constant: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 298 state 113 - 517 array_function_dereference: array_function_dereference . '[' dim_offset ']' - 521 base_variable_with_function_calls: array_function_dereference . + 518 array_function_dereference: array_function_dereference . '[' dim_offset ']' + 522 base_variable_with_function_calls: array_function_dereference . '[' shift, and go to state 299 - $default reduce using rule 521 (base_variable_with_function_calls) + $default reduce using rule 522 (base_variable_with_function_calls) state 114 - 499 variable: base_variable_with_function_calls . "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties - 500 | base_variable_with_function_calls . + 500 variable: base_variable_with_function_calls . "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties + 501 | base_variable_with_function_calls . "-> (T_OBJECT_OPERATOR)" shift, and go to state 300 - $default reduce using rule 500 (variable) + $default reduce using rule 501 (variable) state 115 - 520 base_variable_with_function_calls: base_variable . + 521 base_variable_with_function_calls: base_variable . - $default reduce using rule 520 (base_variable_with_function_calls) + $default reduce using rule 521 (base_variable_with_function_calls) state 116 - 512 variable_without_objects: reference_variable . - 516 variable_class_name: reference_variable . - 523 base_variable: reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 513 variable_without_objects: reference_variable . + 517 variable_class_name: reference_variable . + 524 base_variable: reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 516 (variable_class_name) - '(' reduce using rule 512 (variable_without_objects) - $default reduce using rule 523 (base_variable) + ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 517 (variable_class_name) + '(' reduce using rule 513 (variable_without_objects) + $default reduce using rule 524 (base_variable) state 117 - 528 reference_variable: compound_variable . + 529 reference_variable: compound_variable . - $default reduce using rule 528 (reference_variable) + $default reduce using rule 529 (reference_variable) state 118 - 513 variable_without_objects: simple_indirect_reference . reference_variable - 524 base_variable: simple_indirect_reference . reference_variable - 542 simple_indirect_reference: simple_indirect_reference . '$' + 514 variable_without_objects: simple_indirect_reference . reference_variable + 525 base_variable: simple_indirect_reference . reference_variable + 543 simple_indirect_reference: simple_indirect_reference . '$' "variable (T_VARIABLE)" shift, and go to state 35 '$' shift, and go to state 303 @@ -4796,16 +4797,16 @@ state 119 state 120 - 474 scalar: class_constant . + 475 scalar: class_constant . - $default reduce using rule 474 (scalar) + $default reduce using rule 475 (scalar) state 121 - 473 scalar: class_name_scalar . + 474 scalar: class_name_scalar . - $default reduce using rule 473 (scalar) + $default reduce using rule 474 (scalar) state 122 @@ -4838,7 +4839,7 @@ state 125 380 function_call: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name @59 function_call_parameter_list 395 class_name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name - 476 scalar: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name + 477 scalar: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name "\\ (T_NS_SEPARATOR)" shift, and go to state 227 @@ -4884,7 +4885,7 @@ state 127 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 580 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" expr . + 581 internal_functions_in_yacc: "require_once (T_REQUIRE_ONCE)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -4914,7 +4915,7 @@ state 127 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 580 (internal_functions_in_yacc) + $default reduce using rule 581 (internal_functions_in_yacc) state 128 @@ -4947,7 +4948,7 @@ state 128 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 579 internal_functions_in_yacc: "require (T_REQUIRE)" expr . + 580 internal_functions_in_yacc: "require (T_REQUIRE)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -4977,12 +4978,12 @@ state 128 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 579 (internal_functions_in_yacc) + $default reduce using rule 580 (internal_functions_in_yacc) state 129 - 578 internal_functions_in_yacc: "eval (T_EVAL)" '(' . expr ')' + 579 internal_functions_in_yacc: "eval (T_EVAL)" '(' . expr ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -5096,7 +5097,7 @@ state 130 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 577 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" expr . + 578 internal_functions_in_yacc: "include_once (T_INCLUDE_ONCE)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -5126,7 +5127,7 @@ state 130 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 577 (internal_functions_in_yacc) + $default reduce using rule 578 (internal_functions_in_yacc) state 131 @@ -5159,7 +5160,7 @@ state 131 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 576 internal_functions_in_yacc: "include (T_INCLUDE)" expr . + 577 internal_functions_in_yacc: "include (T_INCLUDE)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -5189,7 +5190,7 @@ state 131 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 576 (internal_functions_in_yacc) + $default reduce using rule 577 (internal_functions_in_yacc) state 132 @@ -5255,11 +5256,11 @@ state 132 state 133 361 yield_expr: "yield (T_YIELD)" expr_without_variable . - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . ')' reduce using rule 361 (yield_expr) ';' reduce using rule 361 (yield_expr) - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 134 @@ -5343,8 +5344,8 @@ state 135 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr 362 yield_expr: "yield (T_YIELD)" variable . - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -5360,11 +5361,11 @@ state 135 "-= (T_MINUS_EQUAL)" shift, and go to state 295 "+= (T_PLUS_EQUAL)" shift, and go to state 296 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) ')' reduce using rule 362 (yield_expr) ';' reduce using rule 362 (yield_expr) - $default reduce using rule 494 (r_variable) + $default reduce using rule 495 (r_variable) state 136 @@ -5904,7 +5905,7 @@ state 152 384 function_call: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name @61 function_call_parameter_list 386 | class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@62 function_call_parameter_list - 514 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 515 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 311 @@ -5918,16 +5919,16 @@ state 153 state 154 - 496 rw_variable: variable . + 497 rw_variable: variable . - $default reduce using rule 496 (rw_variable) + $default reduce using rule 497 (rw_variable) state 155 388 function_call: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name $@63 function_call_parameter_list 390 | variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@64 function_call_parameter_list - 515 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 516 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 312 @@ -5941,7 +5942,7 @@ state 156 state 157 - 558 non_empty_array_pair_list: '&' . w_variable + 559 non_empty_array_pair_list: '&' . w_variable "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -5996,9 +5997,9 @@ state 158 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 553 non_empty_array_pair_list: expr . "=> (T_DOUBLE_ARROW)" expr - 554 | expr . - 557 | expr . "=> (T_DOUBLE_ARROW)" '&' w_variable + 554 non_empty_array_pair_list: expr . "=> (T_DOUBLE_ARROW)" expr + 555 | expr . + 558 | expr . "=> (T_DOUBLE_ARROW)" '&' w_variable "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -6029,7 +6030,7 @@ state 158 "** (T_POW)" shift, and go to state 280 "=> (T_DOUBLE_ARROW)" shift, and go to state 315 - $default reduce using rule 554 (non_empty_array_pair_list) + $default reduce using rule 555 (non_empty_array_pair_list) state 159 @@ -6041,15 +6042,15 @@ state 159 state 160 - 550 array_pair_list: non_empty_array_pair_list . possible_comma - 551 non_empty_array_pair_list: non_empty_array_pair_list . ',' expr "=> (T_DOUBLE_ARROW)" expr - 552 | non_empty_array_pair_list . ',' expr - 555 | non_empty_array_pair_list . ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable - 556 | non_empty_array_pair_list . ',' '&' w_variable + 551 array_pair_list: non_empty_array_pair_list . possible_comma + 552 non_empty_array_pair_list: non_empty_array_pair_list . ',' expr "=> (T_DOUBLE_ARROW)" expr + 553 | non_empty_array_pair_list . ',' expr + 556 | non_empty_array_pair_list . ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable + 557 | non_empty_array_pair_list . ',' '&' w_variable ',' shift, and go to state 317 - $default reduce using rule 484 (possible_comma) + $default reduce using rule 485 (possible_comma) possible_comma go to state 318 @@ -6118,7 +6119,7 @@ state 164 state 165 400 class_name_reference: class_name . - 514 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 515 static_member: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 321 @@ -6143,7 +6144,7 @@ state 167 state 168 - 515 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects + 516 static_member: variable_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 323 @@ -6160,22 +6161,22 @@ state 169 state 170 - 516 variable_class_name: reference_variable . - 523 base_variable: reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 517 variable_class_name: reference_variable . + 524 base_variable: reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 516 (variable_class_name) - $default reduce using rule 523 (base_variable) + ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 517 (variable_class_name) + $default reduce using rule 524 (base_variable) state 171 - 524 base_variable: simple_indirect_reference . reference_variable - 542 simple_indirect_reference: simple_indirect_reference . '$' + 525 base_variable: simple_indirect_reference . reference_variable + 543 simple_indirect_reference: simple_indirect_reference . '$' "variable (T_VARIABLE)" shift, and go to state 35 '$' shift, and go to state 303 @@ -6187,8 +6188,8 @@ state 171 state 172 410 exit_expr: '(' . ')' - 492 parenthesis_expr: '(' . expr ')' - 493 | '(' . yield_expr ')' + 493 parenthesis_expr: '(' . expr ')' + 494 | '(' . yield_expr ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -6290,8 +6291,8 @@ state 174 state 175 - 492 parenthesis_expr: '(' . expr ')' - 493 | '(' . yield_expr ')' + 493 parenthesis_expr: '(' . expr ')' + 494 | '(' . yield_expr ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -6452,7 +6453,7 @@ state 178 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -7028,11 +7029,11 @@ state 193 state 194 73 unticked_statement: "return (T_RETURN)" expr_without_variable . ';' - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . ';' shift, and go to state 346 - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 195 @@ -7113,8 +7114,8 @@ state 196 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -7131,9 +7132,9 @@ state 196 "+= (T_PLUS_EQUAL)" shift, and go to state 296 ';' shift, and go to state 347 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) - $default reduce using rule 494 (r_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) + $default reduce using rule 495 (r_variable) state 197 @@ -7394,7 +7395,7 @@ state 214 state 215 - 573 internal_functions_in_yacc: "isset (T_ISSET)" '(' . isset_variables ')' + 574 internal_functions_in_yacc: "isset (T_ISSET)" '(' . isset_variables ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -7482,8 +7483,8 @@ state 215 state 216 - 574 internal_functions_in_yacc: "empty (T_EMPTY)" '(' . variable ')' - 575 | "empty (T_EMPTY)" '(' . expr_without_variable ')' + 575 internal_functions_in_yacc: "empty (T_EMPTY)" '(' . variable ')' + 576 | "empty (T_EMPTY)" '(' . expr_without_variable ')' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -7641,7 +7642,7 @@ state 219 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 549 (array_pair_list) + $default reduce using rule 550 (array_pair_list) namespace_name go to state 84 new_expr go to state 95 @@ -7676,20 +7677,20 @@ state 219 state 220 - 563 encaps_var: "variable (T_VARIABLE)" . - 565 | "variable (T_VARIABLE)" . '[' $@75 encaps_var_offset ']' - 566 | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" + 564 encaps_var: "variable (T_VARIABLE)" . + 566 | "variable (T_VARIABLE)" . '[' $@75 encaps_var_offset ']' + 567 | "variable (T_VARIABLE)" . "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" '[' shift, and go to state 383 "-> (T_OBJECT_OPERATOR)" shift, and go to state 384 - $default reduce using rule 563 (encaps_var) + $default reduce using rule 564 (encaps_var) state 221 427 common_scalar: "heredoc start (T_START_HEREDOC)" "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . "heredoc end (T_END_HEREDOC)" - 562 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var + 563 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var "variable (T_VARIABLE)" shift, and go to state 220 "heredoc end (T_END_HEREDOC)" shift, and go to state 385 @@ -7708,8 +7709,8 @@ state 222 state 223 - 567 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}' - 568 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '[' expr ']' '}' + 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . expr '}' + 569 | "${ (T_DOLLAR_OPEN_CURLY_BRACES)" . "variable name (T_STRING_VARNAME)" '[' expr ']' '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -7795,7 +7796,7 @@ state 223 state 224 - 569 encaps_var: "{$ (T_CURLY_OPEN)" . variable '}' + 570 encaps_var: "{$ (T_CURLY_OPEN)" . variable '}' "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -7821,9 +7822,9 @@ state 224 state 225 - 480 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)" - 559 encaps_list: encaps_list . encaps_var - 560 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" + 481 scalar: "heredoc start (T_START_HEREDOC)" encaps_list . "heredoc end (T_END_HEREDOC)" + 560 encaps_list: encaps_list . encaps_var + 561 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "variable (T_VARIABLE)" shift, and go to state 220 "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" shift, and go to state 390 @@ -7836,16 +7837,16 @@ state 225 state 226 - 561 encaps_list: encaps_var . + 562 encaps_list: encaps_var . - $default reduce using rule 561 (encaps_list) + $default reduce using rule 562 (encaps_list) state 227 380 function_call: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name @59 function_call_parameter_list 395 class_name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name - 476 scalar: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name + 477 scalar: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name "identifier (T_STRING)" shift, and go to state 123 @@ -7877,13 +7878,13 @@ state 230 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 382 function_call: "\\ (T_NS_SEPARATOR)" namespace_name . @60 function_call_parameter_list 396 class_name: "\\ (T_NS_SEPARATOR)" namespace_name . - 477 scalar: "\\ (T_NS_SEPARATOR)" namespace_name . + 478 scalar: "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" shift, and go to state 241 ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 396 (class_name) '(' reduce using rule 381 (@60) - $default reduce using rule 477 (scalar) + $default reduce using rule 478 (scalar) @60 go to state 397 @@ -7901,7 +7902,7 @@ state 231 state 232 - 493 parenthesis_expr: '(' yield_expr . ')' + 494 parenthesis_expr: '(' yield_expr . ')' ')' shift, and go to state 399 @@ -7936,7 +7937,7 @@ state 233 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 492 parenthesis_expr: '(' expr . ')' + 493 parenthesis_expr: '(' expr . ')' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -7982,7 +7983,7 @@ state 234 state 235 - 530 compound_variable: '$' '{' . expr '}' + 531 compound_variable: '$' '{' . expr '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -8069,7 +8070,7 @@ state 235 state 236 413 backticks_expr: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . - 562 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var + 563 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var "variable (T_VARIABLE)" shift, and go to state 220 "${ (T_DOLLAR_OPEN_CURLY_BRACES)" shift, and go to state 223 @@ -8090,8 +8091,8 @@ state 237 state 238 414 backticks_expr: encaps_list . - 559 encaps_list: encaps_list . encaps_var - 560 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" + 560 encaps_list: encaps_list . encaps_var + 561 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "variable (T_VARIABLE)" shift, and go to state 220 "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" shift, and go to state 390 @@ -8105,7 +8106,7 @@ state 238 state 239 - 562 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var + 563 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . encaps_var "variable (T_VARIABLE)" shift, and go to state 220 "${ (T_DOLLAR_OPEN_CURLY_BRACES)" shift, and go to state 223 @@ -8116,9 +8117,9 @@ state 239 state 240 - 479 scalar: '"' encaps_list . '"' - 559 encaps_list: encaps_list . encaps_var - 560 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" + 480 scalar: '"' encaps_list . '"' + 560 encaps_list: encaps_list . encaps_var + 561 | encaps_list . "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" "variable (T_VARIABLE)" shift, and go to state 220 "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" shift, and go to state 390 @@ -8243,7 +8244,7 @@ state 248 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -8332,7 +8333,7 @@ state 249 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -8385,7 +8386,7 @@ state 251 state 252 - 519 array_function_dereference: function_call $@72 . '[' dim_offset ']' + 520 array_function_dereference: function_call $@72 . '[' dim_offset ']' '[' shift, and go to state 417 @@ -8394,9 +8395,9 @@ state 253 384 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_name @61 function_call_parameter_list 386 | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects $@62 function_call_parameter_list - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects - 586 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" - 589 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "class (T_CLASS)" + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 587 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" + 590 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "class (T_CLASS)" "identifier (T_STRING)" shift, and go to state 418 "variable (T_VARIABLE)" shift, and go to state 35 @@ -11443,8 +11444,8 @@ state 298 388 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_name $@63 function_call_parameter_list 390 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects $@64 function_call_parameter_list - 515 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects - 587 class_constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" + 516 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 588 class_constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" "identifier (T_STRING)" shift, and go to state 468 "variable (T_VARIABLE)" shift, and go to state 35 @@ -11460,7 +11461,7 @@ state 298 state 299 - 517 array_function_dereference: array_function_dereference '[' . dim_offset ']' + 518 array_function_dereference: array_function_dereference '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -11515,7 +11516,7 @@ state 299 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -11549,16 +11550,16 @@ state 299 state 300 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" . $@68 object_property $@69 method_or_not variable_properties + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" . $@68 object_property $@69 method_or_not variable_properties - $default reduce using rule 497 ($@68) + $default reduce using rule 498 ($@68) $@68 go to state 472 state 301 - 526 reference_variable: reference_variable '[' . dim_offset ']' + 527 reference_variable: reference_variable '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -11613,7 +11614,7 @@ state 301 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -11647,7 +11648,7 @@ state 301 state 302 - 527 reference_variable: reference_variable '{' . expr '}' + 528 reference_variable: reference_variable '{' . expr '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -11733,26 +11734,26 @@ state 302 state 303 - 530 compound_variable: '$' . '{' expr '}' - 542 simple_indirect_reference: simple_indirect_reference '$' . + 531 compound_variable: '$' . '{' expr '}' + 543 simple_indirect_reference: simple_indirect_reference '$' . '{' shift, and go to state 235 - $default reduce using rule 542 (simple_indirect_reference) + $default reduce using rule 543 (simple_indirect_reference) state 304 - 513 variable_without_objects: simple_indirect_reference reference_variable . - 524 base_variable: simple_indirect_reference reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 514 variable_without_objects: simple_indirect_reference reference_variable . + 525 base_variable: simple_indirect_reference reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - '(' reduce using rule 513 (variable_without_objects) - $default reduce using rule 524 (base_variable) + '(' reduce using rule 514 (variable_without_objects) + $default reduce using rule 525 (base_variable) state 305 @@ -11794,7 +11795,7 @@ state 306 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 578 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr . ')' + 579 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr . ')' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -11978,7 +11979,7 @@ state 311 384 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_name @61 function_call_parameter_list 386 | class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects $@62 function_call_parameter_list - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects "identifier (T_STRING)" shift, and go to state 479 "variable (T_VARIABLE)" shift, and go to state 35 @@ -11996,7 +11997,7 @@ state 312 388 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_name $@63 function_call_parameter_list 390 | variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects $@64 function_call_parameter_list - 515 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 516 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects "identifier (T_STRING)" shift, and go to state 479 "variable (T_VARIABLE)" shift, and go to state 35 @@ -12012,22 +12013,22 @@ state 312 state 313 - 558 non_empty_array_pair_list: '&' w_variable . + 559 non_empty_array_pair_list: '&' w_variable . - $default reduce using rule 558 (non_empty_array_pair_list) + $default reduce using rule 559 (non_empty_array_pair_list) state 314 - 495 w_variable: variable . + 496 w_variable: variable . - $default reduce using rule 495 (w_variable) + $default reduce using rule 496 (w_variable) state 315 - 553 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" . expr - 557 | expr "=> (T_DOUBLE_ARROW)" . '&' w_variable + 554 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" . expr + 558 | expr "=> (T_DOUBLE_ARROW)" . '&' w_variable "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -12121,11 +12122,11 @@ state 316 state 317 - 485 possible_comma: ',' . - 551 non_empty_array_pair_list: non_empty_array_pair_list ',' . expr "=> (T_DOUBLE_ARROW)" expr - 552 | non_empty_array_pair_list ',' . expr - 555 | non_empty_array_pair_list ',' . expr "=> (T_DOUBLE_ARROW)" '&' w_variable - 556 | non_empty_array_pair_list ',' . '&' w_variable + 486 possible_comma: ',' . + 552 non_empty_array_pair_list: non_empty_array_pair_list ',' . expr "=> (T_DOUBLE_ARROW)" expr + 553 | non_empty_array_pair_list ',' . expr + 556 | non_empty_array_pair_list ',' . expr "=> (T_DOUBLE_ARROW)" '&' w_variable + 557 | non_empty_array_pair_list ',' . '&' w_variable "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -12181,7 +12182,7 @@ state 317 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 485 (possible_comma) + $default reduce using rule 486 (possible_comma) namespace_name go to state 84 new_expr go to state 95 @@ -12214,9 +12215,9 @@ state 317 state 318 - 550 array_pair_list: non_empty_array_pair_list possible_comma . + 551 array_pair_list: non_empty_array_pair_list possible_comma . - $default reduce using rule 550 (array_pair_list) + $default reduce using rule 551 (array_pair_list) state 319 @@ -12240,7 +12241,7 @@ state 320 state 321 - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects "variable (T_VARIABLE)" shift, and go to state 35 '$' shift, and go to state 81 @@ -12265,7 +12266,7 @@ state 322 state 323 - 515 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects + 516 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . variable_without_objects "variable (T_VARIABLE)" shift, and go to state 35 '$' shift, and go to state 81 @@ -12287,14 +12288,14 @@ state 324 state 325 - 524 base_variable: simple_indirect_reference reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 525 base_variable: simple_indirect_reference reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - $default reduce using rule 524 (base_variable) + $default reduce using rule 525 (base_variable) state 326 @@ -12451,7 +12452,7 @@ state 329 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 532 dim_offset: expr . + 533 dim_offset: expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -12481,7 +12482,7 @@ state 329 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 532 (dim_offset) + $default reduce using rule 533 (dim_offset) state 330 @@ -12683,11 +12684,11 @@ state 337 state 338 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable . "as (T_AS)" $@19 foreach_variable foreach_optional_arg ')' $@20 foreach_statement - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . "as (T_AS)" shift, and go to state 498 - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 339 @@ -12708,8 +12709,8 @@ state 339 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -12726,9 +12727,9 @@ state 339 "+= (T_PLUS_EQUAL)" shift, and go to state 296 "as (T_AS)" shift, and go to state 499 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) - $default reduce using rule 494 (r_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) + $default reduce using rule 495 (r_variable) state 340 @@ -13047,9 +13048,9 @@ state 363 state 364 - 494 r_variable: variable . + 495 r_variable: variable . - $default reduce using rule 494 (r_variable) + $default reduce using rule 495 (r_variable) state 365 @@ -13156,12 +13157,12 @@ state 373 state 374 - 491 expr: expr_without_variable . - 585 isset_variable: expr_without_variable . + 492 expr: expr_without_variable . + 586 isset_variable: expr_without_variable . - ',' reduce using rule 585 (isset_variable) - ')' reduce using rule 585 (isset_variable) - $default reduce using rule 491 (expr) + ',' reduce using rule 586 (isset_variable) + ')' reduce using rule 586 (isset_variable) + $default reduce using rule 492 (expr) state 375 @@ -13181,9 +13182,9 @@ state 375 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . - 584 isset_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . + 585 isset_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -13199,17 +13200,17 @@ state 375 "-= (T_MINUS_EQUAL)" shift, and go to state 295 "+= (T_PLUS_EQUAL)" shift, and go to state 296 - ',' reduce using rule 584 (isset_variable) - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) - ')' reduce using rule 584 (isset_variable) - $default reduce using rule 494 (r_variable) + ',' reduce using rule 585 (isset_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) + ')' reduce using rule 585 (isset_variable) + $default reduce using rule 495 (r_variable) state 376 - 573 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . ')' - 583 isset_variables: isset_variables . ',' $@76 isset_variable + 574 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables . ')' + 584 isset_variables: isset_variables . ',' $@76 isset_variable ',' shift, and go to state 544 ')' shift, and go to state 545 @@ -13217,19 +13218,19 @@ state 376 state 377 - 581 isset_variables: isset_variable . + 582 isset_variables: isset_variable . - $default reduce using rule 581 (isset_variables) + $default reduce using rule 582 (isset_variables) state 378 - 491 expr: expr_without_variable . - 575 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr_without_variable . ')' + 492 expr: expr_without_variable . + 576 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr_without_variable . ')' ')' shift, and go to state 546 - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 379 @@ -13249,9 +13250,9 @@ state 379 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . - 574 internal_functions_in_yacc: "empty (T_EMPTY)" '(' variable . ')' + 495 r_variable: variable . + 497 rw_variable: variable . + 575 internal_functions_in_yacc: "empty (T_EMPTY)" '(' variable . ')' '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -13268,9 +13269,9 @@ state 379 "+= (T_PLUS_EQUAL)" shift, and go to state 296 ')' shift, and go to state 547 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) - $default reduce using rule 494 (r_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) + $default reduce using rule 495 (r_variable) state 380 @@ -13292,7 +13293,7 @@ state 381 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 - $default reduce using rule 548 (assignment_list_element) + $default reduce using rule 549 (assignment_list_element) namespace_name go to state 151 function_call go to state 101 @@ -13320,16 +13321,16 @@ state 382 state 383 - 565 encaps_var: "variable (T_VARIABLE)" '[' . $@75 encaps_var_offset ']' + 566 encaps_var: "variable (T_VARIABLE)" '[' . $@75 encaps_var_offset ']' - $default reduce using rule 564 ($@75) + $default reduce using rule 565 ($@75) $@75 go to state 554 state 384 - 566 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" . "identifier (T_STRING)" + 567 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" . "identifier (T_STRING)" "identifier (T_STRING)" shift, and go to state 555 @@ -13343,19 +13344,19 @@ state 385 state 386 - 562 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var . + 563 encaps_list: "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" encaps_var . - $default reduce using rule 562 (encaps_list) + $default reduce using rule 563 (encaps_list) state 387 - 472 scalar: "variable name (T_STRING_VARNAME)" . - 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '[' expr ']' '}' + 473 scalar: "variable name (T_STRING_VARNAME)" . + 569 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" . '[' expr ']' '}' '[' shift, and go to state 556 - $default reduce using rule 472 (scalar) + $default reduce using rule 473 (scalar) state 388 @@ -13388,7 +13389,7 @@ state 388 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 567 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr . '}' + 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr . '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -13422,30 +13423,30 @@ state 388 state 389 - 569 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}' + 570 encaps_var: "{$ (T_CURLY_OPEN)" variable . '}' '}' shift, and go to state 558 state 390 - 560 encaps_list: encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . + 561 encaps_list: encaps_list "quoted-string and whitespace (T_ENCAPSED_AND_WHITESPACE)" . - $default reduce using rule 560 (encaps_list) + $default reduce using rule 561 (encaps_list) state 391 - 480 scalar: "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" . + 481 scalar: "heredoc start (T_START_HEREDOC)" encaps_list "heredoc end (T_END_HEREDOC)" . - $default reduce using rule 480 (scalar) + $default reduce using rule 481 (scalar) state 392 - 559 encaps_list: encaps_list encaps_var . + 560 encaps_list: encaps_list encaps_var . - $default reduce using rule 559 (encaps_list) + $default reduce using rule 560 (encaps_list) state 393 @@ -13453,13 +13454,13 @@ state 393 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 380 function_call: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . @59 function_call_parameter_list 395 class_name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . - 476 scalar: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . + 477 scalar: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . "\\ (T_NS_SEPARATOR)" shift, and go to state 241 ":: (T_PAAMAYIM_NEKUDOTAYIM)" reduce using rule 395 (class_name) '(' reduce using rule 379 (@59) - $default reduce using rule 476 (scalar) + $default reduce using rule 477 (scalar) @59 go to state 559 @@ -13509,16 +13510,16 @@ state 398 state 399 - 493 parenthesis_expr: '(' yield_expr ')' . + 494 parenthesis_expr: '(' yield_expr ')' . - $default reduce using rule 493 (parenthesis_expr) + $default reduce using rule 494 (parenthesis_expr) state 400 - 492 parenthesis_expr: '(' expr ')' . + 493 parenthesis_expr: '(' expr ')' . - $default reduce using rule 492 (parenthesis_expr) + $default reduce using rule 493 (parenthesis_expr) state 401 @@ -13679,7 +13680,7 @@ state 403 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 530 compound_variable: '$' '{' expr . '}' + 531 compound_variable: '$' '{' expr . '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -13720,9 +13721,9 @@ state 404 state 405 - 479 scalar: '"' encaps_list '"' . + 480 scalar: '"' encaps_list '"' . - $default reduce using rule 479 (scalar) + $default reduce using rule 480 (scalar) state 406 @@ -13904,7 +13905,7 @@ state 416 state 417 - 519 array_function_dereference: function_call $@72 '[' . dim_offset ']' + 520 array_function_dereference: function_call $@72 '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -13959,7 +13960,7 @@ state 417 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -13993,23 +13994,23 @@ state 417 state 418 - 539 variable_name: "identifier (T_STRING)" . - 586 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . + 540 variable_name: "identifier (T_STRING)" . + 587 class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . - '(' reduce using rule 539 (variable_name) - $default reduce using rule 586 (class_constant) + '(' reduce using rule 540 (variable_name) + $default reduce using rule 587 (class_constant) state 419 - 589 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" . + 590 class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" . - $default reduce using rule 589 (class_name_scalar) + $default reduce using rule 590 (class_name_scalar) state 420 - 540 variable_name: '{' . expr '}' + 541 variable_name: '{' . expr '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -14096,24 +14097,24 @@ state 420 state 421 386 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . $@62 function_call_parameter_list - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . '(' reduce using rule 385 ($@62) - $default reduce using rule 514 (static_member) + $default reduce using rule 515 (static_member) $@62 go to state 592 state 422 - 512 variable_without_objects: reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 513 variable_without_objects: reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - $default reduce using rule 512 (variable_without_objects) + $default reduce using rule 513 (variable_without_objects) state 423 @@ -14127,8 +14128,8 @@ state 423 state 424 - 513 variable_without_objects: simple_indirect_reference . reference_variable - 542 simple_indirect_reference: simple_indirect_reference . '$' + 514 variable_without_objects: simple_indirect_reference . reference_variable + 543 simple_indirect_reference: simple_indirect_reference . '$' "variable (T_VARIABLE)" shift, and go to state 35 '$' shift, and go to state 303 @@ -16412,20 +16413,20 @@ state 467 state 468 - 539 variable_name: "identifier (T_STRING)" . - 587 class_constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . + 540 variable_name: "identifier (T_STRING)" . + 588 class_constant: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . - '(' reduce using rule 539 (variable_name) - $default reduce using rule 587 (class_constant) + '(' reduce using rule 540 (variable_name) + $default reduce using rule 588 (class_constant) state 469 390 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . $@64 function_call_parameter_list - 515 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . + 516 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . '(' reduce using rule 389 ($@64) - $default reduce using rule 515 (static_member) + $default reduce using rule 516 (static_member) $@64 go to state 603 @@ -16441,14 +16442,14 @@ state 470 state 471 - 517 array_function_dereference: array_function_dereference '[' dim_offset . ']' + 518 array_function_dereference: array_function_dereference '[' dim_offset . ']' ']' shift, and go to state 605 state 472 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 . object_property $@69 method_or_not variable_properties + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 . object_property $@69 method_or_not variable_properties "identifier (T_STRING)" shift, and go to state 479 "variable (T_VARIABLE)" shift, and go to state 35 @@ -16466,7 +16467,7 @@ state 472 state 473 - 526 reference_variable: reference_variable '[' dim_offset . ']' + 527 reference_variable: reference_variable '[' dim_offset . ']' ']' shift, and go to state 610 @@ -16501,7 +16502,7 @@ state 474 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 527 reference_variable: reference_variable '{' expr . '}' + 528 reference_variable: reference_variable '{' expr . '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -16535,19 +16536,19 @@ state 474 state 475 - 578 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr ')' . + 579 internal_functions_in_yacc: "eval (T_EVAL)" '(' expr ')' . - $default reduce using rule 578 (internal_functions_in_yacc) + $default reduce using rule 579 (internal_functions_in_yacc) state 476 363 yield_expr: "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" expr_without_variable . - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . ')' reduce using rule 363 (yield_expr) ';' reduce using rule 363 (yield_expr) - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 477 @@ -16568,8 +16569,8 @@ state 477 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr 364 yield_expr: "yield (T_YIELD)" expr "=> (T_DOUBLE_ARROW)" variable . - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -16585,11 +16586,11 @@ state 477 "-= (T_MINUS_EQUAL)" shift, and go to state 295 "+= (T_PLUS_EQUAL)" shift, and go to state 296 - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) ')' reduce using rule 364 (yield_expr) ';' reduce using rule 364 (yield_expr) - $default reduce using rule 494 (r_variable) + $default reduce using rule 495 (r_variable) state 478 @@ -16608,14 +16609,14 @@ state 478 state 479 - 539 variable_name: "identifier (T_STRING)" . + 540 variable_name: "identifier (T_STRING)" . - $default reduce using rule 539 (variable_name) + $default reduce using rule 540 (variable_name) state 480 - 557 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" '&' . w_variable + 558 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" '&' . w_variable "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -16670,7 +16671,7 @@ state 481 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 553 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" expr . + 554 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -16700,12 +16701,12 @@ state 481 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 553 (non_empty_array_pair_list) + $default reduce using rule 554 (non_empty_array_pair_list) state 482 - 556 non_empty_array_pair_list: non_empty_array_pair_list ',' '&' . w_variable + 557 non_empty_array_pair_list: non_empty_array_pair_list ',' '&' . w_variable "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -16760,9 +16761,9 @@ state 483 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 551 non_empty_array_pair_list: non_empty_array_pair_list ',' expr . "=> (T_DOUBLE_ARROW)" expr - 552 | non_empty_array_pair_list ',' expr . - 555 | non_empty_array_pair_list ',' expr . "=> (T_DOUBLE_ARROW)" '&' w_variable + 552 non_empty_array_pair_list: non_empty_array_pair_list ',' expr . "=> (T_DOUBLE_ARROW)" expr + 553 | non_empty_array_pair_list ',' expr . + 556 | non_empty_array_pair_list ',' expr . "=> (T_DOUBLE_ARROW)" '&' w_variable "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -16793,7 +16794,7 @@ state 483 "** (T_POW)" shift, and go to state 280 "=> (T_DOUBLE_ARROW)" shift, and go to state 614 - $default reduce using rule 552 (non_empty_array_pair_list) + $default reduce using rule 553 (non_empty_array_pair_list) state 484 @@ -16808,9 +16809,9 @@ state 484 state 485 - 514 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . + 515 static_member: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . - $default reduce using rule 514 (static_member) + $default reduce using rule 515 (static_member) state 486 @@ -16829,9 +16830,9 @@ state 487 state 488 - 515 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . + 516 static_member: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects . - $default reduce using rule 515 (static_member) + $default reduce using rule 516 (static_member) state 489 @@ -17144,7 +17145,7 @@ state 504 state 505 - 469 static_operation: '+' . static_scalar_value + 470 static_operation: '+' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -17179,7 +17180,7 @@ state 505 state 506 - 470 static_operation: '-' . static_scalar_value + 471 static_operation: '-' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -17214,7 +17215,7 @@ state 506 state 507 - 446 static_operation: '!' . static_scalar_value + 447 static_operation: '!' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -17249,7 +17250,7 @@ state 507 state 508 - 447 static_operation: '~' . static_scalar_value + 448 static_operation: '~' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -17310,7 +17311,7 @@ state 509 "\\ (T_NS_SEPARATOR)" shift, and go to state 515 '(' shift, and go to state 516 - $default reduce using rule 482 (static_array_pair_list) + $default reduce using rule 483 (static_array_pair_list) namespace_name go to state 517 class_name go to state 518 @@ -17374,7 +17375,7 @@ state 515 state 516 - 471 static_operation: '(' . static_scalar_value ')' + 472 static_operation: '(' . static_scalar_value ')' '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -17422,7 +17423,7 @@ state 517 state 518 429 static_class_constant: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" - 588 static_class_name_scalar: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" + 589 static_class_name_scalar: class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 645 @@ -17454,29 +17455,30 @@ state 522 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "or (T_LOGICAL_OR)" shift, and go to state 646 "xor (T_LOGICAL_XOR)" shift, and go to state 647 @@ -17503,6 +17505,7 @@ state 522 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 $default reduce using rule 430 (static_scalar) @@ -17526,7 +17529,7 @@ state 525 41 inner_statement_list: inner_statement_list . $@4 inner_statement 93 unticked_statement: "try (T_TRY)" $@22 '{' inner_statement_list . '}' catch_statement $@23 finally_statement - '}' shift, and go to state 671 + '}' shift, and go to state 672 $default reduce using rule 40 ($@4) @@ -17539,7 +17542,7 @@ state 526 30 use_function_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . 31 | "\\ (T_NS_SEPARATOR)" namespace_name . "as (T_AS)" "identifier (T_STRING)" - "as (T_AS)" shift, and go to state 672 + "as (T_AS)" shift, and go to state 673 "\\ (T_NS_SEPARATOR)" shift, and go to state 241 $default reduce using rule 30 (use_function_declaration) @@ -17549,7 +17552,7 @@ state 527 29 use_function_declaration: namespace_name "as (T_AS)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 673 + "identifier (T_STRING)" shift, and go to state 674 state 528 @@ -17560,7 +17563,7 @@ state 528 "\\ (T_NS_SEPARATOR)" shift, and go to state 350 namespace_name go to state 351 - use_function_declaration go to state 674 + use_function_declaration go to state 675 state 529 @@ -17576,7 +17579,7 @@ state 530 36 use_const_declaration: "\\ (T_NS_SEPARATOR)" namespace_name . 37 | "\\ (T_NS_SEPARATOR)" namespace_name . "as (T_AS)" "identifier (T_STRING)" - "as (T_AS)" shift, and go to state 675 + "as (T_AS)" shift, and go to state 676 "\\ (T_NS_SEPARATOR)" shift, and go to state 241 $default reduce using rule 36 (use_const_declaration) @@ -17586,7 +17589,7 @@ state 531 35 use_const_declaration: namespace_name "as (T_AS)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 676 + "identifier (T_STRING)" shift, and go to state 677 state 532 @@ -17597,7 +17600,7 @@ state 532 "\\ (T_NS_SEPARATOR)" shift, and go to state 354 namespace_name go to state 355 - use_const_declaration go to state 677 + use_const_declaration go to state 678 state 533 @@ -17611,7 +17614,7 @@ state 534 25 use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 678 + "identifier (T_STRING)" shift, and go to state 679 state 535 @@ -17687,7 +17690,7 @@ state 537 '%' shift, and go to state 278 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - '}' shift, and go to state 679 + '}' shift, and go to state 680 state 538 @@ -17709,7 +17712,7 @@ state 540 201 static_var_list: static_var_list ',' "variable (T_VARIABLE)" . 202 | static_var_list ',' "variable (T_VARIABLE)" . '=' static_scalar - '=' shift, and go to state 680 + '=' shift, and go to state 681 $default reduce using rule 201 (static_var_list) @@ -17718,7 +17721,7 @@ state 541 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 . '(' parameter_list ')' lexical_vars '{' inner_statement_list '}' - '(' shift, and go to state 681 + '(' shift, and go to state 682 state 542 @@ -17733,7 +17736,7 @@ state 542 '$' shift, and go to state 81 namespace_name go to state 151 - unset_variable go to state 682 + unset_variable go to state 683 function_call go to state 101 class_name go to state 152 variable go to state 373 @@ -17752,37 +17755,37 @@ state 543 81 unticked_statement: "unset (T_UNSET)" '(' unset_variables ')' . ';' - ';' shift, and go to state 683 + ';' shift, and go to state 684 state 544 - 583 isset_variables: isset_variables ',' . $@76 isset_variable + 584 isset_variables: isset_variables ',' . $@76 isset_variable - $default reduce using rule 582 ($@76) + $default reduce using rule 583 ($@76) - $@76 go to state 684 + $@76 go to state 685 state 545 - 573 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')' . + 574 internal_functions_in_yacc: "isset (T_ISSET)" '(' isset_variables ')' . - $default reduce using rule 573 (internal_functions_in_yacc) + $default reduce using rule 574 (internal_functions_in_yacc) state 546 - 575 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr_without_variable ')' . + 576 internal_functions_in_yacc: "empty (T_EMPTY)" '(' expr_without_variable ')' . - $default reduce using rule 575 (internal_functions_in_yacc) + $default reduce using rule 576 (internal_functions_in_yacc) state 547 - 574 internal_functions_in_yacc: "empty (T_EMPTY)" '(' variable ')' . + 575 internal_functions_in_yacc: "empty (T_EMPTY)" '(' variable ')' . - $default reduce using rule 574 (internal_functions_in_yacc) + $default reduce using rule 575 (internal_functions_in_yacc) state 548 @@ -17794,32 +17797,32 @@ state 548 state 549 - 547 assignment_list_element: "list (T_LIST)" . '(' $@74 assignment_list ')' + 548 assignment_list_element: "list (T_LIST)" . '(' $@74 assignment_list ')' - '(' shift, and go to state 685 + '(' shift, and go to state 686 state 550 - 545 assignment_list_element: variable . + 546 assignment_list_element: variable . - $default reduce using rule 545 (assignment_list_element) + $default reduce using rule 546 (assignment_list_element) state 551 275 expr_without_variable: "list (T_LIST)" '(' $@45 assignment_list . ')' '=' expr - 543 assignment_list: assignment_list . ',' assignment_list_element + 544 assignment_list: assignment_list . ',' assignment_list_element - ',' shift, and go to state 686 - ')' shift, and go to state 687 + ',' shift, and go to state 687 + ')' shift, and go to state 688 state 552 - 544 assignment_list: assignment_list_element . + 545 assignment_list: assignment_list_element . - $default reduce using rule 544 (assignment_list) + $default reduce using rule 545 (assignment_list) state 553 @@ -17831,25 +17834,25 @@ state 553 state 554 - 565 encaps_var: "variable (T_VARIABLE)" '[' $@75 . encaps_var_offset ']' + 566 encaps_var: "variable (T_VARIABLE)" '[' $@75 . encaps_var_offset ']' - "identifier (T_STRING)" shift, and go to state 688 - "variable (T_VARIABLE)" shift, and go to state 689 - "number (T_NUM_STRING)" shift, and go to state 690 + "identifier (T_STRING)" shift, and go to state 689 + "variable (T_VARIABLE)" shift, and go to state 690 + "number (T_NUM_STRING)" shift, and go to state 691 - encaps_var_offset go to state 691 + encaps_var_offset go to state 692 state 555 - 566 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" . + 567 encaps_var: "variable (T_VARIABLE)" "-> (T_OBJECT_OPERATOR)" "identifier (T_STRING)" . - $default reduce using rule 566 (encaps_var) + $default reduce using rule 567 (encaps_var) state 556 - 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' . expr ']' '}' + 569 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' . expr ']' '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -17914,7 +17917,7 @@ state 556 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 692 + expr go to state 693 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -17935,16 +17938,16 @@ state 556 state 557 - 567 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' . + 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" expr '}' . - $default reduce using rule 567 (encaps_var) + $default reduce using rule 568 (encaps_var) state 558 - 569 encaps_var: "{$ (T_CURLY_OPEN)" variable '}' . + 570 encaps_var: "{$ (T_CURLY_OPEN)" variable '}' . - $default reduce using rule 569 (encaps_var) + $default reduce using rule 570 (encaps_var) state 559 @@ -17953,7 +17956,7 @@ state 559 '(' shift, and go to state 407 - function_call_parameter_list go to state 693 + function_call_parameter_list go to state 694 state 560 @@ -17961,7 +17964,7 @@ state 560 3 top_statement_list: top_statement_list . $@1 top_statement 15 top_statement: "namespace (T_NAMESPACE)" '{' $@3 top_statement_list . '}' - '}' shift, and go to state 694 + '}' shift, and go to state 695 $default reduce using rule 2 ($@1) @@ -17974,7 +17977,7 @@ state 561 $default reduce using rule 4 (top_statement_list) - top_statement_list go to state 695 + top_statement_list go to state 696 state 562 @@ -17992,15 +17995,15 @@ state 563 "-> (T_OBJECT_OPERATOR)" reduce using rule 270 ($@43) $default reduce using rule 269 (instance_call) - instance_call go to state 696 - $@43 go to state 697 + instance_call go to state 697 + $@43 go to state 698 state 564 46 inner_statement: "__halt_compiler (T_HALT_COMPILER)" . '(' ')' ';' - '(' shift, and go to state 698 + '(' shift, and go to state 699 state 565 @@ -18033,9 +18036,9 @@ state 568 state 569 - 530 compound_variable: '$' '{' expr '}' . + 531 compound_variable: '$' '{' expr '}' . - $default reduce using rule 530 (compound_variable) + $default reduce using rule 531 (compound_variable) state 570 @@ -18052,7 +18055,7 @@ state 570 namespace_name go to state 151 function_call go to state 101 class_name go to state 152 - w_variable go to state 699 + w_variable go to state 700 variable go to state 314 variable_without_objects go to state 110 static_member go to state 111 @@ -18132,7 +18135,7 @@ state 571 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 700 + expr go to state 701 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -18163,8 +18166,8 @@ state 573 188 function_call_parameter_list: '(' non_empty_function_call_parameter_list . ')' 191 non_empty_function_call_parameter_list: non_empty_function_call_parameter_list . ',' function_call_parameter - ',' shift, and go to state 701 - ')' shift, and go to state 702 + ',' shift, and go to state 702 + ')' shift, and go to state 703 state 574 @@ -18177,18 +18180,18 @@ state 574 state 575 192 function_call_parameter: expr_without_variable . - 491 expr: expr_without_variable . + 492 expr: expr_without_variable . ',' reduce using rule 192 (function_call_parameter) ')' reduce using rule 192 (function_call_parameter) - $default reduce using rule 491 (expr) + $default reduce using rule 492 (expr) state 576 189 function_call_parameter_list: '(' yield_expr . ')' - ')' shift, and go to state 703 + ')' shift, and go to state 704 state 577 @@ -18209,8 +18212,8 @@ state 577 290 | variable . "^= (T_XOR_EQUAL)" expr 291 | variable . "<<= (T_SL_EQUAL)" expr 292 | variable . ">>= (T_SR_EQUAL)" expr - 494 r_variable: variable . - 496 rw_variable: variable . + 495 r_variable: variable . + 497 rw_variable: variable . '=' shift, and go to state 284 "**= (T_POW_EQUAL)" shift, and go to state 285 @@ -18227,10 +18230,10 @@ state 577 "+= (T_PLUS_EQUAL)" shift, and go to state 296 ',' reduce using rule 193 (function_call_parameter) - "-- (T_DEC)" reduce using rule 496 (rw_variable) - "++ (T_INC)" reduce using rule 496 (rw_variable) + "-- (T_DEC)" reduce using rule 497 (rw_variable) + "++ (T_INC)" reduce using rule 497 (rw_variable) ')' reduce using rule 193 (function_call_parameter) - $default reduce using rule 494 (r_variable) + $default reduce using rule 495 (r_variable) state 578 @@ -18265,7 +18268,7 @@ state 578 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 704 + static_scalar go to state 705 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 @@ -18275,7 +18278,7 @@ state 579 398 fully_qualified_class_name: "namespace (T_NAMESPACE)" . "\\ (T_NS_SEPARATOR)" namespace_name - "\\ (T_NS_SEPARATOR)" shift, and go to state 705 + "\\ (T_NS_SEPARATOR)" shift, and go to state 706 state 580 @@ -18284,7 +18287,7 @@ state 580 "identifier (T_STRING)" shift, and go to state 123 - namespace_name go to state 706 + namespace_name go to state 707 state 581 @@ -18308,11 +18311,11 @@ state 583 124 unticked_class_declaration_statement: class_entry_type "identifier (T_STRING)" extends_from $@32 . implements_list '{' class_statement_list '}' - "implements (T_IMPLEMENTS)" shift, and go to state 707 + "implements (T_IMPLEMENTS)" shift, and go to state 708 $default reduce using rule 136 (implements_list) - implements_list go to state 708 + implements_list go to state 709 state 584 @@ -18324,15 +18327,15 @@ state 584 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - interface_list go to state 709 - fully_qualified_class_name go to state 710 + interface_list go to state 710 + fully_qualified_class_name go to state 711 state 585 126 unticked_class_declaration_statement: interface_entry "identifier (T_STRING)" $@33 interface_extends_list . '{' class_statement_list '}' - '{' shift, and go to state 711 + '{' shift, and go to state 712 state 586 @@ -18353,7 +18356,7 @@ state 588 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 . '(' parameter_list ')' '{' inner_statement_list '}' - '(' shift, and go to state 712 + '(' shift, and go to state 713 state 589 @@ -18361,8 +18364,8 @@ state 589 358 expr_without_variable: function is_reference @56 '(' . parameter_list ')' lexical_vars '{' inner_statement_list '}' "identifier (T_STRING)" shift, and go to state 123 - "array (T_ARRAY)" shift, and go to state 713 - "callable (T_CALLABLE)" shift, and go to state 714 + "array (T_ARRAY)" shift, and go to state 714 + "callable (T_CALLABLE)" shift, and go to state 715 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 @@ -18370,18 +18373,18 @@ state 589 $default reduce using rule 183 (optional_class_type) namespace_name go to state 581 - parameter_list go to state 715 - non_empty_parameter_list go to state 716 - parameter go to state 717 - optional_class_type go to state 718 - fully_qualified_class_name go to state 719 + parameter_list go to state 716 + non_empty_parameter_list go to state 717 + parameter go to state 718 + optional_class_type go to state 719 + fully_qualified_class_name go to state 720 state 590 - 519 array_function_dereference: function_call $@72 '[' dim_offset . ']' + 520 array_function_dereference: function_call $@72 '[' dim_offset . ']' - ']' shift, and go to state 720 + ']' shift, and go to state 721 state 591 @@ -18414,7 +18417,7 @@ state 591 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 540 variable_name: '{' expr . '}' + 541 variable_name: '{' expr . '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -18443,7 +18446,7 @@ state 591 '%' shift, and go to state 278 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - '}' shift, and go to state 721 + '}' shift, and go to state 722 state 592 @@ -18452,7 +18455,7 @@ state 592 '(' shift, and go to state 407 - function_call_parameter_list go to state 722 + function_call_parameter_list go to state 723 state 593 @@ -18461,19 +18464,19 @@ state 593 '(' shift, and go to state 407 - function_call_parameter_list go to state 723 + function_call_parameter_list go to state 724 state 594 - 513 variable_without_objects: simple_indirect_reference reference_variable . - 526 reference_variable: reference_variable . '[' dim_offset ']' - 527 | reference_variable . '{' expr '}' + 514 variable_without_objects: simple_indirect_reference reference_variable . + 527 reference_variable: reference_variable . '[' dim_offset ']' + 528 | reference_variable . '{' expr '}' '[' shift, and go to state 301 '{' shift, and go to state 302 - $default reduce using rule 513 (variable_without_objects) + $default reduce using rule 514 (variable_without_objects) state 595 @@ -18665,7 +18668,7 @@ state 597 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 724 + expr go to state 725 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -18720,7 +18723,7 @@ state 598 "xor (T_LOGICAL_XOR)" shift, and go to state 255 "and (T_LOGICAL_AND)" shift, and go to state 256 '?' shift, and go to state 257 - ':' shift, and go to state 725 + ':' shift, and go to state 726 "|| (T_BOOLEAN_OR)" shift, and go to state 258 "&& (T_BOOLEAN_AND)" shift, and go to state 259 '|' shift, and go to state 260 @@ -18874,7 +18877,7 @@ state 601 namespace_name go to state 164 class_name go to state 165 - class_name_reference go to state 726 + class_name_reference go to state 727 dynamic_class_name_reference go to state 167 static_member go to state 111 variable_class_name go to state 168 @@ -18897,7 +18900,7 @@ state 603 '(' shift, and go to state 407 - function_call_parameter_list go to state 727 + function_call_parameter_list go to state 728 state 604 @@ -18906,85 +18909,85 @@ state 604 '(' shift, and go to state 407 - function_call_parameter_list go to state 728 + function_call_parameter_list go to state 729 state 605 - 517 array_function_dereference: array_function_dereference '[' dim_offset ']' . + 518 array_function_dereference: array_function_dereference '[' dim_offset ']' . - $default reduce using rule 517 (array_function_dereference) + $default reduce using rule 518 (array_function_dereference) state 606 - 535 object_property: variable_without_objects . $@73 + 536 object_property: variable_without_objects . $@73 - $default reduce using rule 534 ($@73) + $default reduce using rule 535 ($@73) - $@73 go to state 729 + $@73 go to state 730 state 607 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property . $@69 method_or_not variable_properties + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property . $@69 method_or_not variable_properties - $default reduce using rule 498 ($@69) + $default reduce using rule 499 ($@69) - $@69 go to state 730 + $@69 go to state 731 state 608 - 533 object_property: object_dim_list . - 536 object_dim_list: object_dim_list . '[' dim_offset ']' - 537 | object_dim_list . '{' expr '}' + 534 object_property: object_dim_list . + 537 object_dim_list: object_dim_list . '[' dim_offset ']' + 538 | object_dim_list . '{' expr '}' - '[' shift, and go to state 731 - '{' shift, and go to state 732 + '[' shift, and go to state 732 + '{' shift, and go to state 733 - $default reduce using rule 533 (object_property) + $default reduce using rule 534 (object_property) state 609 - 538 object_dim_list: variable_name . + 539 object_dim_list: variable_name . - $default reduce using rule 538 (object_dim_list) + $default reduce using rule 539 (object_dim_list) state 610 - 526 reference_variable: reference_variable '[' dim_offset ']' . + 527 reference_variable: reference_variable '[' dim_offset ']' . - $default reduce using rule 526 (reference_variable) + $default reduce using rule 527 (reference_variable) state 611 - 527 reference_variable: reference_variable '{' expr '}' . + 528 reference_variable: reference_variable '{' expr '}' . - $default reduce using rule 527 (reference_variable) + $default reduce using rule 528 (reference_variable) state 612 - 557 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" '&' w_variable . + 558 non_empty_array_pair_list: expr "=> (T_DOUBLE_ARROW)" '&' w_variable . - $default reduce using rule 557 (non_empty_array_pair_list) + $default reduce using rule 558 (non_empty_array_pair_list) state 613 - 556 non_empty_array_pair_list: non_empty_array_pair_list ',' '&' w_variable . + 557 non_empty_array_pair_list: non_empty_array_pair_list ',' '&' w_variable . - $default reduce using rule 556 (non_empty_array_pair_list) + $default reduce using rule 557 (non_empty_array_pair_list) state 614 - 551 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" . expr - 555 | non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" . '&' w_variable + 552 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" . expr + 556 | non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" . '&' w_variable "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -18993,7 +18996,7 @@ state 614 "include (T_INCLUDE)" shift, and go to state 9 "print (T_PRINT)" shift, and go to state 10 "yield (T_YIELD)" shift, and go to state 122 - '&' shift, and go to state 733 + '&' shift, and go to state 734 '+' shift, and go to state 12 '-' shift, and go to state 13 '!' shift, and go to state 14 @@ -19050,7 +19053,7 @@ state 614 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 734 + expr go to state 735 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -19075,7 +19078,7 @@ state 615 $default reduce using rule 403 ($@67) - $@67 go to state 735 + $@67 go to state 736 state 616 @@ -19089,7 +19092,7 @@ state 616 $default reduce using rule 40 ($@4) $@4 go to state 402 - $@8 go to state 736 + $@8 go to state 737 state 617 @@ -19098,7 +19101,7 @@ state 617 $default reduce using rule 167 (elseif_list) - elseif_list go to state 737 + elseif_list go to state 738 state 618 @@ -19107,7 +19110,7 @@ state 618 '(' shift, and go to state 175 - parenthesis_expr go to state 738 + parenthesis_expr go to state 739 state 619 @@ -19116,7 +19119,7 @@ state 619 $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 739 + inner_statement_list go to state 740 state 620 @@ -19193,7 +19196,7 @@ state 622 $default reduce using rule 256 (for_expr) namespace_name go to state 84 - for_expr go to state 740 + for_expr go to state 741 non_empty_for_expr go to state 336 new_expr go to state 95 expr_without_variable go to state 96 @@ -19290,7 +19293,7 @@ state 623 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 741 + expr go to state 742 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -19313,20 +19316,20 @@ state 624 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 . foreach_variable foreach_optional_arg ')' $@20 foreach_statement - '&' shift, and go to state 742 + '&' shift, and go to state 743 "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 "static (T_STATIC)" shift, and go to state 148 - "list (T_LIST)" shift, and go to state 743 + "list (T_LIST)" shift, and go to state 744 "namespace (T_NAMESPACE)" shift, and go to state 149 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 namespace_name go to state 151 - foreach_variable go to state 744 + foreach_variable go to state 745 function_call go to state 101 class_name go to state 152 - variable go to state 745 + variable go to state 746 variable_without_objects go to state 110 static_member go to state 111 variable_class_name go to state 155 @@ -19342,20 +19345,20 @@ state 625 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 . foreach_variable foreach_optional_arg ')' $@18 foreach_statement - '&' shift, and go to state 742 + '&' shift, and go to state 743 "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 "static (T_STATIC)" shift, and go to state 148 - "list (T_LIST)" shift, and go to state 743 + "list (T_LIST)" shift, and go to state 744 "namespace (T_NAMESPACE)" shift, and go to state 149 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 namespace_name go to state 151 - foreach_variable go to state 746 + foreach_variable go to state 747 function_call go to state 101 class_name go to state 152 - variable go to state 745 + variable go to state 746 variable_without_objects go to state 110 static_member go to state 111 variable_class_name go to state 155 @@ -19399,7 +19402,7 @@ state 626 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 747 + static_scalar go to state 748 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 @@ -19409,7 +19412,7 @@ state 627 153 declare_list: declare_list ',' . "identifier (T_STRING)" '=' static_scalar - "identifier (T_STRING)" shift, and go to state 748 + "identifier (T_STRING)" shift, and go to state 749 state 628 @@ -19423,7 +19426,7 @@ state 628 "include (T_INCLUDE)" shift, and go to state 9 "print (T_PRINT)" shift, and go to state 10 "yield (T_YIELD)" shift, and go to state 11 - ':' shift, and go to state 749 + ':' shift, and go to state 750 '+' shift, and go to state 12 '-' shift, and go to state 13 '!' shift, and go to state 14 @@ -19490,9 +19493,9 @@ state 628 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 750 + statement go to state 751 unticked_statement go to state 88 - declare_statement go to state 751 + declare_statement go to state 752 new_expr go to state 95 expr_without_variable go to state 96 yield_expr go to state 97 @@ -19528,7 +19531,7 @@ state 629 $default reduce using rule 158 (case_list) - case_list go to state 752 + case_list go to state 753 state 630 @@ -19537,9 +19540,9 @@ state 630 160 case_list: case_list . "case (T_CASE)" expr case_separator $@35 inner_statement_list 162 | case_list . "default (T_DEFAULT)" case_separator $@36 inner_statement_list - "endswitch (T_ENDSWITCH)" shift, and go to state 753 - "case (T_CASE)" shift, and go to state 754 - "default (T_DEFAULT)" shift, and go to state 755 + "endswitch (T_ENDSWITCH)" shift, and go to state 754 + "case (T_CASE)" shift, and go to state 755 + "default (T_DEFAULT)" shift, and go to state 756 state 631 @@ -19548,7 +19551,7 @@ state 631 $default reduce using rule 158 (case_list) - case_list go to state 756 + case_list go to state 757 state 632 @@ -19557,9 +19560,9 @@ state 632 160 case_list: case_list . "case (T_CASE)" expr case_separator $@35 inner_statement_list 162 | case_list . "default (T_DEFAULT)" case_separator $@36 inner_statement_list - "case (T_CASE)" shift, and go to state 754 - "default (T_DEFAULT)" shift, and go to state 755 - '}' shift, and go to state 757 + "case (T_CASE)" shift, and go to state 755 + "default (T_DEFAULT)" shift, and go to state 756 + '}' shift, and go to state 758 state 633 @@ -19567,36 +19570,38 @@ state 633 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - 469 | '+' static_scalar_value . - - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 470 | '+' static_scalar_value . + + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 469 (static_operation) + $default reduce using rule 470 (static_operation) state 634 @@ -19604,36 +19609,38 @@ state 634 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - 470 | '-' static_scalar_value . - - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 471 | '-' static_scalar_value . + + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 470 (static_operation) + $default reduce using rule 471 (static_operation) state 635 @@ -19641,32 +19648,35 @@ state 635 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 446 | '!' static_scalar_value . - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 447 | '!' static_scalar_value . + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 446 (static_operation) + $default reduce using rule 447 (static_operation) state 636 @@ -19674,62 +19684,65 @@ state 636 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 447 | '~' static_scalar_value . - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 448 | '~' static_scalar_value . + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 447 (static_operation) + $default reduce using rule 448 (static_operation) state 637 - 488 non_empty_static_array_pair_list: static_scalar . "=> (T_DOUBLE_ARROW)" static_scalar - 489 | static_scalar . + 489 non_empty_static_array_pair_list: static_scalar . "=> (T_DOUBLE_ARROW)" static_scalar + 490 | static_scalar . - "=> (T_DOUBLE_ARROW)" shift, and go to state 758 + "=> (T_DOUBLE_ARROW)" shift, and go to state 759 - $default reduce using rule 489 (non_empty_static_array_pair_list) + $default reduce using rule 490 (non_empty_static_array_pair_list) state 638 432 static_scalar: '[' static_array_pair_list . ']' - ']' shift, and go to state 759 + ']' shift, and go to state 760 state 639 - 483 static_array_pair_list: non_empty_static_array_pair_list . possible_comma - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list . ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar - 487 | non_empty_static_array_pair_list . ',' static_scalar + 484 static_array_pair_list: non_empty_static_array_pair_list . possible_comma + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list . ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar + 488 | non_empty_static_array_pair_list . ',' static_scalar - ',' shift, and go to state 760 + ',' shift, and go to state 761 - $default reduce using rule 484 (possible_comma) + $default reduce using rule 485 (possible_comma) - possible_comma go to state 761 + possible_comma go to state 762 state 640 @@ -19760,7 +19773,7 @@ state 640 "\\ (T_NS_SEPARATOR)" shift, and go to state 515 '(' shift, and go to state 516 - $default reduce using rule 482 (static_array_pair_list) + $default reduce using rule 483 (static_array_pair_list) namespace_name go to state 517 class_name go to state 518 @@ -19769,7 +19782,7 @@ state 640 static_scalar go to state 637 static_scalar_value go to state 522 static_operation go to state 523 - static_array_pair_list go to state 762 + static_array_pair_list go to state 763 non_empty_static_array_pair_list go to state 639 static_class_name_scalar go to state 524 @@ -19788,7 +19801,7 @@ state 642 "identifier (T_STRING)" shift, and go to state 123 - namespace_name go to state 763 + namespace_name go to state 764 state 643 @@ -19808,30 +19821,31 @@ state 644 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - 471 | '(' static_scalar_value . ')' + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 472 | '(' static_scalar_value . ')' "or (T_LOGICAL_OR)" shift, and go to state 646 "xor (T_LOGICAL_XOR)" shift, and go to state 647 @@ -19858,21 +19872,22 @@ state 644 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 - ')' shift, and go to state 764 + "** (T_POW)" shift, and go to state 671 + ')' shift, and go to state 765 state 645 429 static_class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" - 588 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "class (T_CLASS)" + 589 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "class (T_CLASS)" - "identifier (T_STRING)" shift, and go to state 765 - "class (T_CLASS)" shift, and go to state 766 + "identifier (T_STRING)" shift, and go to state 766 + "class (T_CLASS)" shift, and go to state 767 state 646 - 456 static_operation: static_scalar_value "or (T_LOGICAL_OR)" . static_scalar_value + 457 static_operation: static_scalar_value "or (T_LOGICAL_OR)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -19900,14 +19915,14 @@ state 646 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 767 + static_scalar_value go to state 768 static_operation go to state 523 static_class_name_scalar go to state 524 state 647 - 454 static_operation: static_scalar_value "xor (T_LOGICAL_XOR)" . static_scalar_value + 455 static_operation: static_scalar_value "xor (T_LOGICAL_XOR)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -19935,14 +19950,14 @@ state 647 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 768 + static_scalar_value go to state 769 static_operation go to state 523 static_class_name_scalar go to state 524 state 648 - 455 static_operation: static_scalar_value "and (T_LOGICAL_AND)" . static_scalar_value + 456 static_operation: static_scalar_value "and (T_LOGICAL_AND)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -19970,17 +19985,17 @@ state 648 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 769 + static_scalar_value go to state 770 static_operation go to state 523 static_class_name_scalar go to state 524 state 649 - 467 static_operation: static_scalar_value '?' . ':' static_scalar_value - 468 | static_scalar_value '?' . static_scalar_value ':' static_scalar_value + 468 static_operation: static_scalar_value '?' . ':' static_scalar_value + 469 | static_scalar_value '?' . static_scalar_value ':' static_scalar_value - ':' shift, and go to state 770 + ':' shift, and go to state 771 '+' shift, and go to state 505 '-' shift, and go to state 506 '!' shift, and go to state 507 @@ -20007,14 +20022,14 @@ state 649 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 771 + static_scalar_value go to state 772 static_operation go to state 523 static_class_name_scalar go to state 524 state 650 - 458 static_operation: static_scalar_value "|| (T_BOOLEAN_OR)" . static_scalar_value + 459 static_operation: static_scalar_value "|| (T_BOOLEAN_OR)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20042,14 +20057,14 @@ state 650 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 772 + static_scalar_value go to state 773 static_operation go to state 523 static_class_name_scalar go to state 524 state 651 - 457 static_operation: static_scalar_value "&& (T_BOOLEAN_AND)" . static_scalar_value + 458 static_operation: static_scalar_value "&& (T_BOOLEAN_AND)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20077,14 +20092,14 @@ state 651 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 773 + static_scalar_value go to state 774 static_operation go to state 523 static_class_name_scalar go to state 524 state 652 - 448 static_operation: static_scalar_value '|' . static_scalar_value + 449 static_operation: static_scalar_value '|' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20112,14 +20127,14 @@ state 652 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 774 + static_scalar_value go to state 775 static_operation go to state 523 static_class_name_scalar go to state 524 state 653 - 450 static_operation: static_scalar_value '^' . static_scalar_value + 451 static_operation: static_scalar_value '^' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20147,14 +20162,14 @@ state 653 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 775 + static_scalar_value go to state 776 static_operation go to state 523 static_class_name_scalar go to state 524 state 654 - 449 static_operation: static_scalar_value '&' . static_scalar_value + 450 static_operation: static_scalar_value '&' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20182,14 +20197,14 @@ state 654 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 776 + static_scalar_value go to state 777 static_operation go to state 523 static_class_name_scalar go to state 524 state 655 - 460 static_operation: static_scalar_value "!== (T_IS_NOT_IDENTICAL)" . static_scalar_value + 461 static_operation: static_scalar_value "!== (T_IS_NOT_IDENTICAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20217,14 +20232,14 @@ state 655 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 777 + static_scalar_value go to state 778 static_operation go to state 523 static_class_name_scalar go to state 524 state 656 - 459 static_operation: static_scalar_value "=== (T_IS_IDENTICAL)" . static_scalar_value + 460 static_operation: static_scalar_value "=== (T_IS_IDENTICAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20252,14 +20267,14 @@ state 656 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 778 + static_scalar_value go to state 779 static_operation go to state 523 static_class_name_scalar go to state 524 state 657 - 462 static_operation: static_scalar_value "!= (T_IS_NOT_EQUAL)" . static_scalar_value + 463 static_operation: static_scalar_value "!= (T_IS_NOT_EQUAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20287,14 +20302,14 @@ state 657 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 779 + static_scalar_value go to state 780 static_operation go to state 523 static_class_name_scalar go to state 524 state 658 - 461 static_operation: static_scalar_value "== (T_IS_EQUAL)" . static_scalar_value + 462 static_operation: static_scalar_value "== (T_IS_EQUAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20322,14 +20337,14 @@ state 658 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 780 + static_scalar_value go to state 781 static_operation go to state 523 static_class_name_scalar go to state 524 state 659 - 463 static_operation: static_scalar_value '<' . static_scalar_value + 464 static_operation: static_scalar_value '<' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20357,14 +20372,14 @@ state 659 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 781 + static_scalar_value go to state 782 static_operation go to state 523 static_class_name_scalar go to state 524 state 660 - 464 static_operation: static_scalar_value '>' . static_scalar_value + 465 static_operation: static_scalar_value '>' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20392,14 +20407,14 @@ state 660 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 782 + static_scalar_value go to state 783 static_operation go to state 523 static_class_name_scalar go to state 524 state 661 - 466 static_operation: static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" . static_scalar_value + 467 static_operation: static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20427,14 +20442,14 @@ state 661 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 783 + static_scalar_value go to state 784 static_operation go to state 523 static_class_name_scalar go to state 524 state 662 - 465 static_operation: static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" . static_scalar_value + 466 static_operation: static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20462,14 +20477,14 @@ state 662 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 784 + static_scalar_value go to state 785 static_operation go to state 523 static_class_name_scalar go to state 524 state 663 - 452 static_operation: static_scalar_value ">> (T_SR)" . static_scalar_value + 453 static_operation: static_scalar_value ">> (T_SR)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20497,14 +20512,14 @@ state 663 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 785 + static_scalar_value go to state 786 static_operation go to state 523 static_class_name_scalar go to state 524 state 664 - 451 static_operation: static_scalar_value "<< (T_SL)" . static_scalar_value + 452 static_operation: static_scalar_value "<< (T_SL)" . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20532,7 +20547,7 @@ state 664 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 786 + static_scalar_value go to state 787 static_operation go to state 523 static_class_name_scalar go to state 524 @@ -20567,7 +20582,7 @@ state 665 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 787 + static_scalar_value go to state 788 static_operation go to state 523 static_class_name_scalar go to state 524 @@ -20602,14 +20617,14 @@ state 666 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 788 + static_scalar_value go to state 789 static_operation go to state 523 static_class_name_scalar go to state 524 state 667 - 453 static_operation: static_scalar_value '.' . static_scalar_value + 454 static_operation: static_scalar_value '.' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20637,7 +20652,7 @@ state 667 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 789 + static_scalar_value go to state 790 static_operation go to state 523 static_class_name_scalar go to state 524 @@ -20672,14 +20687,14 @@ state 668 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 790 + static_scalar_value go to state 791 static_operation go to state 523 static_class_name_scalar go to state 524 state 669 - 444 static_operation: static_scalar_value '/' . static_scalar_value + 445 static_operation: static_scalar_value '/' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20707,14 +20722,14 @@ state 669 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 791 + static_scalar_value go to state 792 static_operation go to state 523 static_class_name_scalar go to state 524 state 670 - 445 static_operation: static_scalar_value '%' . static_scalar_value + 446 static_operation: static_scalar_value '%' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -20742,79 +20757,114 @@ state 670 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 792 + static_scalar_value go to state 793 static_operation go to state 523 static_class_name_scalar go to state 524 state 671 + 444 static_operation: static_scalar_value "** (T_POW)" . static_scalar_value + + '+' shift, and go to state 505 + '-' shift, and go to state 506 + '!' shift, and go to state 507 + '~' shift, and go to state 508 + "integer number (T_LNUMBER)" shift, and go to state 31 + "floating-point number (T_DNUMBER)" shift, and go to state 32 + "identifier (T_STRING)" shift, and go to state 123 + "quoted-string (T_CONSTANT_ENCAPSED_STRING)" shift, and go to state 510 + "static (T_STATIC)" shift, and go to state 148 + "__CLASS__ (T_CLASS_C)" shift, and go to state 512 + "__TRAIT__ (T_TRAIT_C)" shift, and go to state 68 + "__METHOD__ (T_METHOD_C)" shift, and go to state 69 + "__FUNCTION__ (T_FUNC_C)" shift, and go to state 70 + "__LINE__ (T_LINE)" shift, and go to state 71 + "__FILE__ (T_FILE)" shift, and go to state 72 + "heredoc start (T_START_HEREDOC)" shift, and go to state 513 + "namespace (T_NAMESPACE)" shift, and go to state 514 + "__NAMESPACE__ (T_NS_C)" shift, and go to state 75 + "__DIR__ (T_DIR)" shift, and go to state 76 + "\\ (T_NS_SEPARATOR)" shift, and go to state 515 + '(' shift, and go to state 516 + + namespace_name go to state 517 + class_name go to state 518 + common_scalar go to state 519 + static_class_constant go to state 520 + static_scalar_value go to state 794 + static_operation go to state 523 + static_class_name_scalar go to state 524 + + +state 672 + 93 unticked_statement: "try (T_TRY)" $@22 '{' inner_statement_list '}' . catch_statement $@23 finally_statement - "catch (T_CATCH)" shift, and go to state 793 + "catch (T_CATCH)" shift, and go to state 795 $default reduce using rule 96 (catch_statement) - catch_statement go to state 794 + catch_statement go to state 796 -state 672 +state 673 31 use_function_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 795 + "identifier (T_STRING)" shift, and go to state 797 -state 673 +state 674 29 use_function_declaration: namespace_name "as (T_AS)" "identifier (T_STRING)" . $default reduce using rule 29 (use_function_declaration) -state 674 +state 675 26 use_function_declarations: use_function_declarations ',' use_function_declaration . $default reduce using rule 26 (use_function_declarations) -state 675 +state 676 37 use_const_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 796 + "identifier (T_STRING)" shift, and go to state 798 -state 676 +state 677 35 use_const_declaration: namespace_name "as (T_AS)" "identifier (T_STRING)" . $default reduce using rule 35 (use_const_declaration) -state 677 +state 678 32 use_const_declarations: use_const_declarations ',' use_const_declaration . $default reduce using rule 32 (use_const_declarations) -state 678 +state 679 25 use_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" "identifier (T_STRING)" . $default reduce using rule 25 (use_declaration) -state 679 +state 680 200 global_var: '$' '{' expr '}' . $default reduce using rule 200 (global_var) -state 680 +state 681 202 static_var_list: static_var_list ',' "variable (T_VARIABLE)" '=' . static_scalar @@ -20846,19 +20896,19 @@ state 680 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 797 + static_scalar go to state 799 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 681 +state 682 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' . parameter_list ')' lexical_vars '{' inner_statement_list '}' "identifier (T_STRING)" shift, and go to state 123 - "array (T_ARRAY)" shift, and go to state 713 - "callable (T_CALLABLE)" shift, and go to state 714 + "array (T_ARRAY)" shift, and go to state 714 + "callable (T_CALLABLE)" shift, and go to state 715 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 @@ -20866,30 +20916,30 @@ state 681 $default reduce using rule 183 (optional_class_type) namespace_name go to state 581 - parameter_list go to state 798 - non_empty_parameter_list go to state 716 - parameter go to state 717 - optional_class_type go to state 718 - fully_qualified_class_name go to state 719 + parameter_list go to state 800 + non_empty_parameter_list go to state 717 + parameter go to state 718 + optional_class_type go to state 719 + fully_qualified_class_name go to state 720 -state 682 +state 683 113 unset_variables: unset_variables ',' unset_variable . $default reduce using rule 113 (unset_variables) -state 683 +state 684 81 unticked_statement: "unset (T_UNSET)" '(' unset_variables ')' ';' . $default reduce using rule 81 (unticked_statement) -state 684 +state 685 - 583 isset_variables: isset_variables ',' $@76 . isset_variable + 584 isset_variables: isset_variables ',' $@76 . isset_variable "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -20969,23 +21019,23 @@ state 684 compound_variable go to state 117 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 - isset_variable go to state 799 + isset_variable go to state 801 class_constant go to state 120 class_name_scalar go to state 121 -state 685 +state 686 - 547 assignment_list_element: "list (T_LIST)" '(' . $@74 assignment_list ')' + 548 assignment_list_element: "list (T_LIST)" '(' . $@74 assignment_list ')' - $default reduce using rule 546 ($@74) + $default reduce using rule 547 ($@74) - $@74 go to state 800 + $@74 go to state 802 -state 686 +state 687 - 543 assignment_list: assignment_list ',' . assignment_list_element + 544 assignment_list: assignment_list ',' . assignment_list_element "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -20995,7 +21045,7 @@ state 686 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 - $default reduce using rule 548 (assignment_list_element) + $default reduce using rule 549 (assignment_list_element) namespace_name go to state 151 function_call go to state 101 @@ -21010,46 +21060,46 @@ state 686 reference_variable go to state 116 compound_variable go to state 117 simple_indirect_reference go to state 118 - assignment_list_element go to state 801 - - -state 687 - - 275 expr_without_variable: "list (T_LIST)" '(' $@45 assignment_list ')' . '=' expr - - '=' shift, and go to state 802 + assignment_list_element go to state 803 state 688 - 570 encaps_var_offset: "identifier (T_STRING)" . + 275 expr_without_variable: "list (T_LIST)" '(' $@45 assignment_list ')' . '=' expr - $default reduce using rule 570 (encaps_var_offset) + '=' shift, and go to state 804 state 689 - 572 encaps_var_offset: "variable (T_VARIABLE)" . + 571 encaps_var_offset: "identifier (T_STRING)" . - $default reduce using rule 572 (encaps_var_offset) + $default reduce using rule 571 (encaps_var_offset) state 690 - 571 encaps_var_offset: "number (T_NUM_STRING)" . + 573 encaps_var_offset: "variable (T_VARIABLE)" . - $default reduce using rule 571 (encaps_var_offset) + $default reduce using rule 573 (encaps_var_offset) state 691 - 565 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset . ']' + 572 encaps_var_offset: "number (T_NUM_STRING)" . - ']' shift, and go to state 803 + $default reduce using rule 572 (encaps_var_offset) state 692 + 566 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset . ']' + + ']' shift, and go to state 805 + + +state 693 + 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr 300 | expr . "&& (T_BOOLEAN_AND)" $@48 expr 302 | expr . "or (T_LOGICAL_OR)" $@49 expr @@ -21078,7 +21128,7 @@ state 692 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}' + 569 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr . ']' '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -21107,70 +21157,70 @@ state 692 '%' shift, and go to state 278 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - ']' shift, and go to state 804 + ']' shift, and go to state 806 -state 693 +state 694 380 function_call: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name @59 function_call_parameter_list . $default reduce using rule 380 (function_call) -state 694 +state 695 15 top_statement: "namespace (T_NAMESPACE)" '{' $@3 top_statement_list '}' . $default reduce using rule 15 (top_statement) -state 695 +state 696 3 top_statement_list: top_statement_list . $@1 top_statement 13 top_statement: "namespace (T_NAMESPACE)" namespace_name '{' $@2 top_statement_list . '}' - '}' shift, and go to state 805 + '}' shift, and go to state 807 $default reduce using rule 2 ($@1) $@1 go to state 4 -state 696 +state 697 334 expr_without_variable: '(' new_expr ')' @51 instance_call . $default reduce using rule 334 (expr_without_variable) -state 697 +state 698 271 instance_call: $@43 . chaining_instance_call - '[' shift, and go to state 806 - "-> (T_OBJECT_OPERATOR)" shift, and go to state 807 + '[' shift, and go to state 808 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 809 - chaining_method_or_property go to state 808 - chaining_dereference go to state 809 - chaining_instance_call go to state 810 - variable_property go to state 811 + chaining_method_or_property go to state 810 + chaining_dereference go to state 811 + chaining_instance_call go to state 812 + variable_property go to state 813 -state 698 +state 699 46 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' . ')' ';' - ')' shift, and go to state 812 + ')' shift, and go to state 814 -state 699 +state 700 194 function_call_parameter: '&' w_variable . $default reduce using rule 194 (function_call_parameter) -state 700 +state 701 195 function_call_parameter: "... (T_ELLIPSIS)" expr . 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr @@ -21233,7 +21283,7 @@ state 700 $default reduce using rule 195 (function_call_parameter) -state 701 +state 702 191 non_empty_function_call_parameter_list: non_empty_function_call_parameter_list ',' . function_call_parameter @@ -21293,7 +21343,7 @@ state 701 '"' shift, and go to state 83 namespace_name go to state 84 - function_call_parameter go to state 813 + function_call_parameter go to state 815 new_expr go to state 95 expr_without_variable go to state 575 combined_scalar_offset go to state 98 @@ -21322,37 +21372,37 @@ state 701 class_name_scalar go to state 121 -state 702 +state 703 188 function_call_parameter_list: '(' non_empty_function_call_parameter_list ')' . $default reduce using rule 188 (function_call_parameter_list) -state 703 +state 704 189 function_call_parameter_list: '(' yield_expr ')' . $default reduce using rule 189 (function_call_parameter_list) -state 704 +state 705 38 constant_declaration: constant_declaration ',' "identifier (T_STRING)" '=' static_scalar . $default reduce using rule 38 (constant_declaration) -state 705 +state 706 398 fully_qualified_class_name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" . namespace_name "identifier (T_STRING)" shift, and go to state 123 - namespace_name go to state 814 + namespace_name go to state 816 -state 706 +state 707 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 399 fully_qualified_class_name: "\\ (T_NS_SEPARATOR)" namespace_name . @@ -21362,7 +21412,7 @@ state 706 $default reduce using rule 399 (fully_qualified_class_name) -state 707 +state 708 137 implements_list: "implements (T_IMPLEMENTS)" . interface_list @@ -21371,50 +21421,50 @@ state 707 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - interface_list go to state 815 - fully_qualified_class_name go to state 710 + interface_list go to state 817 + fully_qualified_class_name go to state 711 -state 708 +state 709 124 unticked_class_declaration_statement: class_entry_type "identifier (T_STRING)" extends_from $@32 implements_list . '{' class_statement_list '}' - '{' shift, and go to state 816 + '{' shift, and go to state 818 -state 709 +state 710 135 interface_extends_list: "extends (T_EXTENDS)" interface_list . 139 interface_list: interface_list . ',' fully_qualified_class_name - ',' shift, and go to state 817 + ',' shift, and go to state 819 $default reduce using rule 135 (interface_extends_list) -state 710 +state 711 138 interface_list: fully_qualified_class_name . $default reduce using rule 138 (interface_list) -state 711 +state 712 126 unticked_class_declaration_statement: interface_entry "identifier (T_STRING)" $@33 interface_extends_list '{' . class_statement_list '}' $default reduce using rule 206 (class_statement_list) - class_statement_list go to state 818 + class_statement_list go to state 820 -state 712 +state 713 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' . parameter_list ')' '{' inner_statement_list '}' "identifier (T_STRING)" shift, and go to state 123 - "array (T_ARRAY)" shift, and go to state 713 - "callable (T_CALLABLE)" shift, and go to state 714 + "array (T_ARRAY)" shift, and go to state 714 + "callable (T_CALLABLE)" shift, and go to state 715 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 @@ -21422,52 +21472,52 @@ state 712 $default reduce using rule 183 (optional_class_type) namespace_name go to state 581 - parameter_list go to state 819 - non_empty_parameter_list go to state 716 - parameter go to state 717 - optional_class_type go to state 718 - fully_qualified_class_name go to state 719 + parameter_list go to state 821 + non_empty_parameter_list go to state 717 + parameter go to state 718 + optional_class_type go to state 719 + fully_qualified_class_name go to state 720 -state 713 +state 714 184 optional_class_type: "array (T_ARRAY)" . $default reduce using rule 184 (optional_class_type) -state 714 +state 715 185 optional_class_type: "callable (T_CALLABLE)" . $default reduce using rule 185 (optional_class_type) -state 715 +state 716 358 expr_without_variable: function is_reference @56 '(' parameter_list . ')' lexical_vars '{' inner_statement_list '}' - ')' shift, and go to state 820 + ')' shift, and go to state 822 -state 716 +state 717 177 parameter_list: non_empty_parameter_list . 180 non_empty_parameter_list: non_empty_parameter_list . ',' parameter - ',' shift, and go to state 821 + ',' shift, and go to state 823 $default reduce using rule 177 (parameter_list) -state 717 +state 718 179 non_empty_parameter_list: parameter . $default reduce using rule 179 (non_empty_parameter_list) -state 718 +state 719 181 parameter: optional_class_type . is_reference is_variadic "variable (T_VARIABLE)" 182 | optional_class_type . is_reference is_variadic "variable (T_VARIABLE)" '=' static_scalar @@ -21476,45 +21526,45 @@ state 718 $default reduce using rule 117 (is_reference) - is_reference go to state 822 + is_reference go to state 824 -state 719 +state 720 186 optional_class_type: fully_qualified_class_name . $default reduce using rule 186 (optional_class_type) -state 720 +state 721 - 519 array_function_dereference: function_call $@72 '[' dim_offset ']' . + 520 array_function_dereference: function_call $@72 '[' dim_offset ']' . - $default reduce using rule 519 (array_function_dereference) + $default reduce using rule 520 (array_function_dereference) -state 721 +state 722 - 540 variable_name: '{' expr '}' . + 541 variable_name: '{' expr '}' . - $default reduce using rule 540 (variable_name) + $default reduce using rule 541 (variable_name) -state 722 +state 723 386 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@62 function_call_parameter_list . $default reduce using rule 386 (function_call) -state 723 +state 724 384 function_call: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name @61 function_call_parameter_list . $default reduce using rule 384 (function_call) -state 724 +state 725 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr 300 | expr . "&& (T_BOOLEAN_AND)" $@48 expr @@ -21573,61 +21623,61 @@ state 724 $default reduce using rule 339 (expr_without_variable) -state 725 +state 726 337 expr_without_variable: expr '?' $@52 expr ':' . $@53 expr $default reduce using rule 336 ($@53) - $@53 go to state 823 + $@53 go to state 825 -state 726 +state 727 279 expr_without_variable: variable '=' '&' "new (T_NEW)" class_name_reference . $@46 ctor_arguments $default reduce using rule 278 ($@46) - $@46 go to state 824 + $@46 go to state 826 -state 727 +state 728 390 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_without_objects $@64 function_call_parameter_list . $default reduce using rule 390 (function_call) -state 728 +state 729 388 function_call: variable_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" variable_name $@63 function_call_parameter_list . $default reduce using rule 388 (function_call) -state 729 +state 730 - 535 object_property: variable_without_objects $@73 . + 536 object_property: variable_without_objects $@73 . - $default reduce using rule 535 (object_property) + $default reduce using rule 536 (object_property) -state 730 +state 731 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 . method_or_not variable_properties + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 . method_or_not variable_properties - '(' reduce using rule 507 (@71) - $default reduce using rule 511 (method_or_not) + '(' reduce using rule 508 (@71) + $default reduce using rule 512 (method_or_not) - array_method_dereference go to state 825 - method go to state 826 - @71 go to state 827 - method_or_not go to state 828 + array_method_dereference go to state 827 + method go to state 828 + @71 go to state 829 + method_or_not go to state 830 -state 731 +state 732 - 536 object_dim_list: object_dim_list '[' . dim_offset ']' + 537 object_dim_list: object_dim_list '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -21682,7 +21732,7 @@ state 731 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -21707,16 +21757,16 @@ state 731 base_variable go to state 115 reference_variable go to state 116 compound_variable go to state 117 - dim_offset go to state 829 + dim_offset go to state 831 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 class_constant go to state 120 class_name_scalar go to state 121 -state 732 +state 733 - 537 object_dim_list: object_dim_list '{' . expr '}' + 538 object_dim_list: object_dim_list '{' . expr '}' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -21781,7 +21831,7 @@ state 732 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 830 + expr go to state 832 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -21800,9 +21850,9 @@ state 732 class_name_scalar go to state 121 -state 733 +state 734 - 555 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' . w_variable + 556 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' . w_variable "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -21814,7 +21864,7 @@ state 733 namespace_name go to state 151 function_call go to state 101 class_name go to state 152 - w_variable go to state 831 + w_variable go to state 833 variable go to state 314 variable_without_objects go to state 110 static_member go to state 111 @@ -21827,7 +21877,7 @@ state 733 simple_indirect_reference go to state 118 -state 734 +state 735 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr 300 | expr . "&& (T_BOOLEAN_AND)" $@48 expr @@ -21857,7 +21907,7 @@ state 734 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 551 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" expr . + 552 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" expr . "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -21887,69 +21937,69 @@ state 734 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - $default reduce using rule 551 (non_empty_array_pair_list) + $default reduce using rule 552 (non_empty_array_pair_list) -state 735 +state 736 404 dynamic_class_name_reference: base_variable "-> (T_OBJECT_OPERATOR)" $@66 object_property $@67 . dynamic_class_name_variable_properties $default reduce using rule 407 (dynamic_class_name_variable_properties) - dynamic_class_name_variable_properties go to state 832 + dynamic_class_name_variable_properties go to state 834 -state 736 +state 737 55 unticked_statement: "if (T_IF)" parenthesis_expr ':' $@7 inner_statement_list $@8 . new_elseif_list new_else_single "endif (T_ENDIF)" ';' $default reduce using rule 170 (new_elseif_list) - new_elseif_list go to state 833 + new_elseif_list go to state 835 -state 737 +state 738 52 unticked_statement: "if (T_IF)" parenthesis_expr $@5 statement $@6 elseif_list . else_single 169 elseif_list: elseif_list . "elseif (T_ELSEIF)" parenthesis_expr $@37 statement - "elseif (T_ELSEIF)" shift, and go to state 834 - "else (T_ELSE)" shift, and go to state 835 + "elseif (T_ELSEIF)" shift, and go to state 836 + "else (T_ELSE)" shift, and go to state 837 "elseif (T_ELSEIF)" [reduce using rule 173 (else_single)] "else (T_ELSE)" [reduce using rule 173 (else_single)] $default reduce using rule 173 (else_single) - else_single go to state 836 + else_single go to state 838 -state 738 +state 739 61 unticked_statement: "do (T_DO)" $@11 statement "while (T_WHILE)" $@12 parenthesis_expr . ';' - ';' shift, and go to state 837 + ';' shift, and go to state 839 -state 739 +state 740 41 inner_statement_list: inner_statement_list . $@4 inner_statement 166 while_statement: ':' inner_statement_list . "endwhile (T_ENDWHILE)" ';' - "endwhile (T_ENDWHILE)" shift, and go to state 838 + "endwhile (T_ENDWHILE)" shift, and go to state 840 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 740 +state 741 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr . ';' $@14 for_expr ')' $@15 for_statement - ';' shift, and go to state 839 + ';' shift, and go to state 841 -state 741 +state 742 259 non_empty_for_expr: non_empty_for_expr ',' $@41 expr . 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr @@ -22012,7 +22062,7 @@ state 741 $default reduce using rule 259 (non_empty_for_expr) -state 742 +state 743 143 foreach_variable: '&' . variable @@ -22026,7 +22076,7 @@ state 742 namespace_name go to state 151 function_call go to state 101 class_name go to state 152 - variable go to state 840 + variable go to state 842 variable_without_objects go to state 110 static_member go to state 111 variable_class_name go to state 155 @@ -22038,98 +22088,98 @@ state 742 simple_indirect_reference go to state 118 -state 743 +state 744 145 foreach_variable: "list (T_LIST)" . '(' $@34 assignment_list ')' - '(' shift, and go to state 841 + '(' shift, and go to state 843 -state 744 +state 745 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 foreach_variable . foreach_optional_arg ')' $@20 foreach_statement - "=> (T_DOUBLE_ARROW)" shift, and go to state 842 + "=> (T_DOUBLE_ARROW)" shift, and go to state 844 $default reduce using rule 140 (foreach_optional_arg) - foreach_optional_arg go to state 843 + foreach_optional_arg go to state 845 -state 745 +state 746 142 foreach_variable: variable . $default reduce using rule 142 (foreach_variable) -state 746 +state 747 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 foreach_variable . foreach_optional_arg ')' $@18 foreach_statement - "=> (T_DOUBLE_ARROW)" shift, and go to state 842 + "=> (T_DOUBLE_ARROW)" shift, and go to state 844 $default reduce using rule 140 (foreach_optional_arg) - foreach_optional_arg go to state 844 + foreach_optional_arg go to state 846 -state 747 +state 748 152 declare_list: "identifier (T_STRING)" '=' static_scalar . $default reduce using rule 152 (declare_list) -state 748 +state 749 153 declare_list: declare_list ',' "identifier (T_STRING)" . '=' static_scalar - '=' shift, and go to state 845 + '=' shift, and go to state 847 -state 749 +state 750 151 declare_statement: ':' . inner_statement_list "enddeclare (T_ENDDECLARE)" ';' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 846 + inner_statement_list go to state 848 -state 750 +state 751 150 declare_statement: statement . $default reduce using rule 150 (declare_statement) -state 751 +state 752 89 unticked_statement: "declare (T_DECLARE)" $@21 '(' declare_list ')' declare_statement . $default reduce using rule 89 (unticked_statement) -state 752 +state 753 157 switch_case_list: ':' ';' case_list . "endswitch (T_ENDSWITCH)" ';' 160 case_list: case_list . "case (T_CASE)" expr case_separator $@35 inner_statement_list 162 | case_list . "default (T_DEFAULT)" case_separator $@36 inner_statement_list - "endswitch (T_ENDSWITCH)" shift, and go to state 847 - "case (T_CASE)" shift, and go to state 754 - "default (T_DEFAULT)" shift, and go to state 755 + "endswitch (T_ENDSWITCH)" shift, and go to state 849 + "case (T_CASE)" shift, and go to state 755 + "default (T_DEFAULT)" shift, and go to state 756 -state 753 +state 754 156 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" . ';' - ';' shift, and go to state 848 + ';' shift, and go to state 850 -state 754 +state 755 160 case_list: case_list "case (T_CASE)" . expr case_separator $@35 inner_statement_list @@ -22196,7 +22246,7 @@ state 754 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 849 + expr go to state 851 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -22215,37 +22265,37 @@ state 754 class_name_scalar go to state 121 -state 755 +state 756 162 case_list: case_list "default (T_DEFAULT)" . case_separator $@36 inner_statement_list - ':' shift, and go to state 850 - ';' shift, and go to state 851 + ':' shift, and go to state 852 + ';' shift, and go to state 853 - case_separator go to state 852 + case_separator go to state 854 -state 756 +state 757 155 switch_case_list: '{' ';' case_list . '}' 160 case_list: case_list . "case (T_CASE)" expr case_separator $@35 inner_statement_list 162 | case_list . "default (T_DEFAULT)" case_separator $@36 inner_statement_list - "case (T_CASE)" shift, and go to state 754 - "default (T_DEFAULT)" shift, and go to state 755 - '}' shift, and go to state 853 + "case (T_CASE)" shift, and go to state 755 + "default (T_DEFAULT)" shift, and go to state 756 + '}' shift, and go to state 855 -state 757 +state 758 154 switch_case_list: '{' case_list '}' . $default reduce using rule 154 (switch_case_list) -state 758 +state 759 - 488 non_empty_static_array_pair_list: static_scalar "=> (T_DOUBLE_ARROW)" . static_scalar + 489 non_empty_static_array_pair_list: static_scalar "=> (T_DOUBLE_ARROW)" . static_scalar '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -22275,24 +22325,24 @@ state 758 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 854 + static_scalar go to state 856 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 759 +state 760 432 static_scalar: '[' static_array_pair_list ']' . $default reduce using rule 432 (static_scalar) -state 760 +state 761 - 485 possible_comma: ',' . - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' . static_scalar "=> (T_DOUBLE_ARROW)" static_scalar - 487 | non_empty_static_array_pair_list ',' . static_scalar + 486 possible_comma: ',' . + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' . static_scalar "=> (T_DOUBLE_ARROW)" static_scalar + 488 | non_empty_static_array_pair_list ',' . static_scalar '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -22318,33 +22368,33 @@ state 760 "\\ (T_NS_SEPARATOR)" shift, and go to state 515 '(' shift, and go to state 516 - $default reduce using rule 485 (possible_comma) + $default reduce using rule 486 (possible_comma) namespace_name go to state 517 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 855 + static_scalar go to state 857 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 761 +state 762 - 483 static_array_pair_list: non_empty_static_array_pair_list possible_comma . + 484 static_array_pair_list: non_empty_static_array_pair_list possible_comma . - $default reduce using rule 483 (static_array_pair_list) + $default reduce using rule 484 (static_array_pair_list) -state 762 +state 763 431 static_scalar: "array (T_ARRAY)" '(' static_array_pair_list . ')' - ')' shift, and go to state 856 + ')' shift, and go to state 858 -state 763 +state 764 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 395 class_name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . @@ -22356,56 +22406,57 @@ state 763 $default reduce using rule 436 (static_scalar_value) -state 764 +state 765 - 471 static_operation: '(' static_scalar_value ')' . + 472 static_operation: '(' static_scalar_value ')' . - $default reduce using rule 471 (static_operation) + $default reduce using rule 472 (static_operation) -state 765 +state 766 429 static_class_constant: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . $default reduce using rule 429 (static_class_constant) -state 766 +state 767 - 588 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" . + 589 static_class_name_scalar: class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "class (T_CLASS)" . - $default reduce using rule 588 (static_class_name_scalar) + $default reduce using rule 589 (static_class_name_scalar) -state 767 +state 768 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 456 | static_scalar_value "or (T_LOGICAL_OR)" static_scalar_value . - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 457 | static_scalar_value "or (T_LOGICAL_OR)" static_scalar_value . + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "xor (T_LOGICAL_XOR)" shift, and go to state 647 "and (T_LOGICAL_AND)" shift, and go to state 648 @@ -22431,39 +22482,41 @@ state 767 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 456 (static_operation) + $default reduce using rule 457 (static_operation) -state 768 +state 769 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 454 | static_scalar_value "xor (T_LOGICAL_XOR)" static_scalar_value . - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 455 | static_scalar_value "xor (T_LOGICAL_XOR)" static_scalar_value . + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "and (T_LOGICAL_AND)" shift, and go to state 648 '?' shift, and go to state 649 @@ -22488,39 +22541,41 @@ state 768 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 454 (static_operation) + $default reduce using rule 455 (static_operation) -state 769 +state 770 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 455 | static_scalar_value "and (T_LOGICAL_AND)" static_scalar_value . - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 456 | static_scalar_value "and (T_LOGICAL_AND)" static_scalar_value . + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '?' shift, and go to state 649 "|| (T_BOOLEAN_OR)" shift, and go to state 650 @@ -22544,13 +22599,14 @@ state 769 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 455 (static_operation) + $default reduce using rule 456 (static_operation) -state 770 +state 771 - 467 static_operation: static_scalar_value '?' ':' . static_scalar_value + 468 static_operation: static_scalar_value '?' ':' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -22578,46 +22634,47 @@ state 770 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 857 + static_scalar_value go to state 859 static_operation go to state 523 static_class_name_scalar go to state 524 -state 771 +state 772 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - 468 | static_scalar_value '?' static_scalar_value . ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 469 | static_scalar_value '?' static_scalar_value . ':' static_scalar_value "or (T_LOGICAL_OR)" shift, and go to state 646 "xor (T_LOGICAL_XOR)" shift, and go to state 647 "and (T_LOGICAL_AND)" shift, and go to state 648 '?' shift, and go to state 649 - ':' shift, and go to state 858 + ':' shift, and go to state 860 "|| (T_BOOLEAN_OR)" shift, and go to state 650 "&& (T_BOOLEAN_AND)" shift, and go to state 651 '|' shift, and go to state 652 @@ -22639,37 +22696,39 @@ state 771 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 -state 772 +state 773 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 458 | static_scalar_value "|| (T_BOOLEAN_OR)" static_scalar_value . - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 459 | static_scalar_value "|| (T_BOOLEAN_OR)" static_scalar_value . + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "&& (T_BOOLEAN_AND)" shift, and go to state 651 '|' shift, and go to state 652 @@ -22691,39 +22750,41 @@ state 772 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 458 (static_operation) + $default reduce using rule 459 (static_operation) -state 773 +state 774 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 457 | static_scalar_value "&& (T_BOOLEAN_AND)" static_scalar_value . - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 458 | static_scalar_value "&& (T_BOOLEAN_AND)" static_scalar_value . + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '|' shift, and go to state 652 '^' shift, and go to state 653 @@ -22744,39 +22805,41 @@ state 773 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 457 (static_operation) + $default reduce using rule 458 (static_operation) -state 774 +state 775 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 448 | static_scalar_value '|' static_scalar_value . - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 449 | static_scalar_value '|' static_scalar_value . + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '^' shift, and go to state 653 '&' shift, and go to state 654 @@ -22796,39 +22859,41 @@ state 774 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 448 (static_operation) + $default reduce using rule 449 (static_operation) -state 775 +state 776 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 450 | static_scalar_value '^' static_scalar_value . - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 451 | static_scalar_value '^' static_scalar_value . + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '&' shift, and go to state 654 "!== (T_IS_NOT_IDENTICAL)" shift, and go to state 655 @@ -22847,39 +22912,41 @@ state 775 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 450 (static_operation) + $default reduce using rule 451 (static_operation) -state 776 +state 777 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 449 | static_scalar_value '&' static_scalar_value . - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 450 | static_scalar_value '&' static_scalar_value . + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "!== (T_IS_NOT_IDENTICAL)" shift, and go to state 655 "=== (T_IS_IDENTICAL)" shift, and go to state 656 @@ -22897,39 +22964,41 @@ state 776 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 449 (static_operation) + $default reduce using rule 450 (static_operation) -state 777 +state 778 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 460 | static_scalar_value "!== (T_IS_NOT_IDENTICAL)" static_scalar_value . - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 461 | static_scalar_value "!== (T_IS_NOT_IDENTICAL)" static_scalar_value . + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '<' shift, and go to state 659 '>' shift, and go to state 660 @@ -22943,44 +23012,46 @@ state 777 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 "!== (T_IS_NOT_IDENTICAL)" error (nonassociative) "=== (T_IS_IDENTICAL)" error (nonassociative) "!= (T_IS_NOT_EQUAL)" error (nonassociative) "== (T_IS_EQUAL)" error (nonassociative) - $default reduce using rule 460 (static_operation) + $default reduce using rule 461 (static_operation) -state 778 +state 779 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 459 | static_scalar_value "=== (T_IS_IDENTICAL)" static_scalar_value . - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 460 | static_scalar_value "=== (T_IS_IDENTICAL)" static_scalar_value . + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '<' shift, and go to state 659 '>' shift, and go to state 660 @@ -22994,44 +23065,46 @@ state 778 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 "!== (T_IS_NOT_IDENTICAL)" error (nonassociative) "=== (T_IS_IDENTICAL)" error (nonassociative) "!= (T_IS_NOT_EQUAL)" error (nonassociative) "== (T_IS_EQUAL)" error (nonassociative) - $default reduce using rule 459 (static_operation) + $default reduce using rule 460 (static_operation) -state 779 +state 780 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 462 | static_scalar_value "!= (T_IS_NOT_EQUAL)" static_scalar_value . - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 463 | static_scalar_value "!= (T_IS_NOT_EQUAL)" static_scalar_value . + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '<' shift, and go to state 659 '>' shift, and go to state 660 @@ -23045,44 +23118,46 @@ state 779 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 "!== (T_IS_NOT_IDENTICAL)" error (nonassociative) "=== (T_IS_IDENTICAL)" error (nonassociative) "!= (T_IS_NOT_EQUAL)" error (nonassociative) "== (T_IS_EQUAL)" error (nonassociative) - $default reduce using rule 462 (static_operation) + $default reduce using rule 463 (static_operation) -state 780 +state 781 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 461 | static_scalar_value "== (T_IS_EQUAL)" static_scalar_value . - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 462 | static_scalar_value "== (T_IS_EQUAL)" static_scalar_value . + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value '<' shift, and go to state 659 '>' shift, and go to state 660 @@ -23096,547 +23171,611 @@ state 780 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 "!== (T_IS_NOT_IDENTICAL)" error (nonassociative) "=== (T_IS_IDENTICAL)" error (nonassociative) "!= (T_IS_NOT_EQUAL)" error (nonassociative) "== (T_IS_EQUAL)" error (nonassociative) - $default reduce using rule 461 (static_operation) + $default reduce using rule 462 (static_operation) -state 781 +state 782 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 463 | static_scalar_value '<' static_scalar_value . - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - ">> (T_SR)" shift, and go to state 663 - "<< (T_SL)" shift, and go to state 664 - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 464 | static_scalar_value '<' static_scalar_value . + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + ">> (T_SR)" shift, and go to state 663 + "<< (T_SL)" shift, and go to state 664 + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 '<' error (nonassociative) '>' error (nonassociative) ">= (T_IS_GREATER_OR_EQUAL)" error (nonassociative) "<= (T_IS_SMALLER_OR_EQUAL)" error (nonassociative) - $default reduce using rule 463 (static_operation) + $default reduce using rule 464 (static_operation) -state 782 +state 783 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 464 | static_scalar_value '>' static_scalar_value . - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - ">> (T_SR)" shift, and go to state 663 - "<< (T_SL)" shift, and go to state 664 - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 465 | static_scalar_value '>' static_scalar_value . + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + ">> (T_SR)" shift, and go to state 663 + "<< (T_SL)" shift, and go to state 664 + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 '<' error (nonassociative) '>' error (nonassociative) ">= (T_IS_GREATER_OR_EQUAL)" error (nonassociative) "<= (T_IS_SMALLER_OR_EQUAL)" error (nonassociative) - $default reduce using rule 464 (static_operation) + $default reduce using rule 465 (static_operation) -state 783 +state 784 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value . - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - ">> (T_SR)" shift, and go to state 663 - "<< (T_SL)" shift, and go to state 664 - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value . + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + ">> (T_SR)" shift, and go to state 663 + "<< (T_SL)" shift, and go to state 664 + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 '<' error (nonassociative) '>' error (nonassociative) ">= (T_IS_GREATER_OR_EQUAL)" error (nonassociative) "<= (T_IS_SMALLER_OR_EQUAL)" error (nonassociative) - $default reduce using rule 466 (static_operation) + $default reduce using rule 467 (static_operation) -state 784 +state 785 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 465 | static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value . - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - ">> (T_SR)" shift, and go to state 663 - "<< (T_SL)" shift, and go to state 664 - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 466 | static_scalar_value "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value . + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + ">> (T_SR)" shift, and go to state 663 + "<< (T_SL)" shift, and go to state 664 + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 '<' error (nonassociative) '>' error (nonassociative) ">= (T_IS_GREATER_OR_EQUAL)" error (nonassociative) "<= (T_IS_SMALLER_OR_EQUAL)" error (nonassociative) - $default reduce using rule 465 (static_operation) + $default reduce using rule 466 (static_operation) -state 785 +state 786 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 452 | static_scalar_value ">> (T_SR)" static_scalar_value . - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 453 | static_scalar_value ">> (T_SR)" static_scalar_value . + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 452 (static_operation) + $default reduce using rule 453 (static_operation) -state 786 +state 787 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 451 | static_scalar_value "<< (T_SL)" static_scalar_value . - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - '+' shift, and go to state 665 - '-' shift, and go to state 666 - '.' shift, and go to state 667 - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 452 | static_scalar_value "<< (T_SL)" static_scalar_value . + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + '+' shift, and go to state 665 + '-' shift, and go to state 666 + '.' shift, and go to state 667 + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 451 (static_operation) + $default reduce using rule 452 (static_operation) -state 787 +state 788 441 static_operation: static_scalar_value . '+' static_scalar_value 441 | static_scalar_value '+' static_scalar_value . 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 $default reduce using rule 441 (static_operation) -state 788 +state 789 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 442 | static_scalar_value '-' static_scalar_value . 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 $default reduce using rule 442 (static_operation) -state 789 +state 790 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 453 | static_scalar_value '.' static_scalar_value . - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - - '*' shift, and go to state 668 - '/' shift, and go to state 669 - '%' shift, and go to state 670 + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 454 | static_scalar_value '.' static_scalar_value . + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + '*' shift, and go to state 668 + '/' shift, and go to state 669 + '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 453 (static_operation) + $default reduce using rule 454 (static_operation) -state 790 +state 791 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value 443 | static_scalar_value '*' static_scalar_value . - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 $default reduce using rule 443 (static_operation) -state 791 +state 792 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 444 | static_scalar_value '/' static_scalar_value . - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 445 | static_scalar_value '/' static_scalar_value . + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 444 (static_operation) + $default reduce using rule 445 (static_operation) -state 792 +state 793 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 445 | static_scalar_value '%' static_scalar_value . - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 446 | static_scalar_value '%' static_scalar_value . + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 445 (static_operation) + $default reduce using rule 446 (static_operation) -state 793 +state 794 + + 441 static_operation: static_scalar_value . '+' static_scalar_value + 442 | static_scalar_value . '-' static_scalar_value + 443 | static_scalar_value . '*' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 444 | static_scalar_value "** (T_POW)" static_scalar_value . + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + + "** (T_POW)" shift, and go to state 671 + + $default reduce using rule 444 (static_operation) + + +state 795 101 catch_statement: "catch (T_CATCH)" . '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches - '(' shift, and go to state 859 + '(' shift, and go to state 861 -state 794 +state 796 93 unticked_statement: "try (T_TRY)" $@22 '{' inner_statement_list '}' catch_statement . $@23 finally_statement $default reduce using rule 92 ($@23) - $@23 go to state 860 + $@23 go to state 862 -state 795 +state 797 31 use_function_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" "identifier (T_STRING)" . $default reduce using rule 31 (use_function_declaration) -state 796 +state 798 37 use_const_declaration: "\\ (T_NS_SEPARATOR)" namespace_name "as (T_AS)" "identifier (T_STRING)" . $default reduce using rule 37 (use_const_declaration) -state 797 +state 799 202 static_var_list: static_var_list ',' "variable (T_VARIABLE)" '=' static_scalar . $default reduce using rule 202 (static_var_list) -state 798 +state 800 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list . ')' lexical_vars '{' inner_statement_list '}' - ')' shift, and go to state 861 + ')' shift, and go to state 863 -state 799 +state 801 - 583 isset_variables: isset_variables ',' $@76 isset_variable . + 584 isset_variables: isset_variables ',' $@76 isset_variable . - $default reduce using rule 583 (isset_variables) + $default reduce using rule 584 (isset_variables) -state 800 +state 802 - 547 assignment_list_element: "list (T_LIST)" '(' $@74 . assignment_list ')' + 548 assignment_list_element: "list (T_LIST)" '(' $@74 . assignment_list ')' "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 @@ -23646,7 +23785,7 @@ state 800 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 - $default reduce using rule 548 (assignment_list_element) + $default reduce using rule 549 (assignment_list_element) namespace_name go to state 151 function_call go to state 101 @@ -23661,18 +23800,18 @@ state 800 reference_variable go to state 116 compound_variable go to state 117 simple_indirect_reference go to state 118 - assignment_list go to state 862 + assignment_list go to state 864 assignment_list_element go to state 552 -state 801 +state 803 - 543 assignment_list: assignment_list ',' assignment_list_element . + 544 assignment_list: assignment_list ',' assignment_list_element . - $default reduce using rule 543 (assignment_list) + $default reduce using rule 544 (assignment_list) -state 802 +state 804 275 expr_without_variable: "list (T_LIST)" '(' $@45 assignment_list ')' '=' . expr @@ -23739,7 +23878,7 @@ state 802 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 863 + expr go to state 865 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -23758,28 +23897,28 @@ state 802 class_name_scalar go to state 121 -state 803 +state 805 - 565 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset ']' . + 566 encaps_var: "variable (T_VARIABLE)" '[' $@75 encaps_var_offset ']' . - $default reduce using rule 565 (encaps_var) + $default reduce using rule 566 (encaps_var) -state 804 +state 806 - 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' . '}' + 569 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' . '}' - '}' shift, and go to state 864 + '}' shift, and go to state 866 -state 805 +state 807 13 top_statement: "namespace (T_NAMESPACE)" namespace_name '{' $@2 top_statement_list '}' . $default reduce using rule 13 (top_statement) -state 806 +state 808 264 chaining_dereference: '[' . dim_offset ']' @@ -23836,7 +23975,7 @@ state 806 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -23861,16 +24000,16 @@ state 806 base_variable go to state 115 reference_variable go to state 116 compound_variable go to state 117 - dim_offset go to state 865 + dim_offset go to state 867 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 class_constant go to state 120 class_name_scalar go to state 121 -state 807 +state 809 - 504 variable_property: "-> (T_OBJECT_OPERATOR)" . object_property $@70 method_or_not + 505 variable_property: "-> (T_OBJECT_OPERATOR)" . object_property $@70 method_or_not "identifier (T_STRING)" shift, and go to state 479 "variable (T_VARIABLE)" shift, and go to state 35 @@ -23880,67 +24019,67 @@ state 807 variable_without_objects go to state 606 reference_variable go to state 422 compound_variable go to state 117 - object_property go to state 866 + object_property go to state 868 object_dim_list go to state 608 variable_name go to state 609 simple_indirect_reference go to state 424 -state 808 +state 810 261 chaining_method_or_property: chaining_method_or_property . variable_property 268 chaining_instance_call: chaining_method_or_property . - "-> (T_OBJECT_OPERATOR)" shift, and go to state 807 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 809 $default reduce using rule 268 (chaining_instance_call) - variable_property go to state 867 + variable_property go to state 869 -state 809 +state 811 263 chaining_dereference: chaining_dereference . '[' dim_offset ']' 266 chaining_instance_call: chaining_dereference . $@42 chaining_method_or_property 267 | chaining_dereference . - '[' shift, and go to state 868 + '[' shift, and go to state 870 "-> (T_OBJECT_OPERATOR)" reduce using rule 265 ($@42) $default reduce using rule 267 (chaining_instance_call) - $@42 go to state 869 + $@42 go to state 871 -state 810 +state 812 271 instance_call: $@43 chaining_instance_call . $default reduce using rule 271 (instance_call) -state 811 +state 813 262 chaining_method_or_property: variable_property . $default reduce using rule 262 (chaining_method_or_property) -state 812 +state 814 46 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' . ';' - ';' shift, and go to state 870 + ';' shift, and go to state 872 -state 813 +state 815 191 non_empty_function_call_parameter_list: non_empty_function_call_parameter_list ',' function_call_parameter . $default reduce using rule 191 (non_empty_function_call_parameter_list) -state 814 +state 816 6 namespace_name: namespace_name . "\\ (T_NS_SEPARATOR)" "identifier (T_STRING)" 398 fully_qualified_class_name: "namespace (T_NAMESPACE)" "\\ (T_NS_SEPARATOR)" namespace_name . @@ -23950,26 +24089,26 @@ state 814 $default reduce using rule 398 (fully_qualified_class_name) -state 815 +state 817 137 implements_list: "implements (T_IMPLEMENTS)" interface_list . 139 interface_list: interface_list . ',' fully_qualified_class_name - ',' shift, and go to state 817 + ',' shift, and go to state 819 $default reduce using rule 137 (implements_list) -state 816 +state 818 124 unticked_class_declaration_statement: class_entry_type "identifier (T_STRING)" extends_from $@32 implements_list '{' . class_statement_list '}' $default reduce using rule 206 (class_statement_list) - class_statement_list go to state 871 + class_statement_list go to state 873 -state 817 +state 819 139 interface_list: interface_list ',' . fully_qualified_class_name @@ -23978,85 +24117,85 @@ state 817 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - fully_qualified_class_name go to state 872 + fully_qualified_class_name go to state 874 -state 818 +state 820 126 unticked_class_declaration_statement: interface_entry "identifier (T_STRING)" $@33 interface_extends_list '{' class_statement_list . '}' 205 class_statement_list: class_statement_list . class_statement - "const (T_CONST)" shift, and go to state 873 - "use (T_USE)" shift, and go to state 874 - "public (T_PUBLIC)" shift, and go to state 875 - "protected (T_PROTECTED)" shift, and go to state 876 - "private (T_PRIVATE)" shift, and go to state 877 - "final (T_FINAL)" shift, and go to state 878 - "abstract (T_ABSTRACT)" shift, and go to state 879 - "static (T_STATIC)" shift, and go to state 880 - "var (T_VAR)" shift, and go to state 881 - '}' shift, and go to state 882 + "const (T_CONST)" shift, and go to state 875 + "use (T_USE)" shift, and go to state 876 + "public (T_PUBLIC)" shift, and go to state 877 + "protected (T_PROTECTED)" shift, and go to state 878 + "private (T_PRIVATE)" shift, and go to state 879 + "final (T_FINAL)" shift, and go to state 880 + "abstract (T_ABSTRACT)" shift, and go to state 881 + "static (T_STATIC)" shift, and go to state 882 + "var (T_VAR)" shift, and go to state 883 + '}' shift, and go to state 884 $default reduce using rule 238 (method_modifiers) - class_statement go to state 883 - trait_use_statement go to state 884 - variable_modifiers go to state 885 - method_modifiers go to state 886 - non_empty_member_modifiers go to state 887 - member_modifier go to state 888 - class_constant_declaration go to state 889 + class_statement go to state 885 + trait_use_statement go to state 886 + variable_modifiers go to state 887 + method_modifiers go to state 888 + non_empty_member_modifiers go to state 889 + member_modifier go to state 890 + class_constant_declaration go to state 891 -state 819 +state 821 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' parameter_list . ')' '{' inner_statement_list '}' - ')' shift, and go to state 890 + ')' shift, and go to state 892 -state 820 +state 822 358 expr_without_variable: function is_reference @56 '(' parameter_list ')' . lexical_vars '{' inner_statement_list '}' - "use (T_USE)" shift, and go to state 891 + "use (T_USE)" shift, and go to state 893 $default reduce using rule 371 (lexical_vars) - lexical_vars go to state 892 + lexical_vars go to state 894 -state 821 +state 823 180 non_empty_parameter_list: non_empty_parameter_list ',' . parameter "identifier (T_STRING)" shift, and go to state 123 - "array (T_ARRAY)" shift, and go to state 713 - "callable (T_CALLABLE)" shift, and go to state 714 + "array (T_ARRAY)" shift, and go to state 714 + "callable (T_CALLABLE)" shift, and go to state 715 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 $default reduce using rule 183 (optional_class_type) namespace_name go to state 581 - parameter go to state 893 - optional_class_type go to state 718 - fully_qualified_class_name go to state 719 + parameter go to state 895 + optional_class_type go to state 719 + fully_qualified_class_name go to state 720 -state 822 +state 824 181 parameter: optional_class_type is_reference . is_variadic "variable (T_VARIABLE)" 182 | optional_class_type is_reference . is_variadic "variable (T_VARIABLE)" '=' static_scalar - "... (T_ELLIPSIS)" shift, and go to state 894 + "... (T_ELLIPSIS)" shift, and go to state 896 $default reduce using rule 119 (is_variadic) - is_variadic go to state 895 + is_variadic go to state 897 -state 823 +state 825 337 expr_without_variable: expr '?' $@52 expr ':' $@53 . expr @@ -24123,7 +24262,7 @@ state 823 class_name go to state 102 common_scalar go to state 103 scalar go to state 104 - expr go to state 896 + expr go to state 898 parenthesis_expr go to state 106 r_variable go to state 107 rw_variable go to state 108 @@ -24142,7 +24281,7 @@ state 823 class_name_scalar go to state 121 -state 824 +state 826 279 expr_without_variable: variable '=' '&' "new (T_NEW)" class_name_reference $@46 . ctor_arguments @@ -24151,55 +24290,55 @@ state 824 $default reduce using rule 415 (ctor_arguments) function_call_parameter_list go to state 486 - ctor_arguments go to state 897 + ctor_arguments go to state 899 -state 825 +state 827 - 505 array_method_dereference: array_method_dereference . '[' dim_offset ']' - 510 method_or_not: array_method_dereference . + 506 array_method_dereference: array_method_dereference . '[' dim_offset ']' + 511 method_or_not: array_method_dereference . - '[' shift, and go to state 898 + '[' shift, and go to state 900 - $default reduce using rule 510 (method_or_not) + $default reduce using rule 511 (method_or_not) -state 826 +state 828 - 506 array_method_dereference: method . '[' dim_offset ']' - 509 method_or_not: method . + 507 array_method_dereference: method . '[' dim_offset ']' + 510 method_or_not: method . - '[' shift, and go to state 899 + '[' shift, and go to state 901 - $default reduce using rule 509 (method_or_not) + $default reduce using rule 510 (method_or_not) -state 827 +state 829 - 508 method: @71 . function_call_parameter_list + 509 method: @71 . function_call_parameter_list '(' shift, and go to state 407 - function_call_parameter_list go to state 900 + function_call_parameter_list go to state 902 -state 828 +state 830 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not . variable_properties + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not . variable_properties - $default reduce using rule 502 (variable_properties) + $default reduce using rule 503 (variable_properties) - variable_properties go to state 901 + variable_properties go to state 903 -state 829 +state 831 - 536 object_dim_list: object_dim_list '[' dim_offset . ']' + 537 object_dim_list: object_dim_list '[' dim_offset . ']' - ']' shift, and go to state 902 + ']' shift, and go to state 904 -state 830 +state 832 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr 300 | expr . "&& (T_BOOLEAN_AND)" $@48 expr @@ -24229,7 +24368,7 @@ state 830 330 | expr . "instanceof (T_INSTANCEOF)" class_name_reference 337 | expr . '?' $@52 expr ':' $@53 expr 339 | expr . '?' ':' $@54 expr - 537 object_dim_list: object_dim_list '{' expr . '}' + 538 object_dim_list: object_dim_list '{' expr . '}' "or (T_LOGICAL_OR)" shift, and go to state 254 "xor (T_LOGICAL_XOR)" shift, and go to state 255 @@ -24258,51 +24397,51 @@ state 830 '%' shift, and go to state 278 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - '}' shift, and go to state 903 + '}' shift, and go to state 905 -state 831 +state 833 - 555 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable . + 556 non_empty_array_pair_list: non_empty_array_pair_list ',' expr "=> (T_DOUBLE_ARROW)" '&' w_variable . - $default reduce using rule 555 (non_empty_array_pair_list) + $default reduce using rule 556 (non_empty_array_pair_list) -state 832 +state 834 404 dynamic_class_name_reference: base_variable "-> (T_OBJECT_OPERATOR)" $@66 object_property $@67 dynamic_class_name_variable_properties . 406 dynamic_class_name_variable_properties: dynamic_class_name_variable_properties . dynamic_class_name_variable_property - "-> (T_OBJECT_OPERATOR)" shift, and go to state 904 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 906 $default reduce using rule 404 (dynamic_class_name_reference) - dynamic_class_name_variable_property go to state 905 + dynamic_class_name_variable_property go to state 907 -state 833 +state 835 55 unticked_statement: "if (T_IF)" parenthesis_expr ':' $@7 inner_statement_list $@8 new_elseif_list . new_else_single "endif (T_ENDIF)" ';' 172 new_elseif_list: new_elseif_list . "elseif (T_ELSEIF)" parenthesis_expr ':' $@38 inner_statement_list - "elseif (T_ELSEIF)" shift, and go to state 906 - "else (T_ELSE)" shift, and go to state 907 + "elseif (T_ELSEIF)" shift, and go to state 908 + "else (T_ELSE)" shift, and go to state 909 $default reduce using rule 175 (new_else_single) - new_else_single go to state 908 + new_else_single go to state 910 -state 834 +state 836 169 elseif_list: elseif_list "elseif (T_ELSEIF)" . parenthesis_expr $@37 statement '(' shift, and go to state 175 - parenthesis_expr go to state 909 + parenthesis_expr go to state 911 -state 835 +state 837 174 else_single: "else (T_ELSE)" . statement @@ -24379,7 +24518,7 @@ state 835 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 910 + statement go to state 912 unticked_statement go to state 88 new_expr go to state 95 expr_without_variable go to state 96 @@ -24410,70 +24549,70 @@ state 835 class_name_scalar go to state 121 -state 836 +state 838 52 unticked_statement: "if (T_IF)" parenthesis_expr $@5 statement $@6 elseif_list else_single . $default reduce using rule 52 (unticked_statement) -state 837 +state 839 61 unticked_statement: "do (T_DO)" $@11 statement "while (T_WHILE)" $@12 parenthesis_expr ';' . $default reduce using rule 61 (unticked_statement) -state 838 +state 840 166 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" . ';' - ';' shift, and go to state 911 + ';' shift, and go to state 913 -state 839 +state 841 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' . $@14 for_expr ')' $@15 for_statement $default reduce using rule 63 ($@14) - $@14 go to state 912 + $@14 go to state 914 -state 840 +state 842 143 foreach_variable: '&' variable . $default reduce using rule 143 (foreach_variable) -state 841 +state 843 145 foreach_variable: "list (T_LIST)" '(' . $@34 assignment_list ')' $default reduce using rule 144 ($@34) - $@34 go to state 913 + $@34 go to state 915 -state 842 +state 844 141 foreach_optional_arg: "=> (T_DOUBLE_ARROW)" . foreach_variable - '&' shift, and go to state 742 + '&' shift, and go to state 743 "identifier (T_STRING)" shift, and go to state 123 "variable (T_VARIABLE)" shift, and go to state 35 "static (T_STATIC)" shift, and go to state 148 - "list (T_LIST)" shift, and go to state 743 + "list (T_LIST)" shift, and go to state 744 "namespace (T_NAMESPACE)" shift, and go to state 149 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 namespace_name go to state 151 - foreach_variable go to state 914 + foreach_variable go to state 916 function_call go to state 101 class_name go to state 152 - variable go to state 745 + variable go to state 746 variable_without_objects go to state 110 static_member go to state 111 variable_class_name go to state 155 @@ -24485,21 +24624,21 @@ state 842 simple_indirect_reference go to state 118 -state 843 +state 845 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 foreach_variable foreach_optional_arg . ')' $@20 foreach_statement - ')' shift, and go to state 915 + ')' shift, and go to state 917 -state 844 +state 846 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 foreach_variable foreach_optional_arg . ')' $@18 foreach_statement - ')' shift, and go to state 916 + ')' shift, and go to state 918 -state 845 +state 847 153 declare_list: declare_list ',' "identifier (T_STRING)" '=' . static_scalar @@ -24531,39 +24670,39 @@ state 845 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 917 + static_scalar go to state 919 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 846 +state 848 41 inner_statement_list: inner_statement_list . $@4 inner_statement 151 declare_statement: ':' inner_statement_list . "enddeclare (T_ENDDECLARE)" ';' - "enddeclare (T_ENDDECLARE)" shift, and go to state 918 + "enddeclare (T_ENDDECLARE)" shift, and go to state 920 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 847 +state 849 157 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" . ';' - ';' shift, and go to state 919 + ';' shift, and go to state 921 -state 848 +state 850 156 switch_case_list: ':' case_list "endswitch (T_ENDSWITCH)" ';' . $default reduce using rule 156 (switch_case_list) -state 849 +state 851 160 case_list: case_list "case (T_CASE)" expr . case_separator $@35 inner_statement_list 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr @@ -24599,7 +24738,7 @@ state 849 "xor (T_LOGICAL_XOR)" shift, and go to state 255 "and (T_LOGICAL_AND)" shift, and go to state 256 '?' shift, and go to state 257 - ':' shift, and go to state 850 + ':' shift, and go to state 852 "|| (T_BOOLEAN_OR)" shift, and go to state 258 "&& (T_BOOLEAN_AND)" shift, and go to state 259 '|' shift, and go to state 260 @@ -24623,94 +24762,95 @@ state 849 '%' shift, and go to state 278 "instanceof (T_INSTANCEOF)" shift, and go to state 279 "** (T_POW)" shift, and go to state 280 - ';' shift, and go to state 851 + ';' shift, and go to state 853 - case_separator go to state 920 + case_separator go to state 922 -state 850 +state 852 163 case_separator: ':' . $default reduce using rule 163 (case_separator) -state 851 +state 853 164 case_separator: ';' . $default reduce using rule 164 (case_separator) -state 852 +state 854 162 case_list: case_list "default (T_DEFAULT)" case_separator . $@36 inner_statement_list $default reduce using rule 161 ($@36) - $@36 go to state 921 + $@36 go to state 923 -state 853 +state 855 155 switch_case_list: '{' ';' case_list '}' . $default reduce using rule 155 (switch_case_list) -state 854 +state 856 - 488 non_empty_static_array_pair_list: static_scalar "=> (T_DOUBLE_ARROW)" static_scalar . + 489 non_empty_static_array_pair_list: static_scalar "=> (T_DOUBLE_ARROW)" static_scalar . - $default reduce using rule 488 (non_empty_static_array_pair_list) + $default reduce using rule 489 (non_empty_static_array_pair_list) -state 855 +state 857 - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar . "=> (T_DOUBLE_ARROW)" static_scalar - 487 | non_empty_static_array_pair_list ',' static_scalar . + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar . "=> (T_DOUBLE_ARROW)" static_scalar + 488 | non_empty_static_array_pair_list ',' static_scalar . - "=> (T_DOUBLE_ARROW)" shift, and go to state 922 + "=> (T_DOUBLE_ARROW)" shift, and go to state 924 - $default reduce using rule 487 (non_empty_static_array_pair_list) + $default reduce using rule 488 (non_empty_static_array_pair_list) -state 856 +state 858 431 static_scalar: "array (T_ARRAY)" '(' static_array_pair_list ')' . $default reduce using rule 431 (static_scalar) -state 857 +state 859 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 467 | static_scalar_value '?' ':' static_scalar_value . - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 468 | static_scalar_value '?' ':' static_scalar_value . + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value "|| (T_BOOLEAN_OR)" shift, and go to state 650 "&& (T_BOOLEAN_AND)" shift, and go to state 651 @@ -24733,13 +24873,14 @@ state 857 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 467 (static_operation) + $default reduce using rule 468 (static_operation) -state 858 +state 860 - 468 static_operation: static_scalar_value '?' static_scalar_value ':' . static_scalar_value + 469 static_operation: static_scalar_value '?' static_scalar_value ':' . static_scalar_value '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -24767,52 +24908,52 @@ state 858 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar_value go to state 923 + static_scalar_value go to state 925 static_operation go to state 523 static_class_name_scalar go to state 524 -state 859 +state 861 101 catch_statement: "catch (T_CATCH)" '(' . $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches $default reduce using rule 97 ($@24) - $@24 go to state 924 + $@24 go to state 926 -state 860 +state 862 93 unticked_statement: "try (T_TRY)" $@22 '{' inner_statement_list '}' catch_statement $@23 . finally_statement - "finally (T_FINALLY)" shift, and go to state 925 + "finally (T_FINALLY)" shift, and go to state 927 $default reduce using rule 102 (finally_statement) - finally_statement go to state 926 + finally_statement go to state 928 -state 861 +state 863 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list ')' . lexical_vars '{' inner_statement_list '}' - "use (T_USE)" shift, and go to state 891 + "use (T_USE)" shift, and go to state 893 $default reduce using rule 371 (lexical_vars) - lexical_vars go to state 927 + lexical_vars go to state 929 -state 862 +state 864 - 543 assignment_list: assignment_list . ',' assignment_list_element - 547 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list . ')' + 544 assignment_list: assignment_list . ',' assignment_list_element + 548 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list . ')' - ',' shift, and go to state 686 - ')' shift, and go to state 928 + ',' shift, and go to state 687 + ')' shift, and go to state 930 -state 863 +state 865 275 expr_without_variable: "list (T_LIST)" '(' $@45 assignment_list ')' '=' expr . 298 | expr . "|| (T_BOOLEAN_OR)" $@47 expr @@ -24872,37 +25013,37 @@ state 863 $default reduce using rule 275 (expr_without_variable) -state 864 +state 866 - 568 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' . + 569 encaps_var: "${ (T_DOLLAR_OPEN_CURLY_BRACES)" "variable name (T_STRING_VARNAME)" '[' expr ']' '}' . - $default reduce using rule 568 (encaps_var) + $default reduce using rule 569 (encaps_var) -state 865 +state 867 264 chaining_dereference: '[' dim_offset . ']' - ']' shift, and go to state 929 + ']' shift, and go to state 931 -state 866 +state 868 - 504 variable_property: "-> (T_OBJECT_OPERATOR)" object_property . $@70 method_or_not + 505 variable_property: "-> (T_OBJECT_OPERATOR)" object_property . $@70 method_or_not - $default reduce using rule 503 ($@70) + $default reduce using rule 504 ($@70) - $@70 go to state 930 + $@70 go to state 932 -state 867 +state 869 261 chaining_method_or_property: chaining_method_or_property variable_property . $default reduce using rule 261 (chaining_method_or_property) -state 868 +state 870 263 chaining_dereference: chaining_dereference '[' . dim_offset ']' @@ -24959,7 +25100,7 @@ state 868 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -24984,72 +25125,72 @@ state 868 base_variable go to state 115 reference_variable go to state 116 compound_variable go to state 117 - dim_offset go to state 931 + dim_offset go to state 933 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 class_constant go to state 120 class_name_scalar go to state 121 -state 869 +state 871 266 chaining_instance_call: chaining_dereference $@42 . chaining_method_or_property - "-> (T_OBJECT_OPERATOR)" shift, and go to state 807 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 809 - chaining_method_or_property go to state 932 - variable_property go to state 811 + chaining_method_or_property go to state 934 + variable_property go to state 813 -state 870 +state 872 46 inner_statement: "__halt_compiler (T_HALT_COMPILER)" '(' ')' ';' . $default reduce using rule 46 (inner_statement) -state 871 +state 873 124 unticked_class_declaration_statement: class_entry_type "identifier (T_STRING)" extends_from $@32 implements_list '{' class_statement_list . '}' 205 class_statement_list: class_statement_list . class_statement - "const (T_CONST)" shift, and go to state 873 - "use (T_USE)" shift, and go to state 874 - "public (T_PUBLIC)" shift, and go to state 875 - "protected (T_PROTECTED)" shift, and go to state 876 - "private (T_PRIVATE)" shift, and go to state 877 - "final (T_FINAL)" shift, and go to state 878 - "abstract (T_ABSTRACT)" shift, and go to state 879 - "static (T_STATIC)" shift, and go to state 880 - "var (T_VAR)" shift, and go to state 881 - '}' shift, and go to state 933 + "const (T_CONST)" shift, and go to state 875 + "use (T_USE)" shift, and go to state 876 + "public (T_PUBLIC)" shift, and go to state 877 + "protected (T_PROTECTED)" shift, and go to state 878 + "private (T_PRIVATE)" shift, and go to state 879 + "final (T_FINAL)" shift, and go to state 880 + "abstract (T_ABSTRACT)" shift, and go to state 881 + "static (T_STATIC)" shift, and go to state 882 + "var (T_VAR)" shift, and go to state 883 + '}' shift, and go to state 935 $default reduce using rule 238 (method_modifiers) - class_statement go to state 883 - trait_use_statement go to state 884 - variable_modifiers go to state 885 - method_modifiers go to state 886 - non_empty_member_modifiers go to state 887 - member_modifier go to state 888 - class_constant_declaration go to state 889 + class_statement go to state 885 + trait_use_statement go to state 886 + variable_modifiers go to state 887 + method_modifiers go to state 888 + non_empty_member_modifiers go to state 889 + member_modifier go to state 890 + class_constant_declaration go to state 891 -state 872 +state 874 139 interface_list: interface_list ',' fully_qualified_class_name . $default reduce using rule 139 (interface_list) -state 873 +state 875 253 class_constant_declaration: "const (T_CONST)" . "identifier (T_STRING)" '=' static_scalar - "identifier (T_STRING)" shift, and go to state 934 + "identifier (T_STRING)" shift, and go to state 936 -state 874 +state 876 213 trait_use_statement: "use (T_USE)" . trait_list trait_adaptations @@ -25058,177 +25199,177 @@ state 874 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - trait_list go to state 935 - fully_qualified_class_name go to state 936 + trait_list go to state 937 + fully_qualified_class_name go to state 938 -state 875 +state 877 242 member_modifier: "public (T_PUBLIC)" . $default reduce using rule 242 (member_modifier) -state 876 +state 878 243 member_modifier: "protected (T_PROTECTED)" . $default reduce using rule 243 (member_modifier) -state 877 +state 879 244 member_modifier: "private (T_PRIVATE)" . $default reduce using rule 244 (member_modifier) -state 878 +state 880 247 member_modifier: "final (T_FINAL)" . $default reduce using rule 247 (member_modifier) -state 879 +state 881 246 member_modifier: "abstract (T_ABSTRACT)" . $default reduce using rule 246 (member_modifier) -state 880 +state 882 245 member_modifier: "static (T_STATIC)" . $default reduce using rule 245 (member_modifier) -state 881 +state 883 237 variable_modifiers: "var (T_VAR)" . $default reduce using rule 237 (variable_modifiers) -state 882 +state 884 126 unticked_class_declaration_statement: interface_entry "identifier (T_STRING)" $@33 interface_extends_list '{' class_statement_list '}' . $default reduce using rule 126 (unticked_class_declaration_statement) -state 883 +state 885 205 class_statement_list: class_statement_list class_statement . $default reduce using rule 205 (class_statement_list) -state 884 +state 886 210 class_statement: trait_use_statement . $default reduce using rule 210 (class_statement) -state 885 +state 887 208 class_statement: variable_modifiers . $@39 class_variable_declaration ';' $default reduce using rule 207 ($@39) - $@39 go to state 937 + $@39 go to state 939 -state 886 +state 888 212 class_statement: method_modifiers . function is_reference "identifier (T_STRING)" $@40 '(' parameter_list ')' method_body "function (T_FUNCTION)" shift, and go to state 48 - function go to state 938 + function go to state 940 -state 887 +state 889 236 variable_modifiers: non_empty_member_modifiers . 239 method_modifiers: non_empty_member_modifiers . 241 non_empty_member_modifiers: non_empty_member_modifiers . member_modifier - "public (T_PUBLIC)" shift, and go to state 875 - "protected (T_PROTECTED)" shift, and go to state 876 - "private (T_PRIVATE)" shift, and go to state 877 - "final (T_FINAL)" shift, and go to state 878 - "abstract (T_ABSTRACT)" shift, and go to state 879 - "static (T_STATIC)" shift, and go to state 880 + "public (T_PUBLIC)" shift, and go to state 877 + "protected (T_PROTECTED)" shift, and go to state 878 + "private (T_PRIVATE)" shift, and go to state 879 + "final (T_FINAL)" shift, and go to state 880 + "abstract (T_ABSTRACT)" shift, and go to state 881 + "static (T_STATIC)" shift, and go to state 882 "function (T_FUNCTION)" reduce using rule 239 (method_modifiers) $default reduce using rule 236 (variable_modifiers) - member_modifier go to state 939 + member_modifier go to state 941 -state 888 +state 890 240 non_empty_member_modifiers: member_modifier . $default reduce using rule 240 (non_empty_member_modifiers) -state 889 +state 891 209 class_statement: class_constant_declaration . ';' 252 class_constant_declaration: class_constant_declaration . ',' "identifier (T_STRING)" '=' static_scalar - ',' shift, and go to state 940 - ';' shift, and go to state 941 + ',' shift, and go to state 942 + ';' shift, and go to state 943 -state 890 +state 892 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' parameter_list ')' . '{' inner_statement_list '}' - '{' shift, and go to state 942 + '{' shift, and go to state 944 -state 891 +state 893 372 lexical_vars: "use (T_USE)" . '(' lexical_var_list ')' - '(' shift, and go to state 943 + '(' shift, and go to state 945 -state 892 +state 894 358 expr_without_variable: function is_reference @56 '(' parameter_list ')' lexical_vars . '{' inner_statement_list '}' - '{' shift, and go to state 944 + '{' shift, and go to state 946 -state 893 +state 895 180 non_empty_parameter_list: non_empty_parameter_list ',' parameter . $default reduce using rule 180 (non_empty_parameter_list) -state 894 +state 896 120 is_variadic: "... (T_ELLIPSIS)" . $default reduce using rule 120 (is_variadic) -state 895 +state 897 181 parameter: optional_class_type is_reference is_variadic . "variable (T_VARIABLE)" 182 | optional_class_type is_reference is_variadic . "variable (T_VARIABLE)" '=' static_scalar - "variable (T_VARIABLE)" shift, and go to state 945 + "variable (T_VARIABLE)" shift, and go to state 947 -state 896 +state 898 298 expr_without_variable: expr . "|| (T_BOOLEAN_OR)" $@47 expr 300 | expr . "&& (T_BOOLEAN_AND)" $@48 expr @@ -25287,16 +25428,16 @@ state 896 $default reduce using rule 337 (expr_without_variable) -state 897 +state 899 279 expr_without_variable: variable '=' '&' "new (T_NEW)" class_name_reference $@46 ctor_arguments . $default reduce using rule 279 (expr_without_variable) -state 898 +state 900 - 505 array_method_dereference: array_method_dereference '[' . dim_offset ']' + 506 array_method_dereference: array_method_dereference '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -25351,7 +25492,7 @@ state 898 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -25376,16 +25517,16 @@ state 898 base_variable go to state 115 reference_variable go to state 116 compound_variable go to state 117 - dim_offset go to state 946 + dim_offset go to state 948 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 class_constant go to state 120 class_name_scalar go to state 121 -state 899 +state 901 - 506 array_method_dereference: method '[' . dim_offset ']' + 507 array_method_dereference: method '[' . dim_offset ']' "require_once (T_REQUIRE_ONCE)" shift, and go to state 5 "require (T_REQUIRE)" shift, and go to state 6 @@ -25440,7 +25581,7 @@ state 899 '`' shift, and go to state 82 '"' shift, and go to state 83 - $default reduce using rule 531 (dim_offset) + $default reduce using rule 532 (dim_offset) namespace_name go to state 84 new_expr go to state 95 @@ -25465,47 +25606,47 @@ state 899 base_variable go to state 115 reference_variable go to state 116 compound_variable go to state 117 - dim_offset go to state 947 + dim_offset go to state 949 simple_indirect_reference go to state 118 internal_functions_in_yacc go to state 119 class_constant go to state 120 class_name_scalar go to state 121 -state 900 +state 902 - 508 method: @71 function_call_parameter_list . + 509 method: @71 function_call_parameter_list . - $default reduce using rule 508 (method) + $default reduce using rule 509 (method) -state 901 +state 903 - 499 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties . - 501 variable_properties: variable_properties . variable_property + 500 variable: base_variable_with_function_calls "-> (T_OBJECT_OPERATOR)" $@68 object_property $@69 method_or_not variable_properties . + 502 variable_properties: variable_properties . variable_property - "-> (T_OBJECT_OPERATOR)" shift, and go to state 807 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 809 - $default reduce using rule 499 (variable) + $default reduce using rule 500 (variable) - variable_property go to state 948 + variable_property go to state 950 -state 902 +state 904 - 536 object_dim_list: object_dim_list '[' dim_offset ']' . + 537 object_dim_list: object_dim_list '[' dim_offset ']' . - $default reduce using rule 536 (object_dim_list) + $default reduce using rule 537 (object_dim_list) -state 903 +state 905 - 537 object_dim_list: object_dim_list '{' expr '}' . + 538 object_dim_list: object_dim_list '{' expr '}' . - $default reduce using rule 537 (object_dim_list) + $default reduce using rule 538 (object_dim_list) -state 904 +state 906 408 dynamic_class_name_variable_property: "-> (T_OBJECT_OPERATOR)" . object_property @@ -25517,66 +25658,66 @@ state 904 variable_without_objects go to state 606 reference_variable go to state 422 compound_variable go to state 117 - object_property go to state 949 + object_property go to state 951 object_dim_list go to state 608 variable_name go to state 609 simple_indirect_reference go to state 424 -state 905 +state 907 406 dynamic_class_name_variable_properties: dynamic_class_name_variable_properties dynamic_class_name_variable_property . $default reduce using rule 406 (dynamic_class_name_variable_properties) -state 906 +state 908 172 new_elseif_list: new_elseif_list "elseif (T_ELSEIF)" . parenthesis_expr ':' $@38 inner_statement_list '(' shift, and go to state 175 - parenthesis_expr go to state 950 + parenthesis_expr go to state 952 -state 907 +state 909 176 new_else_single: "else (T_ELSE)" . ':' inner_statement_list - ':' shift, and go to state 951 + ':' shift, and go to state 953 -state 908 +state 910 55 unticked_statement: "if (T_IF)" parenthesis_expr ':' $@7 inner_statement_list $@8 new_elseif_list new_else_single . "endif (T_ENDIF)" ';' - "endif (T_ENDIF)" shift, and go to state 952 + "endif (T_ENDIF)" shift, and go to state 954 -state 909 +state 911 169 elseif_list: elseif_list "elseif (T_ELSEIF)" parenthesis_expr . $@37 statement $default reduce using rule 168 ($@37) - $@37 go to state 953 + $@37 go to state 955 -state 910 +state 912 174 else_single: "else (T_ELSE)" statement . $default reduce using rule 174 (else_single) -state 911 +state 913 166 while_statement: ':' inner_statement_list "endwhile (T_ENDWHILE)" ';' . $default reduce using rule 166 (while_statement) -state 912 +state 914 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' $@14 . for_expr ')' $@15 for_statement @@ -25636,7 +25777,7 @@ state 912 $default reduce using rule 256 (for_expr) namespace_name go to state 84 - for_expr go to state 954 + for_expr go to state 956 non_empty_for_expr go to state 336 new_expr go to state 95 expr_without_variable go to state 96 @@ -25666,7 +25807,7 @@ state 912 class_name_scalar go to state 121 -state 913 +state 915 145 foreach_variable: "list (T_LIST)" '(' $@34 . assignment_list ')' @@ -25678,7 +25819,7 @@ state 913 "\\ (T_NS_SEPARATOR)" shift, and go to state 150 '$' shift, and go to state 81 - $default reduce using rule 548 (assignment_list_element) + $default reduce using rule 549 (assignment_list_element) namespace_name go to state 151 function_call go to state 101 @@ -25693,77 +25834,77 @@ state 913 reference_variable go to state 116 compound_variable go to state 117 simple_indirect_reference go to state 118 - assignment_list go to state 955 + assignment_list go to state 957 assignment_list_element go to state 552 -state 914 +state 916 141 foreach_optional_arg: "=> (T_DOUBLE_ARROW)" foreach_variable . $default reduce using rule 141 (foreach_optional_arg) -state 915 +state 917 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 foreach_variable foreach_optional_arg ')' . $@20 foreach_statement $default reduce using rule 86 ($@20) - $@20 go to state 956 + $@20 go to state 958 -state 916 +state 918 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 foreach_variable foreach_optional_arg ')' . $@18 foreach_statement $default reduce using rule 83 ($@18) - $@18 go to state 957 + $@18 go to state 959 -state 917 +state 919 153 declare_list: declare_list ',' "identifier (T_STRING)" '=' static_scalar . $default reduce using rule 153 (declare_list) -state 918 +state 920 151 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" . ';' - ';' shift, and go to state 958 + ';' shift, and go to state 960 -state 919 +state 921 157 switch_case_list: ':' ';' case_list "endswitch (T_ENDSWITCH)" ';' . $default reduce using rule 157 (switch_case_list) -state 920 +state 922 160 case_list: case_list "case (T_CASE)" expr case_separator . $@35 inner_statement_list $default reduce using rule 159 ($@35) - $@35 go to state 959 + $@35 go to state 961 -state 921 +state 923 162 case_list: case_list "default (T_DEFAULT)" case_separator $@36 . inner_statement_list $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 960 + inner_statement_list go to state 962 -state 922 +state 924 - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" . static_scalar + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" . static_scalar '+' shift, and go to state 505 '-' shift, and go to state 506 @@ -25793,41 +25934,42 @@ state 922 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 961 + static_scalar go to state 963 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 923 +state 925 441 static_operation: static_scalar_value . '+' static_scalar_value 442 | static_scalar_value . '-' static_scalar_value 443 | static_scalar_value . '*' static_scalar_value - 444 | static_scalar_value . '/' static_scalar_value - 445 | static_scalar_value . '%' static_scalar_value - 448 | static_scalar_value . '|' static_scalar_value - 449 | static_scalar_value . '&' static_scalar_value - 450 | static_scalar_value . '^' static_scalar_value - 451 | static_scalar_value . "<< (T_SL)" static_scalar_value - 452 | static_scalar_value . ">> (T_SR)" static_scalar_value - 453 | static_scalar_value . '.' static_scalar_value - 454 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value - 455 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value - 456 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value - 457 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value - 458 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value - 459 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value - 460 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value - 461 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value - 462 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value - 463 | static_scalar_value . '<' static_scalar_value - 464 | static_scalar_value . '>' static_scalar_value - 465 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value - 466 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value - 467 | static_scalar_value . '?' ':' static_scalar_value - 468 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value - 468 | static_scalar_value '?' static_scalar_value ':' static_scalar_value . + 444 | static_scalar_value . "** (T_POW)" static_scalar_value + 445 | static_scalar_value . '/' static_scalar_value + 446 | static_scalar_value . '%' static_scalar_value + 449 | static_scalar_value . '|' static_scalar_value + 450 | static_scalar_value . '&' static_scalar_value + 451 | static_scalar_value . '^' static_scalar_value + 452 | static_scalar_value . "<< (T_SL)" static_scalar_value + 453 | static_scalar_value . ">> (T_SR)" static_scalar_value + 454 | static_scalar_value . '.' static_scalar_value + 455 | static_scalar_value . "xor (T_LOGICAL_XOR)" static_scalar_value + 456 | static_scalar_value . "and (T_LOGICAL_AND)" static_scalar_value + 457 | static_scalar_value . "or (T_LOGICAL_OR)" static_scalar_value + 458 | static_scalar_value . "&& (T_BOOLEAN_AND)" static_scalar_value + 459 | static_scalar_value . "|| (T_BOOLEAN_OR)" static_scalar_value + 460 | static_scalar_value . "=== (T_IS_IDENTICAL)" static_scalar_value + 461 | static_scalar_value . "!== (T_IS_NOT_IDENTICAL)" static_scalar_value + 462 | static_scalar_value . "== (T_IS_EQUAL)" static_scalar_value + 463 | static_scalar_value . "!= (T_IS_NOT_EQUAL)" static_scalar_value + 464 | static_scalar_value . '<' static_scalar_value + 465 | static_scalar_value . '>' static_scalar_value + 466 | static_scalar_value . "<= (T_IS_SMALLER_OR_EQUAL)" static_scalar_value + 467 | static_scalar_value . ">= (T_IS_GREATER_OR_EQUAL)" static_scalar_value + 468 | static_scalar_value . '?' ':' static_scalar_value + 469 | static_scalar_value . '?' static_scalar_value ':' static_scalar_value + 469 | static_scalar_value '?' static_scalar_value ':' static_scalar_value . "|| (T_BOOLEAN_OR)" shift, and go to state 650 "&& (T_BOOLEAN_AND)" shift, and go to state 651 @@ -25850,11 +25992,12 @@ state 923 '*' shift, and go to state 668 '/' shift, and go to state 669 '%' shift, and go to state 670 + "** (T_POW)" shift, and go to state 671 - $default reduce using rule 468 (static_operation) + $default reduce using rule 469 (static_operation) -state 924 +state 926 101 catch_statement: "catch (T_CATCH)" '(' $@24 . fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches @@ -25863,121 +26006,121 @@ state 924 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - fully_qualified_class_name go to state 962 + fully_qualified_class_name go to state 964 -state 925 +state 927 104 finally_statement: "finally (T_FINALLY)" . $@28 '{' inner_statement_list '}' $default reduce using rule 103 ($@28) - $@28 go to state 963 + $@28 go to state 965 -state 926 +state 928 93 unticked_statement: "try (T_TRY)" $@22 '{' inner_statement_list '}' catch_statement $@23 finally_statement . $default reduce using rule 93 (unticked_statement) -state 927 +state 929 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list ')' lexical_vars . '{' inner_statement_list '}' - '{' shift, and go to state 964 + '{' shift, and go to state 966 -state 928 +state 930 - 547 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list ')' . + 548 assignment_list_element: "list (T_LIST)" '(' $@74 assignment_list ')' . - $default reduce using rule 547 (assignment_list_element) + $default reduce using rule 548 (assignment_list_element) -state 929 +state 931 264 chaining_dereference: '[' dim_offset ']' . $default reduce using rule 264 (chaining_dereference) -state 930 +state 932 - 504 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 . method_or_not + 505 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 . method_or_not - '(' reduce using rule 507 (@71) - $default reduce using rule 511 (method_or_not) + '(' reduce using rule 508 (@71) + $default reduce using rule 512 (method_or_not) - array_method_dereference go to state 825 - method go to state 826 - @71 go to state 827 - method_or_not go to state 965 + array_method_dereference go to state 827 + method go to state 828 + @71 go to state 829 + method_or_not go to state 967 -state 931 +state 933 263 chaining_dereference: chaining_dereference '[' dim_offset . ']' - ']' shift, and go to state 966 + ']' shift, and go to state 968 -state 932 +state 934 261 chaining_method_or_property: chaining_method_or_property . variable_property 266 chaining_instance_call: chaining_dereference $@42 chaining_method_or_property . - "-> (T_OBJECT_OPERATOR)" shift, and go to state 807 + "-> (T_OBJECT_OPERATOR)" shift, and go to state 809 $default reduce using rule 266 (chaining_instance_call) - variable_property go to state 867 + variable_property go to state 869 -state 933 +state 935 124 unticked_class_declaration_statement: class_entry_type "identifier (T_STRING)" extends_from $@32 implements_list '{' class_statement_list '}' . $default reduce using rule 124 (unticked_class_declaration_statement) -state 934 +state 936 253 class_constant_declaration: "const (T_CONST)" "identifier (T_STRING)" . '=' static_scalar - '=' shift, and go to state 967 + '=' shift, and go to state 969 -state 935 +state 937 213 trait_use_statement: "use (T_USE)" trait_list . trait_adaptations 215 trait_list: trait_list . ',' fully_qualified_class_name - ',' shift, and go to state 968 - ';' shift, and go to state 969 - '{' shift, and go to state 970 + ',' shift, and go to state 970 + ';' shift, and go to state 971 + '{' shift, and go to state 972 - trait_adaptations go to state 971 + trait_adaptations go to state 973 -state 936 +state 938 214 trait_list: fully_qualified_class_name . $default reduce using rule 214 (trait_list) -state 937 +state 939 208 class_statement: variable_modifiers $@39 . class_variable_declaration ';' - "variable (T_VARIABLE)" shift, and go to state 972 + "variable (T_VARIABLE)" shift, and go to state 974 - class_variable_declaration go to state 973 + class_variable_declaration go to state 975 -state 938 +state 940 212 class_statement: method_modifiers function . is_reference "identifier (T_STRING)" $@40 '(' parameter_list ')' method_body @@ -25985,120 +26128,120 @@ state 938 $default reduce using rule 117 (is_reference) - is_reference go to state 974 + is_reference go to state 976 -state 939 +state 941 241 non_empty_member_modifiers: non_empty_member_modifiers member_modifier . $default reduce using rule 241 (non_empty_member_modifiers) -state 940 +state 942 252 class_constant_declaration: class_constant_declaration ',' . "identifier (T_STRING)" '=' static_scalar - "identifier (T_STRING)" shift, and go to state 975 + "identifier (T_STRING)" shift, and go to state 977 -state 941 +state 943 209 class_statement: class_constant_declaration ';' . $default reduce using rule 209 (class_statement) -state 942 +state 944 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' parameter_list ')' '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 976 + inner_statement_list go to state 978 -state 943 +state 945 372 lexical_vars: "use (T_USE)" '(' . lexical_var_list ')' - '&' shift, and go to state 977 - "variable (T_VARIABLE)" shift, and go to state 978 + '&' shift, and go to state 979 + "variable (T_VARIABLE)" shift, and go to state 980 - lexical_var_list go to state 979 + lexical_var_list go to state 981 -state 944 +state 946 358 expr_without_variable: function is_reference @56 '(' parameter_list ')' lexical_vars '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 980 + inner_statement_list go to state 982 -state 945 +state 947 181 parameter: optional_class_type is_reference is_variadic "variable (T_VARIABLE)" . 182 | optional_class_type is_reference is_variadic "variable (T_VARIABLE)" . '=' static_scalar - '=' shift, and go to state 981 + '=' shift, and go to state 983 $default reduce using rule 181 (parameter) -state 946 +state 948 - 505 array_method_dereference: array_method_dereference '[' dim_offset . ']' + 506 array_method_dereference: array_method_dereference '[' dim_offset . ']' - ']' shift, and go to state 982 + ']' shift, and go to state 984 -state 947 +state 949 - 506 array_method_dereference: method '[' dim_offset . ']' + 507 array_method_dereference: method '[' dim_offset . ']' - ']' shift, and go to state 983 + ']' shift, and go to state 985 -state 948 +state 950 - 501 variable_properties: variable_properties variable_property . + 502 variable_properties: variable_properties variable_property . - $default reduce using rule 501 (variable_properties) + $default reduce using rule 502 (variable_properties) -state 949 +state 951 408 dynamic_class_name_variable_property: "-> (T_OBJECT_OPERATOR)" object_property . $default reduce using rule 408 (dynamic_class_name_variable_property) -state 950 +state 952 172 new_elseif_list: new_elseif_list "elseif (T_ELSEIF)" parenthesis_expr . ':' $@38 inner_statement_list - ':' shift, and go to state 984 + ':' shift, and go to state 986 -state 951 +state 953 176 new_else_single: "else (T_ELSE)" ':' . inner_statement_list $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 985 + inner_statement_list go to state 987 -state 952 +state 954 55 unticked_statement: "if (T_IF)" parenthesis_expr ':' $@7 inner_statement_list $@8 new_elseif_list new_else_single "endif (T_ENDIF)" . ';' - ';' shift, and go to state 986 + ';' shift, and go to state 988 -state 953 +state 955 169 elseif_list: elseif_list "elseif (T_ELSEIF)" parenthesis_expr $@37 . statement @@ -26175,7 +26318,7 @@ state 953 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 987 + statement go to state 989 unticked_statement go to state 88 new_expr go to state 95 expr_without_variable go to state 96 @@ -26206,23 +26349,23 @@ state 953 class_name_scalar go to state 121 -state 954 +state 956 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' $@14 for_expr . ')' $@15 for_statement - ')' shift, and go to state 988 + ')' shift, and go to state 990 -state 955 +state 957 145 foreach_variable: "list (T_LIST)" '(' $@34 assignment_list . ')' - 543 assignment_list: assignment_list . ',' assignment_list_element + 544 assignment_list: assignment_list . ',' assignment_list_element - ',' shift, and go to state 686 - ')' shift, and go to state 989 + ',' shift, and go to state 687 + ')' shift, and go to state 991 -state 956 +state 958 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 foreach_variable foreach_optional_arg ')' $@20 . foreach_statement @@ -26233,7 +26376,7 @@ state 956 "include (T_INCLUDE)" shift, and go to state 9 "print (T_PRINT)" shift, and go to state 10 "yield (T_YIELD)" shift, and go to state 11 - ':' shift, and go to state 990 + ':' shift, and go to state 992 '+' shift, and go to state 12 '-' shift, and go to state 13 '!' shift, and go to state 14 @@ -26300,9 +26443,9 @@ state 956 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 991 + statement go to state 993 unticked_statement go to state 88 - foreach_statement go to state 992 + foreach_statement go to state 994 new_expr go to state 95 expr_without_variable go to state 96 yield_expr go to state 97 @@ -26332,7 +26475,7 @@ state 956 class_name_scalar go to state 121 -state 957 +state 959 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 foreach_variable foreach_optional_arg ')' $@18 . foreach_statement @@ -26343,7 +26486,7 @@ state 957 "include (T_INCLUDE)" shift, and go to state 9 "print (T_PRINT)" shift, and go to state 10 "yield (T_YIELD)" shift, and go to state 11 - ':' shift, and go to state 990 + ':' shift, and go to state 992 '+' shift, and go to state 12 '-' shift, and go to state 13 '!' shift, and go to state 14 @@ -26410,9 +26553,9 @@ state 957 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 991 + statement go to state 993 unticked_statement go to state 88 - foreach_statement go to state 993 + foreach_statement go to state 995 new_expr go to state 95 expr_without_variable go to state 96 yield_expr go to state 97 @@ -26442,23 +26585,23 @@ state 957 class_name_scalar go to state 121 -state 958 +state 960 151 declare_statement: ':' inner_statement_list "enddeclare (T_ENDDECLARE)" ';' . $default reduce using rule 151 (declare_statement) -state 959 +state 961 160 case_list: case_list "case (T_CASE)" expr case_separator $@35 . inner_statement_list $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 994 + inner_statement_list go to state 996 -state 960 +state 962 41 inner_statement_list: inner_statement_list . $@4 inner_statement 162 case_list: case_list "default (T_DEFAULT)" case_separator $@36 inner_statement_list . @@ -26472,53 +26615,53 @@ state 960 $@4 go to state 402 -state 961 +state 963 - 486 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar . + 487 non_empty_static_array_pair_list: non_empty_static_array_pair_list ',' static_scalar "=> (T_DOUBLE_ARROW)" static_scalar . - $default reduce using rule 486 (non_empty_static_array_pair_list) + $default reduce using rule 487 (non_empty_static_array_pair_list) -state 962 +state 964 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name . $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches $default reduce using rule 98 ($@25) - $@25 go to state 995 + $@25 go to state 997 -state 963 +state 965 104 finally_statement: "finally (T_FINALLY)" $@28 . '{' inner_statement_list '}' - '{' shift, and go to state 996 + '{' shift, and go to state 998 -state 964 +state 966 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list ')' lexical_vars '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 997 + inner_statement_list go to state 999 -state 965 +state 967 - 504 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 method_or_not . + 505 variable_property: "-> (T_OBJECT_OPERATOR)" object_property $@70 method_or_not . - $default reduce using rule 504 (variable_property) + $default reduce using rule 505 (variable_property) -state 966 +state 968 263 chaining_dereference: chaining_dereference '[' dim_offset ']' . $default reduce using rule 263 (chaining_dereference) -state 967 +state 969 253 class_constant_declaration: "const (T_CONST)" "identifier (T_STRING)" '=' . static_scalar @@ -26550,13 +26693,13 @@ state 967 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 998 + static_scalar go to state 1000 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 968 +state 970 215 trait_list: trait_list ',' . fully_qualified_class_name @@ -26565,127 +26708,127 @@ state 968 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - fully_qualified_class_name go to state 999 + fully_qualified_class_name go to state 1001 -state 969 +state 971 216 trait_adaptations: ';' . $default reduce using rule 216 (trait_adaptations) -state 970 +state 972 217 trait_adaptations: '{' . trait_adaptation_list '}' - "identifier (T_STRING)" shift, and go to state 1000 + "identifier (T_STRING)" shift, and go to state 1002 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 $default reduce using rule 218 (trait_adaptation_list) namespace_name go to state 581 - trait_adaptation_list go to state 1001 - non_empty_trait_adaptation_list go to state 1002 - trait_adaptation_statement go to state 1003 - trait_precedence go to state 1004 - trait_method_reference go to state 1005 - trait_method_reference_fully_qualified go to state 1006 - trait_alias go to state 1007 - fully_qualified_class_name go to state 1008 + trait_adaptation_list go to state 1003 + non_empty_trait_adaptation_list go to state 1004 + trait_adaptation_statement go to state 1005 + trait_precedence go to state 1006 + trait_method_reference go to state 1007 + trait_method_reference_fully_qualified go to state 1008 + trait_alias go to state 1009 + fully_qualified_class_name go to state 1010 -state 971 +state 973 213 trait_use_statement: "use (T_USE)" trait_list trait_adaptations . $default reduce using rule 213 (trait_use_statement) -state 972 +state 974 250 class_variable_declaration: "variable (T_VARIABLE)" . 251 | "variable (T_VARIABLE)" . '=' static_scalar - '=' shift, and go to state 1009 + '=' shift, and go to state 1011 $default reduce using rule 250 (class_variable_declaration) -state 973 +state 975 208 class_statement: variable_modifiers $@39 class_variable_declaration . ';' 248 class_variable_declaration: class_variable_declaration . ',' "variable (T_VARIABLE)" 249 | class_variable_declaration . ',' "variable (T_VARIABLE)" '=' static_scalar - ',' shift, and go to state 1010 - ';' shift, and go to state 1011 + ',' shift, and go to state 1012 + ';' shift, and go to state 1013 -state 974 +state 976 212 class_statement: method_modifiers function is_reference . "identifier (T_STRING)" $@40 '(' parameter_list ')' method_body - "identifier (T_STRING)" shift, and go to state 1012 + "identifier (T_STRING)" shift, and go to state 1014 -state 975 +state 977 252 class_constant_declaration: class_constant_declaration ',' "identifier (T_STRING)" . '=' static_scalar - '=' shift, and go to state 1013 + '=' shift, and go to state 1015 -state 976 +state 978 41 inner_statement_list: inner_statement_list . $@4 inner_statement 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' parameter_list ')' '{' inner_statement_list . '}' - '}' shift, and go to state 1014 + '}' shift, and go to state 1016 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 977 +state 979 376 lexical_var_list: '&' . "variable (T_VARIABLE)" - "variable (T_VARIABLE)" shift, and go to state 1015 + "variable (T_VARIABLE)" shift, and go to state 1017 -state 978 +state 980 375 lexical_var_list: "variable (T_VARIABLE)" . $default reduce using rule 375 (lexical_var_list) -state 979 +state 981 372 lexical_vars: "use (T_USE)" '(' lexical_var_list . ')' 373 lexical_var_list: lexical_var_list . ',' "variable (T_VARIABLE)" 374 | lexical_var_list . ',' '&' "variable (T_VARIABLE)" - ',' shift, and go to state 1016 - ')' shift, and go to state 1017 + ',' shift, and go to state 1018 + ')' shift, and go to state 1019 -state 980 +state 982 41 inner_statement_list: inner_statement_list . $@4 inner_statement 358 expr_without_variable: function is_reference @56 '(' parameter_list ')' lexical_vars '{' inner_statement_list . '}' - '}' shift, and go to state 1018 + '}' shift, and go to state 1020 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 981 +state 983 182 parameter: optional_class_type is_reference is_variadic "variable (T_VARIABLE)" '=' . static_scalar @@ -26717,36 +26860,36 @@ state 981 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 1019 + static_scalar go to state 1021 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 982 +state 984 - 505 array_method_dereference: array_method_dereference '[' dim_offset ']' . + 506 array_method_dereference: array_method_dereference '[' dim_offset ']' . - $default reduce using rule 505 (array_method_dereference) + $default reduce using rule 506 (array_method_dereference) -state 983 +state 985 - 506 array_method_dereference: method '[' dim_offset ']' . + 507 array_method_dereference: method '[' dim_offset ']' . - $default reduce using rule 506 (array_method_dereference) + $default reduce using rule 507 (array_method_dereference) -state 984 +state 986 172 new_elseif_list: new_elseif_list "elseif (T_ELSEIF)" parenthesis_expr ':' . $@38 inner_statement_list $default reduce using rule 171 ($@38) - $@38 go to state 1020 + $@38 go to state 1022 -state 985 +state 987 41 inner_statement_list: inner_statement_list . $@4 inner_statement 176 new_else_single: "else (T_ELSE)" ':' inner_statement_list . @@ -26757,67 +26900,67 @@ state 985 $@4 go to state 402 -state 986 +state 988 55 unticked_statement: "if (T_IF)" parenthesis_expr ':' $@7 inner_statement_list $@8 new_elseif_list new_else_single "endif (T_ENDIF)" ';' . $default reduce using rule 55 (unticked_statement) -state 987 +state 989 169 elseif_list: elseif_list "elseif (T_ELSEIF)" parenthesis_expr $@37 statement . $default reduce using rule 169 (elseif_list) -state 988 +state 990 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' $@14 for_expr ')' . $@15 for_statement $default reduce using rule 64 ($@15) - $@15 go to state 1021 + $@15 go to state 1023 -state 989 +state 991 145 foreach_variable: "list (T_LIST)" '(' $@34 assignment_list ')' . $default reduce using rule 145 (foreach_variable) -state 990 +state 992 149 foreach_statement: ':' . inner_statement_list "endforeach (T_ENDFOREACH)" ';' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1022 + inner_statement_list go to state 1024 -state 991 +state 993 148 foreach_statement: statement . $default reduce using rule 148 (foreach_statement) -state 992 +state 994 87 unticked_statement: "foreach (T_FOREACH)" '(' expr_without_variable "as (T_AS)" $@19 foreach_variable foreach_optional_arg ')' $@20 foreach_statement . $default reduce using rule 87 (unticked_statement) -state 993 +state 995 84 unticked_statement: "foreach (T_FOREACH)" '(' variable "as (T_AS)" $@17 foreach_variable foreach_optional_arg ')' $@18 foreach_statement . $default reduce using rule 84 (unticked_statement) -state 994 +state 996 41 inner_statement_list: inner_statement_list . $@4 inner_statement 160 case_list: case_list "case (T_CASE)" expr case_separator $@35 inner_statement_list . @@ -26831,49 +26974,49 @@ state 994 $@4 go to state 402 -state 995 +state 997 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 . "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches - "variable (T_VARIABLE)" shift, and go to state 1023 + "variable (T_VARIABLE)" shift, and go to state 1025 -state 996 +state 998 104 finally_statement: "finally (T_FINALLY)" $@28 '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1024 + inner_statement_list go to state 1026 -state 997 +state 999 41 inner_statement_list: inner_statement_list . $@4 inner_statement 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list ')' lexical_vars '{' inner_statement_list . '}' - '}' shift, and go to state 1025 + '}' shift, and go to state 1027 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 998 +state 1000 253 class_constant_declaration: "const (T_CONST)" "identifier (T_STRING)" '=' static_scalar . $default reduce using rule 253 (class_constant_declaration) -state 999 +state 1001 215 trait_list: trait_list ',' fully_qualified_class_name . $default reduce using rule 215 (trait_list) -state 1000 +state 1002 5 namespace_name: "identifier (T_STRING)" . 227 trait_method_reference: "identifier (T_STRING)" . @@ -26882,80 +27025,80 @@ state 1000 $default reduce using rule 5 (namespace_name) -state 1001 +state 1003 217 trait_adaptations: '{' trait_adaptation_list . '}' - '}' shift, and go to state 1026 + '}' shift, and go to state 1028 -state 1002 +state 1004 219 trait_adaptation_list: non_empty_trait_adaptation_list . 221 non_empty_trait_adaptation_list: non_empty_trait_adaptation_list . trait_adaptation_statement - "identifier (T_STRING)" shift, and go to state 1000 + "identifier (T_STRING)" shift, and go to state 1002 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 $default reduce using rule 219 (trait_adaptation_list) namespace_name go to state 581 - trait_adaptation_statement go to state 1027 - trait_precedence go to state 1004 - trait_method_reference go to state 1005 - trait_method_reference_fully_qualified go to state 1006 - trait_alias go to state 1007 - fully_qualified_class_name go to state 1008 + trait_adaptation_statement go to state 1029 + trait_precedence go to state 1006 + trait_method_reference go to state 1007 + trait_method_reference_fully_qualified go to state 1008 + trait_alias go to state 1009 + fully_qualified_class_name go to state 1010 -state 1003 +state 1005 220 non_empty_trait_adaptation_list: trait_adaptation_statement . $default reduce using rule 220 (non_empty_trait_adaptation_list) -state 1004 +state 1006 222 trait_adaptation_statement: trait_precedence . ';' - ';' shift, and go to state 1028 + ';' shift, and go to state 1030 -state 1005 +state 1007 230 trait_alias: trait_method_reference . "as (T_AS)" trait_modifiers "identifier (T_STRING)" 231 | trait_method_reference . "as (T_AS)" member_modifier - "as (T_AS)" shift, and go to state 1029 + "as (T_AS)" shift, and go to state 1031 -state 1006 +state 1008 224 trait_precedence: trait_method_reference_fully_qualified . "insteadof (T_INSTEADOF)" trait_reference_list 228 trait_method_reference: trait_method_reference_fully_qualified . - "insteadof (T_INSTEADOF)" shift, and go to state 1030 + "insteadof (T_INSTEADOF)" shift, and go to state 1032 $default reduce using rule 228 (trait_method_reference) -state 1007 +state 1009 223 trait_adaptation_statement: trait_alias . ';' - ';' shift, and go to state 1031 + ';' shift, and go to state 1033 -state 1008 +state 1010 229 trait_method_reference_fully_qualified: fully_qualified_class_name . ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" - ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 1032 + ":: (T_PAAMAYIM_NEKUDOTAYIM)" shift, and go to state 1034 -state 1009 +state 1011 251 class_variable_declaration: "variable (T_VARIABLE)" '=' . static_scalar @@ -26987,37 +27130,37 @@ state 1009 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 1033 + static_scalar go to state 1035 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 1010 +state 1012 248 class_variable_declaration: class_variable_declaration ',' . "variable (T_VARIABLE)" 249 | class_variable_declaration ',' . "variable (T_VARIABLE)" '=' static_scalar - "variable (T_VARIABLE)" shift, and go to state 1034 + "variable (T_VARIABLE)" shift, and go to state 1036 -state 1011 +state 1013 208 class_statement: variable_modifiers $@39 class_variable_declaration ';' . $default reduce using rule 208 (class_statement) -state 1012 +state 1014 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" . $@40 '(' parameter_list ')' method_body $default reduce using rule 211 ($@40) - $@40 go to state 1035 + $@40 go to state 1037 -state 1013 +state 1015 252 class_constant_declaration: class_constant_declaration ',' "identifier (T_STRING)" '=' . static_scalar @@ -27049,66 +27192,66 @@ state 1013 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 1036 + static_scalar go to state 1038 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 1014 +state 1016 122 unticked_function_declaration_statement: function is_reference "identifier (T_STRING)" $@31 '(' parameter_list ')' '{' inner_statement_list '}' . $default reduce using rule 122 (unticked_function_declaration_statement) -state 1015 +state 1017 376 lexical_var_list: '&' "variable (T_VARIABLE)" . $default reduce using rule 376 (lexical_var_list) -state 1016 +state 1018 373 lexical_var_list: lexical_var_list ',' . "variable (T_VARIABLE)" 374 | lexical_var_list ',' . '&' "variable (T_VARIABLE)" - '&' shift, and go to state 1037 - "variable (T_VARIABLE)" shift, and go to state 1038 + '&' shift, and go to state 1039 + "variable (T_VARIABLE)" shift, and go to state 1040 -state 1017 +state 1019 372 lexical_vars: "use (T_USE)" '(' lexical_var_list ')' . $default reduce using rule 372 (lexical_vars) -state 1018 +state 1020 358 expr_without_variable: function is_reference @56 '(' parameter_list ')' lexical_vars '{' inner_statement_list '}' . $default reduce using rule 358 (expr_without_variable) -state 1019 +state 1021 182 parameter: optional_class_type is_reference is_variadic "variable (T_VARIABLE)" '=' static_scalar . $default reduce using rule 182 (parameter) -state 1020 +state 1022 172 new_elseif_list: new_elseif_list "elseif (T_ELSEIF)" parenthesis_expr ':' $@38 . inner_statement_list $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1039 + inner_statement_list go to state 1041 -state 1021 +state 1023 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' $@14 for_expr ')' $@15 . for_statement @@ -27119,7 +27262,7 @@ state 1021 "include (T_INCLUDE)" shift, and go to state 9 "print (T_PRINT)" shift, and go to state 10 "yield (T_YIELD)" shift, and go to state 11 - ':' shift, and go to state 1040 + ':' shift, and go to state 1042 '+' shift, and go to state 12 '-' shift, and go to state 13 '!' shift, and go to state 14 @@ -27186,9 +27329,9 @@ state 1021 '"' shift, and go to state 83 namespace_name go to state 84 - statement go to state 1041 + statement go to state 1043 unticked_statement go to state 88 - for_statement go to state 1042 + for_statement go to state 1044 new_expr go to state 95 expr_without_variable go to state 96 yield_expr go to state 97 @@ -27218,84 +27361,84 @@ state 1021 class_name_scalar go to state 121 -state 1022 +state 1024 41 inner_statement_list: inner_statement_list . $@4 inner_statement 149 foreach_statement: ':' inner_statement_list . "endforeach (T_ENDFOREACH)" ';' - "endforeach (T_ENDFOREACH)" shift, and go to state 1043 + "endforeach (T_ENDFOREACH)" shift, and go to state 1045 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1023 +state 1025 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" . ')' $@26 '{' inner_statement_list '}' $@27 additional_catches - ')' shift, and go to state 1044 + ')' shift, and go to state 1046 -state 1024 +state 1026 41 inner_statement_list: inner_statement_list . $@4 inner_statement 104 finally_statement: "finally (T_FINALLY)" $@28 '{' inner_statement_list . '}' - '}' shift, and go to state 1045 + '}' shift, and go to state 1047 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1025 +state 1027 360 expr_without_variable: "static (T_STATIC)" function is_reference @57 '(' parameter_list ')' lexical_vars '{' inner_statement_list '}' . $default reduce using rule 360 (expr_without_variable) -state 1026 +state 1028 217 trait_adaptations: '{' trait_adaptation_list '}' . $default reduce using rule 217 (trait_adaptations) -state 1027 +state 1029 221 non_empty_trait_adaptation_list: non_empty_trait_adaptation_list trait_adaptation_statement . $default reduce using rule 221 (non_empty_trait_adaptation_list) -state 1028 +state 1030 222 trait_adaptation_statement: trait_precedence ';' . $default reduce using rule 222 (trait_adaptation_statement) -state 1029 +state 1031 230 trait_alias: trait_method_reference "as (T_AS)" . trait_modifiers "identifier (T_STRING)" 231 | trait_method_reference "as (T_AS)" . member_modifier - "public (T_PUBLIC)" shift, and go to state 875 - "protected (T_PROTECTED)" shift, and go to state 876 - "private (T_PRIVATE)" shift, and go to state 877 - "final (T_FINAL)" shift, and go to state 878 - "abstract (T_ABSTRACT)" shift, and go to state 879 - "static (T_STATIC)" shift, and go to state 880 + "public (T_PUBLIC)" shift, and go to state 877 + "protected (T_PROTECTED)" shift, and go to state 878 + "private (T_PRIVATE)" shift, and go to state 879 + "final (T_FINAL)" shift, and go to state 880 + "abstract (T_ABSTRACT)" shift, and go to state 881 + "static (T_STATIC)" shift, and go to state 882 $default reduce using rule 232 (trait_modifiers) - trait_modifiers go to state 1046 - member_modifier go to state 1047 + trait_modifiers go to state 1048 + member_modifier go to state 1049 -state 1030 +state 1032 224 trait_precedence: trait_method_reference_fully_qualified "insteadof (T_INSTEADOF)" . trait_reference_list @@ -27304,70 +27447,70 @@ state 1030 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - trait_reference_list go to state 1048 - fully_qualified_class_name go to state 1049 + trait_reference_list go to state 1050 + fully_qualified_class_name go to state 1051 -state 1031 +state 1033 223 trait_adaptation_statement: trait_alias ';' . $default reduce using rule 223 (trait_adaptation_statement) -state 1032 +state 1034 229 trait_method_reference_fully_qualified: fully_qualified_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 1050 + "identifier (T_STRING)" shift, and go to state 1052 -state 1033 +state 1035 251 class_variable_declaration: "variable (T_VARIABLE)" '=' static_scalar . $default reduce using rule 251 (class_variable_declaration) -state 1034 +state 1036 248 class_variable_declaration: class_variable_declaration ',' "variable (T_VARIABLE)" . 249 | class_variable_declaration ',' "variable (T_VARIABLE)" . '=' static_scalar - '=' shift, and go to state 1051 + '=' shift, and go to state 1053 $default reduce using rule 248 (class_variable_declaration) -state 1035 +state 1037 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" $@40 . '(' parameter_list ')' method_body - '(' shift, and go to state 1052 + '(' shift, and go to state 1054 -state 1036 +state 1038 252 class_constant_declaration: class_constant_declaration ',' "identifier (T_STRING)" '=' static_scalar . $default reduce using rule 252 (class_constant_declaration) -state 1037 +state 1039 374 lexical_var_list: lexical_var_list ',' '&' . "variable (T_VARIABLE)" - "variable (T_VARIABLE)" shift, and go to state 1053 + "variable (T_VARIABLE)" shift, and go to state 1055 -state 1038 +state 1040 373 lexical_var_list: lexical_var_list ',' "variable (T_VARIABLE)" . $default reduce using rule 373 (lexical_var_list) -state 1039 +state 1041 41 inner_statement_list: inner_statement_list . $@4 inner_statement 172 new_elseif_list: new_elseif_list "elseif (T_ELSEIF)" parenthesis_expr ':' $@38 inner_statement_list . @@ -27380,60 +27523,60 @@ state 1039 $@4 go to state 402 -state 1040 +state 1042 147 for_statement: ':' . inner_statement_list "endfor (T_ENDFOR)" ';' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1054 + inner_statement_list go to state 1056 -state 1041 +state 1043 146 for_statement: statement . $default reduce using rule 146 (for_statement) -state 1042 +state 1044 65 unticked_statement: "for (T_FOR)" '(' for_expr ';' $@13 for_expr ';' $@14 for_expr ')' $@15 for_statement . $default reduce using rule 65 (unticked_statement) -state 1043 +state 1045 149 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" . ';' - ';' shift, and go to state 1055 + ';' shift, and go to state 1057 -state 1044 +state 1046 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' . $@26 '{' inner_statement_list '}' $@27 additional_catches $default reduce using rule 99 ($@26) - $@26 go to state 1056 + $@26 go to state 1058 -state 1045 +state 1047 104 finally_statement: "finally (T_FINALLY)" $@28 '{' inner_statement_list '}' . $default reduce using rule 104 (finally_statement) -state 1046 +state 1048 230 trait_alias: trait_method_reference "as (T_AS)" trait_modifiers . "identifier (T_STRING)" - "identifier (T_STRING)" shift, and go to state 1057 + "identifier (T_STRING)" shift, and go to state 1059 -state 1047 +state 1049 231 trait_alias: trait_method_reference "as (T_AS)" member_modifier . 233 trait_modifiers: member_modifier . @@ -27442,31 +27585,31 @@ state 1047 $default reduce using rule 231 (trait_alias) -state 1048 +state 1050 224 trait_precedence: trait_method_reference_fully_qualified "insteadof (T_INSTEADOF)" trait_reference_list . 226 trait_reference_list: trait_reference_list . ',' fully_qualified_class_name - ',' shift, and go to state 1058 + ',' shift, and go to state 1060 $default reduce using rule 224 (trait_precedence) -state 1049 +state 1051 225 trait_reference_list: fully_qualified_class_name . $default reduce using rule 225 (trait_reference_list) -state 1050 +state 1052 229 trait_method_reference_fully_qualified: fully_qualified_class_name ":: (T_PAAMAYIM_NEKUDOTAYIM)" "identifier (T_STRING)" . $default reduce using rule 229 (trait_method_reference_fully_qualified) -state 1051 +state 1053 249 class_variable_declaration: class_variable_declaration ',' "variable (T_VARIABLE)" '=' . static_scalar @@ -27498,19 +27641,19 @@ state 1051 class_name go to state 518 common_scalar go to state 519 static_class_constant go to state 520 - static_scalar go to state 1059 + static_scalar go to state 1061 static_scalar_value go to state 522 static_operation go to state 523 static_class_name_scalar go to state 524 -state 1052 +state 1054 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" $@40 '(' . parameter_list ')' method_body "identifier (T_STRING)" shift, and go to state 123 - "array (T_ARRAY)" shift, and go to state 713 - "callable (T_CALLABLE)" shift, and go to state 714 + "array (T_ARRAY)" shift, and go to state 714 + "callable (T_CALLABLE)" shift, and go to state 715 "namespace (T_NAMESPACE)" shift, and go to state 579 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 @@ -27518,54 +27661,54 @@ state 1052 $default reduce using rule 183 (optional_class_type) namespace_name go to state 581 - parameter_list go to state 1060 - non_empty_parameter_list go to state 716 - parameter go to state 717 - optional_class_type go to state 718 - fully_qualified_class_name go to state 719 + parameter_list go to state 1062 + non_empty_parameter_list go to state 717 + parameter go to state 718 + optional_class_type go to state 719 + fully_qualified_class_name go to state 720 -state 1053 +state 1055 374 lexical_var_list: lexical_var_list ',' '&' "variable (T_VARIABLE)" . $default reduce using rule 374 (lexical_var_list) -state 1054 +state 1056 41 inner_statement_list: inner_statement_list . $@4 inner_statement 147 for_statement: ':' inner_statement_list . "endfor (T_ENDFOR)" ';' - "endfor (T_ENDFOR)" shift, and go to state 1061 + "endfor (T_ENDFOR)" shift, and go to state 1063 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1055 +state 1057 149 foreach_statement: ':' inner_statement_list "endforeach (T_ENDFOREACH)" ';' . $default reduce using rule 149 (foreach_statement) -state 1056 +state 1058 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 . '{' inner_statement_list '}' $@27 additional_catches - '{' shift, and go to state 1062 + '{' shift, and go to state 1064 -state 1057 +state 1059 230 trait_alias: trait_method_reference "as (T_AS)" trait_modifiers "identifier (T_STRING)" . $default reduce using rule 230 (trait_alias) -state 1058 +state 1060 226 trait_reference_list: trait_reference_list ',' . fully_qualified_class_name @@ -27574,173 +27717,173 @@ state 1058 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - fully_qualified_class_name go to state 1063 + fully_qualified_class_name go to state 1065 -state 1059 +state 1061 249 class_variable_declaration: class_variable_declaration ',' "variable (T_VARIABLE)" '=' static_scalar . $default reduce using rule 249 (class_variable_declaration) -state 1060 +state 1062 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" $@40 '(' parameter_list . ')' method_body - ')' shift, and go to state 1064 + ')' shift, and go to state 1066 -state 1061 +state 1063 147 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" . ';' - ';' shift, and go to state 1065 + ';' shift, and go to state 1067 -state 1062 +state 1064 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' . inner_statement_list '}' $@27 additional_catches $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1066 + inner_statement_list go to state 1068 -state 1063 +state 1065 226 trait_reference_list: trait_reference_list ',' fully_qualified_class_name . $default reduce using rule 226 (trait_reference_list) -state 1064 +state 1066 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" $@40 '(' parameter_list ')' . method_body - ';' shift, and go to state 1067 - '{' shift, and go to state 1068 + ';' shift, and go to state 1069 + '{' shift, and go to state 1070 - method_body go to state 1069 + method_body go to state 1071 -state 1065 +state 1067 147 for_statement: ':' inner_statement_list "endfor (T_ENDFOR)" ';' . $default reduce using rule 147 (for_statement) -state 1066 +state 1068 41 inner_statement_list: inner_statement_list . $@4 inner_statement 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list . '}' $@27 additional_catches - '}' shift, and go to state 1070 + '}' shift, and go to state 1072 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1067 +state 1069 234 method_body: ';' . $default reduce using rule 234 (method_body) -state 1068 +state 1070 235 method_body: '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1071 + inner_statement_list go to state 1073 -state 1069 +state 1071 212 class_statement: method_modifiers function is_reference "identifier (T_STRING)" $@40 '(' parameter_list ')' method_body . $default reduce using rule 212 (class_statement) -state 1070 +state 1072 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' . $@27 additional_catches $default reduce using rule 100 ($@27) - $@27 go to state 1072 + $@27 go to state 1074 -state 1071 +state 1073 41 inner_statement_list: inner_statement_list . $@4 inner_statement 235 method_body: '{' inner_statement_list . '}' - '}' shift, and go to state 1073 + '}' shift, and go to state 1075 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1072 +state 1074 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 . additional_catches - "catch (T_CATCH)" shift, and go to state 1074 + "catch (T_CATCH)" shift, and go to state 1076 $default reduce using rule 106 (additional_catches) - additional_catches go to state 1075 - non_empty_additional_catches go to state 1076 - additional_catch go to state 1077 + additional_catches go to state 1077 + non_empty_additional_catches go to state 1078 + additional_catch go to state 1079 -state 1073 +state 1075 235 method_body: '{' inner_statement_list '}' . $default reduce using rule 235 (method_body) -state 1074 +state 1076 111 additional_catch: "catch (T_CATCH)" . '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list '}' - '(' shift, and go to state 1078 + '(' shift, and go to state 1080 -state 1075 +state 1077 101 catch_statement: "catch (T_CATCH)" '(' $@24 fully_qualified_class_name $@25 "variable (T_VARIABLE)" ')' $@26 '{' inner_statement_list '}' $@27 additional_catches . $default reduce using rule 101 (catch_statement) -state 1076 +state 1078 105 additional_catches: non_empty_additional_catches . 108 non_empty_additional_catches: non_empty_additional_catches . additional_catch - "catch (T_CATCH)" shift, and go to state 1074 + "catch (T_CATCH)" shift, and go to state 1076 $default reduce using rule 105 (additional_catches) - additional_catch go to state 1079 + additional_catch go to state 1081 -state 1077 +state 1079 107 non_empty_additional_catches: additional_catch . $default reduce using rule 107 (non_empty_additional_catches) -state 1078 +state 1080 111 additional_catch: "catch (T_CATCH)" '(' . fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list '}' @@ -27749,77 +27892,77 @@ state 1078 "\\ (T_NS_SEPARATOR)" shift, and go to state 580 namespace_name go to state 581 - fully_qualified_class_name go to state 1080 + fully_qualified_class_name go to state 1082 -state 1079 +state 1081 108 non_empty_additional_catches: non_empty_additional_catches additional_catch . $default reduce using rule 108 (non_empty_additional_catches) -state 1080 +state 1082 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name . @29 "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list '}' $default reduce using rule 109 (@29) - @29 go to state 1081 + @29 go to state 1083 -state 1081 +state 1083 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 . "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list '}' - "variable (T_VARIABLE)" shift, and go to state 1082 + "variable (T_VARIABLE)" shift, and go to state 1084 -state 1082 +state 1084 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" . ')' $@30 '{' inner_statement_list '}' - ')' shift, and go to state 1083 + ')' shift, and go to state 1085 -state 1083 +state 1085 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' . $@30 '{' inner_statement_list '}' $default reduce using rule 110 ($@30) - $@30 go to state 1084 + $@30 go to state 1086 -state 1084 +state 1086 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 . '{' inner_statement_list '}' - '{' shift, and go to state 1085 + '{' shift, and go to state 1087 -state 1085 +state 1087 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 '{' . inner_statement_list '}' $default reduce using rule 42 (inner_statement_list) - inner_statement_list go to state 1086 + inner_statement_list go to state 1088 -state 1086 +state 1088 41 inner_statement_list: inner_statement_list . $@4 inner_statement 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list . '}' - '}' shift, and go to state 1087 + '}' shift, and go to state 1089 $default reduce using rule 40 ($@4) $@4 go to state 402 -state 1087 +state 1089 111 additional_catch: "catch (T_CATCH)" '(' fully_qualified_class_name @29 "variable (T_VARIABLE)" ')' $@30 '{' inner_statement_list '}' . diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y index d3844540c..b7467b755 100644 --- a/Zend/zend_language_parser.y +++ b/Zend/zend_language_parser.y @@ -1006,6 +1006,7 @@ static_operation: static_scalar_value '+' static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_ADD, $1.u.ast, $3.u.ast); } | static_scalar_value '-' static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_SUB, $1.u.ast, $3.u.ast); } | static_scalar_value '*' static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_MUL, $1.u.ast, $3.u.ast); } + | static_scalar_value T_POW static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_POW, $1.u.ast, $3.u.ast); } | static_scalar_value '/' static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_DIV, $1.u.ast, $3.u.ast); } | static_scalar_value '%' static_scalar_value { $$.u.ast = zend_ast_create_binary(ZEND_MOD, $1.u.ast, $3.u.ast); } | '!' static_scalar_value { $$.u.ast = zend_ast_create_unary(ZEND_BOOL_NOT, $2.u.ast); } diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c index 05f9e4ed7..ae41cde77 100644 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@ -1,7857 +1,7857 @@ -/* Generated by re2c 0.13.5 */ -#line 1 "Zend/zend_language_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: Marcus Boerger <helly@php.net> | - | Nuno Lopes <nlopess@php.net> | - | Scott MacVicar <scottmac@php.net> | - | Flex version authors: | - | Andi Gutmans <andi@zend.com> | - | Zeev Suraski <zeev@zend.com> | - +----------------------------------------------------------------------+ -*/ - -/* $Id$ */ - -#if 0 -# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c) -#else -# define YYDEBUG(s, c) -#endif - -#include "zend_language_scanner_defs.h" - -#include <errno.h> -#include "zend.h" -#ifdef PHP_WIN32 -# include <Winuser.h> -#endif -#include "zend_alloc.h" -#include <zend_language_parser.h> -#include "zend_compile.h" -#include "zend_language_scanner.h" -#include "zend_highlight.h" -#include "zend_constants.h" -#include "zend_variables.h" -#include "zend_operators.h" -#include "zend_API.h" -#include "zend_strtod.h" -#include "zend_exceptions.h" -#include "zend_virtual_cwd.h" -#include "tsrm_config_common.h" - -#define YYCTYPE unsigned char -#define YYFILL(n) { if ((YYCURSOR + n) >= (YYLIMIT + ZEND_MMAP_AHEAD)) { 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 16 -#if ZEND_MMAP_AHEAD < YYMAXFILL -# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL -#endif - -#ifdef HAVE_STDARG_H -# include <stdarg.h> -#endif - -#ifdef HAVE_UNISTD_H -# include <unistd.h> -#endif - -/* Globals Macros */ -#define SCNG LANG_SCNG -#ifdef ZTS -ZEND_API ts_rsrc_id language_scanner_globals_id; -#else -ZEND_API zend_php_scanner_globals language_scanner_globals; -#endif - -#define HANDLE_NEWLINES(s, l) \ -do { \ - char *p = (s), *boundary = p+(l); \ - \ - while (p<boundary) { \ - if (*p == '\n' || (*p == '\r' && (*(p+1) != '\n'))) { \ - CG(zend_lineno)++; \ - } \ - p++; \ - } \ -} while (0) - -#define HANDLE_NEWLINE(c) \ -{ \ - if (c == '\n' || c == '\r') { \ - CG(zend_lineno)++; \ - } \ -} - -/* To save initial string length after scanning to first variable, CG(doc_comment_len) can be reused */ -#define SET_DOUBLE_QUOTES_SCANNED_LENGTH(len) CG(doc_comment_len) = (len) -#define GET_DOUBLE_QUOTES_SCANNED_LENGTH() CG(doc_comment_len) - -#define IS_LABEL_START(c) (((c) >= 'a' && (c) <= 'z') || ((c) >= 'A' && (c) <= 'Z') || (c) == '_' || (c) >= 0x7F) - -#define ZEND_IS_OCT(c) ((c)>='0' && (c)<='7') -#define ZEND_IS_HEX(c) (((c)>='0' && (c)<='9') || ((c)>='a' && (c)<='f') || ((c)>='A' && (c)<='F')) - -BEGIN_EXTERN_C() - -static size_t encoding_filter_script_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC) -{ - const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C); - assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding)); - return zend_multibyte_encoding_converter(to, to_length, from, from_length, internal_encoding, LANG_SCNG(script_encoding) TSRMLS_CC); -} - -static size_t encoding_filter_script_to_intermediate(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC) -{ - return zend_multibyte_encoding_converter(to, to_length, from, from_length, zend_multibyte_encoding_utf8, LANG_SCNG(script_encoding) TSRMLS_CC); -} - -static size_t encoding_filter_intermediate_to_script(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC) -{ - return zend_multibyte_encoding_converter(to, to_length, from, from_length, -LANG_SCNG(script_encoding), zend_multibyte_encoding_utf8 TSRMLS_CC); -} - -static size_t encoding_filter_intermediate_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC) -{ - const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C); - assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding)); - return zend_multibyte_encoding_converter(to, to_length, from, from_length, -internal_encoding, zend_multibyte_encoding_utf8 TSRMLS_CC); -} - - -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; - YYLIMIT = YYCURSOR + len; - if (!SCNG(yy_start)) { - SCNG(yy_start) = YYCURSOR; - } -} - -void startup_scanner(TSRMLS_D) -{ - CG(parse_error) = 0; - CG(doc_comment) = NULL; - CG(doc_comment_len) = 0; - zend_stack_init(&SCNG(state_stack)); - zend_ptr_stack_init(&SCNG(heredoc_label_stack)); -} - -static void heredoc_label_dtor(zend_heredoc_label *heredoc_label) { - efree(heredoc_label->label); -} - -void shutdown_scanner(TSRMLS_D) -{ - CG(parse_error) = 0; - RESET_DOC_COMMENT(); - zend_stack_destroy(&SCNG(state_stack)); - zend_ptr_stack_clean(&SCNG(heredoc_label_stack), (void (*)(void *)) &heredoc_label_dtor, 1); - zend_ptr_stack_destroy(&SCNG(heredoc_label_stack)); -} - -ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC) -{ - lex_state->yy_leng = SCNG(yy_leng); - lex_state->yy_start = SCNG(yy_start); - lex_state->yy_text = SCNG(yy_text); - lex_state->yy_cursor = SCNG(yy_cursor); - lex_state->yy_marker = SCNG(yy_marker); - lex_state->yy_limit = SCNG(yy_limit); - - lex_state->state_stack = SCNG(state_stack); - zend_stack_init(&SCNG(state_stack)); - - lex_state->heredoc_label_stack = SCNG(heredoc_label_stack); - zend_ptr_stack_init(&SCNG(heredoc_label_stack)); - - lex_state->in = SCNG(yy_in); - lex_state->yy_state = YYSTATE; - lex_state->filename = zend_get_compiled_filename(TSRMLS_C); - lex_state->lineno = CG(zend_lineno); - - lex_state->script_org = SCNG(script_org); - lex_state->script_org_size = SCNG(script_org_size); - lex_state->script_filtered = SCNG(script_filtered); - lex_state->script_filtered_size = SCNG(script_filtered_size); - lex_state->input_filter = SCNG(input_filter); - lex_state->output_filter = SCNG(output_filter); - lex_state->script_encoding = SCNG(script_encoding); -} - -ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) -{ - SCNG(yy_leng) = lex_state->yy_leng; - SCNG(yy_start) = lex_state->yy_start; - SCNG(yy_text) = lex_state->yy_text; - SCNG(yy_cursor) = lex_state->yy_cursor; - SCNG(yy_marker) = lex_state->yy_marker; - SCNG(yy_limit) = lex_state->yy_limit; - - zend_stack_destroy(&SCNG(state_stack)); - SCNG(state_stack) = lex_state->state_stack; - - zend_ptr_stack_clean(&SCNG(heredoc_label_stack), (void (*)(void *)) &heredoc_label_dtor, 1); - zend_ptr_stack_destroy(&SCNG(heredoc_label_stack)); - SCNG(heredoc_label_stack) = lex_state->heredoc_label_stack; - - SCNG(yy_in) = lex_state->in; - YYSETCONDITION(lex_state->yy_state); - CG(zend_lineno) = lex_state->lineno; - zend_restore_compiled_filename(lex_state->filename TSRMLS_CC); - - if (SCNG(script_filtered)) { - efree(SCNG(script_filtered)); - SCNG(script_filtered) = NULL; - } - SCNG(script_org) = lex_state->script_org; - SCNG(script_org_size) = lex_state->script_org_size; - SCNG(script_filtered) = lex_state->script_filtered; - SCNG(script_filtered_size) = lex_state->script_filtered_size; - SCNG(input_filter) = lex_state->input_filter; - SCNG(output_filter) = lex_state->output_filter; - SCNG(script_encoding) = lex_state->script_encoding; - - RESET_DOC_COMMENT(); -} - -ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC) -{ - zend_llist_del_element(&CG(open_files), file_handle, (int (*)(void *, void *)) zend_compare_file_handles); - /* zend_file_handle_dtor() operates on the copy, so we have to NULLify the original here */ - file_handle->opened_path = NULL; - if (file_handle->free_filename) { - file_handle->filename = NULL; - } -} - -#define BOM_UTF32_BE "\x00\x00\xfe\xff" -#define BOM_UTF32_LE "\xff\xfe\x00\x00" -#define BOM_UTF16_BE "\xfe\xff" -#define BOM_UTF16_LE "\xff\xfe" -#define BOM_UTF8 "\xef\xbb\xbf" - -static const zend_encoding *zend_multibyte_detect_utf_encoding(const unsigned char *script, size_t script_size TSRMLS_DC) -{ - const unsigned char *p; - int wchar_size = 2; - int le = 0; - - /* utf-16 or utf-32? */ - p = script; - while ((p-script) < script_size) { - p = memchr(p, 0, script_size-(p-script)-2); - if (!p) { - break; - } - if (*(p+1) == '\0' && *(p+2) == '\0') { - wchar_size = 4; - break; - } - - /* searching for UTF-32 specific byte orders, so this will do */ - p += 4; - } - - /* BE or LE? */ - p = script; - while ((p-script) < script_size) { - if (*p == '\0' && *(p+wchar_size-1) != '\0') { - /* BE */ - le = 0; - break; - } else if (*p != '\0' && *(p+wchar_size-1) == '\0') { - /* LE* */ - le = 1; - break; - } - p += wchar_size; - } - - if (wchar_size == 2) { - return le ? zend_multibyte_encoding_utf16le : zend_multibyte_encoding_utf16be; - } else { - return le ? zend_multibyte_encoding_utf32le : zend_multibyte_encoding_utf32be; - } - - return NULL; -} - -static const zend_encoding* zend_multibyte_detect_unicode(TSRMLS_D) -{ - const zend_encoding *script_encoding = NULL; - int bom_size; - unsigned char *pos1, *pos2; - - if (LANG_SCNG(script_org_size) < sizeof(BOM_UTF32_LE)-1) { - return NULL; - } - - /* check out BOM */ - if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_BE, sizeof(BOM_UTF32_BE)-1)) { - script_encoding = zend_multibyte_encoding_utf32be; - bom_size = sizeof(BOM_UTF32_BE)-1; - } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_LE, sizeof(BOM_UTF32_LE)-1)) { - script_encoding = zend_multibyte_encoding_utf32le; - bom_size = sizeof(BOM_UTF32_LE)-1; - } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_BE, sizeof(BOM_UTF16_BE)-1)) { - script_encoding = zend_multibyte_encoding_utf16be; - bom_size = sizeof(BOM_UTF16_BE)-1; - } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_LE, sizeof(BOM_UTF16_LE)-1)) { - script_encoding = zend_multibyte_encoding_utf16le; - bom_size = sizeof(BOM_UTF16_LE)-1; - } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF8, sizeof(BOM_UTF8)-1)) { - script_encoding = zend_multibyte_encoding_utf8; - bom_size = sizeof(BOM_UTF8)-1; - } - - if (script_encoding) { - /* remove BOM */ - LANG_SCNG(script_org) += bom_size; - LANG_SCNG(script_org_size) -= bom_size; - - return script_encoding; - } - - /* script contains NULL bytes -> auto-detection */ - if ((pos1 = memchr(LANG_SCNG(script_org), 0, LANG_SCNG(script_org_size)))) { - /* check if the NULL byte is after the __HALT_COMPILER(); */ - pos2 = LANG_SCNG(script_org); - - while (pos1 - pos2 >= sizeof("__HALT_COMPILER();")-1) { - pos2 = memchr(pos2, '_', pos1 - pos2); - if (!pos2) break; - pos2++; - if (strncasecmp((char*)pos2, "_HALT_COMPILER", sizeof("_HALT_COMPILER")-1) == 0) { - pos2 += sizeof("_HALT_COMPILER")-1; - while (*pos2 == ' ' || - *pos2 == '\t' || - *pos2 == '\r' || - *pos2 == '\n') { - pos2++; - } - if (*pos2 == '(') { - pos2++; - while (*pos2 == ' ' || - *pos2 == '\t' || - *pos2 == '\r' || - *pos2 == '\n') { - pos2++; - } - if (*pos2 == ')') { - pos2++; - while (*pos2 == ' ' || - *pos2 == '\t' || - *pos2 == '\r' || - *pos2 == '\n') { - pos2++; - } - if (*pos2 == ';') { - return NULL; - } - } - } - } - } - /* make best effort if BOM is missing */ - return zend_multibyte_detect_utf_encoding(LANG_SCNG(script_org), LANG_SCNG(script_org_size) TSRMLS_CC); - } - - return NULL; -} - -static const zend_encoding* zend_multibyte_find_script_encoding(TSRMLS_D) -{ - const zend_encoding *script_encoding; - - if (CG(detect_unicode)) { - /* check out bom(byte order mark) and see if containing wchars */ - script_encoding = zend_multibyte_detect_unicode(TSRMLS_C); - if (script_encoding != NULL) { - /* bom or wchar detection is prior to 'script_encoding' option */ - return script_encoding; - } - } - - /* if no script_encoding specified, just leave alone */ - if (!CG(script_encoding_list) || !CG(script_encoding_list_size)) { - return NULL; - } - - /* if multiple encodings specified, detect automagically */ - if (CG(script_encoding_list_size) > 1) { - return zend_multibyte_encoding_detector(LANG_SCNG(script_org), LANG_SCNG(script_org_size), CG(script_encoding_list), CG(script_encoding_list_size) TSRMLS_CC); - } - - return CG(script_encoding_list)[0]; -} - -ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding TSRMLS_DC) -{ - const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C); - const zend_encoding *script_encoding = onetime_encoding ? onetime_encoding: zend_multibyte_find_script_encoding(TSRMLS_C); - - if (!script_encoding) { - return FAILURE; - } - - /* judge input/output filter */ - LANG_SCNG(script_encoding) = script_encoding; - LANG_SCNG(input_filter) = NULL; - LANG_SCNG(output_filter) = NULL; - - if (!internal_encoding || LANG_SCNG(script_encoding) == internal_encoding) { - if (!zend_multibyte_check_lexer_compatibility(LANG_SCNG(script_encoding))) { - /* and if not, work around w/ script_encoding -> utf-8 -> script_encoding conversion */ - LANG_SCNG(input_filter) = encoding_filter_script_to_intermediate; - LANG_SCNG(output_filter) = encoding_filter_intermediate_to_script; - } else { - LANG_SCNG(input_filter) = NULL; - LANG_SCNG(output_filter) = NULL; - } - return SUCCESS; - } - - if (zend_multibyte_check_lexer_compatibility(internal_encoding)) { - LANG_SCNG(input_filter) = encoding_filter_script_to_internal; - LANG_SCNG(output_filter) = NULL; - } else if (zend_multibyte_check_lexer_compatibility(LANG_SCNG(script_encoding))) { - LANG_SCNG(input_filter) = NULL; - LANG_SCNG(output_filter) = encoding_filter_script_to_internal; - } else { - /* both script and internal encodings are incompatible w/ flex */ - LANG_SCNG(input_filter) = encoding_filter_script_to_intermediate; - LANG_SCNG(output_filter) = encoding_filter_intermediate_to_internal; - } - - return 0; -} - -ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC) -{ - const char *file_path = NULL; - char *buf; - size_t size, offset = 0; - - /* The shebang line was read, get the current position to obtain the buffer start */ - if (CG(start_lineno) == 2 && file_handle->type == ZEND_HANDLE_FP && file_handle->handle.fp) { - if ((offset = ftell(file_handle->handle.fp)) == -1) { - offset = 0; - } - } - - if (zend_stream_fixup(file_handle, &buf, &size TSRMLS_CC) == FAILURE) { - return FAILURE; - } - - zend_llist_add_element(&CG(open_files), file_handle); - if (file_handle->handle.stream.handle >= (void*)file_handle && file_handle->handle.stream.handle <= (void*)(file_handle+1)) { - zend_file_handle *fh = (zend_file_handle*)zend_llist_get_last(&CG(open_files)); - size_t diff = (char*)file_handle->handle.stream.handle - (char*)file_handle; - fh->handle.stream.handle = (void*)(((char*)fh) + diff); - file_handle->handle.stream.handle = fh->handle.stream.handle; - } - - /* Reset the scanner for scanning the new file */ - SCNG(yy_in) = file_handle; - SCNG(yy_start) = NULL; - - if (size != -1) { - if (CG(multibyte)) { - SCNG(script_org) = (unsigned char*)buf; - SCNG(script_org_size) = size; - SCNG(script_filtered) = NULL; - - zend_multibyte_set_filter(NULL TSRMLS_CC); - - if (SCNG(input_filter)) { - if ((size_t)-1 == SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) { - zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected " - "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding))); - } - buf = (char*)SCNG(script_filtered); - size = SCNG(script_filtered_size); - } - } - SCNG(yy_start) = (unsigned char *)buf - offset; - yy_scan_buffer(buf, size TSRMLS_CC); - } else { - zend_error_noreturn(E_COMPILE_ERROR, "zend_stream_mmap() failed"); - } - - BEGIN(INITIAL); - - if (file_handle->opened_path) { - file_path = file_handle->opened_path; - } else { - file_path = file_handle->filename; - } - - zend_set_compiled_filename(file_path TSRMLS_CC); - - if (CG(start_lineno)) { - CG(zend_lineno) = CG(start_lineno); - CG(start_lineno) = 0; - } else { - CG(zend_lineno) = 1; - } - - RESET_DOC_COMMENT(); - CG(increment_lineno) = 0; - return SUCCESS; -} -END_EXTERN_C() - - -ZEND_API zend_op_array *compile_file(zend_file_handle *file_handle, int type TSRMLS_DC) -{ - zend_lex_state original_lex_state; - zend_op_array *op_array = (zend_op_array *) emalloc(sizeof(zend_op_array)); - zend_op_array *original_active_op_array = CG(active_op_array); - zend_op_array *retval=NULL; - int compiler_result; - zend_bool compilation_successful=0; - znode retval_znode; - zend_bool original_in_compilation = CG(in_compilation); - - retval_znode.op_type = IS_CONST; - INIT_PZVAL(&retval_znode.u.constant); - ZVAL_LONG(&retval_znode.u.constant, 1); - - zend_save_lexical_state(&original_lex_state TSRMLS_CC); - - retval = op_array; /* success oriented */ - - if (open_file_for_scanning(file_handle TSRMLS_CC)==FAILURE) { - if (type==ZEND_REQUIRE) { - zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, file_handle->filename TSRMLS_CC); - zend_bailout(); - } else { - zend_message_dispatcher(ZMSG_FAILED_INCLUDE_FOPEN, file_handle->filename TSRMLS_CC); - } - compilation_successful=0; - } else { - init_op_array(op_array, ZEND_USER_FUNCTION, INITIAL_OP_ARRAY_SIZE TSRMLS_CC); - CG(in_compilation) = 1; - CG(active_op_array) = op_array; - zend_stack_push(&CG(context_stack), (void *) &CG(context), sizeof(CG(context))); - zend_init_compiler_context(TSRMLS_C); - compiler_result = zendparse(TSRMLS_C); - zend_do_return(&retval_znode, 0 TSRMLS_CC); - CG(in_compilation) = original_in_compilation; - if (compiler_result != 0) { /* parser error */ - zend_bailout(); - } - compilation_successful=1; - } - - if (retval) { - CG(active_op_array) = original_active_op_array; - if (compilation_successful) { - pass_two(op_array TSRMLS_CC); - zend_release_labels(0 TSRMLS_CC); - } else { - efree(op_array); - retval = NULL; - } - } - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - return retval; -} - - -zend_op_array *compile_filename(int type, zval *filename TSRMLS_DC) -{ - zend_file_handle file_handle; - zval tmp; - zend_op_array *retval; - char *opened_path = NULL; - - if (filename->type != IS_STRING) { - tmp = *filename; - zval_copy_ctor(&tmp); - convert_to_string(&tmp); - filename = &tmp; - } - file_handle.filename = Z_STRVAL_P(filename); - file_handle.free_filename = 0; - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.opened_path = NULL; - file_handle.handle.fp = NULL; - - retval = zend_compile_file(&file_handle, type TSRMLS_CC); - if (retval && file_handle.handle.stream.handle) { - int dummy = 1; - - if (!file_handle.opened_path) { - file_handle.opened_path = opened_path = estrndup(Z_STRVAL_P(filename), Z_STRLEN_P(filename)); - } - - zend_hash_add(&EG(included_files), file_handle.opened_path, strlen(file_handle.opened_path)+1, (void *)&dummy, sizeof(int), NULL); - - if (opened_path) { - efree(opened_path); - } - } - zend_destroy_file_handle(&file_handle TSRMLS_CC); - - if (filename==&tmp) { - zval_dtor(&tmp); - } - return retval; -} - -ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_DC) -{ - char *buf; - size_t size; - - /* enforce ZEND_MMAP_AHEAD trailing NULLs for flex... */ - Z_STRVAL_P(str) = str_erealloc(Z_STRVAL_P(str), Z_STRLEN_P(str) + ZEND_MMAP_AHEAD); - memset(Z_STRVAL_P(str) + Z_STRLEN_P(str), 0, ZEND_MMAP_AHEAD); - - SCNG(yy_in) = NULL; - SCNG(yy_start) = NULL; - - buf = Z_STRVAL_P(str); - size = Z_STRLEN_P(str); - - if (CG(multibyte)) { - SCNG(script_org) = (unsigned char*)buf; - SCNG(script_org_size) = size; - SCNG(script_filtered) = NULL; - - zend_multibyte_set_filter(zend_multibyte_get_internal_encoding(TSRMLS_C) TSRMLS_CC); - - if (SCNG(input_filter)) { - if ((size_t)-1 == SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) { - zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected " - "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding))); - } - buf = (char*)SCNG(script_filtered); - size = SCNG(script_filtered_size); - } - } - - yy_scan_buffer(buf, size TSRMLS_CC); - - zend_set_compiled_filename(filename TSRMLS_CC); - CG(zend_lineno) = 1; - CG(increment_lineno) = 0; - RESET_DOC_COMMENT(); - return SUCCESS; -} - - -ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D) -{ - size_t offset = SCNG(yy_cursor) - SCNG(yy_start); - if (SCNG(input_filter)) { - size_t original_offset = offset, length = 0; - do { - unsigned char *p = NULL; - if ((size_t)-1 == SCNG(input_filter)(&p, &length, SCNG(script_org), offset TSRMLS_CC)) { - return (size_t)-1; - } - efree(p); - if (length > original_offset) { - offset--; - } else if (length < original_offset) { - offset++; - } - } while (original_offset != length); - } - return offset; -} - - -zend_op_array *compile_string(zval *source_string, char *filename TSRMLS_DC) -{ - zend_lex_state original_lex_state; - zend_op_array *op_array = (zend_op_array *) emalloc(sizeof(zend_op_array)); - zend_op_array *original_active_op_array = CG(active_op_array); - zend_op_array *retval; - zval tmp; - int compiler_result; - zend_bool original_in_compilation = CG(in_compilation); - - if (Z_STRLEN_P(source_string)==0) { - efree(op_array); - return NULL; - } - - CG(in_compilation) = 1; - - tmp = *source_string; - zval_copy_ctor(&tmp); - convert_to_string(&tmp); - source_string = &tmp; - - zend_save_lexical_state(&original_lex_state TSRMLS_CC); - if (zend_prepare_string_for_scanning(source_string, filename TSRMLS_CC)==FAILURE) { - efree(op_array); - retval = NULL; - } else { - zend_bool orig_interactive = CG(interactive); - - CG(interactive) = 0; - init_op_array(op_array, ZEND_EVAL_CODE, INITIAL_OP_ARRAY_SIZE TSRMLS_CC); - CG(interactive) = orig_interactive; - CG(active_op_array) = op_array; - zend_stack_push(&CG(context_stack), (void *) &CG(context), sizeof(CG(context))); - zend_init_compiler_context(TSRMLS_C); - BEGIN(ST_IN_SCRIPTING); - compiler_result = zendparse(TSRMLS_C); - - if (SCNG(script_filtered)) { - efree(SCNG(script_filtered)); - SCNG(script_filtered) = NULL; - } - - if (compiler_result != 0) { - CG(active_op_array) = original_active_op_array; - CG(unclean_shutdown)=1; - destroy_op_array(op_array TSRMLS_CC); - efree(op_array); - retval = NULL; - } else { - zend_do_return(NULL, 0 TSRMLS_CC); - CG(active_op_array) = original_active_op_array; - pass_two(op_array TSRMLS_CC); - zend_release_labels(0 TSRMLS_CC); - retval = op_array; - } - } - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - zval_dtor(&tmp); - CG(in_compilation) = original_in_compilation; - return retval; -} - - -BEGIN_EXTERN_C() -int highlight_file(char *filename, zend_syntax_highlighter_ini *syntax_highlighter_ini TSRMLS_DC) -{ - zend_lex_state original_lex_state; - zend_file_handle file_handle; - - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.filename = filename; - file_handle.free_filename = 0; - file_handle.opened_path = NULL; - zend_save_lexical_state(&original_lex_state TSRMLS_CC); - if (open_file_for_scanning(&file_handle TSRMLS_CC)==FAILURE) { - zend_message_dispatcher(ZMSG_FAILED_HIGHLIGHT_FOPEN, filename TSRMLS_CC); - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - return FAILURE; - } - zend_highlight(syntax_highlighter_ini TSRMLS_CC); - if (SCNG(script_filtered)) { - efree(SCNG(script_filtered)); - SCNG(script_filtered) = NULL; - } - zend_destroy_file_handle(&file_handle TSRMLS_CC); - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - return SUCCESS; -} - -int highlight_string(zval *str, zend_syntax_highlighter_ini *syntax_highlighter_ini, char *str_name TSRMLS_DC) -{ - zend_lex_state original_lex_state; - zval tmp = *str; - - str = &tmp; - zval_copy_ctor(str); - zend_save_lexical_state(&original_lex_state TSRMLS_CC); - if (zend_prepare_string_for_scanning(str, str_name TSRMLS_CC)==FAILURE) { - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - return FAILURE; - } - BEGIN(INITIAL); - zend_highlight(syntax_highlighter_ini TSRMLS_CC); - if (SCNG(script_filtered)) { - efree(SCNG(script_filtered)); - SCNG(script_filtered) = NULL; - } - zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - zval_dtor(str); - return SUCCESS; -} - -ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter, const zend_encoding *old_encoding TSRMLS_DC) -{ - size_t length; - unsigned char *new_yy_start; - - /* convert and set */ - if (!SCNG(input_filter)) { - if (SCNG(script_filtered)) { - efree(SCNG(script_filtered)); - SCNG(script_filtered) = NULL; - } - SCNG(script_filtered_size) = 0; - length = SCNG(script_org_size); - new_yy_start = SCNG(script_org); - } else { - if ((size_t)-1 == SCNG(input_filter)(&new_yy_start, &length, SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) { - zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected " - "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding))); - } - SCNG(script_filtered) = new_yy_start; - SCNG(script_filtered_size) = length; - } - - SCNG(yy_cursor) = new_yy_start + (SCNG(yy_cursor) - SCNG(yy_start)); - SCNG(yy_marker) = new_yy_start + (SCNG(yy_marker) - SCNG(yy_start)); - SCNG(yy_text) = new_yy_start + (SCNG(yy_text) - SCNG(yy_start)); - SCNG(yy_limit) = new_yy_start + (SCNG(yy_limit) - SCNG(yy_start)); - - SCNG(yy_start) = new_yy_start; -} - - -# define zend_copy_value(zendlval, yytext, yyleng) \ - if (SCNG(output_filter)) { \ - size_t sz = 0; \ - SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)yytext, (size_t)yyleng TSRMLS_CC); \ - Z_STRLEN_P(zendlval) = sz; \ - } else { \ - Z_STRVAL_P(zendlval) = (char *) estrndup(yytext, yyleng); \ - Z_STRLEN_P(zendlval) = yyleng; \ - } - -static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quote_type TSRMLS_DC) -{ - register char *s, *t; - char *end; - - ZVAL_STRINGL(zendlval, str, len, 1); - - /* convert escape sequences */ - s = t = Z_STRVAL_P(zendlval); - end = s+Z_STRLEN_P(zendlval); - while (s<end) { - if (*s=='\\') { - s++; - if (s >= end) { - *t++ = '\\'; - break; - } - - switch(*s) { - case 'n': - *t++ = '\n'; - Z_STRLEN_P(zendlval)--; - break; - case 'r': - *t++ = '\r'; - Z_STRLEN_P(zendlval)--; - break; - case 't': - *t++ = '\t'; - Z_STRLEN_P(zendlval)--; - break; - case 'f': - *t++ = '\f'; - Z_STRLEN_P(zendlval)--; - break; - case 'v': - *t++ = '\v'; - Z_STRLEN_P(zendlval)--; - break; - case 'e': -#ifdef PHP_WIN32 - *t++ = VK_ESCAPE; -#else - *t++ = '\e'; -#endif - Z_STRLEN_P(zendlval)--; - break; - case '"': - case '`': - if (*s != quote_type) { - *t++ = '\\'; - *t++ = *s; - break; - } - case '\\': - case '$': - *t++ = *s; - Z_STRLEN_P(zendlval)--; - break; - case 'x': - case 'X': - if (ZEND_IS_HEX(*(s+1))) { - char hex_buf[3] = { 0, 0, 0 }; - - Z_STRLEN_P(zendlval)--; /* for the 'x' */ - - hex_buf[0] = *(++s); - Z_STRLEN_P(zendlval)--; - if (ZEND_IS_HEX(*(s+1))) { - hex_buf[1] = *(++s); - Z_STRLEN_P(zendlval)--; - } - *t++ = (char) strtol(hex_buf, NULL, 16); - } else { - *t++ = '\\'; - *t++ = *s; - } - break; - default: - /* check for an octal */ - if (ZEND_IS_OCT(*s)) { - char octal_buf[4] = { 0, 0, 0, 0 }; - - octal_buf[0] = *s; - Z_STRLEN_P(zendlval)--; - if (ZEND_IS_OCT(*(s+1))) { - octal_buf[1] = *(++s); - Z_STRLEN_P(zendlval)--; - if (ZEND_IS_OCT(*(s+1))) { - octal_buf[2] = *(++s); - Z_STRLEN_P(zendlval)--; - } - } - *t++ = (char) strtol(octal_buf, NULL, 8); - } else { - *t++ = '\\'; - *t++ = *s; - } - break; - } - } else { - *t++ = *s; - } - - if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) { - CG(zend_lineno)++; - } - s++; - } - *t = 0; - if (SCNG(output_filter)) { - size_t sz = 0; - s = Z_STRVAL_P(zendlval); - SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)s, (size_t)Z_STRLEN_P(zendlval) TSRMLS_CC); - Z_STRLEN_P(zendlval) = sz; - efree(s); - } -} - - -int lex_scan(zval *zendlval TSRMLS_DC) -{ -restart: - SCNG(yy_text) = YYCURSOR; - -yymore_restart: - - -#line 1001 "Zend/zend_language_scanner.c" -{ - YYCTYPE yych; - unsigned int yyaccept = 0; - if (YYGETCONDITION() < 5) { - if (YYGETCONDITION() < 2) { - if (YYGETCONDITION() < 1) { - goto yyc_ST_IN_SCRIPTING; - } else { - goto yyc_ST_LOOKING_FOR_PROPERTY; - } - } else { - if (YYGETCONDITION() < 3) { - goto yyc_ST_BACKQUOTE; - } else { - if (YYGETCONDITION() < 4) { - goto yyc_ST_DOUBLE_QUOTES; - } else { - goto yyc_ST_HEREDOC; - } - } - } - } else { - if (YYGETCONDITION() < 7) { - if (YYGETCONDITION() < 6) { - goto yyc_ST_LOOKING_FOR_VARNAME; - } else { - goto yyc_ST_VAR_OFFSET; - } - } else { - if (YYGETCONDITION() < 8) { - goto yyc_INITIAL; - } else { - if (YYGETCONDITION() < 9) { - goto yyc_ST_END_HEREDOC; - } else { - goto yyc_ST_NOWDOC; - } - } - } - } -/* *********************************** */ -yyc_INITIAL: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 128, 128, 0, 0, 128, 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(0, *YYCURSOR); - YYFILL(8); - yych = *YYCURSOR; - if (yych != '<') goto yy4; - YYDEBUG(2, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '?') { - if (yych == '%') goto yy7; - if (yych >= '?') goto yy5; - } else { - if (yych <= 'S') { - if (yych >= 'S') goto yy9; - } else { - if (yych == 's') goto yy9; - } - } -yy3: - YYDEBUG(3, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1749 "Zend/zend_language_scanner.l" - { - if (YYCURSOR > YYLIMIT) { - return 0; - } - -inline_char_handler: - - while (1) { - YYCTYPE *ptr = memchr(YYCURSOR, '<', YYLIMIT - YYCURSOR); - - YYCURSOR = ptr ? ptr + 1 : YYLIMIT; - - if (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR) { - case '?': - if (CG(short_tags) || !strncasecmp((char*)YYCURSOR + 1, "php", 3) || (*(YYCURSOR + 1) == '=')) { /* Assume [ \t\n\r] follows "php" */ - break; - } - continue; - case '%': - if (CG(asp_tags)) { - break; - } - continue; - case 's': - case 'S': - /* Probably NOT an opening PHP <script> tag, so don't end the HTML chunk yet - * If it is, the PHP <script> tag rule checks for any HTML scanned before it */ - YYCURSOR--; - yymore(); - default: - continue; - } - - YYCURSOR--; - } - - break; - } - -inline_html: - yyleng = YYCURSOR - SCNG(yy_text); - - if (SCNG(output_filter)) { - int readsize; - size_t sz = 0; - readsize = SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)yytext, (size_t)yyleng TSRMLS_CC); - Z_STRLEN_P(zendlval) = sz; - if (readsize < yyleng) { - yyless(readsize); - } - } else { - Z_STRVAL_P(zendlval) = (char *) estrndup(yytext, yyleng); - Z_STRLEN_P(zendlval) = yyleng; - } - zendlval->type = IS_STRING; - HANDLE_NEWLINES(yytext, yyleng); - return T_INLINE_HTML; -} -#line 1160 "Zend/zend_language_scanner.c" -yy4: - YYDEBUG(4, *YYCURSOR); - yych = *++YYCURSOR; - goto yy3; -yy5: - YYDEBUG(5, *YYCURSOR); - yyaccept = 1; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= 'O') { - if (yych == '=') goto yy45; - } else { - if (yych <= 'P') goto yy47; - if (yych == 'p') goto yy47; - } -yy6: - YYDEBUG(6, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1739 "Zend/zend_language_scanner.l" - { - if (CG(short_tags)) { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG; - } else { - goto inline_char_handler; - } -} -#line 1188 "Zend/zend_language_scanner.c" -yy7: - YYDEBUG(7, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy43; - YYDEBUG(8, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1720 "Zend/zend_language_scanner.l" - { - if (CG(asp_tags)) { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG; - } else { - goto inline_char_handler; - } -} -#line 1205 "Zend/zend_language_scanner.c" -yy9: - YYDEBUG(9, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy11; - if (yych == 'c') goto yy11; -yy10: - YYDEBUG(10, *YYCURSOR); - YYCURSOR = YYMARKER; - if (yyaccept <= 0) { - goto yy3; - } else { - goto yy6; - } -yy11: - YYDEBUG(11, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy12; - if (yych != 'r') goto yy10; -yy12: - YYDEBUG(12, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy13; - if (yych != 'i') goto yy10; -yy13: - YYDEBUG(13, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy14; - if (yych != 'p') goto yy10; -yy14: - YYDEBUG(14, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy15; - if (yych != 't') goto yy10; -yy15: - YYDEBUG(15, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy10; - if (yych == 'l') goto yy10; - goto yy17; -yy16: - YYDEBUG(16, *YYCURSOR); - ++YYCURSOR; - YYFILL(8); - yych = *YYCURSOR; -yy17: - YYDEBUG(17, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy16; - } - if (yych == 'L') goto yy18; - if (yych != 'l') goto yy10; -yy18: - YYDEBUG(18, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy19; - if (yych != 'a') goto yy10; -yy19: - YYDEBUG(19, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy20; - if (yych != 'n') goto yy10; -yy20: - YYDEBUG(20, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'G') goto yy21; - if (yych != 'g') goto yy10; -yy21: - YYDEBUG(21, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy22; - if (yych != 'u') goto yy10; -yy22: - YYDEBUG(22, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy23; - if (yych != 'a') goto yy10; -yy23: - YYDEBUG(23, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'G') goto yy24; - if (yych != 'g') goto yy10; -yy24: - YYDEBUG(24, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy25; - if (yych != 'e') goto yy10; -yy25: - YYDEBUG(25, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(26, *YYCURSOR); - if (yych <= '\r') { - if (yych <= 0x08) goto yy10; - if (yych <= '\n') goto yy25; - if (yych <= '\f') goto yy10; - goto yy25; - } else { - if (yych <= ' ') { - if (yych <= 0x1F) goto yy10; - goto yy25; - } else { - if (yych != '=') goto yy10; - } - } -yy27: - YYDEBUG(27, *YYCURSOR); - ++YYCURSOR; - YYFILL(5); - yych = *YYCURSOR; - YYDEBUG(28, *YYCURSOR); - if (yych <= '!') { - if (yych <= '\f') { - if (yych <= 0x08) goto yy10; - if (yych <= '\n') goto yy27; - goto yy10; - } else { - if (yych <= '\r') goto yy27; - if (yych == ' ') goto yy27; - goto yy10; - } - } else { - if (yych <= 'O') { - if (yych <= '"') goto yy30; - if (yych == '\'') goto yy31; - goto yy10; - } else { - if (yych <= 'P') goto yy29; - if (yych != 'p') goto yy10; - } - } -yy29: - YYDEBUG(29, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy42; - if (yych == 'h') goto yy42; - goto yy10; -yy30: - YYDEBUG(30, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy39; - if (yych == 'p') goto yy39; - goto yy10; -yy31: - YYDEBUG(31, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy32; - if (yych != 'p') goto yy10; -yy32: - YYDEBUG(32, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy33; - if (yych != 'h') goto yy10; -yy33: - YYDEBUG(33, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy34; - if (yych != 'p') goto yy10; -yy34: - YYDEBUG(34, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '\'') goto yy10; -yy35: - YYDEBUG(35, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(36, *YYCURSOR); - if (yych <= '\r') { - if (yych <= 0x08) goto yy10; - if (yych <= '\n') goto yy35; - if (yych <= '\f') goto yy10; - goto yy35; - } else { - if (yych <= ' ') { - if (yych <= 0x1F) goto yy10; - goto yy35; - } else { - if (yych != '>') goto yy10; - } - } - YYDEBUG(37, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(38, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1686 "Zend/zend_language_scanner.l" - { - YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1)); - - if (bracket != SCNG(yy_text)) { - /* Handle previously scanned HTML, as possible <script> tags found are assumed to not be PHP's */ - YYCURSOR = bracket; - goto inline_html; - } - - HANDLE_NEWLINES(yytext, yyleng); - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG; -} -#line 1406 "Zend/zend_language_scanner.c" -yy39: - YYDEBUG(39, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy40; - if (yych != 'h') goto yy10; -yy40: - YYDEBUG(40, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy41; - if (yych != 'p') goto yy10; -yy41: - YYDEBUG(41, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '"') goto yy35; - goto yy10; -yy42: - YYDEBUG(42, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy35; - if (yych == 'p') goto yy35; - goto yy10; -yy43: - YYDEBUG(43, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(44, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1702 "Zend/zend_language_scanner.l" - { - if (CG(asp_tags)) { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG_WITH_ECHO; - } else { - goto inline_char_handler; - } -} -#line 1443 "Zend/zend_language_scanner.c" -yy45: - YYDEBUG(45, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(46, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1713 "Zend/zend_language_scanner.l" - { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG_WITH_ECHO; -} -#line 1455 "Zend/zend_language_scanner.c" -yy47: - YYDEBUG(47, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy48; - if (yych != 'h') goto yy10; -yy48: - YYDEBUG(48, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy49; - if (yych != 'p') goto yy10; -yy49: - YYDEBUG(49, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '\f') { - if (yych <= 0x08) goto yy10; - if (yych >= '\v') goto yy10; - } else { - if (yych <= '\r') goto yy52; - if (yych != ' ') goto yy10; - } -yy50: - YYDEBUG(50, *YYCURSOR); - ++YYCURSOR; -yy51: - YYDEBUG(51, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1731 "Zend/zend_language_scanner.l" - { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - HANDLE_NEWLINE(yytext[yyleng-1]); - BEGIN(ST_IN_SCRIPTING); - return T_OPEN_TAG; -} -#line 1489 "Zend/zend_language_scanner.c" -yy52: - YYDEBUG(52, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy50; - goto yy51; - } -/* *********************************** */ -yyc_ST_BACKQUOTE: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(53, *YYCURSOR); - YYFILL(2); - yych = *YYCURSOR; - if (yych <= '_') { - if (yych != '$') goto yy60; - } else { - if (yych <= '`') goto yy58; - if (yych == '{') goto yy57; - goto yy60; - } - YYDEBUG(55, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy56; - if (yych <= 'Z') goto yy63; - if (yych >= '_') goto yy63; - } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy63; - } else { - if (yych <= '{') goto yy66; - if (yych >= 0x7F) goto yy63; - } - } -yy56: - YYDEBUG(56, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2194 "Zend/zend_language_scanner.l" - { - if (YYCURSOR > YYLIMIT) { - return 0; - } - if (yytext[0] == '\\' && YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '`': - break; - case '$': - if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') { - break; - } - continue; - case '{': - if (*YYCURSOR == '$') { - break; - } - continue; - case '\\': - if (YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - /* fall through */ - default: - continue; - } - - YYCURSOR--; - break; - } - - yyleng = YYCURSOR - SCNG(yy_text); - - zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC); - return T_ENCAPSED_AND_WHITESPACE; -} -#line 1601 "Zend/zend_language_scanner.c" -yy57: - YYDEBUG(57, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy61; - goto yy56; -yy58: - YYDEBUG(58, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(59, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2138 "Zend/zend_language_scanner.l" - { - BEGIN(ST_IN_SCRIPTING); - return '`'; -} -#line 1617 "Zend/zend_language_scanner.c" -yy60: - YYDEBUG(60, *YYCURSOR); - yych = *++YYCURSOR; - goto yy56; -yy61: - YYDEBUG(61, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(62, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2125 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (long) '{'; - yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); - yyless(1); - return T_CURLY_OPEN; -} -#line 1634 "Zend/zend_language_scanner.c" -yy63: - YYDEBUG(63, *YYCURSOR); - yyaccept = 0; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(64, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy63; - } - if (yych == '-') goto yy68; - if (yych == '[') goto yy70; -yy65: - YYDEBUG(65, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1831 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1656 "Zend/zend_language_scanner.c" -yy66: - YYDEBUG(66, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(67, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1465 "Zend/zend_language_scanner.l" - { - yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); - return T_DOLLAR_OPEN_CURLY_BRACES; -} -#line 1667 "Zend/zend_language_scanner.c" -yy68: - YYDEBUG(68, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy72; -yy69: - YYDEBUG(69, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy65; -yy70: - YYDEBUG(70, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(71, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1823 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 1); - yy_push_state(ST_VAR_OFFSET TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1689 "Zend/zend_language_scanner.c" -yy72: - YYDEBUG(72, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '_') { - if (yych <= '@') goto yy69; - if (yych <= 'Z') goto yy73; - if (yych <= '^') goto yy69; - } else { - if (yych <= '`') goto yy69; - if (yych <= 'z') goto yy73; - if (yych <= '~') goto yy69; - } -yy73: - YYDEBUG(73, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(74, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1813 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 3); - yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1715 "Zend/zend_language_scanner.c" - } -/* *********************************** */ -yyc_ST_DOUBLE_QUOTES: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(75, *YYCURSOR); - YYFILL(2); - yych = *YYCURSOR; - if (yych <= '#') { - if (yych == '"') goto yy80; - goto yy82; - } else { - if (yych <= '$') goto yy77; - if (yych == '{') goto yy79; - goto yy82; - } -yy77: - YYDEBUG(77, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy78; - if (yych <= 'Z') goto yy85; - if (yych >= '_') goto yy85; - } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy85; - } else { - if (yych <= '{') goto yy88; - if (yych >= 0x7F) goto yy85; - } - } -yy78: - YYDEBUG(78, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2144 "Zend/zend_language_scanner.l" - { - if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { - YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; - SET_DOUBLE_QUOTES_SCANNED_LENGTH(0); - - goto double_quotes_scan_done; - } - - if (YYCURSOR > YYLIMIT) { - return 0; - } - if (yytext[0] == '\\' && YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '"': - break; - case '$': - if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') { - break; - } - continue; - case '{': - if (*YYCURSOR == '$') { - break; - } - continue; - case '\\': - if (YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - /* fall through */ - default: - continue; - } - - YYCURSOR--; - break; - } - -double_quotes_scan_done: - yyleng = YYCURSOR - SCNG(yy_text); - - zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC); - return T_ENCAPSED_AND_WHITESPACE; -} -#line 1832 "Zend/zend_language_scanner.c" -yy79: - YYDEBUG(79, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy83; - goto yy78; -yy80: - YYDEBUG(80, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(81, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2133 "Zend/zend_language_scanner.l" - { - BEGIN(ST_IN_SCRIPTING); - return '"'; -} -#line 1848 "Zend/zend_language_scanner.c" -yy82: - YYDEBUG(82, *YYCURSOR); - yych = *++YYCURSOR; - goto yy78; -yy83: - YYDEBUG(83, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(84, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2125 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (long) '{'; - yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); - yyless(1); - return T_CURLY_OPEN; -} -#line 1865 "Zend/zend_language_scanner.c" -yy85: - YYDEBUG(85, *YYCURSOR); - yyaccept = 0; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(86, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy85; - } - if (yych == '-') goto yy90; - if (yych == '[') goto yy92; -yy87: - YYDEBUG(87, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1831 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1887 "Zend/zend_language_scanner.c" -yy88: - YYDEBUG(88, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(89, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1465 "Zend/zend_language_scanner.l" - { - yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); - return T_DOLLAR_OPEN_CURLY_BRACES; -} -#line 1898 "Zend/zend_language_scanner.c" -yy90: - YYDEBUG(90, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy94; -yy91: - YYDEBUG(91, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy87; -yy92: - YYDEBUG(92, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(93, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1823 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 1); - yy_push_state(ST_VAR_OFFSET TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1920 "Zend/zend_language_scanner.c" -yy94: - YYDEBUG(94, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '_') { - if (yych <= '@') goto yy91; - if (yych <= 'Z') goto yy95; - if (yych <= '^') goto yy91; - } else { - if (yych <= '`') goto yy91; - if (yych <= 'z') goto yy95; - if (yych <= '~') goto yy91; - } -yy95: - YYDEBUG(95, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(96, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1813 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 3); - yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 1946 "Zend/zend_language_scanner.c" - } -/* *********************************** */ -yyc_ST_END_HEREDOC: - YYDEBUG(97, *YYCURSOR); - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(99, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(100, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2111 "Zend/zend_language_scanner.l" - { - zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack)); - - YYCURSOR += heredoc_label->length - 1; - yyleng = heredoc_label->length; - - heredoc_label_dtor(heredoc_label); - efree(heredoc_label); - - BEGIN(ST_IN_SCRIPTING); - return T_END_HEREDOC; -} -#line 1970 "Zend/zend_language_scanner.c" -/* *********************************** */ -yyc_ST_HEREDOC: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(101, *YYCURSOR); - YYFILL(2); - yych = *YYCURSOR; - if (yych == '$') goto yy103; - if (yych == '{') goto yy105; - goto yy106; -yy103: - YYDEBUG(103, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy104; - if (yych <= 'Z') goto yy109; - if (yych >= '_') goto yy109; - } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy109; - } else { - if (yych <= '{') goto yy112; - if (yych >= 0x7F) goto yy109; - } - } -yy104: - YYDEBUG(104, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2236 "Zend/zend_language_scanner.l" - { - int newline = 0; - - zend_heredoc_label *heredoc_label = zend_ptr_stack_top(&SCNG(heredoc_label_stack)); - - if (YYCURSOR > YYLIMIT) { - return 0; - } - - YYCURSOR--; - - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '\r': - if (*YYCURSOR == '\n') { - YYCURSOR++; - } - /* fall through */ - case '\n': - /* Check for ending label on the next line */ - if (IS_LABEL_START(*YYCURSOR) && heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, heredoc_label->label, heredoc_label->length)) { - YYCTYPE *end = YYCURSOR + heredoc_label->length; - - if (*end == ';') { - end++; - } - - if (*end == '\n' || *end == '\r') { - /* newline before label will be subtracted from returned text, but - * yyleng/yytext will include it, for zend_highlight/strip, tokenizer, etc. */ - if (YYCURSOR[-2] == '\r' && YYCURSOR[-1] == '\n') { - newline = 2; /* Windows newline */ - } else { - newline = 1; - } - - CG(increment_lineno) = 1; /* For newline before label */ - BEGIN(ST_END_HEREDOC); - - goto heredoc_scan_done; - } - } - continue; - case '$': - if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') { - break; - } - continue; - case '{': - if (*YYCURSOR == '$') { - break; - } - continue; - case '\\': - if (YYCURSOR < YYLIMIT && *YYCURSOR != '\n' && *YYCURSOR != '\r') { - YYCURSOR++; - } - /* fall through */ - default: - continue; - } - - YYCURSOR--; - break; - } - -heredoc_scan_done: - yyleng = YYCURSOR - SCNG(yy_text); - - zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0 TSRMLS_CC); - return T_ENCAPSED_AND_WHITESPACE; -} -#line 2105 "Zend/zend_language_scanner.c" -yy105: - YYDEBUG(105, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy107; - goto yy104; -yy106: - YYDEBUG(106, *YYCURSOR); - yych = *++YYCURSOR; - goto yy104; -yy107: - YYDEBUG(107, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(108, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2125 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (long) '{'; - yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); - yyless(1); - return T_CURLY_OPEN; -} -#line 2127 "Zend/zend_language_scanner.c" -yy109: - YYDEBUG(109, *YYCURSOR); - yyaccept = 0; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(110, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy109; - } - if (yych == '-') goto yy114; - if (yych == '[') goto yy116; -yy111: - YYDEBUG(111, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1831 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 2149 "Zend/zend_language_scanner.c" -yy112: - YYDEBUG(112, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(113, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1465 "Zend/zend_language_scanner.l" - { - yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); - return T_DOLLAR_OPEN_CURLY_BRACES; -} -#line 2160 "Zend/zend_language_scanner.c" -yy114: - YYDEBUG(114, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy118; -yy115: - YYDEBUG(115, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy111; -yy116: - YYDEBUG(116, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(117, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1823 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 1); - yy_push_state(ST_VAR_OFFSET TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 2182 "Zend/zend_language_scanner.c" -yy118: - YYDEBUG(118, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '_') { - if (yych <= '@') goto yy115; - if (yych <= 'Z') goto yy119; - if (yych <= '^') goto yy115; - } else { - if (yych <= '`') goto yy115; - if (yych <= 'z') goto yy119; - if (yych <= '~') goto yy115; - } -yy119: - YYDEBUG(119, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(120, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1813 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 3); - yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 2208 "Zend/zend_language_scanner.c" - } -/* *********************************** */ -yyc_ST_IN_SCRIPTING: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 192, 64, 0, 0, 64, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 192, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 60, 60, 44, 44, 44, 44, 44, 44, - 44, 44, 0, 0, 0, 0, 0, 0, - 0, 36, 36, 36, 36, 36, 36, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 4, - 0, 36, 36, 36, 36, 36, 36, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - }; - YYDEBUG(121, *YYCURSOR); - YYFILL(16); - yych = *YYCURSOR; - YYDEBUG(-1, yych); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\v': - case '\f': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: goto yy184; - case '\t': - case '\n': - case '\r': - case ' ': goto yy140; - case '!': goto yy154; - case '"': goto yy180; - case '#': goto yy176; - case '$': goto yy165; - case '%': goto yy159; - case '&': goto yy160; - case '\'': goto yy178; - case '(': goto yy148; - case ')': - case ',': - case ';': - case '@': - case '[': - case ']': - case '~': goto yy166; - case '*': goto yy157; - case '+': goto yy153; - case '-': goto yy138; - case '.': goto yy145; - case '/': goto yy158; - case '0': goto yy172; - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy174; - case ':': goto yy142; - case '<': goto yy155; - case '=': goto yy151; - case '>': goto yy156; - case '?': goto yy167; - case 'A': - case 'a': goto yy133; - case 'B': - case 'b': goto yy135; - case 'C': - case 'c': goto yy127; - case 'D': - case 'd': goto yy125; - case 'E': - case 'e': goto yy123; - case 'F': - case 'f': goto yy126; - case 'G': - case 'g': goto yy136; - case 'I': - case 'i': goto yy131; - case 'L': - case 'l': goto yy152; - case 'N': - case 'n': goto yy146; - case 'O': - case 'o': goto yy163; - case 'P': - case 'p': goto yy137; - case 'R': - case 'r': goto yy128; - case 'S': - case 's': goto yy134; - case 'T': - case 't': goto yy130; - case 'U': - case 'u': goto yy149; - case 'V': - case 'v': goto yy147; - case 'W': - case 'w': goto yy132; - case 'X': - case 'x': goto yy164; - case 'Y': - case 'y': goto yy129; - case '\\': goto yy143; - case '^': goto yy162; - case '_': goto yy150; - case '`': goto yy182; - case '{': goto yy168; - case '|': goto yy161; - case '}': goto yy170; - default: goto yy175; - } -yy123: - YYDEBUG(123, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(-1, yych); - switch ((yych = *YYCURSOR)) { - case 'C': - case 'c': goto yy742; - case 'L': - case 'l': goto yy743; - case 'M': - case 'm': goto yy744; - case 'N': - case 'n': goto yy745; - case 'V': - case 'v': goto yy746; - case 'X': - case 'x': goto yy747; - default: goto yy187; - } -yy124: - YYDEBUG(124, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1854 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, yytext, yyleng); - zendlval->type = IS_STRING; - return T_STRING; -} -#line 2397 "Zend/zend_language_scanner.c" -yy125: - YYDEBUG(125, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych <= 'H') { - if (yych == 'E') goto yy724; - goto yy187; - } else { - if (yych <= 'I') goto yy725; - if (yych <= 'N') goto yy187; - goto yy726; - } - } else { - if (yych <= 'h') { - if (yych == 'e') goto yy724; - goto yy187; - } else { - if (yych <= 'i') goto yy725; - if (yych == 'o') goto yy726; - goto yy187; - } - } -yy126: - YYDEBUG(126, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych <= 'N') { - if (yych == 'I') goto yy700; - goto yy187; - } else { - if (yych <= 'O') goto yy701; - if (yych <= 'T') goto yy187; - goto yy702; - } - } else { - if (yych <= 'n') { - if (yych == 'i') goto yy700; - goto yy187; - } else { - if (yych <= 'o') goto yy701; - if (yych == 'u') goto yy702; - goto yy187; - } - } -yy127: - YYDEBUG(127, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych <= 'K') { - if (yych == 'A') goto yy665; - goto yy187; - } else { - if (yych <= 'L') goto yy666; - if (yych <= 'N') goto yy187; - goto yy667; - } - } else { - if (yych <= 'k') { - if (yych == 'a') goto yy665; - goto yy187; - } else { - if (yych <= 'l') goto yy666; - if (yych == 'o') goto yy667; - goto yy187; - } - } -yy128: - YYDEBUG(128, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy647; - if (yych == 'e') goto yy647; - goto yy187; -yy129: - YYDEBUG(129, *YYCURSOR); - yych = *++YYCURSOR; - 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 yy630; - if (yych <= 'Q') goto yy187; - goto yy631; - } else { - if (yych <= 'h') { - if (yych <= 'g') goto yy187; - goto yy630; - } else { - if (yych == 'r') goto yy631; - goto yy187; - } - } -yy131: - YYDEBUG(131, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'S') { - if (yych <= 'L') { - if (yych == 'F') goto yy577; - goto yy187; - } else { - if (yych <= 'M') goto yy579; - if (yych <= 'N') goto yy580; - if (yych <= 'R') goto yy187; - goto yy581; - } - } else { - if (yych <= 'm') { - if (yych == 'f') goto yy577; - if (yych <= 'l') goto yy187; - goto yy579; - } else { - if (yych <= 'n') goto yy580; - if (yych == 's') goto yy581; - goto yy187; - } - } -yy132: - YYDEBUG(132, *YYCURSOR); - yych = *++YYCURSOR; - 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 yy554; - goto yy187; - } else { - if (yych <= 'N') goto yy555; - if (yych <= 'Q') goto yy187; - if (yych <= 'R') goto yy556; - goto yy557; - } - } else { - if (yych <= 'n') { - if (yych == 'b') goto yy554; - if (yych <= 'm') goto yy187; - goto yy555; - } else { - if (yych <= 'q') goto yy187; - if (yych <= 'r') goto yy556; - if (yych <= 's') goto yy557; - goto yy187; - } - } -yy134: - YYDEBUG(134, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'W') { - if (yych == 'T') goto yy542; - if (yych <= 'V') goto yy187; - goto yy543; - } else { - if (yych <= 't') { - if (yych <= 's') goto yy187; - goto yy542; - } else { - if (yych == 'w') goto yy543; - goto yy187; - } - } -yy135: - YYDEBUG(135, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') { - if (yych <= '"') { - if (yych <= '!') goto yy187; - goto yy534; - } else { - if (yych == '\'') goto yy535; - goto yy187; - } - } else { - if (yych <= 'R') { - if (yych <= '<') goto yy533; - if (yych <= 'Q') goto yy187; - goto yy536; - } else { - if (yych == 'r') goto yy536; - goto yy187; - } - } -yy136: - YYDEBUG(136, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'L') goto yy523; - if (yych <= 'N') goto yy187; - goto yy524; - } else { - if (yych <= 'l') { - if (yych <= 'k') goto yy187; - goto yy523; - } else { - if (yych == 'o') goto yy524; - goto yy187; - } - } -yy137: - YYDEBUG(137, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych == 'R') goto yy499; - if (yych <= 'T') goto yy187; - goto yy500; - } else { - if (yych <= 'r') { - if (yych <= 'q') goto yy187; - goto yy499; - } else { - if (yych == 'u') goto yy500; - goto yy187; - } - } -yy138: - YYDEBUG(138, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '<') { - if (yych == '-') goto yy495; - } else { - if (yych <= '=') goto yy493; - if (yych <= '>') goto yy497; - } -yy139: - YYDEBUG(139, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1454 "Zend/zend_language_scanner.l" - { - return yytext[0]; -} -#line 2633 "Zend/zend_language_scanner.c" -yy140: - YYDEBUG(140, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy492; -yy141: - YYDEBUG(141, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1175 "Zend/zend_language_scanner.l" - { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - HANDLE_NEWLINES(yytext, yyleng); - return T_WHITESPACE; -} -#line 2648 "Zend/zend_language_scanner.c" -yy142: - YYDEBUG(142, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == ':') goto yy489; - goto yy139; -yy143: - YYDEBUG(143, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(144, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1202 "Zend/zend_language_scanner.l" - { - return T_NS_SEPARATOR; -} -#line 2663 "Zend/zend_language_scanner.c" -yy145: - YYDEBUG(145, *YYCURSOR); - yyaccept = 1; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '/') { - if (yych == '.') goto yy486; - goto yy139; - } else { - if (yych <= '9') goto yy482; - if (yych == '=') goto yy484; - goto yy139; - } -yy146: - YYDEBUG(146, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'E') { - if (yych == 'A') goto yy470; - if (yych <= 'D') goto yy187; - goto yy471; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy187; - goto yy470; - } else { - if (yych == 'e') goto yy471; - goto yy187; - } - } -yy147: - YYDEBUG(147, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy467; - if (yych == 'a') goto yy467; - goto yy187; -yy148: - YYDEBUG(148, *YYCURSOR); - yyaccept = 1; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= ' ') { - if (yych == '\t') goto yy392; - if (yych <= 0x1F) goto yy139; - goto yy392; - } else { - if (yych <= '@') goto yy139; - if (yych == 'C') goto yy139; - goto yy392; - } - } else { - if (yych <= 'I') { - if (yych == 'F') goto yy392; - if (yych <= 'H') goto yy139; - goto yy392; - } else { - if (yych == 'O') goto yy392; - if (yych <= 'Q') goto yy139; - goto yy392; - } - } - } else { - if (yych <= 'f') { - if (yych <= 'b') { - if (yych == 'U') goto yy392; - if (yych <= '`') goto yy139; - goto yy392; - } else { - if (yych == 'd') goto yy392; - if (yych <= 'e') goto yy139; - goto yy392; - } - } else { - if (yych <= 'o') { - if (yych == 'i') goto yy392; - if (yych <= 'n') goto yy139; - goto yy392; - } else { - if (yych <= 's') { - if (yych <= 'q') goto yy139; - goto yy392; - } else { - if (yych == 'u') goto yy392; - goto yy139; - } - } - } - } -yy149: - YYDEBUG(149, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'S') { - if (yych == 'N') goto yy383; - if (yych <= 'R') goto yy187; - goto yy384; - } else { - if (yych <= 'n') { - if (yych <= 'm') goto yy187; - goto yy383; - } else { - if (yych == 's') goto yy384; - goto yy187; - } - } -yy150: - YYDEBUG(150, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '_') goto yy301; - goto yy187; -yy151: - YYDEBUG(151, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '<') goto yy139; - if (yych <= '=') goto yy295; - if (yych <= '>') goto yy297; - goto yy139; -yy152: - YYDEBUG(152, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy291; - if (yych == 'i') goto yy291; - goto yy187; -yy153: - YYDEBUG(153, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '+') goto yy289; - if (yych == '=') goto yy287; - goto yy139; -yy154: - YYDEBUG(154, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '=') goto yy284; - goto yy139; -yy155: - YYDEBUG(155, *YYCURSOR); - yyaccept = 1; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') { - if (yych == '/') goto yy256; - goto yy139; - } else { - 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 yy250; - if (yych <= '>') goto yy248; - goto yy139; -yy157: - YYDEBUG(157, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '*') goto yy242; - if (yych == '=') goto yy244; - goto yy139; -yy158: - YYDEBUG(158, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '.') { - if (yych == '*') goto yy234; - goto yy139; - } else { - if (yych <= '/') goto yy236; - if (yych == '=') goto yy237; - goto yy139; - } -yy159: - YYDEBUG(159, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '<') goto yy139; - if (yych <= '=') goto yy230; - if (yych <= '>') goto yy228; - goto yy139; -yy160: - YYDEBUG(160, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '&') goto yy224; - if (yych == '=') goto yy226; - goto yy139; -yy161: - YYDEBUG(161, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '=') goto yy222; - if (yych == '|') goto yy220; - goto yy139; -yy162: - YYDEBUG(162, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '=') goto yy218; - goto yy139; -yy163: - YYDEBUG(163, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy216; - if (yych == 'r') goto yy216; - goto yy187; -yy164: - YYDEBUG(164, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy213; - if (yych == 'o') goto yy213; - goto yy187; -yy165: - YYDEBUG(165, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '_') { - if (yych <= '@') goto yy139; - if (yych <= 'Z') goto yy210; - if (yych <= '^') goto yy139; - goto yy210; - } else { - if (yych <= '`') goto yy139; - if (yych <= 'z') goto yy210; - if (yych <= '~') goto yy139; - goto yy210; - } -yy166: - YYDEBUG(166, *YYCURSOR); - yych = *++YYCURSOR; - goto yy139; -yy167: - YYDEBUG(167, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy206; - goto yy139; -yy168: - YYDEBUG(168, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(169, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1459 "Zend/zend_language_scanner.l" - { - yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); - return '{'; -} -#line 2902 "Zend/zend_language_scanner.c" -yy170: - YYDEBUG(170, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(171, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1471 "Zend/zend_language_scanner.l" - { - RESET_DOC_COMMENT(); - if (!zend_stack_is_empty(&SCNG(state_stack))) { - yy_pop_state(TSRMLS_C); - } - return '}'; -} -#line 2916 "Zend/zend_language_scanner.c" -yy172: - YYDEBUG(172, *YYCURSOR); - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= 'E') { - if (yych <= '9') { - if (yych == '.') goto yy188; - if (yych >= '0') goto yy191; - } else { - if (yych == 'B') goto yy199; - if (yych >= 'E') goto yy193; - } - } else { - if (yych <= 'b') { - if (yych == 'X') goto yy198; - if (yych >= 'b') goto yy199; - } else { - if (yych <= 'e') { - if (yych >= 'e') goto yy193; - } else { - if (yych == 'x') goto yy198; - } - } - } -yy173: - YYDEBUG(173, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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); - } else { - errno = 0; - Z_LVAL_P(zendlval) = strtol(yytext, NULL, 0); - if (errno == ERANGE) { /* Overflow */ - if (yytext[0] == '0') { /* octal overflow */ - Z_DVAL_P(zendlval) = zend_oct_strtod(yytext, NULL); - } else { - Z_DVAL_P(zendlval) = zend_strtod(yytext, NULL); - } - zendlval->type = IS_DOUBLE; - return T_DNUMBER; - } - } - - zendlval->type = IS_LONG; - return T_LNUMBER; -} -#line 2965 "Zend/zend_language_scanner.c" -yy174: - YYDEBUG(174, *YYCURSOR); - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '9') { - if (yych == '.') goto yy188; - if (yych <= '/') goto yy173; - goto yy191; - } else { - if (yych <= 'E') { - if (yych <= 'D') goto yy173; - goto yy193; - } else { - if (yych == 'e') goto yy193; - goto yy173; - } - } -yy175: - YYDEBUG(175, *YYCURSOR); - yych = *++YYCURSOR; - goto yy187; -yy176: - YYDEBUG(176, *YYCURSOR); - ++YYCURSOR; -yy177: - YYDEBUG(177, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1861 "Zend/zend_language_scanner.l" - { - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '\r': - if (*YYCURSOR == '\n') { - YYCURSOR++; - } - /* fall through */ - case '\n': - CG(zend_lineno)++; - break; - case '%': - if (!CG(asp_tags)) { - continue; - } - /* fall through */ - case '?': - if (*YYCURSOR == '>') { - YYCURSOR--; - break; - } - /* fall through */ - default: - continue; - } - - break; - } - - yyleng = YYCURSOR - SCNG(yy_text); - - return T_COMMENT; -} -#line 3027 "Zend/zend_language_scanner.c" -yy178: - YYDEBUG(178, *YYCURSOR); - ++YYCURSOR; -yy179: - YYDEBUG(179, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1948 "Zend/zend_language_scanner.l" - { - register char *s, *t; - char *end; - int bprefix = (yytext[0] != '\'') ? 1 : 0; - - while (1) { - if (YYCURSOR < YYLIMIT) { - if (*YYCURSOR == '\'') { - YYCURSOR++; - yyleng = YYCURSOR - SCNG(yy_text); - - break; - } else if (*YYCURSOR++ == '\\' && YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - } else { - yyleng = YYLIMIT - SCNG(yy_text); - - /* Unclosed single quotes; treat similar to double quotes, but without a separate token - * for ' (unrecognized by parser), instead of old flex fallback to "Unexpected character..." - * rule, which continued in ST_IN_SCRIPTING state after the quote */ - return T_ENCAPSED_AND_WHITESPACE; - } - } - - ZVAL_STRINGL(zendlval, yytext+bprefix+1, yyleng-bprefix-2, 1); - - /* convert escape sequences */ - s = t = Z_STRVAL_P(zendlval); - end = s+Z_STRLEN_P(zendlval); - while (s<end) { - if (*s=='\\') { - s++; - - switch(*s) { - case '\\': - case '\'': - *t++ = *s; - Z_STRLEN_P(zendlval)--; - break; - default: - *t++ = '\\'; - *t++ = *s; - break; - } - } else { - *t++ = *s; - } - - if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) { - CG(zend_lineno)++; - } - s++; - } - *t = 0; - - if (SCNG(output_filter)) { - size_t sz = 0; - s = Z_STRVAL_P(zendlval); - SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)s, (size_t)Z_STRLEN_P(zendlval) TSRMLS_CC); - Z_STRLEN_P(zendlval) = sz; - efree(s); - } - return T_CONSTANT_ENCAPSED_STRING; -} -#line 3100 "Zend/zend_language_scanner.c" -yy180: - YYDEBUG(180, *YYCURSOR); - ++YYCURSOR; -yy181: - YYDEBUG(181, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2015 "Zend/zend_language_scanner.l" - { - int bprefix = (yytext[0] != '"') ? 1 : 0; - - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '"': - yyleng = YYCURSOR - SCNG(yy_text); - zend_scan_escape_string(zendlval, yytext+bprefix+1, yyleng-bprefix-2, '"' TSRMLS_CC); - return T_CONSTANT_ENCAPSED_STRING; - case '$': - if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') { - break; - } - continue; - case '{': - if (*YYCURSOR == '$') { - break; - } - continue; - case '\\': - if (YYCURSOR < YYLIMIT) { - YYCURSOR++; - } - /* fall through */ - default: - continue; - } - - YYCURSOR--; - break; - } - - /* Remember how much was scanned to save rescanning */ - SET_DOUBLE_QUOTES_SCANNED_LENGTH(YYCURSOR - SCNG(yy_text) - yyleng); - - YYCURSOR = SCNG(yy_text) + yyleng; - - BEGIN(ST_DOUBLE_QUOTES); - return '"'; -} -#line 3148 "Zend/zend_language_scanner.c" -yy182: - YYDEBUG(182, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(183, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2105 "Zend/zend_language_scanner.l" - { - BEGIN(ST_BACKQUOTE); - return '`'; -} -#line 3159 "Zend/zend_language_scanner.c" -yy184: - YYDEBUG(184, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(185, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2368 "Zend/zend_language_scanner.l" - { - if (YYCURSOR > YYLIMIT) { - return 0; - } - - zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); - goto restart; -} -#line 3174 "Zend/zend_language_scanner.c" -yy186: - YYDEBUG(186, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy187: - YYDEBUG(187, *YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy186; - } - goto yy124; -yy188: - YYDEBUG(188, *YYCURSOR); - yyaccept = 3; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(189, *YYCURSOR); - if (yybm[0+yych] & 8) { - goto yy188; - } - if (yych == 'E') goto yy193; - if (yych == 'e') goto yy193; -yy190: - YYDEBUG(190, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1580 "Zend/zend_language_scanner.l" - { - ZVAL_DOUBLE(zendlval, zend_strtod(yytext, NULL)); - return T_DNUMBER; -} -#line 3206 "Zend/zend_language_scanner.c" -yy191: - YYDEBUG(191, *YYCURSOR); - yyaccept = 2; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(192, *YYCURSOR); - if (yych <= '9') { - if (yych == '.') goto yy188; - if (yych <= '/') goto yy173; - goto yy191; - } else { - if (yych <= 'E') { - if (yych <= 'D') goto yy173; - } else { - if (yych != 'e') goto yy173; - } - } -yy193: - YYDEBUG(193, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= ',') { - if (yych == '+') goto yy195; - } else { - if (yych <= '-') goto yy195; - if (yych <= '/') goto yy194; - if (yych <= '9') goto yy196; - } -yy194: - YYDEBUG(194, *YYCURSOR); - YYCURSOR = YYMARKER; - if (yyaccept <= 2) { - if (yyaccept <= 1) { - if (yyaccept <= 0) { - goto yy124; - } else { - goto yy139; - } - } else { - goto yy173; - } - } else { - if (yyaccept <= 4) { - if (yyaccept <= 3) { - goto yy190; - } else { - goto yy235; - } - } else { - goto yy255; - } - } -yy195: - YYDEBUG(195, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '/') goto yy194; - if (yych >= ':') goto yy194; -yy196: - YYDEBUG(196, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(197, *YYCURSOR); - if (yych <= '/') goto yy190; - if (yych <= '9') goto yy196; - goto yy190; -yy198: - YYDEBUG(198, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 32) { - goto yy203; - } - goto yy194; -yy199: - YYDEBUG(199, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 16) { - goto yy200; - } - goto yy194; -yy200: - YYDEBUG(200, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(201, *YYCURSOR); - if (yybm[0+yych] & 16) { - goto yy200; - } - YYDEBUG(202, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1497 "Zend/zend_language_scanner.l" - { - char *bin = yytext + 2; /* Skip "0b" */ - int len = yyleng - 2; - - /* Skip any leading 0s */ - while (*bin == '0') { - ++bin; - --len; - } - - if (len < SIZEOF_LONG * 8) { - if (len == 0) { - Z_LVAL_P(zendlval) = 0; - } else { - Z_LVAL_P(zendlval) = strtol(bin, NULL, 2); - } - zendlval->type = IS_LONG; - return T_LNUMBER; - } else { - ZVAL_DOUBLE(zendlval, zend_bin_strtod(bin, NULL)); - return T_DNUMBER; - } -} -#line 3322 "Zend/zend_language_scanner.c" -yy203: - YYDEBUG(203, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(204, *YYCURSOR); - if (yybm[0+yych] & 32) { - goto yy203; - } - YYDEBUG(205, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1542 "Zend/zend_language_scanner.l" - { - char *hex = yytext + 2; /* Skip "0x" */ - int len = yyleng - 2; - - /* Skip any leading 0s */ - while (*hex == '0') { - hex++; - len--; - } - - if (len < SIZEOF_LONG * 2 || (len == SIZEOF_LONG * 2 && *hex <= '7')) { - if (len == 0) { - Z_LVAL_P(zendlval) = 0; - } else { - Z_LVAL_P(zendlval) = strtol(hex, NULL, 16); - } - zendlval->type = IS_LONG; - return T_LNUMBER; - } else { - ZVAL_DOUBLE(zendlval, zend_hex_strtod(hex, NULL)); - return T_DNUMBER; - } -} -#line 3358 "Zend/zend_language_scanner.c" -yy206: - YYDEBUG(206, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy208; - if (yych == '\r') goto yy209; -yy207: - YYDEBUG(207, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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 3373 "Zend/zend_language_scanner.c" -yy208: - YYDEBUG(208, *YYCURSOR); - yych = *++YYCURSOR; - goto yy207; -yy209: - YYDEBUG(209, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy208; - goto yy207; -yy210: - YYDEBUG(210, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(211, *YYCURSOR); - if (yych <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy210; - } else { - if (yych <= '@') goto yy212; - if (yych <= 'Z') goto yy210; - } - } else { - if (yych <= '`') { - if (yych <= '_') goto yy210; - } else { - if (yych <= 'z') goto yy210; - if (yych >= 0x7F) goto yy210; - } - } -yy212: - YYDEBUG(212, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1831 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 3413 "Zend/zend_language_scanner.c" -yy213: - YYDEBUG(213, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy214; - if (yych != 'r') goto yy187; -yy214: - YYDEBUG(214, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(215, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1442 "Zend/zend_language_scanner.l" - { - return T_LOGICAL_XOR; -} -#line 3431 "Zend/zend_language_scanner.c" -yy216: - YYDEBUG(216, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(217, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1434 "Zend/zend_language_scanner.l" - { - return T_LOGICAL_OR; -} -#line 3444 "Zend/zend_language_scanner.c" -yy218: - YYDEBUG(218, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(219, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1422 "Zend/zend_language_scanner.l" - { - return T_XOR_EQUAL; -} -#line 3454 "Zend/zend_language_scanner.c" -yy220: - YYDEBUG(220, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(221, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1426 "Zend/zend_language_scanner.l" - { - return T_BOOLEAN_OR; -} -#line 3464 "Zend/zend_language_scanner.c" -yy222: - YYDEBUG(222, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(223, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1418 "Zend/zend_language_scanner.l" - { - return T_OR_EQUAL; -} -#line 3474 "Zend/zend_language_scanner.c" -yy224: - YYDEBUG(224, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(225, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1430 "Zend/zend_language_scanner.l" - { - return T_BOOLEAN_AND; -} -#line 3484 "Zend/zend_language_scanner.c" -yy226: - YYDEBUG(226, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(227, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1414 "Zend/zend_language_scanner.l" - { - return T_AND_EQUAL; -} -#line 3494 "Zend/zend_language_scanner.c" -yy228: - YYDEBUG(228, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy232; - if (yych == '\r') goto yy233; -yy229: - YYDEBUG(229, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1936 "Zend/zend_language_scanner.l" - { - if (CG(asp_tags)) { - BEGIN(INITIAL); - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - return T_CLOSE_TAG; /* implicit ';' at php-end tag */ - } else { - yyless(1); - return yytext[0]; - } -} -#line 3514 "Zend/zend_language_scanner.c" -yy230: - YYDEBUG(230, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(231, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1402 "Zend/zend_language_scanner.l" - { - return T_MOD_EQUAL; -} -#line 3524 "Zend/zend_language_scanner.c" -yy232: - YYDEBUG(232, *YYCURSOR); - yych = *++YYCURSOR; - goto yy229; -yy233: - YYDEBUG(233, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy232; - goto yy229; -yy234: - YYDEBUG(234, *YYCURSOR); - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == '*') goto yy239; -yy235: - YYDEBUG(235, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1895 "Zend/zend_language_scanner.l" - { - int doc_com; - - if (yyleng > 2) { - doc_com = 1; - RESET_DOC_COMMENT(); - } else { - doc_com = 0; - } - - while (YYCURSOR < YYLIMIT) { - if (*YYCURSOR++ == '*' && *YYCURSOR == '/') { - break; - } - } - - if (YYCURSOR < YYLIMIT) { - YYCURSOR++; - } else { - zend_error(E_COMPILE_WARNING, "Unterminated comment starting line %d", CG(zend_lineno)); - } - - yyleng = YYCURSOR - SCNG(yy_text); - HANDLE_NEWLINES(yytext, yyleng); - - if (doc_com) { - CG(doc_comment) = estrndup(yytext, yyleng); - CG(doc_comment_len) = yyleng; - return T_DOC_COMMENT; - } - - return T_COMMENT; -} -#line 3576 "Zend/zend_language_scanner.c" -yy236: - YYDEBUG(236, *YYCURSOR); - yych = *++YYCURSOR; - goto yy177; -yy237: - YYDEBUG(237, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(238, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1394 "Zend/zend_language_scanner.l" - { - return T_DIV_EQUAL; -} -#line 3590 "Zend/zend_language_scanner.c" -yy239: - YYDEBUG(239, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 64) { - goto yy240; - } - goto yy194; -yy240: - YYDEBUG(240, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(241, *YYCURSOR); - if (yybm[0+yych] & 64) { - goto yy240; - } - goto yy235; -yy242: - YYDEBUG(242, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy246; - YYDEBUG(243, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1386 "Zend/zend_language_scanner.l" - { - return T_POW; -} -#line 3618 "Zend/zend_language_scanner.c" -yy244: - YYDEBUG(244, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(245, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1382 "Zend/zend_language_scanner.l" - { - return T_MUL_EQUAL; -} -#line 3628 "Zend/zend_language_scanner.c" -yy246: - YYDEBUG(246, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(247, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1390 "Zend/zend_language_scanner.l" - { - return T_POW_EQUAL; -} -#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 1450 "Zend/zend_language_scanner.l" - { - return T_SR; -} -#line 3649 "Zend/zend_language_scanner.c" -yy250: - YYDEBUG(250, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(251, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1370 "Zend/zend_language_scanner.l" - { - return T_IS_GREATER_OR_EQUAL; -} -#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 yy261; - if (yych == 's') goto yy261; - goto yy194; -yy257: - YYDEBUG(257, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(258, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1366 "Zend/zend_language_scanner.l" - { - return T_IS_SMALLER_OR_EQUAL; -} -#line 3700 "Zend/zend_language_scanner.c" -yy259: - YYDEBUG(259, *YYCURSOR); - ++YYCURSOR; -yy260: - YYDEBUG(260, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1362 "Zend/zend_language_scanner.l" - { - return T_IS_NOT_EQUAL; -} -#line 3711 "Zend/zend_language_scanner.c" -yy261: - YYDEBUG(261, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy262; - if (yych != 'c') goto yy194; -yy262: - YYDEBUG(262, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy263; - if (yych != 'r') goto yy194; -yy263: - YYDEBUG(263, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy264; - if (yych != 'i') goto yy194; -yy264: - YYDEBUG(264, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy265; - if (yych != 'p') goto yy194; -yy265: - YYDEBUG(265, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy266; - if (yych != 't') goto yy194; -yy266: - YYDEBUG(266, *YYCURSOR); - ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(267, *YYCURSOR); - if (yych <= '\r') { - if (yych <= 0x08) goto yy194; - if (yych <= '\n') goto yy266; - if (yych <= '\f') goto yy194; - goto yy266; - } else { - if (yych <= ' ') { - if (yych <= 0x1F) goto yy194; - goto yy266; - } else { - if (yych == '>') goto yy206; - goto yy194; - } - } -yy268: - YYDEBUG(268, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(269, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1406 "Zend/zend_language_scanner.l" - { - return T_SL_EQUAL; -} -#line 3766 "Zend/zend_language_scanner.c" -yy270: - YYDEBUG(270, *YYCURSOR); - ++YYCURSOR; - YYFILL(2); - yych = *YYCURSOR; - YYDEBUG(271, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy270; - } - if (yych <= 'Z') { - if (yych <= '&') { - if (yych == '"') goto yy275; - goto yy194; - } else { - if (yych <= '\'') goto yy274; - if (yych <= '@') goto yy194; - } - } else { - if (yych <= '`') { - if (yych != '_') goto yy194; - } else { - if (yych <= 'z') goto yy272; - if (yych <= '~') goto yy194; - } - } -yy272: - YYDEBUG(272, *YYCURSOR); - ++YYCURSOR; - YYFILL(2); - yych = *YYCURSOR; - YYDEBUG(273, *YYCURSOR); - if (yych <= '@') { - if (yych <= '\f') { - if (yych == '\n') goto yy279; - goto yy194; - } else { - if (yych <= '\r') goto yy281; - if (yych <= '/') goto yy194; - if (yych <= '9') goto yy272; - goto yy194; - } - } else { - if (yych <= '_') { - if (yych <= 'Z') goto yy272; - if (yych <= '^') goto yy194; - goto yy272; - } else { - if (yych <= '`') goto yy194; - if (yych <= 'z') goto yy272; - if (yych <= '~') goto yy194; - goto yy272; - } - } -yy274: - YYDEBUG(274, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\'') goto yy194; - if (yych <= '/') goto yy283; - if (yych <= '9') goto yy194; - goto yy283; -yy275: - YYDEBUG(275, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '"') goto yy194; - if (yych <= '/') goto yy277; - if (yych <= '9') goto yy194; - goto yy277; -yy276: - YYDEBUG(276, *YYCURSOR); - ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; -yy277: - YYDEBUG(277, *YYCURSOR); - if (yych <= 'Z') { - if (yych <= '/') { - if (yych != '"') goto yy194; - } else { - if (yych <= '9') goto yy276; - if (yych <= '@') goto yy194; - goto yy276; - } - } else { - if (yych <= '`') { - if (yych == '_') goto yy276; - goto yy194; - } else { - if (yych <= 'z') goto yy276; - if (yych <= '~') goto yy194; - goto yy276; - } - } -yy278: - YYDEBUG(278, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy279; - if (yych == '\r') goto yy281; - goto yy194; -yy279: - YYDEBUG(279, *YYCURSOR); - ++YYCURSOR; -yy280: - YYDEBUG(280, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2057 "Zend/zend_language_scanner.l" - { - char *s; - int bprefix = (yytext[0] != '<') ? 1 : 0; - zend_heredoc_label *heredoc_label = emalloc(sizeof(zend_heredoc_label)); - - CG(zend_lineno)++; - heredoc_label->length = yyleng-bprefix-3-1-(yytext[yyleng-2]=='\r'?1:0); - s = yytext+bprefix+3; - while ((*s == ' ') || (*s == '\t')) { - s++; - heredoc_label->length--; - } - - if (*s == '\'') { - s++; - heredoc_label->length -= 2; - - BEGIN(ST_NOWDOC); - } else { - if (*s == '"') { - s++; - heredoc_label->length -= 2; - } - - BEGIN(ST_HEREDOC); - } - - heredoc_label->label = estrndup(s, heredoc_label->length); - - /* Check for ending label on the next line */ - if (heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, s, heredoc_label->length)) { - YYCTYPE *end = YYCURSOR + heredoc_label->length; - - if (*end == ';') { - end++; - } - - if (*end == '\n' || *end == '\r') { - BEGIN(ST_END_HEREDOC); - } - } - - zend_ptr_stack_push(&SCNG(heredoc_label_stack), (void *) heredoc_label); - - return T_START_HEREDOC; -} -#line 3918 "Zend/zend_language_scanner.c" -yy281: - YYDEBUG(281, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy279; - goto yy280; -yy282: - YYDEBUG(282, *YYCURSOR); - ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; -yy283: - YYDEBUG(283, *YYCURSOR); - if (yych <= 'Z') { - if (yych <= '/') { - if (yych == '\'') goto yy278; - goto yy194; - } else { - if (yych <= '9') goto yy282; - if (yych <= '@') goto yy194; - goto yy282; - } - } else { - if (yych <= '`') { - if (yych == '_') goto yy282; - goto yy194; - } else { - if (yych <= 'z') goto yy282; - if (yych <= '~') goto yy194; - goto yy282; - } - } -yy284: - YYDEBUG(284, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '=') goto yy260; - YYDEBUG(285, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(286, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1354 "Zend/zend_language_scanner.l" - { - return T_IS_NOT_IDENTICAL; -} -#line 3962 "Zend/zend_language_scanner.c" -yy287: - YYDEBUG(287, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(288, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1374 "Zend/zend_language_scanner.l" - { - return T_PLUS_EQUAL; -} -#line 3972 "Zend/zend_language_scanner.c" -yy289: - YYDEBUG(289, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(290, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1342 "Zend/zend_language_scanner.l" - { - return T_INC; -} -#line 3982 "Zend/zend_language_scanner.c" -yy291: - YYDEBUG(291, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy292; - if (yych != 's') goto yy187; -yy292: - YYDEBUG(292, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy293; - if (yych != 't') goto yy187; -yy293: - YYDEBUG(293, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(294, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1330 "Zend/zend_language_scanner.l" - { - return T_LIST; -} -#line 4005 "Zend/zend_language_scanner.c" -yy295: - YYDEBUG(295, *YYCURSOR); - ++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 4016 "Zend/zend_language_scanner.c" -yy297: - YYDEBUG(297, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(298, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1326 "Zend/zend_language_scanner.l" - { - return T_DOUBLE_ARROW; -} -#line 4026 "Zend/zend_language_scanner.c" -yy299: - YYDEBUG(299, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(300, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1350 "Zend/zend_language_scanner.l" - { - return T_IS_IDENTICAL; -} -#line 4036 "Zend/zend_language_scanner.c" -yy301: - YYDEBUG(301, *YYCURSOR); - yych = *++YYCURSOR; - YYDEBUG(-1, yych); - switch (yych) { - case 'C': - case 'c': goto yy303; - case 'D': - case 'd': goto yy308; - case 'F': - case 'f': goto yy305; - case 'H': - case 'h': goto yy302; - case 'L': - case 'l': goto yy307; - case 'M': - case 'm': goto yy306; - case 'N': - case 'n': goto yy309; - case 'T': - case 't': goto yy304; - default: goto yy187; - } -yy302: - YYDEBUG(302, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy370; - if (yych == 'a') goto yy370; - goto yy187; -yy303: - YYDEBUG(303, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy363; - if (yych == 'l') goto yy363; - goto yy187; -yy304: - YYDEBUG(304, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy356; - if (yych == 'r') goto yy356; - goto yy187; -yy305: - YYDEBUG(305, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych == 'I') goto yy340; - if (yych <= 'T') goto yy187; - goto yy341; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy187; - goto yy340; - } else { - if (yych == 'u') goto yy341; - goto yy187; - } - } -yy306: - YYDEBUG(306, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy332; - if (yych == 'e') goto yy332; - goto yy187; -yy307: - YYDEBUG(307, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy326; - if (yych == 'i') goto yy326; - goto yy187; -yy308: - YYDEBUG(308, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy321; - if (yych == 'i') goto yy321; - goto yy187; -yy309: - YYDEBUG(309, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy310; - if (yych != 'a') goto yy187; -yy310: - YYDEBUG(310, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy311; - if (yych != 'm') goto yy187; -yy311: - YYDEBUG(311, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy312; - if (yych != 'e') goto yy187; -yy312: - YYDEBUG(312, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy313; - if (yych != 's') goto yy187; -yy313: - YYDEBUG(313, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy314; - if (yych != 'p') goto yy187; -yy314: - YYDEBUG(314, *YYCURSOR); - yych = *++YYCURSOR; - 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(320, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1676 "Zend/zend_language_scanner.l" - { - if (CG(current_namespace)) { - *zendlval = *CG(current_namespace); - zval_copy_ctor(zendlval); - } else { - ZVAL_EMPTY_STRING(zendlval); - } - return T_NS_C; -} -#line 4176 "Zend/zend_language_scanner.c" -yy321: - YYDEBUG(321, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy322; - if (yych != 'r') goto yy187; -yy322: - YYDEBUG(322, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(323, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(324, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(325, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1651 "Zend/zend_language_scanner.l" - { - char *filename = zend_get_compiled_filename(TSRMLS_C); - const size_t filename_len = strlen(filename); - char *dirname; - - if (!filename) { - filename = ""; - } - - dirname = estrndup(filename, filename_len); - zend_dirname(dirname, filename_len); - - if (strcmp(dirname, ".") == 0) { - dirname = erealloc(dirname, MAXPATHLEN); -#if HAVE_GETCWD - VCWD_GETCWD(dirname, MAXPATHLEN); -#elif HAVE_GETWD - VCWD_GETWD(dirname); -#endif - } - - ZVAL_STRING(zendlval, dirname, 0); - return T_DIR; -} -#line 4221 "Zend/zend_language_scanner.c" -yy326: - YYDEBUG(326, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy327; - if (yych != 'n') goto yy187; -yy327: - YYDEBUG(327, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy328; - if (yych != 'e') goto yy187; -yy328: - YYDEBUG(328, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(329, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(330, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(331, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1636 "Zend/zend_language_scanner.l" - { - ZVAL_LONG(zendlval, CG(zend_lineno)); - return T_LINE; -} -#line 4251 "Zend/zend_language_scanner.c" -yy332: - YYDEBUG(332, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy333; - if (yych != 't') goto yy187; -yy333: - YYDEBUG(333, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy334; - if (yych != 'h') goto yy187; -yy334: - YYDEBUG(334, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy335; - if (yych != 'o') goto yy187; -yy335: - YYDEBUG(335, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy336; - if (yych != 'd') goto yy187; -yy336: - YYDEBUG(336, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(337, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(338, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(339, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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; - - Z_STRLEN_P(zendlval) = zend_spprintf(&Z_STRVAL_P(zendlval), 0, "%s%s%s", - class_name ? class_name : "", - class_name && func_name ? "::" : "", - func_name ? func_name : "" - ); - zendlval->type = IS_STRING; - return T_METHOD_C; -} -#line 4299 "Zend/zend_language_scanner.c" -yy340: - YYDEBUG(340, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy351; - if (yych == 'l') goto yy351; - goto yy187; -yy341: - YYDEBUG(341, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy342; - if (yych != 'n') goto yy187; -yy342: - YYDEBUG(342, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy343; - if (yych != 'c') goto yy187; -yy343: - YYDEBUG(343, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy344; - if (yych != 't') goto yy187; -yy344: - YYDEBUG(344, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy345; - if (yych != 'i') goto yy187; -yy345: - YYDEBUG(345, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy346; - if (yych != 'o') goto yy187; -yy346: - YYDEBUG(346, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy347; - if (yych != 'n') goto yy187; -yy347: - YYDEBUG(347, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(348, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(349, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(350, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1613 "Zend/zend_language_scanner.l" - { - zend_op_array *op_array = CG(active_op_array); - if (op_array && op_array->function_name) { - ZVAL_STRING(zendlval, op_array->function_name, 1); - } else { - ZVAL_EMPTY_STRING(zendlval); - } - return T_FUNC_C; -} -#line 4360 "Zend/zend_language_scanner.c" -yy351: - YYDEBUG(351, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy352; - if (yych != 'e') goto yy187; -yy352: - YYDEBUG(352, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(353, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(354, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(355, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1641 "Zend/zend_language_scanner.l" - { - char *filename = zend_get_compiled_filename(TSRMLS_C); - - if (!filename) { - filename = ""; - } - ZVAL_STRING(zendlval, filename, 1); - return T_FILE; -} -#line 4390 "Zend/zend_language_scanner.c" -yy356: - YYDEBUG(356, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy357; - if (yych != 'a') goto yy187; -yy357: - YYDEBUG(357, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy358; - if (yych != 'i') goto yy187; -yy358: - YYDEBUG(358, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy359; - if (yych != 't') goto yy187; -yy359: - YYDEBUG(359, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(360, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(361, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(362, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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)) { - ZVAL_STRINGL(zendlval, ce->name, ce->name_length, 1); - } else { - ZVAL_EMPTY_STRING(zendlval); - } - return T_TRAIT_C; -} -#line 4430 "Zend/zend_language_scanner.c" -yy363: - YYDEBUG(363, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy364; - if (yych != 'a') goto yy187; -yy364: - YYDEBUG(364, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy365; - if (yych != 's') goto yy187; -yy365: - YYDEBUG(365, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy366; - if (yych != 's') goto yy187; -yy366: - YYDEBUG(366, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(367, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(368, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(369, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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)) { - /* We create a special __CLASS__ constant that is going to be resolved - at run-time */ - Z_STRLEN_P(zendlval) = sizeof("__CLASS__")-1; - Z_STRVAL_P(zendlval) = estrndup("__CLASS__", Z_STRLEN_P(zendlval)); - zendlval->type = IS_CONSTANT; - } else { - if (ce && ce->name) { - ZVAL_STRINGL(zendlval, ce->name, ce->name_length, 1); - } else { - ZVAL_EMPTY_STRING(zendlval); - } - } - return T_CLASS_C; -} -#line 4478 "Zend/zend_language_scanner.c" -yy370: - YYDEBUG(370, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy371; - if (yych != 'l') goto yy187; -yy371: - YYDEBUG(371, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy372; - if (yych != 't') goto yy187; -yy372: - YYDEBUG(372, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy187; - YYDEBUG(373, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy374; - if (yych != 'c') goto yy187; -yy374: - YYDEBUG(374, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy375; - if (yych != 'o') goto yy187; -yy375: - YYDEBUG(375, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy376; - if (yych != 'm') goto yy187; -yy376: - YYDEBUG(376, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy377; - if (yych != 'p') goto yy187; -yy377: - YYDEBUG(377, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy378; - if (yych != 'i') goto yy187; -yy378: - YYDEBUG(378, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy379; - if (yych != 'l') goto yy187; -yy379: - YYDEBUG(379, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy380; - if (yych != 'e') goto yy187; -yy380: - YYDEBUG(380, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy381; - if (yych != 'r') goto yy187; -yy381: - YYDEBUG(381, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(382, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1294 "Zend/zend_language_scanner.l" - { - return T_HALT_COMPILER; -} -#line 4544 "Zend/zend_language_scanner.c" -yy383: - YYDEBUG(383, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy387; - if (yych == 's') goto yy387; - goto yy187; -yy384: - YYDEBUG(384, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy385; - if (yych != 'e') goto yy187; -yy385: - YYDEBUG(385, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(386, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1274 "Zend/zend_language_scanner.l" - { - return T_USE; -} -#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; -yy392: - YYDEBUG(392, *YYCURSOR); - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= ' ') { - if (yych == '\t') goto yy391; - if (yych <= 0x1F) goto yy194; - goto yy391; - } else { - if (yych <= 'A') { - if (yych <= '@') goto yy194; - goto yy396; - } else { - if (yych <= 'B') goto yy394; - if (yych <= 'C') goto yy194; - goto yy399; - } - } - } else { - if (yych <= 'I') { - if (yych == 'F') goto yy400; - if (yych <= 'H') goto yy194; - goto yy401; - } else { - if (yych <= 'O') { - if (yych <= 'N') goto yy194; - goto yy395; - } else { - if (yych <= 'Q') goto yy194; - if (yych <= 'R') goto yy398; - goto yy397; - } - } - } - } else { - if (yych <= 'f') { - if (yych <= 'a') { - if (yych == 'U') goto yy393; - if (yych <= '`') goto yy194; - goto yy396; - } else { - if (yych <= 'c') { - if (yych <= 'b') goto yy394; - goto yy194; - } else { - if (yych <= 'd') goto yy399; - if (yych <= 'e') goto yy194; - goto yy400; - } - } - } else { - if (yych <= 'q') { - if (yych <= 'i') { - if (yych <= 'h') goto yy194; - goto yy401; - } else { - if (yych == 'o') goto yy395; - goto yy194; - } - } else { - if (yych <= 's') { - if (yych <= 'r') goto yy398; - goto yy397; - } else { - if (yych != 'u') goto yy194; - } - } - } - } -yy393: - YYDEBUG(393, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy460; - if (yych == 'n') goto yy460; - goto yy194; -yy394: - YYDEBUG(394, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'I') goto yy447; - if (yych <= 'N') goto yy194; - goto yy448; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy194; - goto yy447; - } else { - if (yych == 'o') goto yy448; - goto yy194; - } - } -yy395: - YYDEBUG(395, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy439; - if (yych == 'b') goto yy439; - goto yy194; -yy396: - YYDEBUG(396, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy432; - if (yych == 'r') goto yy432; - goto yy194; -yy397: - YYDEBUG(397, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy424; - if (yych == 't') goto yy424; - goto yy194; -yy398: - YYDEBUG(398, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy422; - if (yych == 'e') goto yy422; - goto yy194; -yy399: - YYDEBUG(399, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy418; - if (yych == 'o') goto yy418; - goto yy194; -yy400: - YYDEBUG(400, *YYCURSOR); - yych = *++YYCURSOR; - 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; -yy406: - YYDEBUG(406, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy405; - goto yy194; - } else { - if (yych <= ' ') goto yy405; - if (yych != ')') goto yy194; - } - YYDEBUG(407, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(408, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1222 "Zend/zend_language_scanner.l" - { - return T_INT_CAST; -} -#line 4767 "Zend/zend_language_scanner.c" -yy409: - YYDEBUG(409, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy410; - if (yych != 'e') goto yy194; -yy410: - YYDEBUG(410, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy405; - if (yych == 'r') goto yy405; - goto yy194; -yy411: - YYDEBUG(411, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy412; - if (yych != 'o') goto yy194; -yy412: - YYDEBUG(412, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy413; - if (yych != 'a') goto yy194; -yy413: - YYDEBUG(413, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy414; - if (yych != 't') goto yy194; -yy414: - YYDEBUG(414, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(415, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy414; - goto yy194; - } else { - if (yych <= ' ') goto yy414; - if (yych != ')') goto yy194; - } - YYDEBUG(416, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(417, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1226 "Zend/zend_language_scanner.l" - { - return T_DOUBLE_CAST; -} -#line 4815 "Zend/zend_language_scanner.c" -yy418: - YYDEBUG(418, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy419; - if (yych != 'u') goto yy194; -yy419: - YYDEBUG(419, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy420; - if (yych != 'b') goto yy194; -yy420: - YYDEBUG(420, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy421; - if (yych != 'l') goto yy194; -yy421: - YYDEBUG(421, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy414; - if (yych == 'e') goto yy414; - goto yy194; -yy422: - YYDEBUG(422, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy423; - if (yych != 'a') goto yy194; -yy423: - YYDEBUG(423, *YYCURSOR); - yych = *++YYCURSOR; - 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(429, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy428; - goto yy194; - } else { - if (yych <= ' ') goto yy428; - if (yych != ')') goto yy194; - } - YYDEBUG(430, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(431, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1230 "Zend/zend_language_scanner.l" - { - return T_STRING_CAST; -} -#line 4889 "Zend/zend_language_scanner.c" -yy432: - YYDEBUG(432, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy433; - if (yych != 'r') goto yy194; -yy433: - YYDEBUG(433, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy434; - if (yych != 'a') goto yy194; -yy434: - YYDEBUG(434, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy435; - if (yych != 'y') goto yy194; -yy435: - YYDEBUG(435, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(436, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy435; - goto yy194; - } else { - if (yych <= ' ') goto yy435; - if (yych != ')') goto yy194; - } - YYDEBUG(437, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(438, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1234 "Zend/zend_language_scanner.l" - { - return T_ARRAY_CAST; -} -#line 4926 "Zend/zend_language_scanner.c" -yy439: - YYDEBUG(439, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'J') goto yy440; - if (yych != 'j') goto yy194; -yy440: - YYDEBUG(440, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy441; - if (yych != 'e') goto yy194; -yy441: - YYDEBUG(441, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy442; - if (yych != 'c') goto yy194; -yy442: - YYDEBUG(442, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy443; - if (yych != 't') goto yy194; -yy443: - YYDEBUG(443, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(444, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy443; - goto yy194; - } else { - if (yych <= ' ') goto yy443; - if (yych != ')') goto yy194; - } - YYDEBUG(445, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(446, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1238 "Zend/zend_language_scanner.l" - { - return T_OBJECT_CAST; -} -#line 4968 "Zend/zend_language_scanner.c" -yy447: - YYDEBUG(447, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy457; - if (yych == 'n') goto yy457; - goto yy194; -yy448: - YYDEBUG(448, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy449; - if (yych != 'o') goto yy194; -yy449: - YYDEBUG(449, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy450; - if (yych != 'l') goto yy194; -yy450: - YYDEBUG(450, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy455; - if (yych == 'e') goto yy455; - goto yy452; -yy451: - YYDEBUG(451, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy452: - YYDEBUG(452, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy451; - goto yy194; - } else { - if (yych <= ' ') goto yy451; - if (yych != ')') goto yy194; - } - YYDEBUG(453, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(454, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1242 "Zend/zend_language_scanner.l" - { - return T_BOOL_CAST; -} -#line 5013 "Zend/zend_language_scanner.c" -yy455: - YYDEBUG(455, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy456; - if (yych != 'a') goto yy194; -yy456: - YYDEBUG(456, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy451; - if (yych == 'n') goto yy451; - goto yy194; -yy457: - YYDEBUG(457, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy458; - if (yych != 'a') goto yy194; -yy458: - YYDEBUG(458, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy459; - if (yych != 'r') goto yy194; -yy459: - YYDEBUG(459, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy428; - if (yych == 'y') goto yy428; - goto yy194; -yy460: - YYDEBUG(460, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy461; - if (yych != 's') goto yy194; -yy461: - YYDEBUG(461, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy462; - if (yych != 'e') goto yy194; -yy462: - YYDEBUG(462, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy463; - if (yych != 't') goto yy194; -yy463: - YYDEBUG(463, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(464, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy463; - goto yy194; - } else { - if (yych <= ' ') goto yy463; - if (yych != ')') goto yy194; - } - YYDEBUG(465, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(466, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1246 "Zend/zend_language_scanner.l" - { - return T_UNSET_CAST; -} -#line 5077 "Zend/zend_language_scanner.c" -yy467: - YYDEBUG(467, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy468; - if (yych != 'r') goto yy187; -yy468: - YYDEBUG(468, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(469, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1218 "Zend/zend_language_scanner.l" - { - return T_VAR; -} -#line 5095 "Zend/zend_language_scanner.c" -yy470: - YYDEBUG(470, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy474; - if (yych == 'm') goto yy474; - goto yy187; -yy471: - YYDEBUG(471, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy472; - if (yych != 'w') goto yy187; -yy472: - YYDEBUG(472, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(473, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1210 "Zend/zend_language_scanner.l" - { - return T_NEW; -} -#line 5119 "Zend/zend_language_scanner.c" -yy474: - YYDEBUG(474, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy475; - if (yych != 'e') goto yy187; -yy475: - YYDEBUG(475, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy476; - if (yych != 's') goto yy187; -yy476: - YYDEBUG(476, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy477; - if (yych != 'p') goto yy187; -yy477: - YYDEBUG(477, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy478; - if (yych != 'a') goto yy187; -yy478: - YYDEBUG(478, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy479; - if (yych != 'c') goto yy187; -yy479: - YYDEBUG(479, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy480; - if (yych != 'e') goto yy187; -yy480: - YYDEBUG(480, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(481, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1270 "Zend/zend_language_scanner.l" - { - return T_NAMESPACE; -} -#line 5162 "Zend/zend_language_scanner.c" -yy482: - YYDEBUG(482, *YYCURSOR); - yyaccept = 3; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(483, *YYCURSOR); - if (yych <= 'D') { - if (yych <= '/') goto yy190; - if (yych <= '9') goto yy482; - goto yy190; - } else { - if (yych <= 'E') goto yy193; - if (yych == 'e') goto yy193; - goto yy190; - } -yy484: - YYDEBUG(484, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(485, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1398 "Zend/zend_language_scanner.l" - { - return T_CONCAT_EQUAL; -} -#line 5188 "Zend/zend_language_scanner.c" -yy486: - YYDEBUG(486, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '.') goto yy194; - YYDEBUG(487, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(488, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1206 "Zend/zend_language_scanner.l" - { - return T_ELLIPSIS; -} -#line 5201 "Zend/zend_language_scanner.c" -yy489: - YYDEBUG(489, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(490, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1198 "Zend/zend_language_scanner.l" - { - return T_PAAMAYIM_NEKUDOTAYIM; -} -#line 5211 "Zend/zend_language_scanner.c" -yy491: - YYDEBUG(491, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy492: - YYDEBUG(492, *YYCURSOR); - if (yych <= '\f') { - if (yych <= 0x08) goto yy141; - if (yych <= '\n') goto yy491; - goto yy141; - } else { - if (yych <= '\r') goto yy491; - if (yych == ' ') goto yy491; - goto yy141; - } -yy493: - YYDEBUG(493, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(494, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1378 "Zend/zend_language_scanner.l" - { - return T_MINUS_EQUAL; -} -#line 5237 "Zend/zend_language_scanner.c" -yy495: - YYDEBUG(495, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(496, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1346 "Zend/zend_language_scanner.l" - { - return T_DEC; -} -#line 5247 "Zend/zend_language_scanner.c" -yy497: - YYDEBUG(497, *YYCURSOR); - ++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 5258 "Zend/zend_language_scanner.c" -yy499: - YYDEBUG(499, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'I') goto yy506; - if (yych <= 'N') goto yy187; - goto yy507; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy187; - goto yy506; - } else { - if (yych == 'o') goto yy507; - goto yy187; - } - } -yy500: - YYDEBUG(500, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy501; - if (yych != 'b') goto yy187; -yy501: - YYDEBUG(501, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy502; - if (yych != 'l') goto yy187; -yy502: - YYDEBUG(502, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy503; - if (yych != 'i') goto yy187; -yy503: - YYDEBUG(503, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy504; - if (yych != 'c') goto yy187; -yy504: - YYDEBUG(504, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(505, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1318 "Zend/zend_language_scanner.l" - { - return T_PUBLIC; -} -#line 5307 "Zend/zend_language_scanner.c" -yy506: - YYDEBUG(506, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'V') { - if (yych == 'N') goto yy515; - if (yych <= 'U') goto yy187; - goto yy516; - } else { - if (yych <= 'n') { - if (yych <= 'm') goto yy187; - goto yy515; - } else { - if (yych == 'v') goto yy516; - goto yy187; - } - } -yy507: - YYDEBUG(507, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy508; - if (yych != 't') goto yy187; -yy508: - YYDEBUG(508, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy509; - if (yych != 'e') goto yy187; -yy509: - YYDEBUG(509, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy510; - if (yych != 'c') goto yy187; -yy510: - YYDEBUG(510, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy511; - if (yych != 't') goto yy187; -yy511: - YYDEBUG(511, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy512; - if (yych != 'e') goto yy187; -yy512: - YYDEBUG(512, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy513; - if (yych != 'd') goto yy187; -yy513: - YYDEBUG(513, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(514, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1314 "Zend/zend_language_scanner.l" - { - return T_PROTECTED; -} -#line 5366 "Zend/zend_language_scanner.c" -yy515: - YYDEBUG(515, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy521; - if (yych == 't') goto yy521; - goto yy187; -yy516: - YYDEBUG(516, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy517; - if (yych != 'a') goto yy187; -yy517: - YYDEBUG(517, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy518; - if (yych != 't') goto yy187; -yy518: - YYDEBUG(518, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy519; - if (yych != 'e') goto yy187; -yy519: - YYDEBUG(519, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(520, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1310 "Zend/zend_language_scanner.l" - { - return T_PRIVATE; -} -#line 5400 "Zend/zend_language_scanner.c" -yy521: - YYDEBUG(521, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(522, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1146 "Zend/zend_language_scanner.l" - { - return T_PRINT; -} -#line 5413 "Zend/zend_language_scanner.c" -yy523: - YYDEBUG(523, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy528; - if (yych == 'o') goto yy528; - goto yy187; -yy524: - YYDEBUG(524, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy525; - if (yych != 't') goto yy187; -yy525: - YYDEBUG(525, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy526; - if (yych != 'o') goto yy187; -yy526: - YYDEBUG(526, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(527, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1138 "Zend/zend_language_scanner.l" - { - return T_GOTO; -} -#line 5442 "Zend/zend_language_scanner.c" -yy528: - YYDEBUG(528, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy529; - if (yych != 'b') goto yy187; -yy529: - YYDEBUG(529, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy530; - if (yych != 'a') goto yy187; -yy530: - YYDEBUG(530, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy531; - if (yych != 'l') goto yy187; -yy531: - YYDEBUG(531, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(532, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1282 "Zend/zend_language_scanner.l" - { - return T_GLOBAL; -} -#line 5470 "Zend/zend_language_scanner.c" -yy533: - YYDEBUG(533, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy541; - goto yy194; -yy534: - YYDEBUG(534, *YYCURSOR); - yych = *++YYCURSOR; - goto yy181; -yy535: - YYDEBUG(535, *YYCURSOR); - yych = *++YYCURSOR; - goto yy179; -yy536: - YYDEBUG(536, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy537; - if (yych != 'e') goto yy187; -yy537: - YYDEBUG(537, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy538; - if (yych != 'a') goto yy187; -yy538: - YYDEBUG(538, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'K') goto yy539; - if (yych != 'k') goto yy187; -yy539: - YYDEBUG(539, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(540, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1130 "Zend/zend_language_scanner.l" - { - return T_BREAK; -} -#line 5511 "Zend/zend_language_scanner.c" -yy541: - YYDEBUG(541, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy270; - goto yy194; -yy542: - YYDEBUG(542, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy549; - if (yych == 'a') goto yy549; - goto yy187; -yy543: - YYDEBUG(543, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy544; - if (yych != 'i') goto yy187; -yy544: - YYDEBUG(544, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy545; - if (yych != 't') goto yy187; -yy545: - YYDEBUG(545, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy546; - if (yych != 'c') goto yy187; -yy546: - YYDEBUG(546, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy547; - if (yych != 'h') goto yy187; -yy547: - YYDEBUG(547, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(548, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1114 "Zend/zend_language_scanner.l" - { - return T_SWITCH; -} -#line 5555 "Zend/zend_language_scanner.c" -yy549: - YYDEBUG(549, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy550; - if (yych != 't') goto yy187; -yy550: - YYDEBUG(550, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy551; - if (yych != 'i') goto yy187; -yy551: - YYDEBUG(551, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy552; - if (yych != 'c') goto yy187; -yy552: - YYDEBUG(552, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(553, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1298 "Zend/zend_language_scanner.l" - { - return T_STATIC; -} -#line 5583 "Zend/zend_language_scanner.c" -yy554: - YYDEBUG(554, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy565; - if (yych == 's') goto yy565; - goto yy187; -yy555: - YYDEBUG(555, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy563; - if (yych == 'd') goto yy563; - goto yy187; -yy556: - YYDEBUG(556, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy559; - if (yych == 'r') goto yy559; - goto yy187; -yy557: - YYDEBUG(557, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(558, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1110 "Zend/zend_language_scanner.l" - { - return T_AS; -} -#line 5614 "Zend/zend_language_scanner.c" -yy559: - YYDEBUG(559, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy560; - if (yych != 'a') goto yy187; -yy560: - YYDEBUG(560, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy561; - if (yych != 'y') goto yy187; -yy561: - YYDEBUG(561, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(562, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1334 "Zend/zend_language_scanner.l" - { - return T_ARRAY; -} -#line 5637 "Zend/zend_language_scanner.c" -yy563: - YYDEBUG(563, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(564, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1438 "Zend/zend_language_scanner.l" - { - return T_LOGICAL_AND; -} -#line 5650 "Zend/zend_language_scanner.c" -yy565: - YYDEBUG(565, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy566; - if (yych != 't') goto yy187; -yy566: - YYDEBUG(566, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy567; - if (yych != 'r') goto yy187; -yy567: - YYDEBUG(567, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy568; - if (yych != 'a') goto yy187; -yy568: - YYDEBUG(568, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy569; - if (yych != 'c') goto yy187; -yy569: - YYDEBUG(569, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy570; - if (yych != 't') goto yy187; -yy570: - YYDEBUG(570, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(571, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1302 "Zend/zend_language_scanner.l" - { - return T_ABSTRACT; -} -#line 5688 "Zend/zend_language_scanner.c" -yy572: - YYDEBUG(572, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy573; - if (yych != 'i') goto yy187; -yy573: - YYDEBUG(573, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy574; - if (yych != 'l') goto yy187; -yy574: - YYDEBUG(574, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy575; - if (yych != 'e') goto yy187; -yy575: - YYDEBUG(575, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(576, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1070 "Zend/zend_language_scanner.l" - { - return T_WHILE; -} -#line 5716 "Zend/zend_language_scanner.c" -yy577: - YYDEBUG(577, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(578, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1054 "Zend/zend_language_scanner.l" - { - return T_IF; -} -#line 5729 "Zend/zend_language_scanner.c" -yy579: - YYDEBUG(579, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy621; - if (yych == 'p') goto yy621; - goto yy187; -yy580: - YYDEBUG(580, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych <= 'C') { - if (yych <= 'B') goto yy187; - goto yy588; - } else { - if (yych <= 'R') goto yy187; - if (yych <= 'S') goto yy586; - goto yy587; - } - } else { - if (yych <= 'r') { - if (yych == 'c') goto yy588; - goto yy187; - } else { - if (yych <= 's') goto yy586; - if (yych <= 't') goto yy587; - goto yy187; - } - } -yy581: - YYDEBUG(581, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy582; - if (yych != 's') goto yy187; -yy582: - YYDEBUG(582, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy583; - if (yych != 'e') goto yy187; -yy583: - YYDEBUG(583, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy584; - if (yych != 't') goto yy187; -yy584: - YYDEBUG(584, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(585, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1286 "Zend/zend_language_scanner.l" - { - return T_ISSET; -} -#line 5785 "Zend/zend_language_scanner.c" -yy586: - YYDEBUG(586, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy607; - if (yych == 't') goto yy607; - goto yy187; -yy587: - YYDEBUG(587, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy600; - if (yych == 'e') goto yy600; - goto yy187; -yy588: - YYDEBUG(588, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy589; - if (yych != 'l') goto yy187; -yy589: - YYDEBUG(589, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy590; - if (yych != 'u') goto yy187; -yy590: - YYDEBUG(590, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy591; - if (yych != 'd') goto yy187; -yy591: - YYDEBUG(591, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy592; - if (yych != 'e') goto yy187; -yy592: - YYDEBUG(592, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy186; - } else { - if (yych <= '@') goto yy593; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= '`') { - if (yych <= '_') goto yy594; - } else { - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy593: - YYDEBUG(593, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1254 "Zend/zend_language_scanner.l" - { - return T_INCLUDE; -} -#line 5843 "Zend/zend_language_scanner.c" -yy594: - YYDEBUG(594, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy595; - if (yych != 'o') goto yy187; -yy595: - YYDEBUG(595, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy596; - if (yych != 'n') goto yy187; -yy596: - YYDEBUG(596, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy597; - if (yych != 'c') goto yy187; -yy597: - YYDEBUG(597, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy598; - if (yych != 'e') goto yy187; -yy598: - YYDEBUG(598, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(599, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1258 "Zend/zend_language_scanner.l" - { - return T_INCLUDE_ONCE; -} -#line 5876 "Zend/zend_language_scanner.c" -yy600: - YYDEBUG(600, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy601; - if (yych != 'r') goto yy187; -yy601: - YYDEBUG(601, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy602; - if (yych != 'f') goto yy187; -yy602: - YYDEBUG(602, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy603; - if (yych != 'a') goto yy187; -yy603: - YYDEBUG(603, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy604; - if (yych != 'c') goto yy187; -yy604: - YYDEBUG(604, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy605; - if (yych != 'e') goto yy187; -yy605: - YYDEBUG(605, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(606, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1154 "Zend/zend_language_scanner.l" - { - return T_INTERFACE; -} -#line 5914 "Zend/zend_language_scanner.c" -yy607: - YYDEBUG(607, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'E') { - if (yych == 'A') goto yy608; - if (yych <= 'D') goto yy187; - goto yy609; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy187; - } else { - if (yych == 'e') goto yy609; - goto yy187; - } - } -yy608: - YYDEBUG(608, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy615; - if (yych == 'n') goto yy615; - goto yy187; -yy609: - YYDEBUG(609, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy610; - if (yych != 'a') goto yy187; -yy610: - YYDEBUG(610, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy611; - if (yych != 'd') goto yy187; -yy611: - YYDEBUG(611, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy612; - if (yych != 'o') goto yy187; -yy612: - YYDEBUG(612, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy613; - if (yych != 'f') goto yy187; -yy613: - YYDEBUG(613, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(614, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1278 "Zend/zend_language_scanner.l" - { - return T_INSTEADOF; -} -#line 5968 "Zend/zend_language_scanner.c" -yy615: - YYDEBUG(615, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy616; - if (yych != 'c') goto yy187; -yy616: - YYDEBUG(616, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy617; - if (yych != 'e') goto yy187; -yy617: - YYDEBUG(617, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy618; - if (yych != 'o') goto yy187; -yy618: - YYDEBUG(618, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy619; - if (yych != 'f') goto yy187; -yy619: - YYDEBUG(619, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(620, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1106 "Zend/zend_language_scanner.l" - { - return T_INSTANCEOF; -} -#line 6001 "Zend/zend_language_scanner.c" -yy621: - YYDEBUG(621, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy622; - if (yych != 'l') goto yy187; -yy622: - YYDEBUG(622, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy623; - if (yych != 'e') goto yy187; -yy623: - YYDEBUG(623, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy624; - if (yych != 'm') goto yy187; -yy624: - YYDEBUG(624, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy625; - if (yych != 'e') goto yy187; -yy625: - YYDEBUG(625, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy626; - if (yych != 'n') goto yy187; -yy626: - YYDEBUG(626, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy627; - if (yych != 't') goto yy187; -yy627: - YYDEBUG(627, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy628; - if (yych != 's') goto yy187; -yy628: - YYDEBUG(628, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(629, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1166 "Zend/zend_language_scanner.l" - { - return T_IMPLEMENTS; -} -#line 6049 "Zend/zend_language_scanner.c" -yy630: - YYDEBUG(630, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy638; - if (yych == 'r') goto yy638; - goto yy187; -yy631: - YYDEBUG(631, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'Y') { - if (yych == 'A') goto yy634; - if (yych <= 'X') goto yy187; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy187; - goto yy634; - } else { - if (yych != 'y') goto yy187; - } - } - YYDEBUG(632, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(633, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1038 "Zend/zend_language_scanner.l" - { - return T_TRY; -} -#line 6081 "Zend/zend_language_scanner.c" -yy634: - YYDEBUG(634, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy635; - if (yych != 'i') goto yy187; -yy635: - YYDEBUG(635, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy636; - if (yych != 't') goto yy187; -yy636: - YYDEBUG(636, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(637, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1158 "Zend/zend_language_scanner.l" - { - return T_TRAIT; -} -#line 6104 "Zend/zend_language_scanner.c" -yy638: - YYDEBUG(638, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy639; - if (yych != 'o') goto yy187; -yy639: - YYDEBUG(639, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy640; - if (yych != 'w') goto yy187; -yy640: - YYDEBUG(640, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(641, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1050 "Zend/zend_language_scanner.l" - { - return T_THROW; -} -#line 6127 "Zend/zend_language_scanner.c" -yy642: - YYDEBUG(642, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy643; - if (yych != 'e') goto yy187; -yy643: - YYDEBUG(643, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy644; - if (yych != 'l') goto yy187; -yy644: - YYDEBUG(644, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy645; - if (yych != 'd') goto yy187; -yy645: - YYDEBUG(645, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(646, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1034 "Zend/zend_language_scanner.l" - { - return T_YIELD; -} -#line 6155 "Zend/zend_language_scanner.c" -yy647: - YYDEBUG(647, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'Q') goto yy649; - if (yych <= 'S') goto yy187; - } else { - if (yych <= 'q') { - if (yych <= 'p') goto yy187; - goto yy649; - } else { - if (yych != 't') goto yy187; - } - } - YYDEBUG(648, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy661; - if (yych == 'u') goto yy661; - goto yy187; -yy649: - YYDEBUG(649, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy650; - if (yych != 'u') goto yy187; -yy650: - YYDEBUG(650, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy651; - if (yych != 'i') goto yy187; -yy651: - YYDEBUG(651, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy652; - if (yych != 'r') goto yy187; -yy652: - YYDEBUG(652, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy653; - if (yych != 'e') goto yy187; -yy653: - YYDEBUG(653, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy186; - } else { - if (yych <= '@') goto yy654; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= '`') { - if (yych <= '_') goto yy655; - } else { - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy654: - YYDEBUG(654, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1262 "Zend/zend_language_scanner.l" - { - return T_REQUIRE; -} -#line 6220 "Zend/zend_language_scanner.c" -yy655: - YYDEBUG(655, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy656; - if (yych != 'o') goto yy187; -yy656: - YYDEBUG(656, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy657; - if (yych != 'n') goto yy187; -yy657: - YYDEBUG(657, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy658; - if (yych != 'c') goto yy187; -yy658: - YYDEBUG(658, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy659; - if (yych != 'e') goto yy187; -yy659: - YYDEBUG(659, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(660, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1266 "Zend/zend_language_scanner.l" - { - return T_REQUIRE_ONCE; -} -#line 6253 "Zend/zend_language_scanner.c" -yy661: - YYDEBUG(661, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy662; - if (yych != 'r') goto yy187; -yy662: - YYDEBUG(662, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy663; - if (yych != 'n') goto yy187; -yy663: - YYDEBUG(663, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(664, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1030 "Zend/zend_language_scanner.l" - { - return T_RETURN; -} -#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 yy688; - } else { - if (yych <= 'R') goto yy187; - if (yych <= 'S') goto yy687; - goto yy686; - } - } else { - if (yych <= 'r') { - if (yych == 'l') goto yy688; - goto yy187; - } else { - if (yych <= 's') goto yy687; - if (yych <= 't') goto yy686; - goto yy187; - } - } -yy666: - YYDEBUG(666, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'A') goto yy678; - if (yych <= 'N') goto yy187; - goto yy679; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy187; - goto yy678; - } else { - if (yych == 'o') goto yy679; - goto yy187; - } - } -yy667: - YYDEBUG(667, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy668; - if (yych != 'n') goto yy187; -yy668: - YYDEBUG(668, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych <= 'R') goto yy187; - if (yych >= 'T') goto yy670; - } else { - if (yych <= 'r') goto yy187; - if (yych <= 's') goto yy669; - if (yych <= 't') goto yy670; - goto yy187; - } -yy669: - YYDEBUG(669, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy676; - if (yych == 't') goto yy676; - goto yy187; -yy670: - YYDEBUG(670, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy671; - if (yych != 'i') goto yy187; -yy671: - YYDEBUG(671, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy672; - if (yych != 'n') goto yy187; -yy672: - YYDEBUG(672, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy673; - if (yych != 'u') goto yy187; -yy673: - YYDEBUG(673, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy674; - if (yych != 'e') goto yy187; -yy674: - YYDEBUG(674, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(675, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1134 "Zend/zend_language_scanner.l" - { - return T_CONTINUE; -} -#line 6370 "Zend/zend_language_scanner.c" -yy676: - YYDEBUG(676, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(677, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1026 "Zend/zend_language_scanner.l" - { - return T_CONST; -} -#line 6383 "Zend/zend_language_scanner.c" -yy678: - YYDEBUG(678, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy683; - if (yych == 's') goto yy683; - goto yy187; -yy679: - YYDEBUG(679, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy680; - if (yych != 'n') goto yy187; -yy680: - YYDEBUG(680, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy681; - if (yych != 'e') goto yy187; -yy681: - YYDEBUG(681, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(682, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1214 "Zend/zend_language_scanner.l" - { - return T_CLONE; -} -#line 6412 "Zend/zend_language_scanner.c" -yy683: - YYDEBUG(683, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy684; - if (yych != 's') goto yy187; -yy684: - YYDEBUG(684, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(685, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1150 "Zend/zend_language_scanner.l" - { - return T_CLASS; -} -#line 6430 "Zend/zend_language_scanner.c" -yy686: - YYDEBUG(686, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy697; - if (yych == 'c') goto yy697; - goto yy187; -yy687: - YYDEBUG(687, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy695; - if (yych == 'e') goto yy695; - goto yy187; -yy688: - YYDEBUG(688, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy689; - if (yych != 'l') goto yy187; -yy689: - YYDEBUG(689, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy690; - if (yych != 'a') goto yy187; -yy690: - YYDEBUG(690, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy691; - if (yych != 'b') goto yy187; -yy691: - YYDEBUG(691, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy692; - if (yych != 'l') goto yy187; -yy692: - YYDEBUG(692, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy693; - if (yych != 'e') goto yy187; -yy693: - YYDEBUG(693, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(694, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1338 "Zend/zend_language_scanner.l" - { - return T_CALLABLE; -} -#line 6480 "Zend/zend_language_scanner.c" -yy695: - YYDEBUG(695, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(696, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1122 "Zend/zend_language_scanner.l" - { - return T_CASE; -} -#line 6493 "Zend/zend_language_scanner.c" -yy697: - YYDEBUG(697, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy698; - if (yych != 'h') goto yy187; -yy698: - YYDEBUG(698, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(699, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1042 "Zend/zend_language_scanner.l" - { - return T_CATCH; -} -#line 6511 "Zend/zend_language_scanner.c" -yy700: - YYDEBUG(700, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy717; - if (yych == 'n') goto yy717; - goto yy187; -yy701: - YYDEBUG(701, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy710; - if (yych == 'r') goto yy710; - goto yy187; -yy702: - YYDEBUG(702, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy703; - if (yych != 'n') goto yy187; -yy703: - YYDEBUG(703, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy704; - if (yych != 'c') goto yy187; -yy704: - YYDEBUG(704, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy705; - if (yych != 't') goto yy187; -yy705: - YYDEBUG(705, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy706; - if (yych != 'i') goto yy187; -yy706: - YYDEBUG(706, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy707; - if (yych != 'o') goto yy187; -yy707: - YYDEBUG(707, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy708; - if (yych != 'n') goto yy187; -yy708: - YYDEBUG(708, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(709, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1022 "Zend/zend_language_scanner.l" - { - return T_FUNCTION; -} -#line 6566 "Zend/zend_language_scanner.c" -yy710: - YYDEBUG(710, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy711; - if (yych <= '9') goto yy186; - } else { - if (yych == 'E') goto yy712; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= 'd') { - if (yych != '`') goto yy186; - } else { - if (yych <= 'e') goto yy712; - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy711: - YYDEBUG(711, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1082 "Zend/zend_language_scanner.l" - { - return T_FOR; -} -#line 6594 "Zend/zend_language_scanner.c" -yy712: - YYDEBUG(712, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy713; - if (yych != 'a') goto yy187; -yy713: - YYDEBUG(713, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy714; - if (yych != 'c') goto yy187; -yy714: - YYDEBUG(714, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy715; - if (yych != 'h') goto yy187; -yy715: - YYDEBUG(715, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(716, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1090 "Zend/zend_language_scanner.l" - { - return T_FOREACH; -} -#line 6622 "Zend/zend_language_scanner.c" -yy717: - YYDEBUG(717, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy718; - if (yych != 'a') goto yy187; -yy718: - YYDEBUG(718, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy719; - if (yych != 'l') goto yy187; -yy719: - YYDEBUG(719, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy720; - if (yych <= '9') goto yy186; - } else { - if (yych == 'L') goto yy721; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= 'k') { - if (yych != '`') goto yy186; - } else { - if (yych <= 'l') goto yy721; - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy720: - YYDEBUG(720, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1306 "Zend/zend_language_scanner.l" - { - return T_FINAL; -} -#line 6660 "Zend/zend_language_scanner.c" -yy721: - YYDEBUG(721, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy722; - if (yych != 'y') goto yy187; -yy722: - YYDEBUG(722, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(723, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1046 "Zend/zend_language_scanner.l" - { - return T_FINALLY; -} -#line 6678 "Zend/zend_language_scanner.c" -yy724: - YYDEBUG(724, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'F') { - if (yych == 'C') goto yy730; - if (yych <= 'E') goto yy187; - goto yy731; - } else { - if (yych <= 'c') { - if (yych <= 'b') goto yy187; - goto yy730; - } else { - if (yych == 'f') goto yy731; - goto yy187; - } - } -yy725: - YYDEBUG(725, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy728; - if (yych == 'e') goto yy728; - goto yy187; -yy726: - YYDEBUG(726, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(727, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1078 "Zend/zend_language_scanner.l" - { - return T_DO; -} -#line 6713 "Zend/zend_language_scanner.c" -yy728: - YYDEBUG(728, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(729, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1018 "Zend/zend_language_scanner.l" - { - return T_EXIT; -} -#line 6726 "Zend/zend_language_scanner.c" -yy730: - YYDEBUG(730, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy737; - if (yych == 'l') goto yy737; - goto yy187; -yy731: - YYDEBUG(731, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy732; - if (yych != 'a') goto yy187; -yy732: - YYDEBUG(732, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy733; - if (yych != 'u') goto yy187; -yy733: - YYDEBUG(733, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy734; - if (yych != 'l') goto yy187; -yy734: - YYDEBUG(734, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy735; - if (yych != 't') goto yy187; -yy735: - YYDEBUG(735, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(736, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1126 "Zend/zend_language_scanner.l" - { - return T_DEFAULT; -} -#line 6765 "Zend/zend_language_scanner.c" -yy737: - YYDEBUG(737, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy738; - if (yych != 'a') goto yy187; -yy738: - YYDEBUG(738, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy739; - if (yych != 'r') goto yy187; -yy739: - YYDEBUG(739, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy740; - if (yych != 'e') goto yy187; -yy740: - YYDEBUG(740, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(741, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1098 "Zend/zend_language_scanner.l" - { - return T_DECLARE; -} -#line 6793 "Zend/zend_language_scanner.c" -yy742: - YYDEBUG(742, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy804; - if (yych == 'h') goto yy804; - goto yy187; -yy743: - YYDEBUG(743, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy798; - if (yych == 's') goto yy798; - goto yy187; -yy744: - YYDEBUG(744, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy794; - if (yych == 'p') goto yy794; - goto yy187; -yy745: - YYDEBUG(745, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy760; - if (yych == 'd') goto yy760; - goto yy187; -yy746: - YYDEBUG(746, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy757; - if (yych == 'a') goto yy757; - goto yy187; -yy747: - YYDEBUG(747, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'I') goto yy748; - if (yych <= 'S') goto yy187; - goto yy749; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy187; - } else { - if (yych == 't') goto yy749; - goto yy187; - } - } -yy748: - YYDEBUG(748, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy755; - if (yych == 't') goto yy755; - goto yy187; -yy749: - YYDEBUG(749, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy750; - if (yych != 'e') goto yy187; -yy750: - YYDEBUG(750, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy751; - if (yych != 'n') goto yy187; -yy751: - YYDEBUG(751, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy752; - if (yych != 'd') goto yy187; -yy752: - YYDEBUG(752, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy753; - if (yych != 's') goto yy187; -yy753: - YYDEBUG(753, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(754, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1162 "Zend/zend_language_scanner.l" - { - return T_EXTENDS; -} -#line 6877 "Zend/zend_language_scanner.c" -yy755: - YYDEBUG(755, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(756, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1014 "Zend/zend_language_scanner.l" - { - return T_EXIT; -} -#line 6890 "Zend/zend_language_scanner.c" -yy757: - YYDEBUG(757, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy758; - if (yych != 'l') goto yy187; -yy758: - YYDEBUG(758, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(759, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1250 "Zend/zend_language_scanner.l" - { - return T_EVAL; -} -#line 6908 "Zend/zend_language_scanner.c" -yy760: - YYDEBUG(760, *YYCURSOR); - yych = *++YYCURSOR; - YYDEBUG(-1, yych); - switch (yych) { - case 'D': - case 'd': goto yy761; - case 'F': - case 'f': goto yy762; - case 'I': - case 'i': goto yy763; - case 'S': - case 's': goto yy764; - case 'W': - case 'w': goto yy765; - default: goto yy187; - } -yy761: - YYDEBUG(761, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy787; - if (yych == 'e') goto yy787; - goto yy187; -yy762: - YYDEBUG(762, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy779; - if (yych == 'o') goto yy779; - goto yy187; -yy763: - YYDEBUG(763, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy777; - if (yych == 'f') goto yy777; - goto yy187; -yy764: - YYDEBUG(764, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy771; - if (yych == 'w') goto yy771; - goto yy187; -yy765: - YYDEBUG(765, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy766; - if (yych != 'h') goto yy187; -yy766: - YYDEBUG(766, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy767; - if (yych != 'i') goto yy187; -yy767: - YYDEBUG(767, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy768; - if (yych != 'l') goto yy187; -yy768: - YYDEBUG(768, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy769; - if (yych != 'e') goto yy187; -yy769: - YYDEBUG(769, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(770, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1074 "Zend/zend_language_scanner.l" - { - return T_ENDWHILE; -} -#line 6982 "Zend/zend_language_scanner.c" -yy771: - YYDEBUG(771, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy772; - if (yych != 'i') goto yy187; -yy772: - YYDEBUG(772, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy773; - if (yych != 't') goto yy187; -yy773: - YYDEBUG(773, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy774; - if (yych != 'c') goto yy187; -yy774: - YYDEBUG(774, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy775; - if (yych != 'h') goto yy187; -yy775: - YYDEBUG(775, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(776, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1118 "Zend/zend_language_scanner.l" - { - return T_ENDSWITCH; -} -#line 7015 "Zend/zend_language_scanner.c" -yy777: - YYDEBUG(777, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(778, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1062 "Zend/zend_language_scanner.l" - { - return T_ENDIF; -} -#line 7028 "Zend/zend_language_scanner.c" -yy779: - YYDEBUG(779, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy780; - if (yych != 'r') goto yy187; -yy780: - YYDEBUG(780, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy781; - if (yych <= '9') goto yy186; - } else { - if (yych == 'E') goto yy782; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= 'd') { - if (yych != '`') goto yy186; - } else { - if (yych <= 'e') goto yy782; - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy781: - YYDEBUG(781, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1086 "Zend/zend_language_scanner.l" - { - return T_ENDFOR; -} -#line 7061 "Zend/zend_language_scanner.c" -yy782: - YYDEBUG(782, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy783; - if (yych != 'a') goto yy187; -yy783: - YYDEBUG(783, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy784; - if (yych != 'c') goto yy187; -yy784: - YYDEBUG(784, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy785; - if (yych != 'h') goto yy187; -yy785: - YYDEBUG(785, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(786, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1094 "Zend/zend_language_scanner.l" - { - return T_ENDFOREACH; -} -#line 7089 "Zend/zend_language_scanner.c" -yy787: - YYDEBUG(787, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy788; - if (yych != 'c') goto yy187; -yy788: - YYDEBUG(788, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy789; - if (yych != 'l') goto yy187; -yy789: - YYDEBUG(789, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy790; - if (yych != 'a') goto yy187; -yy790: - YYDEBUG(790, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy791; - if (yych != 'r') goto yy187; -yy791: - YYDEBUG(791, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy792; - if (yych != 'e') goto yy187; -yy792: - YYDEBUG(792, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(793, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1102 "Zend/zend_language_scanner.l" - { - return T_ENDDECLARE; -} -#line 7127 "Zend/zend_language_scanner.c" -yy794: - YYDEBUG(794, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy795; - if (yych != 't') goto yy187; -yy795: - YYDEBUG(795, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy796; - if (yych != 'y') goto yy187; -yy796: - YYDEBUG(796, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(797, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1290 "Zend/zend_language_scanner.l" - { - return T_EMPTY; -} -#line 7150 "Zend/zend_language_scanner.c" -yy798: - YYDEBUG(798, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy799; - if (yych != 'e') goto yy187; -yy799: - YYDEBUG(799, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy800; - if (yych <= '9') goto yy186; - } else { - if (yych == 'I') goto yy801; - if (yych <= 'Z') goto yy186; - } - } else { - if (yych <= 'h') { - if (yych != '`') goto yy186; - } else { - if (yych <= 'i') goto yy801; - if (yych <= 'z') goto yy186; - if (yych >= 0x7F) goto yy186; - } - } -yy800: - YYDEBUG(800, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1066 "Zend/zend_language_scanner.l" - { - return T_ELSE; -} -#line 7183 "Zend/zend_language_scanner.c" -yy801: - YYDEBUG(801, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy802; - if (yych != 'f') goto yy187; -yy802: - YYDEBUG(802, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(803, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1058 "Zend/zend_language_scanner.l" - { - return T_ELSEIF; -} -#line 7201 "Zend/zend_language_scanner.c" -yy804: - YYDEBUG(804, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy805; - if (yych != 'o') goto yy187; -yy805: - YYDEBUG(805, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy186; - } - YYDEBUG(806, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1142 "Zend/zend_language_scanner.l" - { - return T_ECHO; -} -#line 7219 "Zend/zend_language_scanner.c" - } -/* *********************************** */ -yyc_ST_LOOKING_FOR_PROPERTY: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 128, 128, 0, 0, 128, 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, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 0, 0, 0, 0, 0, 0, - 0, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 0, 0, 0, 0, 64, - 0, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 0, 0, 0, 0, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 64, 64, 64, 64, 64, 64, - 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(807, *YYCURSOR); - YYFILL(2); - yych = *YYCURSOR; - if (yych <= '-') { - if (yych <= '\r') { - if (yych <= 0x08) goto yy815; - if (yych <= '\n') goto yy809; - if (yych <= '\f') goto yy815; - } else { - if (yych == ' ') goto yy809; - if (yych <= ',') goto yy815; - goto yy811; - } - } else { - if (yych <= '_') { - if (yych <= '@') goto yy815; - if (yych <= 'Z') goto yy813; - if (yych <= '^') goto yy815; - goto yy813; - } else { - if (yych <= '`') goto yy815; - if (yych <= 'z') goto yy813; - if (yych <= '~') goto yy815; - goto yy813; - } - } -yy809: - YYDEBUG(809, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy821; -yy810: - YYDEBUG(810, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1175 "Zend/zend_language_scanner.l" - { - ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */ - HANDLE_NEWLINES(yytext, yyleng); - return T_WHITESPACE; -} -#line 7298 "Zend/zend_language_scanner.c" -yy811: - YYDEBUG(811, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '>') goto yy818; -yy812: - YYDEBUG(812, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1192 "Zend/zend_language_scanner.l" - { - yyless(0); - yy_pop_state(TSRMLS_C); - goto restart; -} -#line 7312 "Zend/zend_language_scanner.c" -yy813: - YYDEBUG(813, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy817; -yy814: - YYDEBUG(814, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1185 "Zend/zend_language_scanner.l" - { - yy_pop_state(TSRMLS_C); - zend_copy_value(zendlval, yytext, yyleng); - zendlval->type = IS_STRING; - return T_STRING; -} -#line 7328 "Zend/zend_language_scanner.c" -yy815: - YYDEBUG(815, *YYCURSOR); - yych = *++YYCURSOR; - goto yy812; -yy816: - YYDEBUG(816, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy817: - YYDEBUG(817, *YYCURSOR); - if (yybm[0+yych] & 64) { - goto yy816; - } - goto yy814; -yy818: - YYDEBUG(818, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(819, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1181 "Zend/zend_language_scanner.l" - { - return T_OBJECT_OPERATOR; -} -#line 7353 "Zend/zend_language_scanner.c" -yy820: - YYDEBUG(820, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy821: - YYDEBUG(821, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy820; - } - goto yy810; - } -/* *********************************** */ -yyc_ST_LOOKING_FOR_VARNAME: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(822, *YYCURSOR); - YYFILL(2); - yych = *YYCURSOR; - if (yych <= '_') { - if (yych <= '@') goto yy826; - if (yych <= 'Z') goto yy824; - if (yych <= '^') goto yy826; - } else { - if (yych <= '`') goto yy826; - if (yych <= 'z') goto yy824; - if (yych <= '~') goto yy826; - } -yy824: - YYDEBUG(824, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '_') { - if (yych <= '@') { - if (yych <= '/') goto yy825; - if (yych <= '9') goto yy828; - } else { - if (yych <= '[') goto yy828; - if (yych >= '_') goto yy828; - } - } else { - if (yych <= '|') { - if (yych <= '`') goto yy825; - if (yych <= 'z') goto yy828; - } else { - if (yych != '~') goto yy828; - } - } -yy825: - YYDEBUG(825, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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 7445 "Zend/zend_language_scanner.c" -yy826: - YYDEBUG(826, *YYCURSOR); - yych = *++YYCURSOR; - goto yy825; -yy827: - YYDEBUG(827, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy828: - YYDEBUG(828, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy827; - } - if (yych == '[') goto yy830; - if (yych == '}') goto yy830; - YYDEBUG(829, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy825; -yy830: - YYDEBUG(830, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(831, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1480 "Zend/zend_language_scanner.l" - { - yyless(yyleng - 1); - zend_copy_value(zendlval, yytext, yyleng); - zendlval->type = IS_STRING; - yy_pop_state(TSRMLS_C); - yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); - return T_STRING_VARNAME; -} -#line 7479 "Zend/zend_language_scanner.c" - } -/* *********************************** */ -yyc_ST_NOWDOC: - YYDEBUG(832, *YYCURSOR); - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(834, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(835, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2310 "Zend/zend_language_scanner.l" - { - int newline = 0; - - zend_heredoc_label *heredoc_label = zend_ptr_stack_top(&SCNG(heredoc_label_stack)); - - if (YYCURSOR > YYLIMIT) { - return 0; - } - - YYCURSOR--; - - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '\r': - if (*YYCURSOR == '\n') { - YYCURSOR++; - } - /* fall through */ - case '\n': - /* Check for ending label on the next line */ - if (IS_LABEL_START(*YYCURSOR) && heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, heredoc_label->label, heredoc_label->length)) { - YYCTYPE *end = YYCURSOR + heredoc_label->length; - - if (*end == ';') { - end++; - } - - if (*end == '\n' || *end == '\r') { - /* newline before label will be subtracted from returned text, but - * yyleng/yytext will include it, for zend_highlight/strip, tokenizer, etc. */ - if (YYCURSOR[-2] == '\r' && YYCURSOR[-1] == '\n') { - newline = 2; /* Windows newline */ - } else { - newline = 1; - } - - CG(increment_lineno) = 1; /* For newline before label */ - BEGIN(ST_END_HEREDOC); - - goto nowdoc_scan_done; - } - } - /* fall through */ - default: - continue; - } - } - -nowdoc_scan_done: - yyleng = YYCURSOR - SCNG(yy_text); - - zend_copy_value(zendlval, yytext, yyleng - newline); - zendlval->type = IS_STRING; - HANDLE_NEWLINES(yytext, yyleng - newline); - return T_ENCAPSED_AND_WHITESPACE; -} -#line 7547 "Zend/zend_language_scanner.c" -/* *********************************** */ -yyc_ST_VAR_OFFSET: - { - static const unsigned char yybm[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 240, 240, 112, 112, 112, 112, 112, 112, - 112, 112, 0, 0, 0, 0, 0, 0, - 0, 80, 80, 80, 80, 80, 80, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 0, 0, 0, 0, 16, - 0, 80, 80, 80, 80, 80, 80, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 0, 0, 0, 0, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - }; - YYDEBUG(836, *YYCURSOR); - YYFILL(3); - yych = *YYCURSOR; - if (yych <= '/') { - if (yych <= ' ') { - if (yych <= '\f') { - if (yych <= 0x08) goto yy850; - if (yych <= '\n') goto yy846; - goto yy850; - } else { - if (yych <= '\r') goto yy846; - if (yych <= 0x1F) goto yy850; - goto yy846; - } - } else { - if (yych <= '$') { - 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 yy838; - if (yych <= '9') goto yy840; - goto yy845; - } else { - if (yych <= 'Z') goto yy848; - if (yych <= '[') goto yy845; - goto yy846; - } - } else { - if (yych <= '_') { - if (yych <= ']') goto yy843; - if (yych <= '^') goto yy845; - goto yy848; - } else { - if (yych <= '`') goto yy845; - if (yych <= 'z') goto yy848; - if (yych <= '~') goto yy845; - goto yy848; - } - } - } -yy838: - YYDEBUG(838, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= 'W') { - if (yych <= '9') { - if (yych >= '0') goto yy862; - } else { - if (yych == 'B') goto yy859; - } - } else { - if (yych <= 'b') { - if (yych <= 'X') goto yy861; - if (yych >= 'b') goto yy859; - } else { - if (yych == 'x') goto yy861; - } - } -yy839: - YYDEBUG(839, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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)); - } else { - ZVAL_STRINGL(zendlval, yytext, yyleng, 1); - } - return T_NUM_STRING; -} -#line 7663 "Zend/zend_language_scanner.c" -yy840: - YYDEBUG(840, *YYCURSOR); - yych = *++YYCURSOR; - goto yy858; -yy841: - YYDEBUG(841, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy842; - if (yych <= 'Z') goto yy854; - if (yych >= '_') goto yy854; - } else { - if (yych <= '`') goto yy842; - if (yych <= 'z') goto yy854; - if (yych >= 0x7F) goto yy854; - } -yy842: - YYDEBUG(842, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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 7688 "Zend/zend_language_scanner.c" -yy843: - YYDEBUG(843, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(844, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1837 "Zend/zend_language_scanner.l" - { - yy_pop_state(TSRMLS_C); - return ']'; -} -#line 7699 "Zend/zend_language_scanner.c" -yy845: - YYDEBUG(845, *YYCURSOR); - yych = *++YYCURSOR; - goto yy842; -yy846: - YYDEBUG(846, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(847, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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 7716 "Zend/zend_language_scanner.c" -yy848: - YYDEBUG(848, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy853; -yy849: - YYDEBUG(849, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1854 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, yytext, yyleng); - zendlval->type = IS_STRING; - return T_STRING; -} -#line 7731 "Zend/zend_language_scanner.c" -yy850: - YYDEBUG(850, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(851, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 2368 "Zend/zend_language_scanner.l" - { - if (YYCURSOR > YYLIMIT) { - return 0; - } - - zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); - goto restart; -} -#line 7746 "Zend/zend_language_scanner.c" -yy852: - YYDEBUG(852, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy853: - YYDEBUG(853, *YYCURSOR); - if (yybm[0+yych] & 16) { - goto yy852; - } - goto yy849; -yy854: - YYDEBUG(854, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(855, *YYCURSOR); - if (yych <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy854; - } else { - if (yych <= '@') goto yy856; - if (yych <= 'Z') goto yy854; - } - } else { - if (yych <= '`') { - if (yych <= '_') goto yy854; - } else { - if (yych <= 'z') goto yy854; - if (yych >= 0x7F) goto yy854; - } - } -yy856: - YYDEBUG(856, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1831 "Zend/zend_language_scanner.l" - { - zend_copy_value(zendlval, (yytext+1), (yyleng-1)); - zendlval->type = IS_STRING; - return T_VARIABLE; -} -#line 7788 "Zend/zend_language_scanner.c" -yy857: - YYDEBUG(857, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy858: - YYDEBUG(858, *YYCURSOR); - if (yybm[0+yych] & 32) { - goto yy857; - } - goto yy839; -yy859: - YYDEBUG(859, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 128) { - goto yy867; - } -yy860: - YYDEBUG(860, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy839; -yy861: - YYDEBUG(861, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 64) { - goto yy865; - } - goto yy860; -yy862: - YYDEBUG(862, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(863, *YYCURSOR); - if (yych <= '/') goto yy864; - if (yych <= '9') goto yy862; -yy864: - YYDEBUG(864, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#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 7833 "Zend/zend_language_scanner.c" -yy865: - YYDEBUG(865, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(866, *YYCURSOR); - if (yybm[0+yych] & 64) { - goto yy865; - } - goto yy864; -yy867: - YYDEBUG(867, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(868, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy867; - } - goto yy864; - } -} -#line 2377 "Zend/zend_language_scanner.l" - -} +/* Generated by re2c 0.13.5 */
+#line 1 "Zend/zend_language_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: Marcus Boerger <helly@php.net> |
+ | Nuno Lopes <nlopess@php.net> |
+ | Scott MacVicar <scottmac@php.net> |
+ | Flex version authors: |
+ | Andi Gutmans <andi@zend.com> |
+ | Zeev Suraski <zeev@zend.com> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#if 0
+# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
+#else
+# define YYDEBUG(s, c)
+#endif
+
+#include "zend_language_scanner_defs.h"
+
+#include <errno.h>
+#include "zend.h"
+#ifdef PHP_WIN32
+# include <Winuser.h>
+#endif
+#include "zend_alloc.h"
+#include <zend_language_parser.h>
+#include "zend_compile.h"
+#include "zend_language_scanner.h"
+#include "zend_highlight.h"
+#include "zend_constants.h"
+#include "zend_variables.h"
+#include "zend_operators.h"
+#include "zend_API.h"
+#include "zend_strtod.h"
+#include "zend_exceptions.h"
+#include "zend_virtual_cwd.h"
+#include "tsrm_config_common.h"
+
+#define YYCTYPE unsigned char
+#define YYFILL(n) { if ((YYCURSOR + n) >= (YYLIMIT + ZEND_MMAP_AHEAD)) { 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 16
+#if ZEND_MMAP_AHEAD < YYMAXFILL
+# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL
+#endif
+
+#ifdef HAVE_STDARG_H
+# include <stdarg.h>
+#endif
+
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
+/* Globals Macros */
+#define SCNG LANG_SCNG
+#ifdef ZTS
+ZEND_API ts_rsrc_id language_scanner_globals_id;
+#else
+ZEND_API zend_php_scanner_globals language_scanner_globals;
+#endif
+
+#define HANDLE_NEWLINES(s, l) \
+do { \
+ char *p = (s), *boundary = p+(l); \
+ \
+ while (p<boundary) { \
+ if (*p == '\n' || (*p == '\r' && (*(p+1) != '\n'))) { \
+ CG(zend_lineno)++; \
+ } \
+ p++; \
+ } \
+} while (0)
+
+#define HANDLE_NEWLINE(c) \
+{ \
+ if (c == '\n' || c == '\r') { \
+ CG(zend_lineno)++; \
+ } \
+}
+
+/* To save initial string length after scanning to first variable, CG(doc_comment_len) can be reused */
+#define SET_DOUBLE_QUOTES_SCANNED_LENGTH(len) CG(doc_comment_len) = (len)
+#define GET_DOUBLE_QUOTES_SCANNED_LENGTH() CG(doc_comment_len)
+
+#define IS_LABEL_START(c) (((c) >= 'a' && (c) <= 'z') || ((c) >= 'A' && (c) <= 'Z') || (c) == '_' || (c) >= 0x7F)
+
+#define ZEND_IS_OCT(c) ((c)>='0' && (c)<='7')
+#define ZEND_IS_HEX(c) (((c)>='0' && (c)<='9') || ((c)>='a' && (c)<='f') || ((c)>='A' && (c)<='F'))
+
+BEGIN_EXTERN_C()
+
+static size_t encoding_filter_script_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
+{
+ const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
+ assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+ return zend_multibyte_encoding_converter(to, to_length, from, from_length, internal_encoding, LANG_SCNG(script_encoding) TSRMLS_CC);
+}
+
+static size_t encoding_filter_script_to_intermediate(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
+{
+ return zend_multibyte_encoding_converter(to, to_length, from, from_length, zend_multibyte_encoding_utf8, LANG_SCNG(script_encoding) TSRMLS_CC);
+}
+
+static size_t encoding_filter_intermediate_to_script(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
+{
+ return zend_multibyte_encoding_converter(to, to_length, from, from_length,
+LANG_SCNG(script_encoding), zend_multibyte_encoding_utf8 TSRMLS_CC);
+}
+
+static size_t encoding_filter_intermediate_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
+{
+ const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
+ assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+ return zend_multibyte_encoding_converter(to, to_length, from, from_length,
+internal_encoding, zend_multibyte_encoding_utf8 TSRMLS_CC);
+}
+
+
+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;
+ YYLIMIT = YYCURSOR + len;
+ if (!SCNG(yy_start)) {
+ SCNG(yy_start) = YYCURSOR;
+ }
+}
+
+void startup_scanner(TSRMLS_D)
+{
+ CG(parse_error) = 0;
+ CG(doc_comment) = NULL;
+ CG(doc_comment_len) = 0;
+ zend_stack_init(&SCNG(state_stack));
+ zend_ptr_stack_init(&SCNG(heredoc_label_stack));
+}
+
+static void heredoc_label_dtor(zend_heredoc_label *heredoc_label) {
+ efree(heredoc_label->label);
+}
+
+void shutdown_scanner(TSRMLS_D)
+{
+ CG(parse_error) = 0;
+ RESET_DOC_COMMENT();
+ zend_stack_destroy(&SCNG(state_stack));
+ zend_ptr_stack_clean(&SCNG(heredoc_label_stack), (void (*)(void *)) &heredoc_label_dtor, 1);
+ zend_ptr_stack_destroy(&SCNG(heredoc_label_stack));
+}
+
+ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC)
+{
+ lex_state->yy_leng = SCNG(yy_leng);
+ lex_state->yy_start = SCNG(yy_start);
+ lex_state->yy_text = SCNG(yy_text);
+ lex_state->yy_cursor = SCNG(yy_cursor);
+ lex_state->yy_marker = SCNG(yy_marker);
+ lex_state->yy_limit = SCNG(yy_limit);
+
+ lex_state->state_stack = SCNG(state_stack);
+ zend_stack_init(&SCNG(state_stack));
+
+ lex_state->heredoc_label_stack = SCNG(heredoc_label_stack);
+ zend_ptr_stack_init(&SCNG(heredoc_label_stack));
+
+ lex_state->in = SCNG(yy_in);
+ lex_state->yy_state = YYSTATE;
+ lex_state->filename = zend_get_compiled_filename(TSRMLS_C);
+ lex_state->lineno = CG(zend_lineno);
+
+ lex_state->script_org = SCNG(script_org);
+ lex_state->script_org_size = SCNG(script_org_size);
+ lex_state->script_filtered = SCNG(script_filtered);
+ lex_state->script_filtered_size = SCNG(script_filtered_size);
+ lex_state->input_filter = SCNG(input_filter);
+ lex_state->output_filter = SCNG(output_filter);
+ lex_state->script_encoding = SCNG(script_encoding);
+}
+
+ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC)
+{
+ SCNG(yy_leng) = lex_state->yy_leng;
+ SCNG(yy_start) = lex_state->yy_start;
+ SCNG(yy_text) = lex_state->yy_text;
+ SCNG(yy_cursor) = lex_state->yy_cursor;
+ SCNG(yy_marker) = lex_state->yy_marker;
+ SCNG(yy_limit) = lex_state->yy_limit;
+
+ zend_stack_destroy(&SCNG(state_stack));
+ SCNG(state_stack) = lex_state->state_stack;
+
+ zend_ptr_stack_clean(&SCNG(heredoc_label_stack), (void (*)(void *)) &heredoc_label_dtor, 1);
+ zend_ptr_stack_destroy(&SCNG(heredoc_label_stack));
+ SCNG(heredoc_label_stack) = lex_state->heredoc_label_stack;
+
+ SCNG(yy_in) = lex_state->in;
+ YYSETCONDITION(lex_state->yy_state);
+ CG(zend_lineno) = lex_state->lineno;
+ zend_restore_compiled_filename(lex_state->filename TSRMLS_CC);
+
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+ SCNG(script_org) = lex_state->script_org;
+ SCNG(script_org_size) = lex_state->script_org_size;
+ SCNG(script_filtered) = lex_state->script_filtered;
+ SCNG(script_filtered_size) = lex_state->script_filtered_size;
+ SCNG(input_filter) = lex_state->input_filter;
+ SCNG(output_filter) = lex_state->output_filter;
+ SCNG(script_encoding) = lex_state->script_encoding;
+
+ RESET_DOC_COMMENT();
+}
+
+ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC)
+{
+ zend_llist_del_element(&CG(open_files), file_handle, (int (*)(void *, void *)) zend_compare_file_handles);
+ /* zend_file_handle_dtor() operates on the copy, so we have to NULLify the original here */
+ file_handle->opened_path = NULL;
+ if (file_handle->free_filename) {
+ file_handle->filename = NULL;
+ }
+}
+
+#define BOM_UTF32_BE "\x00\x00\xfe\xff"
+#define BOM_UTF32_LE "\xff\xfe\x00\x00"
+#define BOM_UTF16_BE "\xfe\xff"
+#define BOM_UTF16_LE "\xff\xfe"
+#define BOM_UTF8 "\xef\xbb\xbf"
+
+static const zend_encoding *zend_multibyte_detect_utf_encoding(const unsigned char *script, size_t script_size TSRMLS_DC)
+{
+ const unsigned char *p;
+ int wchar_size = 2;
+ int le = 0;
+
+ /* utf-16 or utf-32? */
+ p = script;
+ while ((p-script) < script_size) {
+ p = memchr(p, 0, script_size-(p-script)-2);
+ if (!p) {
+ break;
+ }
+ if (*(p+1) == '\0' && *(p+2) == '\0') {
+ wchar_size = 4;
+ break;
+ }
+
+ /* searching for UTF-32 specific byte orders, so this will do */
+ p += 4;
+ }
+
+ /* BE or LE? */
+ p = script;
+ while ((p-script) < script_size) {
+ if (*p == '\0' && *(p+wchar_size-1) != '\0') {
+ /* BE */
+ le = 0;
+ break;
+ } else if (*p != '\0' && *(p+wchar_size-1) == '\0') {
+ /* LE* */
+ le = 1;
+ break;
+ }
+ p += wchar_size;
+ }
+
+ if (wchar_size == 2) {
+ return le ? zend_multibyte_encoding_utf16le : zend_multibyte_encoding_utf16be;
+ } else {
+ return le ? zend_multibyte_encoding_utf32le : zend_multibyte_encoding_utf32be;
+ }
+
+ return NULL;
+}
+
+static const zend_encoding* zend_multibyte_detect_unicode(TSRMLS_D)
+{
+ const zend_encoding *script_encoding = NULL;
+ int bom_size;
+ unsigned char *pos1, *pos2;
+
+ if (LANG_SCNG(script_org_size) < sizeof(BOM_UTF32_LE)-1) {
+ return NULL;
+ }
+
+ /* check out BOM */
+ if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_BE, sizeof(BOM_UTF32_BE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf32be;
+ bom_size = sizeof(BOM_UTF32_BE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_LE, sizeof(BOM_UTF32_LE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf32le;
+ bom_size = sizeof(BOM_UTF32_LE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_BE, sizeof(BOM_UTF16_BE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf16be;
+ bom_size = sizeof(BOM_UTF16_BE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_LE, sizeof(BOM_UTF16_LE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf16le;
+ bom_size = sizeof(BOM_UTF16_LE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF8, sizeof(BOM_UTF8)-1)) {
+ script_encoding = zend_multibyte_encoding_utf8;
+ bom_size = sizeof(BOM_UTF8)-1;
+ }
+
+ if (script_encoding) {
+ /* remove BOM */
+ LANG_SCNG(script_org) += bom_size;
+ LANG_SCNG(script_org_size) -= bom_size;
+
+ return script_encoding;
+ }
+
+ /* script contains NULL bytes -> auto-detection */
+ if ((pos1 = memchr(LANG_SCNG(script_org), 0, LANG_SCNG(script_org_size)))) {
+ /* check if the NULL byte is after the __HALT_COMPILER(); */
+ pos2 = LANG_SCNG(script_org);
+
+ while (pos1 - pos2 >= sizeof("__HALT_COMPILER();")-1) {
+ pos2 = memchr(pos2, '_', pos1 - pos2);
+ if (!pos2) break;
+ pos2++;
+ if (strncasecmp((char*)pos2, "_HALT_COMPILER", sizeof("_HALT_COMPILER")-1) == 0) {
+ pos2 += sizeof("_HALT_COMPILER")-1;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == '(') {
+ pos2++;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == ')') {
+ pos2++;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == ';') {
+ return NULL;
+ }
+ }
+ }
+ }
+ }
+ /* make best effort if BOM is missing */
+ return zend_multibyte_detect_utf_encoding(LANG_SCNG(script_org), LANG_SCNG(script_org_size) TSRMLS_CC);
+ }
+
+ return NULL;
+}
+
+static const zend_encoding* zend_multibyte_find_script_encoding(TSRMLS_D)
+{
+ const zend_encoding *script_encoding;
+
+ if (CG(detect_unicode)) {
+ /* check out bom(byte order mark) and see if containing wchars */
+ script_encoding = zend_multibyte_detect_unicode(TSRMLS_C);
+ if (script_encoding != NULL) {
+ /* bom or wchar detection is prior to 'script_encoding' option */
+ return script_encoding;
+ }
+ }
+
+ /* if no script_encoding specified, just leave alone */
+ if (!CG(script_encoding_list) || !CG(script_encoding_list_size)) {
+ return NULL;
+ }
+
+ /* if multiple encodings specified, detect automagically */
+ if (CG(script_encoding_list_size) > 1) {
+ return zend_multibyte_encoding_detector(LANG_SCNG(script_org), LANG_SCNG(script_org_size), CG(script_encoding_list), CG(script_encoding_list_size) TSRMLS_CC);
+ }
+
+ return CG(script_encoding_list)[0];
+}
+
+ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding TSRMLS_DC)
+{
+ const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
+ const zend_encoding *script_encoding = onetime_encoding ? onetime_encoding: zend_multibyte_find_script_encoding(TSRMLS_C);
+
+ if (!script_encoding) {
+ return FAILURE;
+ }
+
+ /* judge input/output filter */
+ LANG_SCNG(script_encoding) = script_encoding;
+ LANG_SCNG(input_filter) = NULL;
+ LANG_SCNG(output_filter) = NULL;
+
+ if (!internal_encoding || LANG_SCNG(script_encoding) == internal_encoding) {
+ if (!zend_multibyte_check_lexer_compatibility(LANG_SCNG(script_encoding))) {
+ /* and if not, work around w/ script_encoding -> utf-8 -> script_encoding conversion */
+ LANG_SCNG(input_filter) = encoding_filter_script_to_intermediate;
+ LANG_SCNG(output_filter) = encoding_filter_intermediate_to_script;
+ } else {
+ LANG_SCNG(input_filter) = NULL;
+ LANG_SCNG(output_filter) = NULL;
+ }
+ return SUCCESS;
+ }
+
+ if (zend_multibyte_check_lexer_compatibility(internal_encoding)) {
+ LANG_SCNG(input_filter) = encoding_filter_script_to_internal;
+ LANG_SCNG(output_filter) = NULL;
+ } else if (zend_multibyte_check_lexer_compatibility(LANG_SCNG(script_encoding))) {
+ LANG_SCNG(input_filter) = NULL;
+ LANG_SCNG(output_filter) = encoding_filter_script_to_internal;
+ } else {
+ /* both script and internal encodings are incompatible w/ flex */
+ LANG_SCNG(input_filter) = encoding_filter_script_to_intermediate;
+ LANG_SCNG(output_filter) = encoding_filter_intermediate_to_internal;
+ }
+
+ return 0;
+}
+
+ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC)
+{
+ const char *file_path = NULL;
+ char *buf;
+ size_t size, offset = 0;
+
+ /* The shebang line was read, get the current position to obtain the buffer start */
+ if (CG(start_lineno) == 2 && file_handle->type == ZEND_HANDLE_FP && file_handle->handle.fp) {
+ if ((offset = ftell(file_handle->handle.fp)) == -1) {
+ offset = 0;
+ }
+ }
+
+ if (zend_stream_fixup(file_handle, &buf, &size TSRMLS_CC) == FAILURE) {
+ return FAILURE;
+ }
+
+ zend_llist_add_element(&CG(open_files), file_handle);
+ if (file_handle->handle.stream.handle >= (void*)file_handle && file_handle->handle.stream.handle <= (void*)(file_handle+1)) {
+ zend_file_handle *fh = (zend_file_handle*)zend_llist_get_last(&CG(open_files));
+ size_t diff = (char*)file_handle->handle.stream.handle - (char*)file_handle;
+ fh->handle.stream.handle = (void*)(((char*)fh) + diff);
+ file_handle->handle.stream.handle = fh->handle.stream.handle;
+ }
+
+ /* Reset the scanner for scanning the new file */
+ SCNG(yy_in) = file_handle;
+ SCNG(yy_start) = NULL;
+
+ if (size != -1) {
+ if (CG(multibyte)) {
+ SCNG(script_org) = (unsigned char*)buf;
+ SCNG(script_org_size) = size;
+ SCNG(script_filtered) = NULL;
+
+ zend_multibyte_set_filter(NULL TSRMLS_CC);
+
+ if (SCNG(input_filter)) {
+ if ((size_t)-1 == SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) {
+ zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected "
+ "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding)));
+ }
+ buf = (char*)SCNG(script_filtered);
+ size = SCNG(script_filtered_size);
+ }
+ }
+ SCNG(yy_start) = (unsigned char *)buf - offset;
+ yy_scan_buffer(buf, size TSRMLS_CC);
+ } else {
+ zend_error_noreturn(E_COMPILE_ERROR, "zend_stream_mmap() failed");
+ }
+
+ BEGIN(INITIAL);
+
+ if (file_handle->opened_path) {
+ file_path = file_handle->opened_path;
+ } else {
+ file_path = file_handle->filename;
+ }
+
+ zend_set_compiled_filename(file_path TSRMLS_CC);
+
+ if (CG(start_lineno)) {
+ CG(zend_lineno) = CG(start_lineno);
+ CG(start_lineno) = 0;
+ } else {
+ CG(zend_lineno) = 1;
+ }
+
+ RESET_DOC_COMMENT();
+ CG(increment_lineno) = 0;
+ return SUCCESS;
+}
+END_EXTERN_C()
+
+
+ZEND_API zend_op_array *compile_file(zend_file_handle *file_handle, int type TSRMLS_DC)
+{
+ zend_lex_state original_lex_state;
+ zend_op_array *op_array = (zend_op_array *) emalloc(sizeof(zend_op_array));
+ zend_op_array *original_active_op_array = CG(active_op_array);
+ zend_op_array *retval=NULL;
+ int compiler_result;
+ zend_bool compilation_successful=0;
+ znode retval_znode;
+ zend_bool original_in_compilation = CG(in_compilation);
+
+ retval_znode.op_type = IS_CONST;
+ INIT_PZVAL(&retval_znode.u.constant);
+ ZVAL_LONG(&retval_znode.u.constant, 1);
+
+ zend_save_lexical_state(&original_lex_state TSRMLS_CC);
+
+ retval = op_array; /* success oriented */
+
+ if (open_file_for_scanning(file_handle TSRMLS_CC)==FAILURE) {
+ if (type==ZEND_REQUIRE) {
+ zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, file_handle->filename TSRMLS_CC);
+ zend_bailout();
+ } else {
+ zend_message_dispatcher(ZMSG_FAILED_INCLUDE_FOPEN, file_handle->filename TSRMLS_CC);
+ }
+ compilation_successful=0;
+ } else {
+ init_op_array(op_array, ZEND_USER_FUNCTION, INITIAL_OP_ARRAY_SIZE TSRMLS_CC);
+ CG(in_compilation) = 1;
+ CG(active_op_array) = op_array;
+ zend_stack_push(&CG(context_stack), (void *) &CG(context), sizeof(CG(context)));
+ zend_init_compiler_context(TSRMLS_C);
+ compiler_result = zendparse(TSRMLS_C);
+ zend_do_return(&retval_znode, 0 TSRMLS_CC);
+ CG(in_compilation) = original_in_compilation;
+ if (compiler_result != 0) { /* parser error */
+ zend_bailout();
+ }
+ compilation_successful=1;
+ }
+
+ if (retval) {
+ CG(active_op_array) = original_active_op_array;
+ if (compilation_successful) {
+ pass_two(op_array TSRMLS_CC);
+ zend_release_labels(0 TSRMLS_CC);
+ } else {
+ efree(op_array);
+ retval = NULL;
+ }
+ }
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ return retval;
+}
+
+
+zend_op_array *compile_filename(int type, zval *filename TSRMLS_DC)
+{
+ zend_file_handle file_handle;
+ zval tmp;
+ zend_op_array *retval;
+ char *opened_path = NULL;
+
+ if (filename->type != IS_STRING) {
+ tmp = *filename;
+ zval_copy_ctor(&tmp);
+ convert_to_string(&tmp);
+ filename = &tmp;
+ }
+ file_handle.filename = Z_STRVAL_P(filename);
+ file_handle.free_filename = 0;
+ file_handle.type = ZEND_HANDLE_FILENAME;
+ file_handle.opened_path = NULL;
+ file_handle.handle.fp = NULL;
+
+ retval = zend_compile_file(&file_handle, type TSRMLS_CC);
+ if (retval && file_handle.handle.stream.handle) {
+ int dummy = 1;
+
+ if (!file_handle.opened_path) {
+ file_handle.opened_path = opened_path = estrndup(Z_STRVAL_P(filename), Z_STRLEN_P(filename));
+ }
+
+ zend_hash_add(&EG(included_files), file_handle.opened_path, strlen(file_handle.opened_path)+1, (void *)&dummy, sizeof(int), NULL);
+
+ if (opened_path) {
+ efree(opened_path);
+ }
+ }
+ zend_destroy_file_handle(&file_handle TSRMLS_CC);
+
+ if (filename==&tmp) {
+ zval_dtor(&tmp);
+ }
+ return retval;
+}
+
+ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_DC)
+{
+ char *buf;
+ size_t size;
+
+ /* enforce ZEND_MMAP_AHEAD trailing NULLs for flex... */
+ Z_STRVAL_P(str) = str_erealloc(Z_STRVAL_P(str), Z_STRLEN_P(str) + ZEND_MMAP_AHEAD);
+ memset(Z_STRVAL_P(str) + Z_STRLEN_P(str), 0, ZEND_MMAP_AHEAD);
+
+ SCNG(yy_in) = NULL;
+ SCNG(yy_start) = NULL;
+
+ buf = Z_STRVAL_P(str);
+ size = Z_STRLEN_P(str);
+
+ if (CG(multibyte)) {
+ SCNG(script_org) = (unsigned char*)buf;
+ SCNG(script_org_size) = size;
+ SCNG(script_filtered) = NULL;
+
+ zend_multibyte_set_filter(zend_multibyte_get_internal_encoding(TSRMLS_C) TSRMLS_CC);
+
+ if (SCNG(input_filter)) {
+ if ((size_t)-1 == SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) {
+ zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected "
+ "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding)));
+ }
+ buf = (char*)SCNG(script_filtered);
+ size = SCNG(script_filtered_size);
+ }
+ }
+
+ yy_scan_buffer(buf, size TSRMLS_CC);
+
+ zend_set_compiled_filename(filename TSRMLS_CC);
+ CG(zend_lineno) = 1;
+ CG(increment_lineno) = 0;
+ RESET_DOC_COMMENT();
+ return SUCCESS;
+}
+
+
+ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D)
+{
+ size_t offset = SCNG(yy_cursor) - SCNG(yy_start);
+ if (SCNG(input_filter)) {
+ size_t original_offset = offset, length = 0;
+ do {
+ unsigned char *p = NULL;
+ if ((size_t)-1 == SCNG(input_filter)(&p, &length, SCNG(script_org), offset TSRMLS_CC)) {
+ return (size_t)-1;
+ }
+ efree(p);
+ if (length > original_offset) {
+ offset--;
+ } else if (length < original_offset) {
+ offset++;
+ }
+ } while (original_offset != length);
+ }
+ return offset;
+}
+
+
+zend_op_array *compile_string(zval *source_string, char *filename TSRMLS_DC)
+{
+ zend_lex_state original_lex_state;
+ zend_op_array *op_array = (zend_op_array *) emalloc(sizeof(zend_op_array));
+ zend_op_array *original_active_op_array = CG(active_op_array);
+ zend_op_array *retval;
+ zval tmp;
+ int compiler_result;
+ zend_bool original_in_compilation = CG(in_compilation);
+
+ if (Z_STRLEN_P(source_string)==0) {
+ efree(op_array);
+ return NULL;
+ }
+
+ CG(in_compilation) = 1;
+
+ tmp = *source_string;
+ zval_copy_ctor(&tmp);
+ convert_to_string(&tmp);
+ source_string = &tmp;
+
+ zend_save_lexical_state(&original_lex_state TSRMLS_CC);
+ if (zend_prepare_string_for_scanning(source_string, filename TSRMLS_CC)==FAILURE) {
+ efree(op_array);
+ retval = NULL;
+ } else {
+ zend_bool orig_interactive = CG(interactive);
+
+ CG(interactive) = 0;
+ init_op_array(op_array, ZEND_EVAL_CODE, INITIAL_OP_ARRAY_SIZE TSRMLS_CC);
+ CG(interactive) = orig_interactive;
+ CG(active_op_array) = op_array;
+ zend_stack_push(&CG(context_stack), (void *) &CG(context), sizeof(CG(context)));
+ zend_init_compiler_context(TSRMLS_C);
+ BEGIN(ST_IN_SCRIPTING);
+ compiler_result = zendparse(TSRMLS_C);
+
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+
+ if (compiler_result != 0) {
+ CG(active_op_array) = original_active_op_array;
+ CG(unclean_shutdown)=1;
+ destroy_op_array(op_array TSRMLS_CC);
+ efree(op_array);
+ retval = NULL;
+ } else {
+ zend_do_return(NULL, 0 TSRMLS_CC);
+ CG(active_op_array) = original_active_op_array;
+ pass_two(op_array TSRMLS_CC);
+ zend_release_labels(0 TSRMLS_CC);
+ retval = op_array;
+ }
+ }
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ zval_dtor(&tmp);
+ CG(in_compilation) = original_in_compilation;
+ return retval;
+}
+
+
+BEGIN_EXTERN_C()
+int highlight_file(char *filename, zend_syntax_highlighter_ini *syntax_highlighter_ini TSRMLS_DC)
+{
+ zend_lex_state original_lex_state;
+ zend_file_handle file_handle;
+
+ file_handle.type = ZEND_HANDLE_FILENAME;
+ file_handle.filename = filename;
+ file_handle.free_filename = 0;
+ file_handle.opened_path = NULL;
+ zend_save_lexical_state(&original_lex_state TSRMLS_CC);
+ if (open_file_for_scanning(&file_handle TSRMLS_CC)==FAILURE) {
+ zend_message_dispatcher(ZMSG_FAILED_HIGHLIGHT_FOPEN, filename TSRMLS_CC);
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ return FAILURE;
+ }
+ zend_highlight(syntax_highlighter_ini TSRMLS_CC);
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+ zend_destroy_file_handle(&file_handle TSRMLS_CC);
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ return SUCCESS;
+}
+
+int highlight_string(zval *str, zend_syntax_highlighter_ini *syntax_highlighter_ini, char *str_name TSRMLS_DC)
+{
+ zend_lex_state original_lex_state;
+ zval tmp = *str;
+
+ str = &tmp;
+ zval_copy_ctor(str);
+ zend_save_lexical_state(&original_lex_state TSRMLS_CC);
+ if (zend_prepare_string_for_scanning(str, str_name TSRMLS_CC)==FAILURE) {
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ return FAILURE;
+ }
+ BEGIN(INITIAL);
+ zend_highlight(syntax_highlighter_ini TSRMLS_CC);
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+ zend_restore_lexical_state(&original_lex_state TSRMLS_CC);
+ zval_dtor(str);
+ return SUCCESS;
+}
+
+ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter, const zend_encoding *old_encoding TSRMLS_DC)
+{
+ size_t length;
+ unsigned char *new_yy_start;
+
+ /* convert and set */
+ if (!SCNG(input_filter)) {
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+ SCNG(script_filtered_size) = 0;
+ length = SCNG(script_org_size);
+ new_yy_start = SCNG(script_org);
+ } else {
+ if ((size_t)-1 == SCNG(input_filter)(&new_yy_start, &length, SCNG(script_org), SCNG(script_org_size) TSRMLS_CC)) {
+ zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected "
+ "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding)));
+ }
+ SCNG(script_filtered) = new_yy_start;
+ SCNG(script_filtered_size) = length;
+ }
+
+ SCNG(yy_cursor) = new_yy_start + (SCNG(yy_cursor) - SCNG(yy_start));
+ SCNG(yy_marker) = new_yy_start + (SCNG(yy_marker) - SCNG(yy_start));
+ SCNG(yy_text) = new_yy_start + (SCNG(yy_text) - SCNG(yy_start));
+ SCNG(yy_limit) = new_yy_start + (SCNG(yy_limit) - SCNG(yy_start));
+
+ SCNG(yy_start) = new_yy_start;
+}
+
+
+# define zend_copy_value(zendlval, yytext, yyleng) \
+ if (SCNG(output_filter)) { \
+ size_t sz = 0; \
+ SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)yytext, (size_t)yyleng TSRMLS_CC); \
+ Z_STRLEN_P(zendlval) = sz; \
+ } else { \
+ Z_STRVAL_P(zendlval) = (char *) estrndup(yytext, yyleng); \
+ Z_STRLEN_P(zendlval) = yyleng; \
+ }
+
+static void zend_scan_escape_string(zval *zendlval, char *str, int len, char quote_type TSRMLS_DC)
+{
+ register char *s, *t;
+ char *end;
+
+ ZVAL_STRINGL(zendlval, str, len, 1);
+
+ /* convert escape sequences */
+ s = t = Z_STRVAL_P(zendlval);
+ end = s+Z_STRLEN_P(zendlval);
+ while (s<end) {
+ if (*s=='\\') {
+ s++;
+ if (s >= end) {
+ *t++ = '\\';
+ break;
+ }
+
+ switch(*s) {
+ case 'n':
+ *t++ = '\n';
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 'r':
+ *t++ = '\r';
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 't':
+ *t++ = '\t';
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 'f':
+ *t++ = '\f';
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 'v':
+ *t++ = '\v';
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 'e':
+#ifdef PHP_WIN32
+ *t++ = VK_ESCAPE;
+#else
+ *t++ = '\e';
+#endif
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case '"':
+ case '`':
+ if (*s != quote_type) {
+ *t++ = '\\';
+ *t++ = *s;
+ break;
+ }
+ case '\\':
+ case '$':
+ *t++ = *s;
+ Z_STRLEN_P(zendlval)--;
+ break;
+ case 'x':
+ case 'X':
+ if (ZEND_IS_HEX(*(s+1))) {
+ char hex_buf[3] = { 0, 0, 0 };
+
+ Z_STRLEN_P(zendlval)--; /* for the 'x' */
+
+ hex_buf[0] = *(++s);
+ Z_STRLEN_P(zendlval)--;
+ if (ZEND_IS_HEX(*(s+1))) {
+ hex_buf[1] = *(++s);
+ Z_STRLEN_P(zendlval)--;
+ }
+ *t++ = (char) strtol(hex_buf, NULL, 16);
+ } else {
+ *t++ = '\\';
+ *t++ = *s;
+ }
+ break;
+ default:
+ /* check for an octal */
+ if (ZEND_IS_OCT(*s)) {
+ char octal_buf[4] = { 0, 0, 0, 0 };
+
+ octal_buf[0] = *s;
+ Z_STRLEN_P(zendlval)--;
+ if (ZEND_IS_OCT(*(s+1))) {
+ octal_buf[1] = *(++s);
+ Z_STRLEN_P(zendlval)--;
+ if (ZEND_IS_OCT(*(s+1))) {
+ octal_buf[2] = *(++s);
+ Z_STRLEN_P(zendlval)--;
+ }
+ }
+ *t++ = (char) strtol(octal_buf, NULL, 8);
+ } else {
+ *t++ = '\\';
+ *t++ = *s;
+ }
+ break;
+ }
+ } else {
+ *t++ = *s;
+ }
+
+ if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
+ CG(zend_lineno)++;
+ }
+ s++;
+ }
+ *t = 0;
+ if (SCNG(output_filter)) {
+ size_t sz = 0;
+ s = Z_STRVAL_P(zendlval);
+ SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)s, (size_t)Z_STRLEN_P(zendlval) TSRMLS_CC);
+ Z_STRLEN_P(zendlval) = sz;
+ efree(s);
+ }
+}
+
+
+int lex_scan(zval *zendlval TSRMLS_DC)
+{
+restart:
+ SCNG(yy_text) = YYCURSOR;
+
+yymore_restart:
+
+
+#line 1001 "Zend/zend_language_scanner.c"
+{
+ YYCTYPE yych;
+ unsigned int yyaccept = 0;
+ if (YYGETCONDITION() < 5) {
+ if (YYGETCONDITION() < 2) {
+ if (YYGETCONDITION() < 1) {
+ goto yyc_ST_IN_SCRIPTING;
+ } else {
+ goto yyc_ST_LOOKING_FOR_PROPERTY;
+ }
+ } else {
+ if (YYGETCONDITION() < 3) {
+ goto yyc_ST_BACKQUOTE;
+ } else {
+ if (YYGETCONDITION() < 4) {
+ goto yyc_ST_DOUBLE_QUOTES;
+ } else {
+ goto yyc_ST_HEREDOC;
+ }
+ }
+ }
+ } else {
+ if (YYGETCONDITION() < 7) {
+ if (YYGETCONDITION() < 6) {
+ goto yyc_ST_LOOKING_FOR_VARNAME;
+ } else {
+ goto yyc_ST_VAR_OFFSET;
+ }
+ } else {
+ if (YYGETCONDITION() < 8) {
+ goto yyc_INITIAL;
+ } else {
+ if (YYGETCONDITION() < 9) {
+ goto yyc_ST_END_HEREDOC;
+ } else {
+ goto yyc_ST_NOWDOC;
+ }
+ }
+ }
+ }
+/* *********************************** */
+yyc_INITIAL:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 0, 0, 128, 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(0, *YYCURSOR);
+ YYFILL(8);
+ yych = *YYCURSOR;
+ if (yych != '<') goto yy4;
+ YYDEBUG(2, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '?') {
+ if (yych == '%') goto yy7;
+ if (yych >= '?') goto yy5;
+ } else {
+ if (yych <= 'S') {
+ if (yych >= 'S') goto yy9;
+ } else {
+ if (yych == 's') goto yy9;
+ }
+ }
+yy3:
+ YYDEBUG(3, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1749 "Zend/zend_language_scanner.l"
+ {
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+inline_char_handler:
+
+ while (1) {
+ YYCTYPE *ptr = memchr(YYCURSOR, '<', YYLIMIT - YYCURSOR);
+
+ YYCURSOR = ptr ? ptr + 1 : YYLIMIT;
+
+ if (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR) {
+ case '?':
+ if (CG(short_tags) || !strncasecmp((char*)YYCURSOR + 1, "php", 3) || (*(YYCURSOR + 1) == '=')) { /* Assume [ \t\n\r] follows "php" */
+ break;
+ }
+ continue;
+ case '%':
+ if (CG(asp_tags)) {
+ break;
+ }
+ continue;
+ case 's':
+ case 'S':
+ /* Probably NOT an opening PHP <script> tag, so don't end the HTML chunk yet
+ * If it is, the PHP <script> tag rule checks for any HTML scanned before it */
+ YYCURSOR--;
+ yymore();
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ }
+
+ break;
+ }
+
+inline_html:
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ if (SCNG(output_filter)) {
+ int readsize;
+ size_t sz = 0;
+ readsize = SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)yytext, (size_t)yyleng TSRMLS_CC);
+ Z_STRLEN_P(zendlval) = sz;
+ if (readsize < yyleng) {
+ yyless(readsize);
+ }
+ } else {
+ Z_STRVAL_P(zendlval) = (char *) estrndup(yytext, yyleng);
+ Z_STRLEN_P(zendlval) = yyleng;
+ }
+ zendlval->type = IS_STRING;
+ HANDLE_NEWLINES(yytext, yyleng);
+ return T_INLINE_HTML;
+}
+#line 1160 "Zend/zend_language_scanner.c"
+yy4:
+ YYDEBUG(4, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy3;
+yy5:
+ YYDEBUG(5, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'O') {
+ if (yych == '=') goto yy45;
+ } else {
+ if (yych <= 'P') goto yy47;
+ if (yych == 'p') goto yy47;
+ }
+yy6:
+ YYDEBUG(6, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1739 "Zend/zend_language_scanner.l"
+ {
+ if (CG(short_tags)) {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG;
+ } else {
+ goto inline_char_handler;
+ }
+}
+#line 1188 "Zend/zend_language_scanner.c"
+yy7:
+ YYDEBUG(7, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '=') goto yy43;
+ YYDEBUG(8, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1720 "Zend/zend_language_scanner.l"
+ {
+ if (CG(asp_tags)) {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG;
+ } else {
+ goto inline_char_handler;
+ }
+}
+#line 1205 "Zend/zend_language_scanner.c"
+yy9:
+ YYDEBUG(9, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy11;
+ if (yych == 'c') goto yy11;
+yy10:
+ YYDEBUG(10, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 0) {
+ goto yy3;
+ } else {
+ goto yy6;
+ }
+yy11:
+ YYDEBUG(11, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy12;
+ if (yych != 'r') goto yy10;
+yy12:
+ YYDEBUG(12, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy13;
+ if (yych != 'i') goto yy10;
+yy13:
+ YYDEBUG(13, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy14;
+ if (yych != 'p') goto yy10;
+yy14:
+ YYDEBUG(14, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy15;
+ if (yych != 't') goto yy10;
+yy15:
+ YYDEBUG(15, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy10;
+ if (yych == 'l') goto yy10;
+ goto yy17;
+yy16:
+ YYDEBUG(16, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(8);
+ yych = *YYCURSOR;
+yy17:
+ YYDEBUG(17, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy16;
+ }
+ if (yych == 'L') goto yy18;
+ if (yych != 'l') goto yy10;
+yy18:
+ YYDEBUG(18, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy19;
+ if (yych != 'a') goto yy10;
+yy19:
+ YYDEBUG(19, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy20;
+ if (yych != 'n') goto yy10;
+yy20:
+ YYDEBUG(20, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'G') goto yy21;
+ if (yych != 'g') goto yy10;
+yy21:
+ YYDEBUG(21, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy22;
+ if (yych != 'u') goto yy10;
+yy22:
+ YYDEBUG(22, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy23;
+ if (yych != 'a') goto yy10;
+yy23:
+ YYDEBUG(23, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'G') goto yy24;
+ if (yych != 'g') goto yy10;
+yy24:
+ YYDEBUG(24, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy25;
+ if (yych != 'e') goto yy10;
+yy25:
+ YYDEBUG(25, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(26, *YYCURSOR);
+ if (yych <= '\r') {
+ if (yych <= 0x08) goto yy10;
+ if (yych <= '\n') goto yy25;
+ if (yych <= '\f') goto yy10;
+ goto yy25;
+ } else {
+ if (yych <= ' ') {
+ if (yych <= 0x1F) goto yy10;
+ goto yy25;
+ } else {
+ if (yych != '=') goto yy10;
+ }
+ }
+yy27:
+ YYDEBUG(27, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(5);
+ yych = *YYCURSOR;
+ YYDEBUG(28, *YYCURSOR);
+ if (yych <= '!') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy10;
+ if (yych <= '\n') goto yy27;
+ goto yy10;
+ } else {
+ if (yych <= '\r') goto yy27;
+ if (yych == ' ') goto yy27;
+ goto yy10;
+ }
+ } else {
+ if (yych <= 'O') {
+ if (yych <= '"') goto yy30;
+ if (yych == '\'') goto yy31;
+ goto yy10;
+ } else {
+ if (yych <= 'P') goto yy29;
+ if (yych != 'p') goto yy10;
+ }
+ }
+yy29:
+ YYDEBUG(29, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy42;
+ if (yych == 'h') goto yy42;
+ goto yy10;
+yy30:
+ YYDEBUG(30, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy39;
+ if (yych == 'p') goto yy39;
+ goto yy10;
+yy31:
+ YYDEBUG(31, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy32;
+ if (yych != 'p') goto yy10;
+yy32:
+ YYDEBUG(32, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy33;
+ if (yych != 'h') goto yy10;
+yy33:
+ YYDEBUG(33, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy34;
+ if (yych != 'p') goto yy10;
+yy34:
+ YYDEBUG(34, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '\'') goto yy10;
+yy35:
+ YYDEBUG(35, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(36, *YYCURSOR);
+ if (yych <= '\r') {
+ if (yych <= 0x08) goto yy10;
+ if (yych <= '\n') goto yy35;
+ if (yych <= '\f') goto yy10;
+ goto yy35;
+ } else {
+ if (yych <= ' ') {
+ if (yych <= 0x1F) goto yy10;
+ goto yy35;
+ } else {
+ if (yych != '>') goto yy10;
+ }
+ }
+ YYDEBUG(37, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(38, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1686 "Zend/zend_language_scanner.l"
+ {
+ YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1));
+
+ if (bracket != SCNG(yy_text)) {
+ /* Handle previously scanned HTML, as possible <script> tags found are assumed to not be PHP's */
+ YYCURSOR = bracket;
+ goto inline_html;
+ }
+
+ HANDLE_NEWLINES(yytext, yyleng);
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG;
+}
+#line 1406 "Zend/zend_language_scanner.c"
+yy39:
+ YYDEBUG(39, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy40;
+ if (yych != 'h') goto yy10;
+yy40:
+ YYDEBUG(40, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy41;
+ if (yych != 'p') goto yy10;
+yy41:
+ YYDEBUG(41, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '"') goto yy35;
+ goto yy10;
+yy42:
+ YYDEBUG(42, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy35;
+ if (yych == 'p') goto yy35;
+ goto yy10;
+yy43:
+ YYDEBUG(43, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(44, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1702 "Zend/zend_language_scanner.l"
+ {
+ if (CG(asp_tags)) {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG_WITH_ECHO;
+ } else {
+ goto inline_char_handler;
+ }
+}
+#line 1443 "Zend/zend_language_scanner.c"
+yy45:
+ YYDEBUG(45, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(46, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1713 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG_WITH_ECHO;
+}
+#line 1455 "Zend/zend_language_scanner.c"
+yy47:
+ YYDEBUG(47, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy48;
+ if (yych != 'h') goto yy10;
+yy48:
+ YYDEBUG(48, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy49;
+ if (yych != 'p') goto yy10;
+yy49:
+ YYDEBUG(49, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy10;
+ if (yych >= '\v') goto yy10;
+ } else {
+ if (yych <= '\r') goto yy52;
+ if (yych != ' ') goto yy10;
+ }
+yy50:
+ YYDEBUG(50, *YYCURSOR);
+ ++YYCURSOR;
+yy51:
+ YYDEBUG(51, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1731 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ HANDLE_NEWLINE(yytext[yyleng-1]);
+ BEGIN(ST_IN_SCRIPTING);
+ return T_OPEN_TAG;
+}
+#line 1489 "Zend/zend_language_scanner.c"
+yy52:
+ YYDEBUG(52, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy50;
+ goto yy51;
+ }
+/* *********************************** */
+yyc_ST_BACKQUOTE:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(53, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '_') {
+ if (yych != '$') goto yy60;
+ } else {
+ if (yych <= '`') goto yy58;
+ if (yych == '{') goto yy57;
+ goto yy60;
+ }
+ YYDEBUG(55, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '_') {
+ if (yych <= '@') goto yy56;
+ if (yych <= 'Z') goto yy63;
+ if (yych >= '_') goto yy63;
+ } else {
+ if (yych <= 'z') {
+ if (yych >= 'a') goto yy63;
+ } else {
+ if (yych <= '{') goto yy66;
+ if (yych >= 0x7F) goto yy63;
+ }
+ }
+yy56:
+ YYDEBUG(56, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2194 "Zend/zend_language_scanner.l"
+ {
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+ if (yytext[0] == '\\' && YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '`':
+ break;
+ case '$':
+ if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') {
+ break;
+ }
+ continue;
+ case '{':
+ if (*YYCURSOR == '$') {
+ break;
+ }
+ continue;
+ case '\\':
+ if (YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ break;
+ }
+
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
+ return T_ENCAPSED_AND_WHITESPACE;
+}
+#line 1601 "Zend/zend_language_scanner.c"
+yy57:
+ YYDEBUG(57, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy61;
+ goto yy56;
+yy58:
+ YYDEBUG(58, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(59, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2138 "Zend/zend_language_scanner.l"
+ {
+ BEGIN(ST_IN_SCRIPTING);
+ return '`';
+}
+#line 1617 "Zend/zend_language_scanner.c"
+yy60:
+ YYDEBUG(60, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy56;
+yy61:
+ YYDEBUG(61, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(62, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2125 "Zend/zend_language_scanner.l"
+ {
+ Z_LVAL_P(zendlval) = (long) '{';
+ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
+ yyless(1);
+ return T_CURLY_OPEN;
+}
+#line 1634 "Zend/zend_language_scanner.c"
+yy63:
+ YYDEBUG(63, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(64, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy63;
+ }
+ if (yych == '-') goto yy68;
+ if (yych == '[') goto yy70;
+yy65:
+ YYDEBUG(65, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1831 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1656 "Zend/zend_language_scanner.c"
+yy66:
+ YYDEBUG(66, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(67, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1465 "Zend/zend_language_scanner.l"
+ {
+ yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
+ return T_DOLLAR_OPEN_CURLY_BRACES;
+}
+#line 1667 "Zend/zend_language_scanner.c"
+yy68:
+ YYDEBUG(68, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy72;
+yy69:
+ YYDEBUG(69, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy65;
+yy70:
+ YYDEBUG(70, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(71, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1823 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 1);
+ yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1689 "Zend/zend_language_scanner.c"
+yy72:
+ YYDEBUG(72, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '_') {
+ if (yych <= '@') goto yy69;
+ if (yych <= 'Z') goto yy73;
+ if (yych <= '^') goto yy69;
+ } else {
+ if (yych <= '`') goto yy69;
+ if (yych <= 'z') goto yy73;
+ if (yych <= '~') goto yy69;
+ }
+yy73:
+ YYDEBUG(73, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(74, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1813 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 3);
+ yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1715 "Zend/zend_language_scanner.c"
+ }
+/* *********************************** */
+yyc_ST_DOUBLE_QUOTES:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(75, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '#') {
+ if (yych == '"') goto yy80;
+ goto yy82;
+ } else {
+ if (yych <= '$') goto yy77;
+ if (yych == '{') goto yy79;
+ goto yy82;
+ }
+yy77:
+ YYDEBUG(77, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '_') {
+ if (yych <= '@') goto yy78;
+ if (yych <= 'Z') goto yy85;
+ if (yych >= '_') goto yy85;
+ } else {
+ if (yych <= 'z') {
+ if (yych >= 'a') goto yy85;
+ } else {
+ if (yych <= '{') goto yy88;
+ if (yych >= 0x7F) goto yy85;
+ }
+ }
+yy78:
+ YYDEBUG(78, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2144 "Zend/zend_language_scanner.l"
+ {
+ if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
+ YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
+ SET_DOUBLE_QUOTES_SCANNED_LENGTH(0);
+
+ goto double_quotes_scan_done;
+ }
+
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+ if (yytext[0] == '\\' && YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '"':
+ break;
+ case '$':
+ if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') {
+ break;
+ }
+ continue;
+ case '{':
+ if (*YYCURSOR == '$') {
+ break;
+ }
+ continue;
+ case '\\':
+ if (YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ break;
+ }
+
+double_quotes_scan_done:
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
+ return T_ENCAPSED_AND_WHITESPACE;
+}
+#line 1832 "Zend/zend_language_scanner.c"
+yy79:
+ YYDEBUG(79, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy83;
+ goto yy78;
+yy80:
+ YYDEBUG(80, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(81, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2133 "Zend/zend_language_scanner.l"
+ {
+ BEGIN(ST_IN_SCRIPTING);
+ return '"';
+}
+#line 1848 "Zend/zend_language_scanner.c"
+yy82:
+ YYDEBUG(82, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy78;
+yy83:
+ YYDEBUG(83, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(84, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2125 "Zend/zend_language_scanner.l"
+ {
+ Z_LVAL_P(zendlval) = (long) '{';
+ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
+ yyless(1);
+ return T_CURLY_OPEN;
+}
+#line 1865 "Zend/zend_language_scanner.c"
+yy85:
+ YYDEBUG(85, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(86, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy85;
+ }
+ if (yych == '-') goto yy90;
+ if (yych == '[') goto yy92;
+yy87:
+ YYDEBUG(87, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1831 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1887 "Zend/zend_language_scanner.c"
+yy88:
+ YYDEBUG(88, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(89, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1465 "Zend/zend_language_scanner.l"
+ {
+ yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
+ return T_DOLLAR_OPEN_CURLY_BRACES;
+}
+#line 1898 "Zend/zend_language_scanner.c"
+yy90:
+ YYDEBUG(90, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy94;
+yy91:
+ YYDEBUG(91, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy87;
+yy92:
+ YYDEBUG(92, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(93, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1823 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 1);
+ yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1920 "Zend/zend_language_scanner.c"
+yy94:
+ YYDEBUG(94, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '_') {
+ if (yych <= '@') goto yy91;
+ if (yych <= 'Z') goto yy95;
+ if (yych <= '^') goto yy91;
+ } else {
+ if (yych <= '`') goto yy91;
+ if (yych <= 'z') goto yy95;
+ if (yych <= '~') goto yy91;
+ }
+yy95:
+ YYDEBUG(95, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(96, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1813 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 3);
+ yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 1946 "Zend/zend_language_scanner.c"
+ }
+/* *********************************** */
+yyc_ST_END_HEREDOC:
+ YYDEBUG(97, *YYCURSOR);
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(99, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(100, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2111 "Zend/zend_language_scanner.l"
+ {
+ zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack));
+
+ YYCURSOR += heredoc_label->length - 1;
+ yyleng = heredoc_label->length;
+
+ heredoc_label_dtor(heredoc_label);
+ efree(heredoc_label);
+
+ BEGIN(ST_IN_SCRIPTING);
+ return T_END_HEREDOC;
+}
+#line 1970 "Zend/zend_language_scanner.c"
+/* *********************************** */
+yyc_ST_HEREDOC:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(101, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych == '$') goto yy103;
+ if (yych == '{') goto yy105;
+ goto yy106;
+yy103:
+ YYDEBUG(103, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '_') {
+ if (yych <= '@') goto yy104;
+ if (yych <= 'Z') goto yy109;
+ if (yych >= '_') goto yy109;
+ } else {
+ if (yych <= 'z') {
+ if (yych >= 'a') goto yy109;
+ } else {
+ if (yych <= '{') goto yy112;
+ if (yych >= 0x7F) goto yy109;
+ }
+ }
+yy104:
+ YYDEBUG(104, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2236 "Zend/zend_language_scanner.l"
+ {
+ int newline = 0;
+
+ zend_heredoc_label *heredoc_label = zend_ptr_stack_top(&SCNG(heredoc_label_stack));
+
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+ YYCURSOR--;
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '\r':
+ if (*YYCURSOR == '\n') {
+ YYCURSOR++;
+ }
+ /* fall through */
+ case '\n':
+ /* Check for ending label on the next line */
+ if (IS_LABEL_START(*YYCURSOR) && heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, heredoc_label->label, heredoc_label->length)) {
+ YYCTYPE *end = YYCURSOR + heredoc_label->length;
+
+ if (*end == ';') {
+ end++;
+ }
+
+ if (*end == '\n' || *end == '\r') {
+ /* newline before label will be subtracted from returned text, but
+ * yyleng/yytext will include it, for zend_highlight/strip, tokenizer, etc. */
+ if (YYCURSOR[-2] == '\r' && YYCURSOR[-1] == '\n') {
+ newline = 2; /* Windows newline */
+ } else {
+ newline = 1;
+ }
+
+ CG(increment_lineno) = 1; /* For newline before label */
+ BEGIN(ST_END_HEREDOC);
+
+ goto heredoc_scan_done;
+ }
+ }
+ continue;
+ case '$':
+ if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') {
+ break;
+ }
+ continue;
+ case '{':
+ if (*YYCURSOR == '$') {
+ break;
+ }
+ continue;
+ case '\\':
+ if (YYCURSOR < YYLIMIT && *YYCURSOR != '\n' && *YYCURSOR != '\r') {
+ YYCURSOR++;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ break;
+ }
+
+heredoc_scan_done:
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0 TSRMLS_CC);
+ return T_ENCAPSED_AND_WHITESPACE;
+}
+#line 2105 "Zend/zend_language_scanner.c"
+yy105:
+ YYDEBUG(105, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy107;
+ goto yy104;
+yy106:
+ YYDEBUG(106, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy104;
+yy107:
+ YYDEBUG(107, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(108, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2125 "Zend/zend_language_scanner.l"
+ {
+ Z_LVAL_P(zendlval) = (long) '{';
+ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
+ yyless(1);
+ return T_CURLY_OPEN;
+}
+#line 2127 "Zend/zend_language_scanner.c"
+yy109:
+ YYDEBUG(109, *YYCURSOR);
+ yyaccept = 0;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(110, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy109;
+ }
+ if (yych == '-') goto yy114;
+ if (yych == '[') goto yy116;
+yy111:
+ YYDEBUG(111, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1831 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 2149 "Zend/zend_language_scanner.c"
+yy112:
+ YYDEBUG(112, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(113, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1465 "Zend/zend_language_scanner.l"
+ {
+ yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
+ return T_DOLLAR_OPEN_CURLY_BRACES;
+}
+#line 2160 "Zend/zend_language_scanner.c"
+yy114:
+ YYDEBUG(114, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy118;
+yy115:
+ YYDEBUG(115, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy111;
+yy116:
+ YYDEBUG(116, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(117, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1823 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 1);
+ yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 2182 "Zend/zend_language_scanner.c"
+yy118:
+ YYDEBUG(118, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '_') {
+ if (yych <= '@') goto yy115;
+ if (yych <= 'Z') goto yy119;
+ if (yych <= '^') goto yy115;
+ } else {
+ if (yych <= '`') goto yy115;
+ if (yych <= 'z') goto yy119;
+ if (yych <= '~') goto yy115;
+ }
+yy119:
+ YYDEBUG(119, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(120, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1813 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 3);
+ yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 2208 "Zend/zend_language_scanner.c"
+ }
+/* *********************************** */
+yyc_ST_IN_SCRIPTING:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 192, 64, 0, 0, 64, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 192, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 60, 60, 44, 44, 44, 44, 44, 44,
+ 44, 44, 0, 0, 0, 0, 0, 0,
+ 0, 36, 36, 36, 36, 36, 36, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 0, 0, 0, 0, 4,
+ 0, 36, 36, 36, 36, 36, 36, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 0, 0, 0, 0, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4,
+ };
+ YYDEBUG(121, *YYCURSOR);
+ YYFILL(16);
+ yych = *YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch (yych) {
+ case 0x00:
+ case 0x01:
+ case 0x02:
+ case 0x03:
+ case 0x04:
+ case 0x05:
+ case 0x06:
+ case 0x07:
+ case 0x08:
+ case '\v':
+ case '\f':
+ case 0x0E:
+ case 0x0F:
+ case 0x10:
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x15:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1A:
+ case 0x1B:
+ case 0x1C:
+ case 0x1D:
+ case 0x1E:
+ case 0x1F: goto yy184;
+ case '\t':
+ case '\n':
+ case '\r':
+ case ' ': goto yy140;
+ case '!': goto yy154;
+ case '"': goto yy180;
+ case '#': goto yy176;
+ case '$': goto yy165;
+ case '%': goto yy159;
+ case '&': goto yy160;
+ case '\'': goto yy178;
+ case '(': goto yy148;
+ case ')':
+ case ',':
+ case ';':
+ case '@':
+ case '[':
+ case ']':
+ case '~': goto yy166;
+ case '*': goto yy157;
+ case '+': goto yy153;
+ case '-': goto yy138;
+ case '.': goto yy145;
+ case '/': goto yy158;
+ case '0': goto yy172;
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9': goto yy174;
+ case ':': goto yy142;
+ case '<': goto yy155;
+ case '=': goto yy151;
+ case '>': goto yy156;
+ case '?': goto yy167;
+ case 'A':
+ case 'a': goto yy133;
+ case 'B':
+ case 'b': goto yy135;
+ case 'C':
+ case 'c': goto yy127;
+ case 'D':
+ case 'd': goto yy125;
+ case 'E':
+ case 'e': goto yy123;
+ case 'F':
+ case 'f': goto yy126;
+ case 'G':
+ case 'g': goto yy136;
+ case 'I':
+ case 'i': goto yy131;
+ case 'L':
+ case 'l': goto yy152;
+ case 'N':
+ case 'n': goto yy146;
+ case 'O':
+ case 'o': goto yy163;
+ case 'P':
+ case 'p': goto yy137;
+ case 'R':
+ case 'r': goto yy128;
+ case 'S':
+ case 's': goto yy134;
+ case 'T':
+ case 't': goto yy130;
+ case 'U':
+ case 'u': goto yy149;
+ case 'V':
+ case 'v': goto yy147;
+ case 'W':
+ case 'w': goto yy132;
+ case 'X':
+ case 'x': goto yy164;
+ case 'Y':
+ case 'y': goto yy129;
+ case '\\': goto yy143;
+ case '^': goto yy162;
+ case '_': goto yy150;
+ case '`': goto yy182;
+ case '{': goto yy168;
+ case '|': goto yy161;
+ case '}': goto yy170;
+ default: goto yy175;
+ }
+yy123:
+ YYDEBUG(123, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch ((yych = *YYCURSOR)) {
+ case 'C':
+ case 'c': goto yy742;
+ case 'L':
+ case 'l': goto yy743;
+ case 'M':
+ case 'm': goto yy744;
+ case 'N':
+ case 'n': goto yy745;
+ case 'V':
+ case 'v': goto yy746;
+ case 'X':
+ case 'x': goto yy747;
+ default: goto yy187;
+ }
+yy124:
+ YYDEBUG(124, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1854 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, yytext, yyleng);
+ zendlval->type = IS_STRING;
+ return T_STRING;
+}
+#line 2397 "Zend/zend_language_scanner.c"
+yy125:
+ YYDEBUG(125, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych <= 'H') {
+ if (yych == 'E') goto yy724;
+ goto yy187;
+ } else {
+ if (yych <= 'I') goto yy725;
+ if (yych <= 'N') goto yy187;
+ goto yy726;
+ }
+ } else {
+ if (yych <= 'h') {
+ if (yych == 'e') goto yy724;
+ goto yy187;
+ } else {
+ if (yych <= 'i') goto yy725;
+ if (yych == 'o') goto yy726;
+ goto yy187;
+ }
+ }
+yy126:
+ YYDEBUG(126, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych <= 'N') {
+ if (yych == 'I') goto yy700;
+ goto yy187;
+ } else {
+ if (yych <= 'O') goto yy701;
+ if (yych <= 'T') goto yy187;
+ goto yy702;
+ }
+ } else {
+ if (yych <= 'n') {
+ if (yych == 'i') goto yy700;
+ goto yy187;
+ } else {
+ if (yych <= 'o') goto yy701;
+ if (yych == 'u') goto yy702;
+ goto yy187;
+ }
+ }
+yy127:
+ YYDEBUG(127, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych <= 'K') {
+ if (yych == 'A') goto yy665;
+ goto yy187;
+ } else {
+ if (yych <= 'L') goto yy666;
+ if (yych <= 'N') goto yy187;
+ goto yy667;
+ }
+ } else {
+ if (yych <= 'k') {
+ if (yych == 'a') goto yy665;
+ goto yy187;
+ } else {
+ if (yych <= 'l') goto yy666;
+ if (yych == 'o') goto yy667;
+ goto yy187;
+ }
+ }
+yy128:
+ YYDEBUG(128, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy647;
+ if (yych == 'e') goto yy647;
+ goto yy187;
+yy129:
+ YYDEBUG(129, *YYCURSOR);
+ yych = *++YYCURSOR;
+ 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 yy630;
+ if (yych <= 'Q') goto yy187;
+ goto yy631;
+ } else {
+ if (yych <= 'h') {
+ if (yych <= 'g') goto yy187;
+ goto yy630;
+ } else {
+ if (yych == 'r') goto yy631;
+ goto yy187;
+ }
+ }
+yy131:
+ YYDEBUG(131, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'S') {
+ if (yych <= 'L') {
+ if (yych == 'F') goto yy577;
+ goto yy187;
+ } else {
+ if (yych <= 'M') goto yy579;
+ if (yych <= 'N') goto yy580;
+ if (yych <= 'R') goto yy187;
+ goto yy581;
+ }
+ } else {
+ if (yych <= 'm') {
+ if (yych == 'f') goto yy577;
+ if (yych <= 'l') goto yy187;
+ goto yy579;
+ } else {
+ if (yych <= 'n') goto yy580;
+ if (yych == 's') goto yy581;
+ goto yy187;
+ }
+ }
+yy132:
+ YYDEBUG(132, *YYCURSOR);
+ yych = *++YYCURSOR;
+ 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 yy554;
+ goto yy187;
+ } else {
+ if (yych <= 'N') goto yy555;
+ if (yych <= 'Q') goto yy187;
+ if (yych <= 'R') goto yy556;
+ goto yy557;
+ }
+ } else {
+ if (yych <= 'n') {
+ if (yych == 'b') goto yy554;
+ if (yych <= 'm') goto yy187;
+ goto yy555;
+ } else {
+ if (yych <= 'q') goto yy187;
+ if (yych <= 'r') goto yy556;
+ if (yych <= 's') goto yy557;
+ goto yy187;
+ }
+ }
+yy134:
+ YYDEBUG(134, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'W') {
+ if (yych == 'T') goto yy542;
+ if (yych <= 'V') goto yy187;
+ goto yy543;
+ } else {
+ if (yych <= 't') {
+ if (yych <= 's') goto yy187;
+ goto yy542;
+ } else {
+ if (yych == 'w') goto yy543;
+ goto yy187;
+ }
+ }
+yy135:
+ YYDEBUG(135, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= ';') {
+ if (yych <= '"') {
+ if (yych <= '!') goto yy187;
+ goto yy534;
+ } else {
+ if (yych == '\'') goto yy535;
+ goto yy187;
+ }
+ } else {
+ if (yych <= 'R') {
+ if (yych <= '<') goto yy533;
+ if (yych <= 'Q') goto yy187;
+ goto yy536;
+ } else {
+ if (yych == 'r') goto yy536;
+ goto yy187;
+ }
+ }
+yy136:
+ YYDEBUG(136, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych == 'L') goto yy523;
+ if (yych <= 'N') goto yy187;
+ goto yy524;
+ } else {
+ if (yych <= 'l') {
+ if (yych <= 'k') goto yy187;
+ goto yy523;
+ } else {
+ if (yych == 'o') goto yy524;
+ goto yy187;
+ }
+ }
+yy137:
+ YYDEBUG(137, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'R') goto yy499;
+ if (yych <= 'T') goto yy187;
+ goto yy500;
+ } else {
+ if (yych <= 'r') {
+ if (yych <= 'q') goto yy187;
+ goto yy499;
+ } else {
+ if (yych == 'u') goto yy500;
+ goto yy187;
+ }
+ }
+yy138:
+ YYDEBUG(138, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '<') {
+ if (yych == '-') goto yy495;
+ } else {
+ if (yych <= '=') goto yy493;
+ if (yych <= '>') goto yy497;
+ }
+yy139:
+ YYDEBUG(139, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1454 "Zend/zend_language_scanner.l"
+ {
+ return yytext[0];
+}
+#line 2633 "Zend/zend_language_scanner.c"
+yy140:
+ YYDEBUG(140, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy492;
+yy141:
+ YYDEBUG(141, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1175 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ HANDLE_NEWLINES(yytext, yyleng);
+ return T_WHITESPACE;
+}
+#line 2648 "Zend/zend_language_scanner.c"
+yy142:
+ YYDEBUG(142, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == ':') goto yy489;
+ goto yy139;
+yy143:
+ YYDEBUG(143, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(144, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1202 "Zend/zend_language_scanner.l"
+ {
+ return T_NS_SEPARATOR;
+}
+#line 2663 "Zend/zend_language_scanner.c"
+yy145:
+ YYDEBUG(145, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '/') {
+ if (yych == '.') goto yy486;
+ goto yy139;
+ } else {
+ if (yych <= '9') goto yy482;
+ if (yych == '=') goto yy484;
+ goto yy139;
+ }
+yy146:
+ YYDEBUG(146, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'E') {
+ if (yych == 'A') goto yy470;
+ if (yych <= 'D') goto yy187;
+ goto yy471;
+ } else {
+ if (yych <= 'a') {
+ if (yych <= '`') goto yy187;
+ goto yy470;
+ } else {
+ if (yych == 'e') goto yy471;
+ goto yy187;
+ }
+ }
+yy147:
+ YYDEBUG(147, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy467;
+ if (yych == 'a') goto yy467;
+ goto yy187;
+yy148:
+ YYDEBUG(148, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'S') {
+ if (yych <= 'D') {
+ if (yych <= ' ') {
+ if (yych == '\t') goto yy392;
+ if (yych <= 0x1F) goto yy139;
+ goto yy392;
+ } else {
+ if (yych <= '@') goto yy139;
+ if (yych == 'C') goto yy139;
+ goto yy392;
+ }
+ } else {
+ if (yych <= 'I') {
+ if (yych == 'F') goto yy392;
+ if (yych <= 'H') goto yy139;
+ goto yy392;
+ } else {
+ if (yych == 'O') goto yy392;
+ if (yych <= 'Q') goto yy139;
+ goto yy392;
+ }
+ }
+ } else {
+ if (yych <= 'f') {
+ if (yych <= 'b') {
+ if (yych == 'U') goto yy392;
+ if (yych <= '`') goto yy139;
+ goto yy392;
+ } else {
+ if (yych == 'd') goto yy392;
+ if (yych <= 'e') goto yy139;
+ goto yy392;
+ }
+ } else {
+ if (yych <= 'o') {
+ if (yych == 'i') goto yy392;
+ if (yych <= 'n') goto yy139;
+ goto yy392;
+ } else {
+ if (yych <= 's') {
+ if (yych <= 'q') goto yy139;
+ goto yy392;
+ } else {
+ if (yych == 'u') goto yy392;
+ goto yy139;
+ }
+ }
+ }
+ }
+yy149:
+ YYDEBUG(149, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'S') {
+ if (yych == 'N') goto yy383;
+ if (yych <= 'R') goto yy187;
+ goto yy384;
+ } else {
+ if (yych <= 'n') {
+ if (yych <= 'm') goto yy187;
+ goto yy383;
+ } else {
+ if (yych == 's') goto yy384;
+ goto yy187;
+ }
+ }
+yy150:
+ YYDEBUG(150, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '_') goto yy301;
+ goto yy187;
+yy151:
+ YYDEBUG(151, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '<') goto yy139;
+ if (yych <= '=') goto yy295;
+ if (yych <= '>') goto yy297;
+ goto yy139;
+yy152:
+ YYDEBUG(152, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy291;
+ if (yych == 'i') goto yy291;
+ goto yy187;
+yy153:
+ YYDEBUG(153, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '+') goto yy289;
+ if (yych == '=') goto yy287;
+ goto yy139;
+yy154:
+ YYDEBUG(154, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy284;
+ goto yy139;
+yy155:
+ YYDEBUG(155, *YYCURSOR);
+ yyaccept = 1;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= ';') {
+ if (yych == '/') goto yy256;
+ goto yy139;
+ } else {
+ 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 yy250;
+ if (yych <= '>') goto yy248;
+ goto yy139;
+yy157:
+ YYDEBUG(157, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '*') goto yy242;
+ if (yych == '=') goto yy244;
+ goto yy139;
+yy158:
+ YYDEBUG(158, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '.') {
+ if (yych == '*') goto yy234;
+ goto yy139;
+ } else {
+ if (yych <= '/') goto yy236;
+ if (yych == '=') goto yy237;
+ goto yy139;
+ }
+yy159:
+ YYDEBUG(159, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '<') goto yy139;
+ if (yych <= '=') goto yy230;
+ if (yych <= '>') goto yy228;
+ goto yy139;
+yy160:
+ YYDEBUG(160, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '&') goto yy224;
+ if (yych == '=') goto yy226;
+ goto yy139;
+yy161:
+ YYDEBUG(161, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy222;
+ if (yych == '|') goto yy220;
+ goto yy139;
+yy162:
+ YYDEBUG(162, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy218;
+ goto yy139;
+yy163:
+ YYDEBUG(163, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy216;
+ if (yych == 'r') goto yy216;
+ goto yy187;
+yy164:
+ YYDEBUG(164, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy213;
+ if (yych == 'o') goto yy213;
+ goto yy187;
+yy165:
+ YYDEBUG(165, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '_') {
+ if (yych <= '@') goto yy139;
+ if (yych <= 'Z') goto yy210;
+ if (yych <= '^') goto yy139;
+ goto yy210;
+ } else {
+ if (yych <= '`') goto yy139;
+ if (yych <= 'z') goto yy210;
+ if (yych <= '~') goto yy139;
+ goto yy210;
+ }
+yy166:
+ YYDEBUG(166, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy139;
+yy167:
+ YYDEBUG(167, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy206;
+ goto yy139;
+yy168:
+ YYDEBUG(168, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(169, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1459 "Zend/zend_language_scanner.l"
+ {
+ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
+ return '{';
+}
+#line 2902 "Zend/zend_language_scanner.c"
+yy170:
+ YYDEBUG(170, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(171, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1471 "Zend/zend_language_scanner.l"
+ {
+ RESET_DOC_COMMENT();
+ if (!zend_stack_is_empty(&SCNG(state_stack))) {
+ yy_pop_state(TSRMLS_C);
+ }
+ return '}';
+}
+#line 2916 "Zend/zend_language_scanner.c"
+yy172:
+ YYDEBUG(172, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'E') {
+ if (yych <= '9') {
+ if (yych == '.') goto yy188;
+ if (yych >= '0') goto yy191;
+ } else {
+ if (yych == 'B') goto yy199;
+ if (yych >= 'E') goto yy193;
+ }
+ } else {
+ if (yych <= 'b') {
+ if (yych == 'X') goto yy198;
+ if (yych >= 'b') goto yy199;
+ } else {
+ if (yych <= 'e') {
+ if (yych >= 'e') goto yy193;
+ } else {
+ if (yych == 'x') goto yy198;
+ }
+ }
+ }
+yy173:
+ YYDEBUG(173, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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);
+ } else {
+ errno = 0;
+ Z_LVAL_P(zendlval) = strtol(yytext, NULL, 0);
+ if (errno == ERANGE) { /* Overflow */
+ if (yytext[0] == '0') { /* octal overflow */
+ Z_DVAL_P(zendlval) = zend_oct_strtod(yytext, NULL);
+ } else {
+ Z_DVAL_P(zendlval) = zend_strtod(yytext, NULL);
+ }
+ zendlval->type = IS_DOUBLE;
+ return T_DNUMBER;
+ }
+ }
+
+ zendlval->type = IS_LONG;
+ return T_LNUMBER;
+}
+#line 2965 "Zend/zend_language_scanner.c"
+yy174:
+ YYDEBUG(174, *YYCURSOR);
+ yyaccept = 2;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '9') {
+ if (yych == '.') goto yy188;
+ if (yych <= '/') goto yy173;
+ goto yy191;
+ } else {
+ if (yych <= 'E') {
+ if (yych <= 'D') goto yy173;
+ goto yy193;
+ } else {
+ if (yych == 'e') goto yy193;
+ goto yy173;
+ }
+ }
+yy175:
+ YYDEBUG(175, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy187;
+yy176:
+ YYDEBUG(176, *YYCURSOR);
+ ++YYCURSOR;
+yy177:
+ YYDEBUG(177, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1861 "Zend/zend_language_scanner.l"
+ {
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '\r':
+ if (*YYCURSOR == '\n') {
+ YYCURSOR++;
+ }
+ /* fall through */
+ case '\n':
+ CG(zend_lineno)++;
+ break;
+ case '%':
+ if (!CG(asp_tags)) {
+ continue;
+ }
+ /* fall through */
+ case '?':
+ if (*YYCURSOR == '>') {
+ YYCURSOR--;
+ break;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ break;
+ }
+
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ return T_COMMENT;
+}
+#line 3027 "Zend/zend_language_scanner.c"
+yy178:
+ YYDEBUG(178, *YYCURSOR);
+ ++YYCURSOR;
+yy179:
+ YYDEBUG(179, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1948 "Zend/zend_language_scanner.l"
+ {
+ register char *s, *t;
+ char *end;
+ int bprefix = (yytext[0] != '\'') ? 1 : 0;
+
+ while (1) {
+ if (YYCURSOR < YYLIMIT) {
+ if (*YYCURSOR == '\'') {
+ YYCURSOR++;
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ break;
+ } else if (*YYCURSOR++ == '\\' && YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+ } else {
+ yyleng = YYLIMIT - SCNG(yy_text);
+
+ /* Unclosed single quotes; treat similar to double quotes, but without a separate token
+ * for ' (unrecognized by parser), instead of old flex fallback to "Unexpected character..."
+ * rule, which continued in ST_IN_SCRIPTING state after the quote */
+ return T_ENCAPSED_AND_WHITESPACE;
+ }
+ }
+
+ ZVAL_STRINGL(zendlval, yytext+bprefix+1, yyleng-bprefix-2, 1);
+
+ /* convert escape sequences */
+ s = t = Z_STRVAL_P(zendlval);
+ end = s+Z_STRLEN_P(zendlval);
+ while (s<end) {
+ if (*s=='\\') {
+ s++;
+
+ switch(*s) {
+ case '\\':
+ case '\'':
+ *t++ = *s;
+ Z_STRLEN_P(zendlval)--;
+ break;
+ default:
+ *t++ = '\\';
+ *t++ = *s;
+ break;
+ }
+ } else {
+ *t++ = *s;
+ }
+
+ if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
+ CG(zend_lineno)++;
+ }
+ s++;
+ }
+ *t = 0;
+
+ if (SCNG(output_filter)) {
+ size_t sz = 0;
+ s = Z_STRVAL_P(zendlval);
+ SCNG(output_filter)((unsigned char **)&Z_STRVAL_P(zendlval), &sz, (unsigned char *)s, (size_t)Z_STRLEN_P(zendlval) TSRMLS_CC);
+ Z_STRLEN_P(zendlval) = sz;
+ efree(s);
+ }
+ return T_CONSTANT_ENCAPSED_STRING;
+}
+#line 3100 "Zend/zend_language_scanner.c"
+yy180:
+ YYDEBUG(180, *YYCURSOR);
+ ++YYCURSOR;
+yy181:
+ YYDEBUG(181, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2015 "Zend/zend_language_scanner.l"
+ {
+ int bprefix = (yytext[0] != '"') ? 1 : 0;
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '"':
+ yyleng = YYCURSOR - SCNG(yy_text);
+ zend_scan_escape_string(zendlval, yytext+bprefix+1, yyleng-bprefix-2, '"' TSRMLS_CC);
+ return T_CONSTANT_ENCAPSED_STRING;
+ case '$':
+ if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') {
+ break;
+ }
+ continue;
+ case '{':
+ if (*YYCURSOR == '$') {
+ break;
+ }
+ continue;
+ case '\\':
+ if (YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+
+ YYCURSOR--;
+ break;
+ }
+
+ /* Remember how much was scanned to save rescanning */
+ SET_DOUBLE_QUOTES_SCANNED_LENGTH(YYCURSOR - SCNG(yy_text) - yyleng);
+
+ YYCURSOR = SCNG(yy_text) + yyleng;
+
+ BEGIN(ST_DOUBLE_QUOTES);
+ return '"';
+}
+#line 3148 "Zend/zend_language_scanner.c"
+yy182:
+ YYDEBUG(182, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(183, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2105 "Zend/zend_language_scanner.l"
+ {
+ BEGIN(ST_BACKQUOTE);
+ return '`';
+}
+#line 3159 "Zend/zend_language_scanner.c"
+yy184:
+ YYDEBUG(184, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(185, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2368 "Zend/zend_language_scanner.l"
+ {
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
+ goto restart;
+}
+#line 3174 "Zend/zend_language_scanner.c"
+yy186:
+ YYDEBUG(186, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy187:
+ YYDEBUG(187, *YYCURSOR);
+ if (yybm[0+yych] & 4) {
+ goto yy186;
+ }
+ goto yy124;
+yy188:
+ YYDEBUG(188, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(189, *YYCURSOR);
+ if (yybm[0+yych] & 8) {
+ goto yy188;
+ }
+ if (yych == 'E') goto yy193;
+ if (yych == 'e') goto yy193;
+yy190:
+ YYDEBUG(190, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1580 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_DOUBLE(zendlval, zend_strtod(yytext, NULL));
+ return T_DNUMBER;
+}
+#line 3206 "Zend/zend_language_scanner.c"
+yy191:
+ YYDEBUG(191, *YYCURSOR);
+ yyaccept = 2;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(192, *YYCURSOR);
+ if (yych <= '9') {
+ if (yych == '.') goto yy188;
+ if (yych <= '/') goto yy173;
+ goto yy191;
+ } else {
+ if (yych <= 'E') {
+ if (yych <= 'D') goto yy173;
+ } else {
+ if (yych != 'e') goto yy173;
+ }
+ }
+yy193:
+ YYDEBUG(193, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= ',') {
+ if (yych == '+') goto yy195;
+ } else {
+ if (yych <= '-') goto yy195;
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy196;
+ }
+yy194:
+ YYDEBUG(194, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ if (yyaccept <= 2) {
+ if (yyaccept <= 1) {
+ if (yyaccept <= 0) {
+ goto yy124;
+ } else {
+ goto yy139;
+ }
+ } else {
+ goto yy173;
+ }
+ } else {
+ if (yyaccept <= 4) {
+ if (yyaccept <= 3) {
+ goto yy190;
+ } else {
+ goto yy235;
+ }
+ } else {
+ goto yy255;
+ }
+ }
+yy195:
+ YYDEBUG(195, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy194;
+ if (yych >= ':') goto yy194;
+yy196:
+ YYDEBUG(196, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(197, *YYCURSOR);
+ if (yych <= '/') goto yy190;
+ if (yych <= '9') goto yy196;
+ goto yy190;
+yy198:
+ YYDEBUG(198, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 32) {
+ goto yy203;
+ }
+ goto yy194;
+yy199:
+ YYDEBUG(199, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 16) {
+ goto yy200;
+ }
+ goto yy194;
+yy200:
+ YYDEBUG(200, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(201, *YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy200;
+ }
+ YYDEBUG(202, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1497 "Zend/zend_language_scanner.l"
+ {
+ char *bin = yytext + 2; /* Skip "0b" */
+ int len = yyleng - 2;
+
+ /* Skip any leading 0s */
+ while (*bin == '0') {
+ ++bin;
+ --len;
+ }
+
+ if (len < SIZEOF_LONG * 8) {
+ if (len == 0) {
+ Z_LVAL_P(zendlval) = 0;
+ } else {
+ Z_LVAL_P(zendlval) = strtol(bin, NULL, 2);
+ }
+ zendlval->type = IS_LONG;
+ return T_LNUMBER;
+ } else {
+ ZVAL_DOUBLE(zendlval, zend_bin_strtod(bin, NULL));
+ return T_DNUMBER;
+ }
+}
+#line 3322 "Zend/zend_language_scanner.c"
+yy203:
+ YYDEBUG(203, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(204, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy203;
+ }
+ YYDEBUG(205, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1542 "Zend/zend_language_scanner.l"
+ {
+ char *hex = yytext + 2; /* Skip "0x" */
+ int len = yyleng - 2;
+
+ /* Skip any leading 0s */
+ while (*hex == '0') {
+ hex++;
+ len--;
+ }
+
+ if (len < SIZEOF_LONG * 2 || (len == SIZEOF_LONG * 2 && *hex <= '7')) {
+ if (len == 0) {
+ Z_LVAL_P(zendlval) = 0;
+ } else {
+ Z_LVAL_P(zendlval) = strtol(hex, NULL, 16);
+ }
+ zendlval->type = IS_LONG;
+ return T_LNUMBER;
+ } else {
+ ZVAL_DOUBLE(zendlval, zend_hex_strtod(hex, NULL));
+ return T_DNUMBER;
+ }
+}
+#line 3358 "Zend/zend_language_scanner.c"
+yy206:
+ YYDEBUG(206, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy208;
+ if (yych == '\r') goto yy209;
+yy207:
+ YYDEBUG(207, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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 3373 "Zend/zend_language_scanner.c"
+yy208:
+ YYDEBUG(208, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy207;
+yy209:
+ YYDEBUG(209, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy208;
+ goto yy207;
+yy210:
+ YYDEBUG(210, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(211, *YYCURSOR);
+ if (yych <= '^') {
+ if (yych <= '9') {
+ if (yych >= '0') goto yy210;
+ } else {
+ if (yych <= '@') goto yy212;
+ if (yych <= 'Z') goto yy210;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= '_') goto yy210;
+ } else {
+ if (yych <= 'z') goto yy210;
+ if (yych >= 0x7F) goto yy210;
+ }
+ }
+yy212:
+ YYDEBUG(212, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1831 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 3413 "Zend/zend_language_scanner.c"
+yy213:
+ YYDEBUG(213, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy214;
+ if (yych != 'r') goto yy187;
+yy214:
+ YYDEBUG(214, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(215, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1442 "Zend/zend_language_scanner.l"
+ {
+ return T_LOGICAL_XOR;
+}
+#line 3431 "Zend/zend_language_scanner.c"
+yy216:
+ YYDEBUG(216, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(217, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1434 "Zend/zend_language_scanner.l"
+ {
+ return T_LOGICAL_OR;
+}
+#line 3444 "Zend/zend_language_scanner.c"
+yy218:
+ YYDEBUG(218, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(219, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1422 "Zend/zend_language_scanner.l"
+ {
+ return T_XOR_EQUAL;
+}
+#line 3454 "Zend/zend_language_scanner.c"
+yy220:
+ YYDEBUG(220, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(221, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1426 "Zend/zend_language_scanner.l"
+ {
+ return T_BOOLEAN_OR;
+}
+#line 3464 "Zend/zend_language_scanner.c"
+yy222:
+ YYDEBUG(222, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(223, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1418 "Zend/zend_language_scanner.l"
+ {
+ return T_OR_EQUAL;
+}
+#line 3474 "Zend/zend_language_scanner.c"
+yy224:
+ YYDEBUG(224, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(225, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1430 "Zend/zend_language_scanner.l"
+ {
+ return T_BOOLEAN_AND;
+}
+#line 3484 "Zend/zend_language_scanner.c"
+yy226:
+ YYDEBUG(226, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(227, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1414 "Zend/zend_language_scanner.l"
+ {
+ return T_AND_EQUAL;
+}
+#line 3494 "Zend/zend_language_scanner.c"
+yy228:
+ YYDEBUG(228, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy232;
+ if (yych == '\r') goto yy233;
+yy229:
+ YYDEBUG(229, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1936 "Zend/zend_language_scanner.l"
+ {
+ if (CG(asp_tags)) {
+ BEGIN(INITIAL);
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ return T_CLOSE_TAG; /* implicit ';' at php-end tag */
+ } else {
+ yyless(1);
+ return yytext[0];
+ }
+}
+#line 3514 "Zend/zend_language_scanner.c"
+yy230:
+ YYDEBUG(230, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(231, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1402 "Zend/zend_language_scanner.l"
+ {
+ return T_MOD_EQUAL;
+}
+#line 3524 "Zend/zend_language_scanner.c"
+yy232:
+ YYDEBUG(232, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy229;
+yy233:
+ YYDEBUG(233, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy232;
+ goto yy229;
+yy234:
+ YYDEBUG(234, *YYCURSOR);
+ yyaccept = 4;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych == '*') goto yy239;
+yy235:
+ YYDEBUG(235, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1895 "Zend/zend_language_scanner.l"
+ {
+ int doc_com;
+
+ if (yyleng > 2) {
+ doc_com = 1;
+ RESET_DOC_COMMENT();
+ } else {
+ doc_com = 0;
+ }
+
+ while (YYCURSOR < YYLIMIT) {
+ if (*YYCURSOR++ == '*' && *YYCURSOR == '/') {
+ break;
+ }
+ }
+
+ if (YYCURSOR < YYLIMIT) {
+ YYCURSOR++;
+ } else {
+ zend_error(E_COMPILE_WARNING, "Unterminated comment starting line %d", CG(zend_lineno));
+ }
+
+ yyleng = YYCURSOR - SCNG(yy_text);
+ HANDLE_NEWLINES(yytext, yyleng);
+
+ if (doc_com) {
+ CG(doc_comment) = estrndup(yytext, yyleng);
+ CG(doc_comment_len) = yyleng;
+ return T_DOC_COMMENT;
+ }
+
+ return T_COMMENT;
+}
+#line 3576 "Zend/zend_language_scanner.c"
+yy236:
+ YYDEBUG(236, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy177;
+yy237:
+ YYDEBUG(237, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(238, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1394 "Zend/zend_language_scanner.l"
+ {
+ return T_DIV_EQUAL;
+}
+#line 3590 "Zend/zend_language_scanner.c"
+yy239:
+ YYDEBUG(239, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 64) {
+ goto yy240;
+ }
+ goto yy194;
+yy240:
+ YYDEBUG(240, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(241, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy240;
+ }
+ goto yy235;
+yy242:
+ YYDEBUG(242, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '=') goto yy246;
+ YYDEBUG(243, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1386 "Zend/zend_language_scanner.l"
+ {
+ return T_POW;
+}
+#line 3618 "Zend/zend_language_scanner.c"
+yy244:
+ YYDEBUG(244, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(245, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1382 "Zend/zend_language_scanner.l"
+ {
+ return T_MUL_EQUAL;
+}
+#line 3628 "Zend/zend_language_scanner.c"
+yy246:
+ YYDEBUG(246, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(247, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1390 "Zend/zend_language_scanner.l"
+ {
+ return T_POW_EQUAL;
+}
+#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 1450 "Zend/zend_language_scanner.l"
+ {
+ return T_SR;
+}
+#line 3649 "Zend/zend_language_scanner.c"
+yy250:
+ YYDEBUG(250, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(251, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1370 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_GREATER_OR_EQUAL;
+}
+#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 yy261;
+ if (yych == 's') goto yy261;
+ goto yy194;
+yy257:
+ YYDEBUG(257, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(258, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1366 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_SMALLER_OR_EQUAL;
+}
+#line 3700 "Zend/zend_language_scanner.c"
+yy259:
+ YYDEBUG(259, *YYCURSOR);
+ ++YYCURSOR;
+yy260:
+ YYDEBUG(260, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1362 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_NOT_EQUAL;
+}
+#line 3711 "Zend/zend_language_scanner.c"
+yy261:
+ YYDEBUG(261, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy262;
+ if (yych != 'c') goto yy194;
+yy262:
+ YYDEBUG(262, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy263;
+ if (yych != 'r') goto yy194;
+yy263:
+ YYDEBUG(263, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy264;
+ if (yych != 'i') goto yy194;
+yy264:
+ YYDEBUG(264, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy265;
+ if (yych != 'p') goto yy194;
+yy265:
+ YYDEBUG(265, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy266;
+ if (yych != 't') goto yy194;
+yy266:
+ YYDEBUG(266, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(267, *YYCURSOR);
+ if (yych <= '\r') {
+ if (yych <= 0x08) goto yy194;
+ if (yych <= '\n') goto yy266;
+ if (yych <= '\f') goto yy194;
+ goto yy266;
+ } else {
+ if (yych <= ' ') {
+ if (yych <= 0x1F) goto yy194;
+ goto yy266;
+ } else {
+ if (yych == '>') goto yy206;
+ goto yy194;
+ }
+ }
+yy268:
+ YYDEBUG(268, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(269, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1406 "Zend/zend_language_scanner.l"
+ {
+ return T_SL_EQUAL;
+}
+#line 3766 "Zend/zend_language_scanner.c"
+yy270:
+ YYDEBUG(270, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+ YYDEBUG(271, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy270;
+ }
+ if (yych <= 'Z') {
+ if (yych <= '&') {
+ if (yych == '"') goto yy275;
+ goto yy194;
+ } else {
+ if (yych <= '\'') goto yy274;
+ if (yych <= '@') goto yy194;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych != '_') goto yy194;
+ } else {
+ if (yych <= 'z') goto yy272;
+ if (yych <= '~') goto yy194;
+ }
+ }
+yy272:
+ YYDEBUG(272, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(2);
+ yych = *YYCURSOR;
+ YYDEBUG(273, *YYCURSOR);
+ if (yych <= '@') {
+ if (yych <= '\f') {
+ if (yych == '\n') goto yy279;
+ goto yy194;
+ } else {
+ if (yych <= '\r') goto yy281;
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy272;
+ goto yy194;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= 'Z') goto yy272;
+ if (yych <= '^') goto yy194;
+ goto yy272;
+ } else {
+ if (yych <= '`') goto yy194;
+ if (yych <= 'z') goto yy272;
+ if (yych <= '~') goto yy194;
+ goto yy272;
+ }
+ }
+yy274:
+ YYDEBUG(274, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy194;
+ if (yych <= '/') goto yy283;
+ if (yych <= '9') goto yy194;
+ goto yy283;
+yy275:
+ YYDEBUG(275, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '"') goto yy194;
+ if (yych <= '/') goto yy277;
+ if (yych <= '9') goto yy194;
+ goto yy277;
+yy276:
+ YYDEBUG(276, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+yy277:
+ YYDEBUG(277, *YYCURSOR);
+ if (yych <= 'Z') {
+ if (yych <= '/') {
+ if (yych != '"') goto yy194;
+ } else {
+ if (yych <= '9') goto yy276;
+ if (yych <= '@') goto yy194;
+ goto yy276;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych == '_') goto yy276;
+ goto yy194;
+ } else {
+ if (yych <= 'z') goto yy276;
+ if (yych <= '~') goto yy194;
+ goto yy276;
+ }
+ }
+yy278:
+ YYDEBUG(278, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy279;
+ if (yych == '\r') goto yy281;
+ goto yy194;
+yy279:
+ YYDEBUG(279, *YYCURSOR);
+ ++YYCURSOR;
+yy280:
+ YYDEBUG(280, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2057 "Zend/zend_language_scanner.l"
+ {
+ char *s;
+ int bprefix = (yytext[0] != '<') ? 1 : 0;
+ zend_heredoc_label *heredoc_label = emalloc(sizeof(zend_heredoc_label));
+
+ CG(zend_lineno)++;
+ heredoc_label->length = yyleng-bprefix-3-1-(yytext[yyleng-2]=='\r'?1:0);
+ s = yytext+bprefix+3;
+ while ((*s == ' ') || (*s == '\t')) {
+ s++;
+ heredoc_label->length--;
+ }
+
+ if (*s == '\'') {
+ s++;
+ heredoc_label->length -= 2;
+
+ BEGIN(ST_NOWDOC);
+ } else {
+ if (*s == '"') {
+ s++;
+ heredoc_label->length -= 2;
+ }
+
+ BEGIN(ST_HEREDOC);
+ }
+
+ heredoc_label->label = estrndup(s, heredoc_label->length);
+
+ /* Check for ending label on the next line */
+ if (heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, s, heredoc_label->length)) {
+ YYCTYPE *end = YYCURSOR + heredoc_label->length;
+
+ if (*end == ';') {
+ end++;
+ }
+
+ if (*end == '\n' || *end == '\r') {
+ BEGIN(ST_END_HEREDOC);
+ }
+ }
+
+ zend_ptr_stack_push(&SCNG(heredoc_label_stack), (void *) heredoc_label);
+
+ return T_START_HEREDOC;
+}
+#line 3918 "Zend/zend_language_scanner.c"
+yy281:
+ YYDEBUG(281, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy279;
+ goto yy280;
+yy282:
+ YYDEBUG(282, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+yy283:
+ YYDEBUG(283, *YYCURSOR);
+ if (yych <= 'Z') {
+ if (yych <= '/') {
+ if (yych == '\'') goto yy278;
+ goto yy194;
+ } else {
+ if (yych <= '9') goto yy282;
+ if (yych <= '@') goto yy194;
+ goto yy282;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych == '_') goto yy282;
+ goto yy194;
+ } else {
+ if (yych <= 'z') goto yy282;
+ if (yych <= '~') goto yy194;
+ goto yy282;
+ }
+ }
+yy284:
+ YYDEBUG(284, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '=') goto yy260;
+ YYDEBUG(285, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(286, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1354 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_NOT_IDENTICAL;
+}
+#line 3962 "Zend/zend_language_scanner.c"
+yy287:
+ YYDEBUG(287, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(288, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1374 "Zend/zend_language_scanner.l"
+ {
+ return T_PLUS_EQUAL;
+}
+#line 3972 "Zend/zend_language_scanner.c"
+yy289:
+ YYDEBUG(289, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(290, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1342 "Zend/zend_language_scanner.l"
+ {
+ return T_INC;
+}
+#line 3982 "Zend/zend_language_scanner.c"
+yy291:
+ YYDEBUG(291, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy292;
+ if (yych != 's') goto yy187;
+yy292:
+ YYDEBUG(292, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy293;
+ if (yych != 't') goto yy187;
+yy293:
+ YYDEBUG(293, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(294, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1330 "Zend/zend_language_scanner.l"
+ {
+ return T_LIST;
+}
+#line 4005 "Zend/zend_language_scanner.c"
+yy295:
+ YYDEBUG(295, *YYCURSOR);
+ ++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 4016 "Zend/zend_language_scanner.c"
+yy297:
+ YYDEBUG(297, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(298, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1326 "Zend/zend_language_scanner.l"
+ {
+ return T_DOUBLE_ARROW;
+}
+#line 4026 "Zend/zend_language_scanner.c"
+yy299:
+ YYDEBUG(299, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(300, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1350 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_IDENTICAL;
+}
+#line 4036 "Zend/zend_language_scanner.c"
+yy301:
+ YYDEBUG(301, *YYCURSOR);
+ yych = *++YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy303;
+ case 'D':
+ case 'd': goto yy308;
+ case 'F':
+ case 'f': goto yy305;
+ case 'H':
+ case 'h': goto yy302;
+ case 'L':
+ case 'l': goto yy307;
+ case 'M':
+ case 'm': goto yy306;
+ case 'N':
+ case 'n': goto yy309;
+ case 'T':
+ case 't': goto yy304;
+ default: goto yy187;
+ }
+yy302:
+ YYDEBUG(302, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy370;
+ if (yych == 'a') goto yy370;
+ goto yy187;
+yy303:
+ YYDEBUG(303, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy363;
+ if (yych == 'l') goto yy363;
+ goto yy187;
+yy304:
+ YYDEBUG(304, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy356;
+ if (yych == 'r') goto yy356;
+ goto yy187;
+yy305:
+ YYDEBUG(305, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'U') {
+ if (yych == 'I') goto yy340;
+ if (yych <= 'T') goto yy187;
+ goto yy341;
+ } else {
+ if (yych <= 'i') {
+ if (yych <= 'h') goto yy187;
+ goto yy340;
+ } else {
+ if (yych == 'u') goto yy341;
+ goto yy187;
+ }
+ }
+yy306:
+ YYDEBUG(306, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy332;
+ if (yych == 'e') goto yy332;
+ goto yy187;
+yy307:
+ YYDEBUG(307, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy326;
+ if (yych == 'i') goto yy326;
+ goto yy187;
+yy308:
+ YYDEBUG(308, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy321;
+ if (yych == 'i') goto yy321;
+ goto yy187;
+yy309:
+ YYDEBUG(309, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy310;
+ if (yych != 'a') goto yy187;
+yy310:
+ YYDEBUG(310, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'M') goto yy311;
+ if (yych != 'm') goto yy187;
+yy311:
+ YYDEBUG(311, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy312;
+ if (yych != 'e') goto yy187;
+yy312:
+ YYDEBUG(312, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy313;
+ if (yych != 's') goto yy187;
+yy313:
+ YYDEBUG(313, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy314;
+ if (yych != 'p') goto yy187;
+yy314:
+ YYDEBUG(314, *YYCURSOR);
+ yych = *++YYCURSOR;
+ 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(320, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1676 "Zend/zend_language_scanner.l"
+ {
+ if (CG(current_namespace)) {
+ *zendlval = *CG(current_namespace);
+ zval_copy_ctor(zendlval);
+ } else {
+ ZVAL_EMPTY_STRING(zendlval);
+ }
+ return T_NS_C;
+}
+#line 4176 "Zend/zend_language_scanner.c"
+yy321:
+ YYDEBUG(321, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy322;
+ if (yych != 'r') goto yy187;
+yy322:
+ YYDEBUG(322, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(323, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(324, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(325, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1651 "Zend/zend_language_scanner.l"
+ {
+ char *filename = zend_get_compiled_filename(TSRMLS_C);
+ const size_t filename_len = strlen(filename);
+ char *dirname;
+
+ if (!filename) {
+ filename = "";
+ }
+
+ dirname = estrndup(filename, filename_len);
+ zend_dirname(dirname, filename_len);
+
+ if (strcmp(dirname, ".") == 0) {
+ dirname = erealloc(dirname, MAXPATHLEN);
+#if HAVE_GETCWD
+ VCWD_GETCWD(dirname, MAXPATHLEN);
+#elif HAVE_GETWD
+ VCWD_GETWD(dirname);
+#endif
+ }
+
+ ZVAL_STRING(zendlval, dirname, 0);
+ return T_DIR;
+}
+#line 4221 "Zend/zend_language_scanner.c"
+yy326:
+ YYDEBUG(326, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy327;
+ if (yych != 'n') goto yy187;
+yy327:
+ YYDEBUG(327, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy328;
+ if (yych != 'e') goto yy187;
+yy328:
+ YYDEBUG(328, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(329, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(330, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(331, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1636 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_LONG(zendlval, CG(zend_lineno));
+ return T_LINE;
+}
+#line 4251 "Zend/zend_language_scanner.c"
+yy332:
+ YYDEBUG(332, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy333;
+ if (yych != 't') goto yy187;
+yy333:
+ YYDEBUG(333, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy334;
+ if (yych != 'h') goto yy187;
+yy334:
+ YYDEBUG(334, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy335;
+ if (yych != 'o') goto yy187;
+yy335:
+ YYDEBUG(335, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy336;
+ if (yych != 'd') goto yy187;
+yy336:
+ YYDEBUG(336, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(337, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(338, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(339, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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;
+
+ Z_STRLEN_P(zendlval) = zend_spprintf(&Z_STRVAL_P(zendlval), 0, "%s%s%s",
+ class_name ? class_name : "",
+ class_name && func_name ? "::" : "",
+ func_name ? func_name : ""
+ );
+ zendlval->type = IS_STRING;
+ return T_METHOD_C;
+}
+#line 4299 "Zend/zend_language_scanner.c"
+yy340:
+ YYDEBUG(340, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy351;
+ if (yych == 'l') goto yy351;
+ goto yy187;
+yy341:
+ YYDEBUG(341, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy342;
+ if (yych != 'n') goto yy187;
+yy342:
+ YYDEBUG(342, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy343;
+ if (yych != 'c') goto yy187;
+yy343:
+ YYDEBUG(343, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy344;
+ if (yych != 't') goto yy187;
+yy344:
+ YYDEBUG(344, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy345;
+ if (yych != 'i') goto yy187;
+yy345:
+ YYDEBUG(345, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy346;
+ if (yych != 'o') goto yy187;
+yy346:
+ YYDEBUG(346, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy347;
+ if (yych != 'n') goto yy187;
+yy347:
+ YYDEBUG(347, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(348, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(349, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(350, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1613 "Zend/zend_language_scanner.l"
+ {
+ zend_op_array *op_array = CG(active_op_array);
+ if (op_array && op_array->function_name) {
+ ZVAL_STRING(zendlval, op_array->function_name, 1);
+ } else {
+ ZVAL_EMPTY_STRING(zendlval);
+ }
+ return T_FUNC_C;
+}
+#line 4360 "Zend/zend_language_scanner.c"
+yy351:
+ YYDEBUG(351, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy352;
+ if (yych != 'e') goto yy187;
+yy352:
+ YYDEBUG(352, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(353, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(354, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(355, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1641 "Zend/zend_language_scanner.l"
+ {
+ char *filename = zend_get_compiled_filename(TSRMLS_C);
+
+ if (!filename) {
+ filename = "";
+ }
+ ZVAL_STRING(zendlval, filename, 1);
+ return T_FILE;
+}
+#line 4390 "Zend/zend_language_scanner.c"
+yy356:
+ YYDEBUG(356, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy357;
+ if (yych != 'a') goto yy187;
+yy357:
+ YYDEBUG(357, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy358;
+ if (yych != 'i') goto yy187;
+yy358:
+ YYDEBUG(358, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy359;
+ if (yych != 't') goto yy187;
+yy359:
+ YYDEBUG(359, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(360, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(361, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(362, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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)) {
+ ZVAL_STRINGL(zendlval, ce->name, ce->name_length, 1);
+ } else {
+ ZVAL_EMPTY_STRING(zendlval);
+ }
+ return T_TRAIT_C;
+}
+#line 4430 "Zend/zend_language_scanner.c"
+yy363:
+ YYDEBUG(363, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy364;
+ if (yych != 'a') goto yy187;
+yy364:
+ YYDEBUG(364, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy365;
+ if (yych != 's') goto yy187;
+yy365:
+ YYDEBUG(365, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy366;
+ if (yych != 's') goto yy187;
+yy366:
+ YYDEBUG(366, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(367, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(368, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(369, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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)) {
+ /* We create a special __CLASS__ constant that is going to be resolved
+ at run-time */
+ Z_STRLEN_P(zendlval) = sizeof("__CLASS__")-1;
+ Z_STRVAL_P(zendlval) = estrndup("__CLASS__", Z_STRLEN_P(zendlval));
+ zendlval->type = IS_CONSTANT;
+ } else {
+ if (ce && ce->name) {
+ ZVAL_STRINGL(zendlval, ce->name, ce->name_length, 1);
+ } else {
+ ZVAL_EMPTY_STRING(zendlval);
+ }
+ }
+ return T_CLASS_C;
+}
+#line 4478 "Zend/zend_language_scanner.c"
+yy370:
+ YYDEBUG(370, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy371;
+ if (yych != 'l') goto yy187;
+yy371:
+ YYDEBUG(371, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy372;
+ if (yych != 't') goto yy187;
+yy372:
+ YYDEBUG(372, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '_') goto yy187;
+ YYDEBUG(373, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy374;
+ if (yych != 'c') goto yy187;
+yy374:
+ YYDEBUG(374, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy375;
+ if (yych != 'o') goto yy187;
+yy375:
+ YYDEBUG(375, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'M') goto yy376;
+ if (yych != 'm') goto yy187;
+yy376:
+ YYDEBUG(376, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy377;
+ if (yych != 'p') goto yy187;
+yy377:
+ YYDEBUG(377, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy378;
+ if (yych != 'i') goto yy187;
+yy378:
+ YYDEBUG(378, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy379;
+ if (yych != 'l') goto yy187;
+yy379:
+ YYDEBUG(379, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy380;
+ if (yych != 'e') goto yy187;
+yy380:
+ YYDEBUG(380, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy381;
+ if (yych != 'r') goto yy187;
+yy381:
+ YYDEBUG(381, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(382, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1294 "Zend/zend_language_scanner.l"
+ {
+ return T_HALT_COMPILER;
+}
+#line 4544 "Zend/zend_language_scanner.c"
+yy383:
+ YYDEBUG(383, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy387;
+ if (yych == 's') goto yy387;
+ goto yy187;
+yy384:
+ YYDEBUG(384, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy385;
+ if (yych != 'e') goto yy187;
+yy385:
+ YYDEBUG(385, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(386, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1274 "Zend/zend_language_scanner.l"
+ {
+ return T_USE;
+}
+#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;
+yy392:
+ YYDEBUG(392, *YYCURSOR);
+ if (yych <= 'S') {
+ if (yych <= 'D') {
+ if (yych <= ' ') {
+ if (yych == '\t') goto yy391;
+ if (yych <= 0x1F) goto yy194;
+ goto yy391;
+ } else {
+ if (yych <= 'A') {
+ if (yych <= '@') goto yy194;
+ goto yy396;
+ } else {
+ if (yych <= 'B') goto yy394;
+ if (yych <= 'C') goto yy194;
+ goto yy399;
+ }
+ }
+ } else {
+ if (yych <= 'I') {
+ if (yych == 'F') goto yy400;
+ if (yych <= 'H') goto yy194;
+ goto yy401;
+ } else {
+ if (yych <= 'O') {
+ if (yych <= 'N') goto yy194;
+ goto yy395;
+ } else {
+ if (yych <= 'Q') goto yy194;
+ if (yych <= 'R') goto yy398;
+ goto yy397;
+ }
+ }
+ }
+ } else {
+ if (yych <= 'f') {
+ if (yych <= 'a') {
+ if (yych == 'U') goto yy393;
+ if (yych <= '`') goto yy194;
+ goto yy396;
+ } else {
+ if (yych <= 'c') {
+ if (yych <= 'b') goto yy394;
+ goto yy194;
+ } else {
+ if (yych <= 'd') goto yy399;
+ if (yych <= 'e') goto yy194;
+ goto yy400;
+ }
+ }
+ } else {
+ if (yych <= 'q') {
+ if (yych <= 'i') {
+ if (yych <= 'h') goto yy194;
+ goto yy401;
+ } else {
+ if (yych == 'o') goto yy395;
+ goto yy194;
+ }
+ } else {
+ if (yych <= 's') {
+ if (yych <= 'r') goto yy398;
+ goto yy397;
+ } else {
+ if (yych != 'u') goto yy194;
+ }
+ }
+ }
+ }
+yy393:
+ YYDEBUG(393, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy460;
+ if (yych == 'n') goto yy460;
+ goto yy194;
+yy394:
+ YYDEBUG(394, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych == 'I') goto yy447;
+ if (yych <= 'N') goto yy194;
+ goto yy448;
+ } else {
+ if (yych <= 'i') {
+ if (yych <= 'h') goto yy194;
+ goto yy447;
+ } else {
+ if (yych == 'o') goto yy448;
+ goto yy194;
+ }
+ }
+yy395:
+ YYDEBUG(395, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy439;
+ if (yych == 'b') goto yy439;
+ goto yy194;
+yy396:
+ YYDEBUG(396, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy432;
+ if (yych == 'r') goto yy432;
+ goto yy194;
+yy397:
+ YYDEBUG(397, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy424;
+ if (yych == 't') goto yy424;
+ goto yy194;
+yy398:
+ YYDEBUG(398, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy422;
+ if (yych == 'e') goto yy422;
+ goto yy194;
+yy399:
+ YYDEBUG(399, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy418;
+ if (yych == 'o') goto yy418;
+ goto yy194;
+yy400:
+ YYDEBUG(400, *YYCURSOR);
+ yych = *++YYCURSOR;
+ 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;
+yy406:
+ YYDEBUG(406, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy405;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy405;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(407, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(408, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1222 "Zend/zend_language_scanner.l"
+ {
+ return T_INT_CAST;
+}
+#line 4767 "Zend/zend_language_scanner.c"
+yy409:
+ YYDEBUG(409, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy410;
+ if (yych != 'e') goto yy194;
+yy410:
+ YYDEBUG(410, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy405;
+ if (yych == 'r') goto yy405;
+ goto yy194;
+yy411:
+ YYDEBUG(411, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy412;
+ if (yych != 'o') goto yy194;
+yy412:
+ YYDEBUG(412, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy413;
+ if (yych != 'a') goto yy194;
+yy413:
+ YYDEBUG(413, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy414;
+ if (yych != 't') goto yy194;
+yy414:
+ YYDEBUG(414, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(415, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy414;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy414;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(416, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(417, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1226 "Zend/zend_language_scanner.l"
+ {
+ return T_DOUBLE_CAST;
+}
+#line 4815 "Zend/zend_language_scanner.c"
+yy418:
+ YYDEBUG(418, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy419;
+ if (yych != 'u') goto yy194;
+yy419:
+ YYDEBUG(419, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy420;
+ if (yych != 'b') goto yy194;
+yy420:
+ YYDEBUG(420, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy421;
+ if (yych != 'l') goto yy194;
+yy421:
+ YYDEBUG(421, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy414;
+ if (yych == 'e') goto yy414;
+ goto yy194;
+yy422:
+ YYDEBUG(422, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy423;
+ if (yych != 'a') goto yy194;
+yy423:
+ YYDEBUG(423, *YYCURSOR);
+ yych = *++YYCURSOR;
+ 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(429, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy428;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy428;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(430, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(431, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1230 "Zend/zend_language_scanner.l"
+ {
+ return T_STRING_CAST;
+}
+#line 4889 "Zend/zend_language_scanner.c"
+yy432:
+ YYDEBUG(432, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy433;
+ if (yych != 'r') goto yy194;
+yy433:
+ YYDEBUG(433, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy434;
+ if (yych != 'a') goto yy194;
+yy434:
+ YYDEBUG(434, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy435;
+ if (yych != 'y') goto yy194;
+yy435:
+ YYDEBUG(435, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(436, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy435;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy435;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(437, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(438, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1234 "Zend/zend_language_scanner.l"
+ {
+ return T_ARRAY_CAST;
+}
+#line 4926 "Zend/zend_language_scanner.c"
+yy439:
+ YYDEBUG(439, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'J') goto yy440;
+ if (yych != 'j') goto yy194;
+yy440:
+ YYDEBUG(440, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy441;
+ if (yych != 'e') goto yy194;
+yy441:
+ YYDEBUG(441, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy442;
+ if (yych != 'c') goto yy194;
+yy442:
+ YYDEBUG(442, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy443;
+ if (yych != 't') goto yy194;
+yy443:
+ YYDEBUG(443, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(444, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy443;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy443;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(445, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(446, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1238 "Zend/zend_language_scanner.l"
+ {
+ return T_OBJECT_CAST;
+}
+#line 4968 "Zend/zend_language_scanner.c"
+yy447:
+ YYDEBUG(447, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy457;
+ if (yych == 'n') goto yy457;
+ goto yy194;
+yy448:
+ YYDEBUG(448, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy449;
+ if (yych != 'o') goto yy194;
+yy449:
+ YYDEBUG(449, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy450;
+ if (yych != 'l') goto yy194;
+yy450:
+ YYDEBUG(450, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy455;
+ if (yych == 'e') goto yy455;
+ goto yy452;
+yy451:
+ YYDEBUG(451, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy452:
+ YYDEBUG(452, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy451;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy451;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(453, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(454, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1242 "Zend/zend_language_scanner.l"
+ {
+ return T_BOOL_CAST;
+}
+#line 5013 "Zend/zend_language_scanner.c"
+yy455:
+ YYDEBUG(455, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy456;
+ if (yych != 'a') goto yy194;
+yy456:
+ YYDEBUG(456, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy451;
+ if (yych == 'n') goto yy451;
+ goto yy194;
+yy457:
+ YYDEBUG(457, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy458;
+ if (yych != 'a') goto yy194;
+yy458:
+ YYDEBUG(458, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy459;
+ if (yych != 'r') goto yy194;
+yy459:
+ YYDEBUG(459, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy428;
+ if (yych == 'y') goto yy428;
+ goto yy194;
+yy460:
+ YYDEBUG(460, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy461;
+ if (yych != 's') goto yy194;
+yy461:
+ YYDEBUG(461, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy462;
+ if (yych != 'e') goto yy194;
+yy462:
+ YYDEBUG(462, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy463;
+ if (yych != 't') goto yy194;
+yy463:
+ YYDEBUG(463, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(464, *YYCURSOR);
+ if (yych <= 0x1F) {
+ if (yych == '\t') goto yy463;
+ goto yy194;
+ } else {
+ if (yych <= ' ') goto yy463;
+ if (yych != ')') goto yy194;
+ }
+ YYDEBUG(465, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(466, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1246 "Zend/zend_language_scanner.l"
+ {
+ return T_UNSET_CAST;
+}
+#line 5077 "Zend/zend_language_scanner.c"
+yy467:
+ YYDEBUG(467, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy468;
+ if (yych != 'r') goto yy187;
+yy468:
+ YYDEBUG(468, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(469, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1218 "Zend/zend_language_scanner.l"
+ {
+ return T_VAR;
+}
+#line 5095 "Zend/zend_language_scanner.c"
+yy470:
+ YYDEBUG(470, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'M') goto yy474;
+ if (yych == 'm') goto yy474;
+ goto yy187;
+yy471:
+ YYDEBUG(471, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'W') goto yy472;
+ if (yych != 'w') goto yy187;
+yy472:
+ YYDEBUG(472, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(473, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1210 "Zend/zend_language_scanner.l"
+ {
+ return T_NEW;
+}
+#line 5119 "Zend/zend_language_scanner.c"
+yy474:
+ YYDEBUG(474, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy475;
+ if (yych != 'e') goto yy187;
+yy475:
+ YYDEBUG(475, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy476;
+ if (yych != 's') goto yy187;
+yy476:
+ YYDEBUG(476, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy477;
+ if (yych != 'p') goto yy187;
+yy477:
+ YYDEBUG(477, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy478;
+ if (yych != 'a') goto yy187;
+yy478:
+ YYDEBUG(478, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy479;
+ if (yych != 'c') goto yy187;
+yy479:
+ YYDEBUG(479, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy480;
+ if (yych != 'e') goto yy187;
+yy480:
+ YYDEBUG(480, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(481, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1270 "Zend/zend_language_scanner.l"
+ {
+ return T_NAMESPACE;
+}
+#line 5162 "Zend/zend_language_scanner.c"
+yy482:
+ YYDEBUG(482, *YYCURSOR);
+ yyaccept = 3;
+ YYMARKER = ++YYCURSOR;
+ YYFILL(3);
+ yych = *YYCURSOR;
+ YYDEBUG(483, *YYCURSOR);
+ if (yych <= 'D') {
+ if (yych <= '/') goto yy190;
+ if (yych <= '9') goto yy482;
+ goto yy190;
+ } else {
+ if (yych <= 'E') goto yy193;
+ if (yych == 'e') goto yy193;
+ goto yy190;
+ }
+yy484:
+ YYDEBUG(484, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(485, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1398 "Zend/zend_language_scanner.l"
+ {
+ return T_CONCAT_EQUAL;
+}
+#line 5188 "Zend/zend_language_scanner.c"
+yy486:
+ YYDEBUG(486, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych != '.') goto yy194;
+ YYDEBUG(487, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(488, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1206 "Zend/zend_language_scanner.l"
+ {
+ return T_ELLIPSIS;
+}
+#line 5201 "Zend/zend_language_scanner.c"
+yy489:
+ YYDEBUG(489, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(490, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1198 "Zend/zend_language_scanner.l"
+ {
+ return T_PAAMAYIM_NEKUDOTAYIM;
+}
+#line 5211 "Zend/zend_language_scanner.c"
+yy491:
+ YYDEBUG(491, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy492:
+ YYDEBUG(492, *YYCURSOR);
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy141;
+ if (yych <= '\n') goto yy491;
+ goto yy141;
+ } else {
+ if (yych <= '\r') goto yy491;
+ if (yych == ' ') goto yy491;
+ goto yy141;
+ }
+yy493:
+ YYDEBUG(493, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(494, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1378 "Zend/zend_language_scanner.l"
+ {
+ return T_MINUS_EQUAL;
+}
+#line 5237 "Zend/zend_language_scanner.c"
+yy495:
+ YYDEBUG(495, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(496, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1346 "Zend/zend_language_scanner.l"
+ {
+ return T_DEC;
+}
+#line 5247 "Zend/zend_language_scanner.c"
+yy497:
+ YYDEBUG(497, *YYCURSOR);
+ ++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 5258 "Zend/zend_language_scanner.c"
+yy499:
+ YYDEBUG(499, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych == 'I') goto yy506;
+ if (yych <= 'N') goto yy187;
+ goto yy507;
+ } else {
+ if (yych <= 'i') {
+ if (yych <= 'h') goto yy187;
+ goto yy506;
+ } else {
+ if (yych == 'o') goto yy507;
+ goto yy187;
+ }
+ }
+yy500:
+ YYDEBUG(500, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy501;
+ if (yych != 'b') goto yy187;
+yy501:
+ YYDEBUG(501, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy502;
+ if (yych != 'l') goto yy187;
+yy502:
+ YYDEBUG(502, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy503;
+ if (yych != 'i') goto yy187;
+yy503:
+ YYDEBUG(503, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy504;
+ if (yych != 'c') goto yy187;
+yy504:
+ YYDEBUG(504, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(505, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1318 "Zend/zend_language_scanner.l"
+ {
+ return T_PUBLIC;
+}
+#line 5307 "Zend/zend_language_scanner.c"
+yy506:
+ YYDEBUG(506, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'V') {
+ if (yych == 'N') goto yy515;
+ if (yych <= 'U') goto yy187;
+ goto yy516;
+ } else {
+ if (yych <= 'n') {
+ if (yych <= 'm') goto yy187;
+ goto yy515;
+ } else {
+ if (yych == 'v') goto yy516;
+ goto yy187;
+ }
+ }
+yy507:
+ YYDEBUG(507, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy508;
+ if (yych != 't') goto yy187;
+yy508:
+ YYDEBUG(508, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy509;
+ if (yych != 'e') goto yy187;
+yy509:
+ YYDEBUG(509, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy510;
+ if (yych != 'c') goto yy187;
+yy510:
+ YYDEBUG(510, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy511;
+ if (yych != 't') goto yy187;
+yy511:
+ YYDEBUG(511, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy512;
+ if (yych != 'e') goto yy187;
+yy512:
+ YYDEBUG(512, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy513;
+ if (yych != 'd') goto yy187;
+yy513:
+ YYDEBUG(513, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(514, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1314 "Zend/zend_language_scanner.l"
+ {
+ return T_PROTECTED;
+}
+#line 5366 "Zend/zend_language_scanner.c"
+yy515:
+ YYDEBUG(515, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy521;
+ if (yych == 't') goto yy521;
+ goto yy187;
+yy516:
+ YYDEBUG(516, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy517;
+ if (yych != 'a') goto yy187;
+yy517:
+ YYDEBUG(517, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy518;
+ if (yych != 't') goto yy187;
+yy518:
+ YYDEBUG(518, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy519;
+ if (yych != 'e') goto yy187;
+yy519:
+ YYDEBUG(519, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(520, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1310 "Zend/zend_language_scanner.l"
+ {
+ return T_PRIVATE;
+}
+#line 5400 "Zend/zend_language_scanner.c"
+yy521:
+ YYDEBUG(521, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(522, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1146 "Zend/zend_language_scanner.l"
+ {
+ return T_PRINT;
+}
+#line 5413 "Zend/zend_language_scanner.c"
+yy523:
+ YYDEBUG(523, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy528;
+ if (yych == 'o') goto yy528;
+ goto yy187;
+yy524:
+ YYDEBUG(524, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy525;
+ if (yych != 't') goto yy187;
+yy525:
+ YYDEBUG(525, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy526;
+ if (yych != 'o') goto yy187;
+yy526:
+ YYDEBUG(526, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(527, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1138 "Zend/zend_language_scanner.l"
+ {
+ return T_GOTO;
+}
+#line 5442 "Zend/zend_language_scanner.c"
+yy528:
+ YYDEBUG(528, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy529;
+ if (yych != 'b') goto yy187;
+yy529:
+ YYDEBUG(529, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy530;
+ if (yych != 'a') goto yy187;
+yy530:
+ YYDEBUG(530, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy531;
+ if (yych != 'l') goto yy187;
+yy531:
+ YYDEBUG(531, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(532, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1282 "Zend/zend_language_scanner.l"
+ {
+ return T_GLOBAL;
+}
+#line 5470 "Zend/zend_language_scanner.c"
+yy533:
+ YYDEBUG(533, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy541;
+ goto yy194;
+yy534:
+ YYDEBUG(534, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy181;
+yy535:
+ YYDEBUG(535, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy179;
+yy536:
+ YYDEBUG(536, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy537;
+ if (yych != 'e') goto yy187;
+yy537:
+ YYDEBUG(537, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy538;
+ if (yych != 'a') goto yy187;
+yy538:
+ YYDEBUG(538, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'K') goto yy539;
+ if (yych != 'k') goto yy187;
+yy539:
+ YYDEBUG(539, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(540, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1130 "Zend/zend_language_scanner.l"
+ {
+ return T_BREAK;
+}
+#line 5511 "Zend/zend_language_scanner.c"
+yy541:
+ YYDEBUG(541, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy270;
+ goto yy194;
+yy542:
+ YYDEBUG(542, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy549;
+ if (yych == 'a') goto yy549;
+ goto yy187;
+yy543:
+ YYDEBUG(543, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy544;
+ if (yych != 'i') goto yy187;
+yy544:
+ YYDEBUG(544, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy545;
+ if (yych != 't') goto yy187;
+yy545:
+ YYDEBUG(545, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy546;
+ if (yych != 'c') goto yy187;
+yy546:
+ YYDEBUG(546, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy547;
+ if (yych != 'h') goto yy187;
+yy547:
+ YYDEBUG(547, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(548, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1114 "Zend/zend_language_scanner.l"
+ {
+ return T_SWITCH;
+}
+#line 5555 "Zend/zend_language_scanner.c"
+yy549:
+ YYDEBUG(549, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy550;
+ if (yych != 't') goto yy187;
+yy550:
+ YYDEBUG(550, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy551;
+ if (yych != 'i') goto yy187;
+yy551:
+ YYDEBUG(551, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy552;
+ if (yych != 'c') goto yy187;
+yy552:
+ YYDEBUG(552, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(553, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1298 "Zend/zend_language_scanner.l"
+ {
+ return T_STATIC;
+}
+#line 5583 "Zend/zend_language_scanner.c"
+yy554:
+ YYDEBUG(554, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy565;
+ if (yych == 's') goto yy565;
+ goto yy187;
+yy555:
+ YYDEBUG(555, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy563;
+ if (yych == 'd') goto yy563;
+ goto yy187;
+yy556:
+ YYDEBUG(556, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy559;
+ if (yych == 'r') goto yy559;
+ goto yy187;
+yy557:
+ YYDEBUG(557, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(558, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1110 "Zend/zend_language_scanner.l"
+ {
+ return T_AS;
+}
+#line 5614 "Zend/zend_language_scanner.c"
+yy559:
+ YYDEBUG(559, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy560;
+ if (yych != 'a') goto yy187;
+yy560:
+ YYDEBUG(560, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy561;
+ if (yych != 'y') goto yy187;
+yy561:
+ YYDEBUG(561, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(562, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1334 "Zend/zend_language_scanner.l"
+ {
+ return T_ARRAY;
+}
+#line 5637 "Zend/zend_language_scanner.c"
+yy563:
+ YYDEBUG(563, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(564, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1438 "Zend/zend_language_scanner.l"
+ {
+ return T_LOGICAL_AND;
+}
+#line 5650 "Zend/zend_language_scanner.c"
+yy565:
+ YYDEBUG(565, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy566;
+ if (yych != 't') goto yy187;
+yy566:
+ YYDEBUG(566, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy567;
+ if (yych != 'r') goto yy187;
+yy567:
+ YYDEBUG(567, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy568;
+ if (yych != 'a') goto yy187;
+yy568:
+ YYDEBUG(568, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy569;
+ if (yych != 'c') goto yy187;
+yy569:
+ YYDEBUG(569, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy570;
+ if (yych != 't') goto yy187;
+yy570:
+ YYDEBUG(570, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(571, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1302 "Zend/zend_language_scanner.l"
+ {
+ return T_ABSTRACT;
+}
+#line 5688 "Zend/zend_language_scanner.c"
+yy572:
+ YYDEBUG(572, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy573;
+ if (yych != 'i') goto yy187;
+yy573:
+ YYDEBUG(573, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy574;
+ if (yych != 'l') goto yy187;
+yy574:
+ YYDEBUG(574, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy575;
+ if (yych != 'e') goto yy187;
+yy575:
+ YYDEBUG(575, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(576, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1070 "Zend/zend_language_scanner.l"
+ {
+ return T_WHILE;
+}
+#line 5716 "Zend/zend_language_scanner.c"
+yy577:
+ YYDEBUG(577, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(578, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1054 "Zend/zend_language_scanner.l"
+ {
+ return T_IF;
+}
+#line 5729 "Zend/zend_language_scanner.c"
+yy579:
+ YYDEBUG(579, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy621;
+ if (yych == 'p') goto yy621;
+ goto yy187;
+yy580:
+ YYDEBUG(580, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'T') {
+ if (yych <= 'C') {
+ if (yych <= 'B') goto yy187;
+ goto yy588;
+ } else {
+ if (yych <= 'R') goto yy187;
+ if (yych <= 'S') goto yy586;
+ goto yy587;
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych == 'c') goto yy588;
+ goto yy187;
+ } else {
+ if (yych <= 's') goto yy586;
+ if (yych <= 't') goto yy587;
+ goto yy187;
+ }
+ }
+yy581:
+ YYDEBUG(581, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy582;
+ if (yych != 's') goto yy187;
+yy582:
+ YYDEBUG(582, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy583;
+ if (yych != 'e') goto yy187;
+yy583:
+ YYDEBUG(583, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy584;
+ if (yych != 't') goto yy187;
+yy584:
+ YYDEBUG(584, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(585, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1286 "Zend/zend_language_scanner.l"
+ {
+ return T_ISSET;
+}
+#line 5785 "Zend/zend_language_scanner.c"
+yy586:
+ YYDEBUG(586, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy607;
+ if (yych == 't') goto yy607;
+ goto yy187;
+yy587:
+ YYDEBUG(587, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy600;
+ if (yych == 'e') goto yy600;
+ goto yy187;
+yy588:
+ YYDEBUG(588, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy589;
+ if (yych != 'l') goto yy187;
+yy589:
+ YYDEBUG(589, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy590;
+ if (yych != 'u') goto yy187;
+yy590:
+ YYDEBUG(590, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy591;
+ if (yych != 'd') goto yy187;
+yy591:
+ YYDEBUG(591, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy592;
+ if (yych != 'e') goto yy187;
+yy592:
+ YYDEBUG(592, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '9') {
+ if (yych >= '0') goto yy186;
+ } else {
+ if (yych <= '@') goto yy593;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= '_') goto yy594;
+ } else {
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy593:
+ YYDEBUG(593, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1254 "Zend/zend_language_scanner.l"
+ {
+ return T_INCLUDE;
+}
+#line 5843 "Zend/zend_language_scanner.c"
+yy594:
+ YYDEBUG(594, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy595;
+ if (yych != 'o') goto yy187;
+yy595:
+ YYDEBUG(595, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy596;
+ if (yych != 'n') goto yy187;
+yy596:
+ YYDEBUG(596, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy597;
+ if (yych != 'c') goto yy187;
+yy597:
+ YYDEBUG(597, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy598;
+ if (yych != 'e') goto yy187;
+yy598:
+ YYDEBUG(598, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(599, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1258 "Zend/zend_language_scanner.l"
+ {
+ return T_INCLUDE_ONCE;
+}
+#line 5876 "Zend/zend_language_scanner.c"
+yy600:
+ YYDEBUG(600, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy601;
+ if (yych != 'r') goto yy187;
+yy601:
+ YYDEBUG(601, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy602;
+ if (yych != 'f') goto yy187;
+yy602:
+ YYDEBUG(602, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy603;
+ if (yych != 'a') goto yy187;
+yy603:
+ YYDEBUG(603, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy604;
+ if (yych != 'c') goto yy187;
+yy604:
+ YYDEBUG(604, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy605;
+ if (yych != 'e') goto yy187;
+yy605:
+ YYDEBUG(605, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(606, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1154 "Zend/zend_language_scanner.l"
+ {
+ return T_INTERFACE;
+}
+#line 5914 "Zend/zend_language_scanner.c"
+yy607:
+ YYDEBUG(607, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'E') {
+ if (yych == 'A') goto yy608;
+ if (yych <= 'D') goto yy187;
+ goto yy609;
+ } else {
+ if (yych <= 'a') {
+ if (yych <= '`') goto yy187;
+ } else {
+ if (yych == 'e') goto yy609;
+ goto yy187;
+ }
+ }
+yy608:
+ YYDEBUG(608, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy615;
+ if (yych == 'n') goto yy615;
+ goto yy187;
+yy609:
+ YYDEBUG(609, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy610;
+ if (yych != 'a') goto yy187;
+yy610:
+ YYDEBUG(610, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy611;
+ if (yych != 'd') goto yy187;
+yy611:
+ YYDEBUG(611, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy612;
+ if (yych != 'o') goto yy187;
+yy612:
+ YYDEBUG(612, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy613;
+ if (yych != 'f') goto yy187;
+yy613:
+ YYDEBUG(613, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(614, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1278 "Zend/zend_language_scanner.l"
+ {
+ return T_INSTEADOF;
+}
+#line 5968 "Zend/zend_language_scanner.c"
+yy615:
+ YYDEBUG(615, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy616;
+ if (yych != 'c') goto yy187;
+yy616:
+ YYDEBUG(616, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy617;
+ if (yych != 'e') goto yy187;
+yy617:
+ YYDEBUG(617, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy618;
+ if (yych != 'o') goto yy187;
+yy618:
+ YYDEBUG(618, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy619;
+ if (yych != 'f') goto yy187;
+yy619:
+ YYDEBUG(619, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(620, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1106 "Zend/zend_language_scanner.l"
+ {
+ return T_INSTANCEOF;
+}
+#line 6001 "Zend/zend_language_scanner.c"
+yy621:
+ YYDEBUG(621, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy622;
+ if (yych != 'l') goto yy187;
+yy622:
+ YYDEBUG(622, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy623;
+ if (yych != 'e') goto yy187;
+yy623:
+ YYDEBUG(623, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'M') goto yy624;
+ if (yych != 'm') goto yy187;
+yy624:
+ YYDEBUG(624, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy625;
+ if (yych != 'e') goto yy187;
+yy625:
+ YYDEBUG(625, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy626;
+ if (yych != 'n') goto yy187;
+yy626:
+ YYDEBUG(626, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy627;
+ if (yych != 't') goto yy187;
+yy627:
+ YYDEBUG(627, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy628;
+ if (yych != 's') goto yy187;
+yy628:
+ YYDEBUG(628, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(629, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1166 "Zend/zend_language_scanner.l"
+ {
+ return T_IMPLEMENTS;
+}
+#line 6049 "Zend/zend_language_scanner.c"
+yy630:
+ YYDEBUG(630, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy638;
+ if (yych == 'r') goto yy638;
+ goto yy187;
+yy631:
+ YYDEBUG(631, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'Y') {
+ if (yych == 'A') goto yy634;
+ if (yych <= 'X') goto yy187;
+ } else {
+ if (yych <= 'a') {
+ if (yych <= '`') goto yy187;
+ goto yy634;
+ } else {
+ if (yych != 'y') goto yy187;
+ }
+ }
+ YYDEBUG(632, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(633, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1038 "Zend/zend_language_scanner.l"
+ {
+ return T_TRY;
+}
+#line 6081 "Zend/zend_language_scanner.c"
+yy634:
+ YYDEBUG(634, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy635;
+ if (yych != 'i') goto yy187;
+yy635:
+ YYDEBUG(635, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy636;
+ if (yych != 't') goto yy187;
+yy636:
+ YYDEBUG(636, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(637, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1158 "Zend/zend_language_scanner.l"
+ {
+ return T_TRAIT;
+}
+#line 6104 "Zend/zend_language_scanner.c"
+yy638:
+ YYDEBUG(638, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy639;
+ if (yych != 'o') goto yy187;
+yy639:
+ YYDEBUG(639, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'W') goto yy640;
+ if (yych != 'w') goto yy187;
+yy640:
+ YYDEBUG(640, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(641, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1050 "Zend/zend_language_scanner.l"
+ {
+ return T_THROW;
+}
+#line 6127 "Zend/zend_language_scanner.c"
+yy642:
+ YYDEBUG(642, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy643;
+ if (yych != 'e') goto yy187;
+yy643:
+ YYDEBUG(643, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy644;
+ if (yych != 'l') goto yy187;
+yy644:
+ YYDEBUG(644, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy645;
+ if (yych != 'd') goto yy187;
+yy645:
+ YYDEBUG(645, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(646, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1034 "Zend/zend_language_scanner.l"
+ {
+ return T_YIELD;
+}
+#line 6155 "Zend/zend_language_scanner.c"
+yy647:
+ YYDEBUG(647, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'T') {
+ if (yych == 'Q') goto yy649;
+ if (yych <= 'S') goto yy187;
+ } else {
+ if (yych <= 'q') {
+ if (yych <= 'p') goto yy187;
+ goto yy649;
+ } else {
+ if (yych != 't') goto yy187;
+ }
+ }
+ YYDEBUG(648, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy661;
+ if (yych == 'u') goto yy661;
+ goto yy187;
+yy649:
+ YYDEBUG(649, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy650;
+ if (yych != 'u') goto yy187;
+yy650:
+ YYDEBUG(650, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy651;
+ if (yych != 'i') goto yy187;
+yy651:
+ YYDEBUG(651, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy652;
+ if (yych != 'r') goto yy187;
+yy652:
+ YYDEBUG(652, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy653;
+ if (yych != 'e') goto yy187;
+yy653:
+ YYDEBUG(653, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '9') {
+ if (yych >= '0') goto yy186;
+ } else {
+ if (yych <= '@') goto yy654;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= '_') goto yy655;
+ } else {
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy654:
+ YYDEBUG(654, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1262 "Zend/zend_language_scanner.l"
+ {
+ return T_REQUIRE;
+}
+#line 6220 "Zend/zend_language_scanner.c"
+yy655:
+ YYDEBUG(655, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy656;
+ if (yych != 'o') goto yy187;
+yy656:
+ YYDEBUG(656, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy657;
+ if (yych != 'n') goto yy187;
+yy657:
+ YYDEBUG(657, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy658;
+ if (yych != 'c') goto yy187;
+yy658:
+ YYDEBUG(658, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy659;
+ if (yych != 'e') goto yy187;
+yy659:
+ YYDEBUG(659, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(660, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1266 "Zend/zend_language_scanner.l"
+ {
+ return T_REQUIRE_ONCE;
+}
+#line 6253 "Zend/zend_language_scanner.c"
+yy661:
+ YYDEBUG(661, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy662;
+ if (yych != 'r') goto yy187;
+yy662:
+ YYDEBUG(662, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy663;
+ if (yych != 'n') goto yy187;
+yy663:
+ YYDEBUG(663, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(664, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1030 "Zend/zend_language_scanner.l"
+ {
+ return T_RETURN;
+}
+#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 yy688;
+ } else {
+ if (yych <= 'R') goto yy187;
+ if (yych <= 'S') goto yy687;
+ goto yy686;
+ }
+ } else {
+ if (yych <= 'r') {
+ if (yych == 'l') goto yy688;
+ goto yy187;
+ } else {
+ if (yych <= 's') goto yy687;
+ if (yych <= 't') goto yy686;
+ goto yy187;
+ }
+ }
+yy666:
+ YYDEBUG(666, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'O') {
+ if (yych == 'A') goto yy678;
+ if (yych <= 'N') goto yy187;
+ goto yy679;
+ } else {
+ if (yych <= 'a') {
+ if (yych <= '`') goto yy187;
+ goto yy678;
+ } else {
+ if (yych == 'o') goto yy679;
+ goto yy187;
+ }
+ }
+yy667:
+ YYDEBUG(667, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy668;
+ if (yych != 'n') goto yy187;
+yy668:
+ YYDEBUG(668, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'T') {
+ if (yych <= 'R') goto yy187;
+ if (yych >= 'T') goto yy670;
+ } else {
+ if (yych <= 'r') goto yy187;
+ if (yych <= 's') goto yy669;
+ if (yych <= 't') goto yy670;
+ goto yy187;
+ }
+yy669:
+ YYDEBUG(669, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy676;
+ if (yych == 't') goto yy676;
+ goto yy187;
+yy670:
+ YYDEBUG(670, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy671;
+ if (yych != 'i') goto yy187;
+yy671:
+ YYDEBUG(671, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy672;
+ if (yych != 'n') goto yy187;
+yy672:
+ YYDEBUG(672, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy673;
+ if (yych != 'u') goto yy187;
+yy673:
+ YYDEBUG(673, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy674;
+ if (yych != 'e') goto yy187;
+yy674:
+ YYDEBUG(674, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(675, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1134 "Zend/zend_language_scanner.l"
+ {
+ return T_CONTINUE;
+}
+#line 6370 "Zend/zend_language_scanner.c"
+yy676:
+ YYDEBUG(676, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(677, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1026 "Zend/zend_language_scanner.l"
+ {
+ return T_CONST;
+}
+#line 6383 "Zend/zend_language_scanner.c"
+yy678:
+ YYDEBUG(678, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy683;
+ if (yych == 's') goto yy683;
+ goto yy187;
+yy679:
+ YYDEBUG(679, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy680;
+ if (yych != 'n') goto yy187;
+yy680:
+ YYDEBUG(680, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy681;
+ if (yych != 'e') goto yy187;
+yy681:
+ YYDEBUG(681, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(682, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1214 "Zend/zend_language_scanner.l"
+ {
+ return T_CLONE;
+}
+#line 6412 "Zend/zend_language_scanner.c"
+yy683:
+ YYDEBUG(683, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy684;
+ if (yych != 's') goto yy187;
+yy684:
+ YYDEBUG(684, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(685, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1150 "Zend/zend_language_scanner.l"
+ {
+ return T_CLASS;
+}
+#line 6430 "Zend/zend_language_scanner.c"
+yy686:
+ YYDEBUG(686, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy697;
+ if (yych == 'c') goto yy697;
+ goto yy187;
+yy687:
+ YYDEBUG(687, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy695;
+ if (yych == 'e') goto yy695;
+ goto yy187;
+yy688:
+ YYDEBUG(688, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy689;
+ if (yych != 'l') goto yy187;
+yy689:
+ YYDEBUG(689, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy690;
+ if (yych != 'a') goto yy187;
+yy690:
+ YYDEBUG(690, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy691;
+ if (yych != 'b') goto yy187;
+yy691:
+ YYDEBUG(691, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy692;
+ if (yych != 'l') goto yy187;
+yy692:
+ YYDEBUG(692, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy693;
+ if (yych != 'e') goto yy187;
+yy693:
+ YYDEBUG(693, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(694, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1338 "Zend/zend_language_scanner.l"
+ {
+ return T_CALLABLE;
+}
+#line 6480 "Zend/zend_language_scanner.c"
+yy695:
+ YYDEBUG(695, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(696, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1122 "Zend/zend_language_scanner.l"
+ {
+ return T_CASE;
+}
+#line 6493 "Zend/zend_language_scanner.c"
+yy697:
+ YYDEBUG(697, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy698;
+ if (yych != 'h') goto yy187;
+yy698:
+ YYDEBUG(698, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(699, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1042 "Zend/zend_language_scanner.l"
+ {
+ return T_CATCH;
+}
+#line 6511 "Zend/zend_language_scanner.c"
+yy700:
+ YYDEBUG(700, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy717;
+ if (yych == 'n') goto yy717;
+ goto yy187;
+yy701:
+ YYDEBUG(701, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy710;
+ if (yych == 'r') goto yy710;
+ goto yy187;
+yy702:
+ YYDEBUG(702, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy703;
+ if (yych != 'n') goto yy187;
+yy703:
+ YYDEBUG(703, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy704;
+ if (yych != 'c') goto yy187;
+yy704:
+ YYDEBUG(704, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy705;
+ if (yych != 't') goto yy187;
+yy705:
+ YYDEBUG(705, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy706;
+ if (yych != 'i') goto yy187;
+yy706:
+ YYDEBUG(706, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy707;
+ if (yych != 'o') goto yy187;
+yy707:
+ YYDEBUG(707, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy708;
+ if (yych != 'n') goto yy187;
+yy708:
+ YYDEBUG(708, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(709, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1022 "Zend/zend_language_scanner.l"
+ {
+ return T_FUNCTION;
+}
+#line 6566 "Zend/zend_language_scanner.c"
+yy710:
+ YYDEBUG(710, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '@') {
+ if (yych <= '/') goto yy711;
+ if (yych <= '9') goto yy186;
+ } else {
+ if (yych == 'E') goto yy712;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= 'd') {
+ if (yych != '`') goto yy186;
+ } else {
+ if (yych <= 'e') goto yy712;
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy711:
+ YYDEBUG(711, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1082 "Zend/zend_language_scanner.l"
+ {
+ return T_FOR;
+}
+#line 6594 "Zend/zend_language_scanner.c"
+yy712:
+ YYDEBUG(712, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy713;
+ if (yych != 'a') goto yy187;
+yy713:
+ YYDEBUG(713, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy714;
+ if (yych != 'c') goto yy187;
+yy714:
+ YYDEBUG(714, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy715;
+ if (yych != 'h') goto yy187;
+yy715:
+ YYDEBUG(715, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(716, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1090 "Zend/zend_language_scanner.l"
+ {
+ return T_FOREACH;
+}
+#line 6622 "Zend/zend_language_scanner.c"
+yy717:
+ YYDEBUG(717, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy718;
+ if (yych != 'a') goto yy187;
+yy718:
+ YYDEBUG(718, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy719;
+ if (yych != 'l') goto yy187;
+yy719:
+ YYDEBUG(719, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '@') {
+ if (yych <= '/') goto yy720;
+ if (yych <= '9') goto yy186;
+ } else {
+ if (yych == 'L') goto yy721;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= 'k') {
+ if (yych != '`') goto yy186;
+ } else {
+ if (yych <= 'l') goto yy721;
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy720:
+ YYDEBUG(720, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1306 "Zend/zend_language_scanner.l"
+ {
+ return T_FINAL;
+}
+#line 6660 "Zend/zend_language_scanner.c"
+yy721:
+ YYDEBUG(721, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy722;
+ if (yych != 'y') goto yy187;
+yy722:
+ YYDEBUG(722, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(723, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1046 "Zend/zend_language_scanner.l"
+ {
+ return T_FINALLY;
+}
+#line 6678 "Zend/zend_language_scanner.c"
+yy724:
+ YYDEBUG(724, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'F') {
+ if (yych == 'C') goto yy730;
+ if (yych <= 'E') goto yy187;
+ goto yy731;
+ } else {
+ if (yych <= 'c') {
+ if (yych <= 'b') goto yy187;
+ goto yy730;
+ } else {
+ if (yych == 'f') goto yy731;
+ goto yy187;
+ }
+ }
+yy725:
+ YYDEBUG(725, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy728;
+ if (yych == 'e') goto yy728;
+ goto yy187;
+yy726:
+ YYDEBUG(726, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(727, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1078 "Zend/zend_language_scanner.l"
+ {
+ return T_DO;
+}
+#line 6713 "Zend/zend_language_scanner.c"
+yy728:
+ YYDEBUG(728, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(729, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1018 "Zend/zend_language_scanner.l"
+ {
+ return T_EXIT;
+}
+#line 6726 "Zend/zend_language_scanner.c"
+yy730:
+ YYDEBUG(730, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy737;
+ if (yych == 'l') goto yy737;
+ goto yy187;
+yy731:
+ YYDEBUG(731, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy732;
+ if (yych != 'a') goto yy187;
+yy732:
+ YYDEBUG(732, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy733;
+ if (yych != 'u') goto yy187;
+yy733:
+ YYDEBUG(733, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy734;
+ if (yych != 'l') goto yy187;
+yy734:
+ YYDEBUG(734, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy735;
+ if (yych != 't') goto yy187;
+yy735:
+ YYDEBUG(735, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(736, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1126 "Zend/zend_language_scanner.l"
+ {
+ return T_DEFAULT;
+}
+#line 6765 "Zend/zend_language_scanner.c"
+yy737:
+ YYDEBUG(737, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy738;
+ if (yych != 'a') goto yy187;
+yy738:
+ YYDEBUG(738, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy739;
+ if (yych != 'r') goto yy187;
+yy739:
+ YYDEBUG(739, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy740;
+ if (yych != 'e') goto yy187;
+yy740:
+ YYDEBUG(740, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(741, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1098 "Zend/zend_language_scanner.l"
+ {
+ return T_DECLARE;
+}
+#line 6793 "Zend/zend_language_scanner.c"
+yy742:
+ YYDEBUG(742, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy804;
+ if (yych == 'h') goto yy804;
+ goto yy187;
+yy743:
+ YYDEBUG(743, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy798;
+ if (yych == 's') goto yy798;
+ goto yy187;
+yy744:
+ YYDEBUG(744, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy794;
+ if (yych == 'p') goto yy794;
+ goto yy187;
+yy745:
+ YYDEBUG(745, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy760;
+ if (yych == 'd') goto yy760;
+ goto yy187;
+yy746:
+ YYDEBUG(746, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy757;
+ if (yych == 'a') goto yy757;
+ goto yy187;
+yy747:
+ YYDEBUG(747, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'T') {
+ if (yych == 'I') goto yy748;
+ if (yych <= 'S') goto yy187;
+ goto yy749;
+ } else {
+ if (yych <= 'i') {
+ if (yych <= 'h') goto yy187;
+ } else {
+ if (yych == 't') goto yy749;
+ goto yy187;
+ }
+ }
+yy748:
+ YYDEBUG(748, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy755;
+ if (yych == 't') goto yy755;
+ goto yy187;
+yy749:
+ YYDEBUG(749, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy750;
+ if (yych != 'e') goto yy187;
+yy750:
+ YYDEBUG(750, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy751;
+ if (yych != 'n') goto yy187;
+yy751:
+ YYDEBUG(751, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy752;
+ if (yych != 'd') goto yy187;
+yy752:
+ YYDEBUG(752, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy753;
+ if (yych != 's') goto yy187;
+yy753:
+ YYDEBUG(753, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(754, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1162 "Zend/zend_language_scanner.l"
+ {
+ return T_EXTENDS;
+}
+#line 6877 "Zend/zend_language_scanner.c"
+yy755:
+ YYDEBUG(755, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(756, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1014 "Zend/zend_language_scanner.l"
+ {
+ return T_EXIT;
+}
+#line 6890 "Zend/zend_language_scanner.c"
+yy757:
+ YYDEBUG(757, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy758;
+ if (yych != 'l') goto yy187;
+yy758:
+ YYDEBUG(758, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(759, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1250 "Zend/zend_language_scanner.l"
+ {
+ return T_EVAL;
+}
+#line 6908 "Zend/zend_language_scanner.c"
+yy760:
+ YYDEBUG(760, *YYCURSOR);
+ yych = *++YYCURSOR;
+ YYDEBUG(-1, yych);
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy761;
+ case 'F':
+ case 'f': goto yy762;
+ case 'I':
+ case 'i': goto yy763;
+ case 'S':
+ case 's': goto yy764;
+ case 'W':
+ case 'w': goto yy765;
+ default: goto yy187;
+ }
+yy761:
+ YYDEBUG(761, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy787;
+ if (yych == 'e') goto yy787;
+ goto yy187;
+yy762:
+ YYDEBUG(762, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy779;
+ if (yych == 'o') goto yy779;
+ goto yy187;
+yy763:
+ YYDEBUG(763, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy777;
+ if (yych == 'f') goto yy777;
+ goto yy187;
+yy764:
+ YYDEBUG(764, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'W') goto yy771;
+ if (yych == 'w') goto yy771;
+ goto yy187;
+yy765:
+ YYDEBUG(765, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy766;
+ if (yych != 'h') goto yy187;
+yy766:
+ YYDEBUG(766, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy767;
+ if (yych != 'i') goto yy187;
+yy767:
+ YYDEBUG(767, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy768;
+ if (yych != 'l') goto yy187;
+yy768:
+ YYDEBUG(768, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy769;
+ if (yych != 'e') goto yy187;
+yy769:
+ YYDEBUG(769, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(770, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1074 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDWHILE;
+}
+#line 6982 "Zend/zend_language_scanner.c"
+yy771:
+ YYDEBUG(771, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy772;
+ if (yych != 'i') goto yy187;
+yy772:
+ YYDEBUG(772, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy773;
+ if (yych != 't') goto yy187;
+yy773:
+ YYDEBUG(773, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy774;
+ if (yych != 'c') goto yy187;
+yy774:
+ YYDEBUG(774, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy775;
+ if (yych != 'h') goto yy187;
+yy775:
+ YYDEBUG(775, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(776, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1118 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDSWITCH;
+}
+#line 7015 "Zend/zend_language_scanner.c"
+yy777:
+ YYDEBUG(777, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(778, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1062 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDIF;
+}
+#line 7028 "Zend/zend_language_scanner.c"
+yy779:
+ YYDEBUG(779, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy780;
+ if (yych != 'r') goto yy187;
+yy780:
+ YYDEBUG(780, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '@') {
+ if (yych <= '/') goto yy781;
+ if (yych <= '9') goto yy186;
+ } else {
+ if (yych == 'E') goto yy782;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= 'd') {
+ if (yych != '`') goto yy186;
+ } else {
+ if (yych <= 'e') goto yy782;
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy781:
+ YYDEBUG(781, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1086 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDFOR;
+}
+#line 7061 "Zend/zend_language_scanner.c"
+yy782:
+ YYDEBUG(782, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy783;
+ if (yych != 'a') goto yy187;
+yy783:
+ YYDEBUG(783, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy784;
+ if (yych != 'c') goto yy187;
+yy784:
+ YYDEBUG(784, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy785;
+ if (yych != 'h') goto yy187;
+yy785:
+ YYDEBUG(785, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(786, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1094 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDFOREACH;
+}
+#line 7089 "Zend/zend_language_scanner.c"
+yy787:
+ YYDEBUG(787, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy788;
+ if (yych != 'c') goto yy187;
+yy788:
+ YYDEBUG(788, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy789;
+ if (yych != 'l') goto yy187;
+yy789:
+ YYDEBUG(789, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy790;
+ if (yych != 'a') goto yy187;
+yy790:
+ YYDEBUG(790, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy791;
+ if (yych != 'r') goto yy187;
+yy791:
+ YYDEBUG(791, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy792;
+ if (yych != 'e') goto yy187;
+yy792:
+ YYDEBUG(792, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(793, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1102 "Zend/zend_language_scanner.l"
+ {
+ return T_ENDDECLARE;
+}
+#line 7127 "Zend/zend_language_scanner.c"
+yy794:
+ YYDEBUG(794, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy795;
+ if (yych != 't') goto yy187;
+yy795:
+ YYDEBUG(795, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy796;
+ if (yych != 'y') goto yy187;
+yy796:
+ YYDEBUG(796, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(797, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1290 "Zend/zend_language_scanner.l"
+ {
+ return T_EMPTY;
+}
+#line 7150 "Zend/zend_language_scanner.c"
+yy798:
+ YYDEBUG(798, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy799;
+ if (yych != 'e') goto yy187;
+yy799:
+ YYDEBUG(799, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '^') {
+ if (yych <= '@') {
+ if (yych <= '/') goto yy800;
+ if (yych <= '9') goto yy186;
+ } else {
+ if (yych == 'I') goto yy801;
+ if (yych <= 'Z') goto yy186;
+ }
+ } else {
+ if (yych <= 'h') {
+ if (yych != '`') goto yy186;
+ } else {
+ if (yych <= 'i') goto yy801;
+ if (yych <= 'z') goto yy186;
+ if (yych >= 0x7F) goto yy186;
+ }
+ }
+yy800:
+ YYDEBUG(800, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1066 "Zend/zend_language_scanner.l"
+ {
+ return T_ELSE;
+}
+#line 7183 "Zend/zend_language_scanner.c"
+yy801:
+ YYDEBUG(801, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy802;
+ if (yych != 'f') goto yy187;
+yy802:
+ YYDEBUG(802, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(803, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1058 "Zend/zend_language_scanner.l"
+ {
+ return T_ELSEIF;
+}
+#line 7201 "Zend/zend_language_scanner.c"
+yy804:
+ YYDEBUG(804, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy805;
+ if (yych != 'o') goto yy187;
+yy805:
+ YYDEBUG(805, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 4) {
+ goto yy186;
+ }
+ YYDEBUG(806, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1142 "Zend/zend_language_scanner.l"
+ {
+ return T_ECHO;
+}
+#line 7219 "Zend/zend_language_scanner.c"
+ }
+/* *********************************** */
+yyc_ST_LOOKING_FOR_PROPERTY:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 128, 128, 0, 0, 128, 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,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 0, 0, 0, 0, 0, 0,
+ 0, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 0, 0, 0, 0, 64,
+ 0, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 0, 0, 0, 0, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 64,
+ 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(807, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '-') {
+ if (yych <= '\r') {
+ if (yych <= 0x08) goto yy815;
+ if (yych <= '\n') goto yy809;
+ if (yych <= '\f') goto yy815;
+ } else {
+ if (yych == ' ') goto yy809;
+ if (yych <= ',') goto yy815;
+ goto yy811;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= '@') goto yy815;
+ if (yych <= 'Z') goto yy813;
+ if (yych <= '^') goto yy815;
+ goto yy813;
+ } else {
+ if (yych <= '`') goto yy815;
+ if (yych <= 'z') goto yy813;
+ if (yych <= '~') goto yy815;
+ goto yy813;
+ }
+ }
+yy809:
+ YYDEBUG(809, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy821;
+yy810:
+ YYDEBUG(810, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1175 "Zend/zend_language_scanner.l"
+ {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 0); /* no copying - intentional */
+ HANDLE_NEWLINES(yytext, yyleng);
+ return T_WHITESPACE;
+}
+#line 7298 "Zend/zend_language_scanner.c"
+yy811:
+ YYDEBUG(811, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '>') goto yy818;
+yy812:
+ YYDEBUG(812, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1192 "Zend/zend_language_scanner.l"
+ {
+ yyless(0);
+ yy_pop_state(TSRMLS_C);
+ goto restart;
+}
+#line 7312 "Zend/zend_language_scanner.c"
+yy813:
+ YYDEBUG(813, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy817;
+yy814:
+ YYDEBUG(814, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1185 "Zend/zend_language_scanner.l"
+ {
+ yy_pop_state(TSRMLS_C);
+ zend_copy_value(zendlval, yytext, yyleng);
+ zendlval->type = IS_STRING;
+ return T_STRING;
+}
+#line 7328 "Zend/zend_language_scanner.c"
+yy815:
+ YYDEBUG(815, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy812;
+yy816:
+ YYDEBUG(816, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy817:
+ YYDEBUG(817, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy816;
+ }
+ goto yy814;
+yy818:
+ YYDEBUG(818, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(819, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1181 "Zend/zend_language_scanner.l"
+ {
+ return T_OBJECT_OPERATOR;
+}
+#line 7353 "Zend/zend_language_scanner.c"
+yy820:
+ YYDEBUG(820, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy821:
+ YYDEBUG(821, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy820;
+ }
+ goto yy810;
+ }
+/* *********************************** */
+yyc_ST_LOOKING_FOR_VARNAME:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 128, 128, 128, 128, 128, 128, 128, 128,
+ 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 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(822, *YYCURSOR);
+ YYFILL(2);
+ yych = *YYCURSOR;
+ if (yych <= '_') {
+ if (yych <= '@') goto yy826;
+ if (yych <= 'Z') goto yy824;
+ if (yych <= '^') goto yy826;
+ } else {
+ if (yych <= '`') goto yy826;
+ if (yych <= 'z') goto yy824;
+ if (yych <= '~') goto yy826;
+ }
+yy824:
+ YYDEBUG(824, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= '_') {
+ if (yych <= '@') {
+ if (yych <= '/') goto yy825;
+ if (yych <= '9') goto yy828;
+ } else {
+ if (yych <= '[') goto yy828;
+ if (yych >= '_') goto yy828;
+ }
+ } else {
+ if (yych <= '|') {
+ if (yych <= '`') goto yy825;
+ if (yych <= 'z') goto yy828;
+ } else {
+ if (yych != '~') goto yy828;
+ }
+ }
+yy825:
+ YYDEBUG(825, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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 7445 "Zend/zend_language_scanner.c"
+yy826:
+ YYDEBUG(826, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy825;
+yy827:
+ YYDEBUG(827, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy828:
+ YYDEBUG(828, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy827;
+ }
+ if (yych == '[') goto yy830;
+ if (yych == '}') goto yy830;
+ YYDEBUG(829, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy825;
+yy830:
+ YYDEBUG(830, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(831, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1480 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 1);
+ zend_copy_value(zendlval, yytext, yyleng);
+ zendlval->type = IS_STRING;
+ yy_pop_state(TSRMLS_C);
+ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
+ return T_STRING_VARNAME;
+}
+#line 7479 "Zend/zend_language_scanner.c"
+ }
+/* *********************************** */
+yyc_ST_NOWDOC:
+ YYDEBUG(832, *YYCURSOR);
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(834, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(835, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2310 "Zend/zend_language_scanner.l"
+ {
+ int newline = 0;
+
+ zend_heredoc_label *heredoc_label = zend_ptr_stack_top(&SCNG(heredoc_label_stack));
+
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+ YYCURSOR--;
+
+ while (YYCURSOR < YYLIMIT) {
+ switch (*YYCURSOR++) {
+ case '\r':
+ if (*YYCURSOR == '\n') {
+ YYCURSOR++;
+ }
+ /* fall through */
+ case '\n':
+ /* Check for ending label on the next line */
+ if (IS_LABEL_START(*YYCURSOR) && heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, heredoc_label->label, heredoc_label->length)) {
+ YYCTYPE *end = YYCURSOR + heredoc_label->length;
+
+ if (*end == ';') {
+ end++;
+ }
+
+ if (*end == '\n' || *end == '\r') {
+ /* newline before label will be subtracted from returned text, but
+ * yyleng/yytext will include it, for zend_highlight/strip, tokenizer, etc. */
+ if (YYCURSOR[-2] == '\r' && YYCURSOR[-1] == '\n') {
+ newline = 2; /* Windows newline */
+ } else {
+ newline = 1;
+ }
+
+ CG(increment_lineno) = 1; /* For newline before label */
+ BEGIN(ST_END_HEREDOC);
+
+ goto nowdoc_scan_done;
+ }
+ }
+ /* fall through */
+ default:
+ continue;
+ }
+ }
+
+nowdoc_scan_done:
+ yyleng = YYCURSOR - SCNG(yy_text);
+
+ zend_copy_value(zendlval, yytext, yyleng - newline);
+ zendlval->type = IS_STRING;
+ HANDLE_NEWLINES(yytext, yyleng - newline);
+ return T_ENCAPSED_AND_WHITESPACE;
+}
+#line 7547 "Zend/zend_language_scanner.c"
+/* *********************************** */
+yyc_ST_VAR_OFFSET:
+ {
+ static const unsigned char yybm[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 240, 240, 112, 112, 112, 112, 112, 112,
+ 112, 112, 0, 0, 0, 0, 0, 0,
+ 0, 80, 80, 80, 80, 80, 80, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 0, 0, 0, 0, 16,
+ 0, 80, 80, 80, 80, 80, 80, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 0, 0, 0, 0, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ 16, 16, 16, 16, 16, 16, 16, 16,
+ };
+ YYDEBUG(836, *YYCURSOR);
+ YYFILL(3);
+ yych = *YYCURSOR;
+ if (yych <= '/') {
+ if (yych <= ' ') {
+ if (yych <= '\f') {
+ if (yych <= 0x08) goto yy850;
+ if (yych <= '\n') goto yy846;
+ goto yy850;
+ } else {
+ if (yych <= '\r') goto yy846;
+ if (yych <= 0x1F) goto yy850;
+ goto yy846;
+ }
+ } else {
+ if (yych <= '$') {
+ 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 yy838;
+ if (yych <= '9') goto yy840;
+ goto yy845;
+ } else {
+ if (yych <= 'Z') goto yy848;
+ if (yych <= '[') goto yy845;
+ goto yy846;
+ }
+ } else {
+ if (yych <= '_') {
+ if (yych <= ']') goto yy843;
+ if (yych <= '^') goto yy845;
+ goto yy848;
+ } else {
+ if (yych <= '`') goto yy845;
+ if (yych <= 'z') goto yy848;
+ if (yych <= '~') goto yy845;
+ goto yy848;
+ }
+ }
+ }
+yy838:
+ YYDEBUG(838, *YYCURSOR);
+ yyaccept = 0;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= 'W') {
+ if (yych <= '9') {
+ if (yych >= '0') goto yy862;
+ } else {
+ if (yych == 'B') goto yy859;
+ }
+ } else {
+ if (yych <= 'b') {
+ if (yych <= 'X') goto yy861;
+ if (yych >= 'b') goto yy859;
+ } else {
+ if (yych == 'x') goto yy861;
+ }
+ }
+yy839:
+ YYDEBUG(839, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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));
+ } else {
+ ZVAL_STRINGL(zendlval, yytext, yyleng, 1);
+ }
+ return T_NUM_STRING;
+}
+#line 7663 "Zend/zend_language_scanner.c"
+yy840:
+ YYDEBUG(840, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy858;
+yy841:
+ YYDEBUG(841, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) <= '_') {
+ if (yych <= '@') goto yy842;
+ if (yych <= 'Z') goto yy854;
+ if (yych >= '_') goto yy854;
+ } else {
+ if (yych <= '`') goto yy842;
+ if (yych <= 'z') goto yy854;
+ if (yych >= 0x7F) goto yy854;
+ }
+yy842:
+ YYDEBUG(842, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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 7688 "Zend/zend_language_scanner.c"
+yy843:
+ YYDEBUG(843, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(844, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1837 "Zend/zend_language_scanner.l"
+ {
+ yy_pop_state(TSRMLS_C);
+ return ']';
+}
+#line 7699 "Zend/zend_language_scanner.c"
+yy845:
+ YYDEBUG(845, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy842;
+yy846:
+ YYDEBUG(846, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(847, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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 7716 "Zend/zend_language_scanner.c"
+yy848:
+ YYDEBUG(848, *YYCURSOR);
+ ++YYCURSOR;
+ yych = *YYCURSOR;
+ goto yy853;
+yy849:
+ YYDEBUG(849, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1854 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, yytext, yyleng);
+ zendlval->type = IS_STRING;
+ return T_STRING;
+}
+#line 7731 "Zend/zend_language_scanner.c"
+yy850:
+ YYDEBUG(850, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(851, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 2368 "Zend/zend_language_scanner.l"
+ {
+ if (YYCURSOR > YYLIMIT) {
+ return 0;
+ }
+
+ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
+ goto restart;
+}
+#line 7746 "Zend/zend_language_scanner.c"
+yy852:
+ YYDEBUG(852, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy853:
+ YYDEBUG(853, *YYCURSOR);
+ if (yybm[0+yych] & 16) {
+ goto yy852;
+ }
+ goto yy849;
+yy854:
+ YYDEBUG(854, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(855, *YYCURSOR);
+ if (yych <= '^') {
+ if (yych <= '9') {
+ if (yych >= '0') goto yy854;
+ } else {
+ if (yych <= '@') goto yy856;
+ if (yych <= 'Z') goto yy854;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= '_') goto yy854;
+ } else {
+ if (yych <= 'z') goto yy854;
+ if (yych >= 0x7F) goto yy854;
+ }
+ }
+yy856:
+ YYDEBUG(856, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1831 "Zend/zend_language_scanner.l"
+ {
+ zend_copy_value(zendlval, (yytext+1), (yyleng-1));
+ zendlval->type = IS_STRING;
+ return T_VARIABLE;
+}
+#line 7788 "Zend/zend_language_scanner.c"
+yy857:
+ YYDEBUG(857, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+yy858:
+ YYDEBUG(858, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy857;
+ }
+ goto yy839;
+yy859:
+ YYDEBUG(859, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 128) {
+ goto yy867;
+ }
+yy860:
+ YYDEBUG(860, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy839;
+yy861:
+ YYDEBUG(861, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yybm[0+yych] & 64) {
+ goto yy865;
+ }
+ goto yy860;
+yy862:
+ YYDEBUG(862, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(863, *YYCURSOR);
+ if (yych <= '/') goto yy864;
+ if (yych <= '9') goto yy862;
+yy864:
+ YYDEBUG(864, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#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 7833 "Zend/zend_language_scanner.c"
+yy865:
+ YYDEBUG(865, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(866, *YYCURSOR);
+ if (yybm[0+yych] & 64) {
+ goto yy865;
+ }
+ goto yy864;
+yy867:
+ YYDEBUG(867, *YYCURSOR);
+ ++YYCURSOR;
+ YYFILL(1);
+ yych = *YYCURSOR;
+ YYDEBUG(868, *YYCURSOR);
+ if (yybm[0+yych] & 128) {
+ goto yy867;
+ }
+ goto yy864;
+ }
+}
+#line 2377 "Zend/zend_language_scanner.l"
+
+}
diff --git a/Zend/zend_language_scanner_defs.h b/Zend/zend_language_scanner_defs.h index 5926e3c61..f25c3f46b 100644 --- a/Zend/zend_language_scanner_defs.h +++ b/Zend/zend_language_scanner_defs.h @@ -1,15 +1,15 @@ -/* Generated by re2c 0.13.5 */ -#line 3 "Zend/zend_language_scanner_defs.h" - -enum YYCONDTYPE { - yycST_IN_SCRIPTING, - yycST_LOOKING_FOR_PROPERTY, - yycST_BACKQUOTE, - yycST_DOUBLE_QUOTES, - yycST_HEREDOC, - yycST_LOOKING_FOR_VARNAME, - yycST_VAR_OFFSET, - yycINITIAL, - yycST_END_HEREDOC, - yycST_NOWDOC, -}; +/* Generated by re2c 0.13.5 */
+#line 3 "Zend/zend_language_scanner_defs.h"
+
+enum YYCONDTYPE {
+ yycST_IN_SCRIPTING,
+ yycST_LOOKING_FOR_PROPERTY,
+ yycST_BACKQUOTE,
+ yycST_DOUBLE_QUOTES,
+ yycST_HEREDOC,
+ yycST_LOOKING_FOR_VARNAME,
+ yycST_VAR_OFFSET,
+ yycINITIAL,
+ yycST_END_HEREDOC,
+ yycST_NOWDOC,
+};
diff --git a/Zend/zend_vm_gen.php b/Zend/zend_vm_gen.php index a25ff9deb..9995b0b9a 100644 --- a/Zend/zend_vm_gen.php +++ b/Zend/zend_vm_gen.php @@ -1264,7 +1264,7 @@ function gen_vm($def, $skel) { out($f, "# pragma warning(once : 6285)\n"); // Suppress (<non-zero constant> || <expression>) warnings on windows out($f, "# pragma warning(once : 6286)\n"); - // Suppress constant with constant comparsion warnings on windows + // Suppress constant with constant comparison warnings on windows out($f, "# pragma warning(once : 6326)\n"); } out($f, "#endif\n"); |