summaryrefslogtreecommitdiff
path: root/Zend
diff options
context:
space:
mode:
Diffstat (limited to 'Zend')
-rw-r--r--Zend/Zend.m42
-rw-r--r--Zend/acinclude.m4116
-rw-r--r--Zend/tests/bug38469.phpt26
-rwxr-xr-xZend/tests/bug42802.phpt19
-rwxr-xr-xZend/tests/bug42819.phpt150
-rwxr-xr-xZend/tests/bug42820.phpt20
-rwxr-xr-xZend/tests/bug42859.phpt6
-rwxr-xr-xZend/tests/bug43128.phpt2
-rwxr-xr-xZend/tests/bug43183.phpt4
-rw-r--r--Zend/tests/bug43332_1.phpt4
-rw-r--r--Zend/tests/bug43332_2.phpt4
-rw-r--r--Zend/tests/bug43343.phpt2
-rw-r--r--Zend/tests/bug43344_10.phpt2
-rw-r--r--Zend/tests/bug43344_11.phpt2
-rw-r--r--Zend/tests/bug43344_12.phpt2
-rw-r--r--Zend/tests/bug43344_13.phpt2
-rw-r--r--Zend/tests/bug43344_2.phpt2
-rw-r--r--Zend/tests/bug43344_3.phpt2
-rw-r--r--Zend/tests/bug43344_4.phpt2
-rw-r--r--Zend/tests/bug43344_5.phpt2
-rw-r--r--Zend/tests/bug43344_6.phpt4
-rw-r--r--Zend/tests/bug43344_7.phpt4
-rw-r--r--Zend/tests/bug43344_8.phpt4
-rw-r--r--Zend/tests/bug43344_9.phpt4
-rw-r--r--Zend/tests/bug43651.phpt26
-rw-r--r--Zend/tests/bug44653.phpt14
-rw-r--r--Zend/tests/class_alias_012.phpt16
-rw-r--r--Zend/tests/class_alias_013.phpt14
-rw-r--r--Zend/tests/class_alias_015.phpt6
-rw-r--r--Zend/tests/class_alias_016.phpt8
-rw-r--r--Zend/tests/class_alias_019.phpt4
-rw-r--r--Zend/tests/class_alias_020.phpt16
-rw-r--r--Zend/tests/class_alias_021.phpt14
-rw-r--r--Zend/tests/class_constants_004.phpt12
-rw-r--r--Zend/tests/class_exists_001.phpt8
-rw-r--r--Zend/tests/closure_027.phpt2
-rw-r--r--Zend/tests/constants_003.phpt2
-rw-r--r--Zend/tests/constants_004.phpt2
-rw-r--r--Zend/tests/constants_006.phpt4
-rw-r--r--Zend/tests/constants_009.phpt8
-rw-r--r--Zend/tests/hex_overflow_32bit.phpt2
-rw-r--r--Zend/tests/inter_02.phpt2
-rw-r--r--Zend/tests/interface_exists_002.phpt4
-rw-r--r--Zend/tests/lsb_014.phpt4
-rwxr-xr-xZend/tests/ns_001.phpt18
-rwxr-xr-xZend/tests/ns_002.phpt24
-rwxr-xr-xZend/tests/ns_003.phpt4
-rwxr-xr-xZend/tests/ns_004.phpt8
-rwxr-xr-xZend/tests/ns_005.phpt4
-rwxr-xr-xZend/tests/ns_006.phpt6
-rwxr-xr-xZend/tests/ns_007.phpt2
-rwxr-xr-xZend/tests/ns_008.phpt4
-rwxr-xr-xZend/tests/ns_009.phpt2
-rwxr-xr-xZend/tests/ns_010.phpt24
-rwxr-xr-xZend/tests/ns_011.phpt14
-rwxr-xr-xZend/tests/ns_012.phpt32
-rwxr-xr-xZend/tests/ns_013.phpt4
-rwxr-xr-xZend/tests/ns_014.phpt2
-rwxr-xr-xZend/tests/ns_015.phpt4
-rwxr-xr-xZend/tests/ns_016.phpt6
-rwxr-xr-xZend/tests/ns_017.phpt2
-rwxr-xr-xZend/tests/ns_018.phpt4
-rwxr-xr-xZend/tests/ns_019.phpt2
-rwxr-xr-xZend/tests/ns_020.phpt14
-rwxr-xr-xZend/tests/ns_021.phpt10
-rwxr-xr-xZend/tests/ns_022.phpt10
-rwxr-xr-xZend/tests/ns_023.phpt6
-rwxr-xr-xZend/tests/ns_025.phpt14
-rwxr-xr-xZend/tests/ns_026.phpt23
-rwxr-xr-xZend/tests/ns_027.inc2
-rwxr-xr-xZend/tests/ns_027.phpt8
-rwxr-xr-xZend/tests/ns_028.phpt16
-rwxr-xr-xZend/tests/ns_029.phpt2
-rwxr-xr-xZend/tests/ns_030.phpt4
-rwxr-xr-xZend/tests/ns_031.phpt8
-rwxr-xr-xZend/tests/ns_032.phpt4
-rwxr-xr-xZend/tests/ns_034.phpt15
-rwxr-xr-xZend/tests/ns_035.phpt6
-rwxr-xr-xZend/tests/ns_036.phpt19
-rwxr-xr-xZend/tests/ns_037.phpt24
-rwxr-xr-xZend/tests/ns_038.phpt4
-rw-r--r--Zend/tests/ns_040.phpt12
-rw-r--r--Zend/tests/ns_041.phpt6
-rw-r--r--Zend/tests/ns_042.phpt12
-rw-r--r--Zend/tests/ns_043.phpt2
-rw-r--r--Zend/tests/ns_044.phpt2
-rw-r--r--Zend/tests/ns_045.phpt4
-rw-r--r--Zend/tests/ns_046.phpt4
-rw-r--r--Zend/tests/ns_047.phpt2
-rw-r--r--Zend/tests/ns_048.phpt4
-rw-r--r--Zend/tests/ns_049.phpt2
-rw-r--r--Zend/tests/ns_050.phpt2
-rw-r--r--Zend/tests/ns_051.phpt2
-rw-r--r--Zend/tests/ns_052.phpt4
-rw-r--r--Zend/tests/ns_053.phpt6
-rwxr-xr-xZend/tests/ns_054.phpt12
-rwxr-xr-xZend/tests/ns_055.phpt13
-rwxr-xr-xZend/tests/ns_056.phpt7
-rwxr-xr-xZend/tests/ns_057.phpt33
-rwxr-xr-xZend/tests/ns_058.phpt31
-rw-r--r--Zend/tests/ns_060.phpt12
-rw-r--r--Zend/tests/ns_061.phpt2
-rw-r--r--Zend/tests/ns_062.phpt6
-rw-r--r--Zend/tests/ns_064.phpt2
-rwxr-xr-xZend/tests/ns_065.inc4
-rwxr-xr-xZend/tests/ns_065.phpt10
-rw-r--r--Zend/tests/ns_066.phpt4
-rw-r--r--Zend/tests/ns_067.inc2
-rw-r--r--Zend/tests/ns_067.phpt2
-rw-r--r--Zend/tests/zend_strtod.phpt2
-rw-r--r--Zend/zend.h2
-rw-r--r--Zend/zend_API.c105
-rw-r--r--Zend/zend_API.h10
-rw-r--r--Zend/zend_alloc.c16
-rw-r--r--Zend/zend_alloc.h4
-rw-r--r--Zend/zend_builtin_functions.c185
-rw-r--r--Zend/zend_closures.c11
-rw-r--r--Zend/zend_compile.c531
-rw-r--r--Zend/zend_compile.h9
-rw-r--r--Zend/zend_constants.c113
-rw-r--r--Zend/zend_exceptions.c4
-rw-r--r--Zend/zend_execute_API.c237
-rw-r--r--Zend/zend_globals.h2
-rw-r--r--Zend/zend_ini_scanner.c3706
-rw-r--r--Zend/zend_ini_scanner.l30
-rw-r--r--Zend/zend_ini_scanner_defs.h2
-rwxr-xr-xZend/zend_interfaces.c8
-rw-r--r--Zend/zend_language_parser.y64
-rw-r--r--Zend/zend_language_scanner.c5220
-rw-r--r--Zend/zend_language_scanner.l4
-rw-r--r--Zend/zend_language_scanner_defs.h2
-rw-r--r--Zend/zend_list.h6
-rw-r--r--Zend/zend_object_handlers.c16
-rw-r--r--Zend/zend_object_handlers.h2
-rw-r--r--Zend/zend_operators.c39
-rw-r--r--Zend/zend_stream.c10
-rw-r--r--Zend/zend_strtod.c15
-rw-r--r--Zend/zend_vm_def.h77
-rw-r--r--Zend/zend_vm_execute.h303
139 files changed, 5857 insertions, 5992 deletions
diff --git a/Zend/Zend.m4 b/Zend/Zend.m4
index 904f188681..6de6b0cf13 100644
--- a/Zend/Zend.m4
+++ b/Zend/Zend.m4
@@ -115,8 +115,6 @@ AC_ZEND_BROKEN_SPRINTF
AC_CHECK_FUNCS(finite isfinite isinf isnan)
ZEND_FP_EXCEPT
-
-ZEND_CHECK_FLOAT_PRECISION
])
diff --git a/Zend/acinclude.m4 b/Zend/acinclude.m4
index 37068a316b..77b9bbdeb4 100644
--- a/Zend/acinclude.m4
+++ b/Zend/acinclude.m4
@@ -4,7 +4,7 @@ dnl This file contains local autoconf functions.
AC_DEFUN([LIBZEND_BISON_CHECK],[
# we only support certain bison versions
- bison_version_list="1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4"
+ bison_version_list="1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3"
# for standalone build of Zend Engine
test -z "$SED" && SED=sed
@@ -105,117 +105,3 @@ int main(void)
AC_DEFUN([AM_SET_LIBTOOL_VARIABLE],[
LIBTOOL='$(SHELL) $(top_builddir)/libtool $1'
])
-
-dnl x87 floating point internal precision control checks
-dnl See: http://wiki.php.net/rfc/rounding
-AC_DEFUN([ZEND_CHECK_FLOAT_PRECISION],[
- AC_MSG_CHECKING([for usable _FPU_SETCW])
- AC_TRY_LINK([
- #include <fpu_control.h>
- ],[
- fpu_control_t fpu_oldcw, fpu_cw;
- volatile double result;
- double a = 2877.0;
- volatile double b = 1000000.0;
-
- _FPU_GETCW(fpu_oldcw);
- fpu_cw = (fpu_oldcw & ~_FPU_EXTENDED & ~_FPU_SINGLE) | _FPU_DOUBLE;
- _FPU_SETCW(fpu_cw);
- result = a / b;
- _FPU_SETCW(fpu_oldcw);
- ], [ac_cfp_have__fpu_setcw=yes], [ac_cfp_have__fpu_setcw=no])
- if test "$ac_cfp_have__fpu_setcw" = "yes" ; then
- AC_DEFINE(HAVE__FPU_SETCW, 1, [whether _FPU_SETCW is present and usable])
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-
- AC_MSG_CHECKING([for usable fpsetprec])
- AC_TRY_LINK([
- #include <machine/ieeefp.h>
- ],[
- fp_prec_t fpu_oldprec;
- volatile double result;
- double a = 2877.0;
- volatile double b = 1000000.0;
-
- fpu_oldprec = fpgetprec();
- fpsetprec(FP_PD);
- result = a / b;
- fpsetprec(fpu_oldprec);
- ], [ac_cfp_have_fpsetprec=yes], [ac_cfp_have_fpsetprec=no])
- if test "$ac_cfp_have_fpsetprec" = "yes" ; then
- AC_DEFINE(HAVE_FPSETPREC, 1, [whether fpsetprec is present and usable])
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-
- AC_MSG_CHECKING([for usable _controlfp])
- AC_TRY_LINK([
- #include <float.h>
- ],[
- unsigned int fpu_oldcw;
- volatile double result;
- double a = 2877.0;
- volatile double b = 1000000.0;
-
- fpu_oldcw = _controlfp(0, 0);
- _controlfp(_PC_53, _MCW_PC);
- result = a / b;
- _controlfp(fpu_oldcw, _MCW_PC);
- ], [ac_cfp_have__controlfp=yes], [ac_cfp_have__controlfp=no])
- if test "$ac_cfp_have__controlfp" = "yes" ; then
- AC_DEFINE(HAVE__CONTROLFP, 1, [whether _controlfp is present usable])
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-
- AC_MSG_CHECKING([for usable _controlfp_s])
- AC_TRY_LINK([
- #include <float.h>
- ],[
- unsigned int fpu_oldcw, fpu_cw;
- volatile double result;
- double a = 2877.0;
- volatile double b = 1000000.0;
-
- _controlfp_s(&fpu_cw, 0, 0);
- fpu_oldcw = fpu_cw;
- _controlfp_s(&fpu_cw, _PC_53, _MCW_PC);
- result = a / b;
- _controlfp_s(&fpu_cw, fpu_oldcw, _MCW_PC);
- ], [ac_cfp_have__controlfp_s=yes], [ac_cfp_have__controlfp_s=no])
- if test "$ac_cfp_have__controlfp_s" = "yes" ; then
- AC_DEFINE(HAVE__CONTROLFP_S, 1, [whether _controlfp_s is present and usable])
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-
- AC_MSG_CHECKING([whether FPU control word can be manipulated by inline assembler])
- AC_TRY_LINK([
- /* nothing */
- ],[
- unsigned int oldcw, cw;
- volatile double result;
- double a = 2877.0;
- volatile double b = 1000000.0;
-
- __asm__ __volatile__ ("fnstcw %0" : "=m" (*&oldcw));
- cw = (oldcw & ~0x0 & ~0x300) | 0x200;
- __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw));
-
- result = a / b;
-
- __asm__ __volatile__ ("fldcw %0" : : "m" (*&oldcw));
- ], [ac_cfp_have_fpu_inline_asm_x86=yes], [ac_cfp_have_fpu_inline_asm_x86=no])
- if test "$ac_cfp_have_fpu_inline_asm_x86" = "yes" ; then
- AC_DEFINE(HAVE_FPU_INLINE_ASM_X86, 1, [whether FPU control word can be manipulated by inline assembler])
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- fi
-])
diff --git a/Zend/tests/bug38469.phpt b/Zend/tests/bug38469.phpt
index 6afcaf5fd3..db507df357 100644
--- a/Zend/tests/bug38469.phpt
+++ b/Zend/tests/bug38469.phpt
@@ -8,16 +8,6 @@ var_dump($a);
$b = array(array());
$b[0][0] = $b;
var_dump($b);
-
-function f() {
- $a = array();
- $a[0] = $a;
- var_dump($a);
- $b = array(array());
- $b[0][0] = $b;
- var_dump($b);
-}
-f();
?>
--EXPECT--
array(1) {
@@ -36,19 +26,3 @@ array(1) {
}
}
}
-array(1) {
- [0]=>
- array(0) {
- }
-}
-array(1) {
- [0]=>
- array(1) {
- [0]=>
- array(1) {
- [0]=>
- array(0) {
- }
- }
- }
-}
diff --git a/Zend/tests/bug42802.phpt b/Zend/tests/bug42802.phpt
index 2aa7061f35..80ae02ba5e 100755
--- a/Zend/tests/bug42802.phpt
+++ b/Zend/tests/bug42802.phpt
@@ -11,30 +11,35 @@ function test1(bar $bar) {
echo "ok\n";
}
-function test2(\foo\bar $bar) {
+function test2(foo::bar $bar) {
echo "ok\n";
}
-function test3(\foo\bar $bar) {
+function test3(::foo::bar $bar) {
echo "ok\n";
}
-function test4(\Exception $e) {
+function test4(::Exception $e) {
echo "ok\n";
}
-function test5(\bar $bar) {
+function test5(Exception $e) {
+ echo "ok\n";
+}
+function test6(::bar $bar) {
echo "bug\n";
}
$x = new bar();
-$y = new \Exception();
+$y = new Exception();
test1($x);
test2($x);
test3($x);
test4($y);
-test5($x);
+test5($y);
+test6($x);
--EXPECTF--
ok
ok
ok
ok
+ok
-Catchable fatal error: Argument 1 passed to foo\test5() must be an instance of bar, instance of foo\bar given, called in %sbug42802.php on line %d and defined in %sbug42802.php on line %d
+Catchable fatal error: Argument 1 passed to foo::test6() must be an instance of bar, instance of foo::bar given, called in %sbug42802.php on line 23
diff --git a/Zend/tests/bug42819.phpt b/Zend/tests/bug42819.phpt
index f4387eb93b..565a019fac 100755
--- a/Zend/tests/bug42819.phpt
+++ b/Zend/tests/bug42819.phpt
@@ -4,100 +4,88 @@ Bug #42819 (namespaces in indexes of constant arrays)
<?php if (!extension_loaded("spl")) print "skip"; ?>
--FILE--
<?php
-namespace foo\foo;
-
-const C = "foo\\foo\\C\n";
-const I = 12;
-
-class foo {
-const I = 32;
-const C = "foo\\foo\\foo::C\n";
-}
-
namespace foo;
-use \ArrayObject;
-const C = "foo\\C\n";
+const C = "foo::C\n";
const I = 11;
class foo {
- const C = "foo\\foo::C\n";
+ const C = "foo::foo::C\n";
const I = 22;
const C1 = C;
- const C2 = foo\C;
- const C3 = foo\foo::C;
- const C4 = \foo\C;
- const C5 = \foo\foo::C;
+ const C2 = foo::C;
+ const C3 = foo::foo::C;
+ const C4 = ::foo::C;
+ const C5 = ::foo::foo::C;
const C6 = ArrayObject::STD_PROP_LIST;
const C7 = E_ERROR;
}
class bar1 {
static $a1 = array(I => 0);
- static $a2 = array(foo\I => 0);
- static $a3 = array(foo\foo::I => 0);
- static $a4 = array(\foo\I => 0);
- static $a5 = array(\foo\foo::I => 0);
+ static $a2 = array(foo::I => 0);
+ static $a3 = array(foo::foo::I => 0);
+ static $a4 = array(::foo::I => 0);
+ static $a5 = array(::foo::foo::I => 0);
static $a6 = array(ArrayObject::STD_PROP_LIST => 0);
static $a7 = array(E_ERROR => 0);
}
class bar2 {
static $a1 = array(I => I);
- static $a2 = array(foo\I => I);
- static $a3 = array(foo\foo::I => I);
- static $a4 = array(\foo\I => I);
- static $a5 = array(\foo\foo::I => I);
+ static $a2 = array(foo::I => I);
+ static $a3 = array(foo::foo::I => I);
+ static $a4 = array(::foo::I => I);
+ static $a5 = array(::foo::foo::I => I);
static $a6 = array(ArrayObject::STD_PROP_LIST => I);
static $a7 = array(E_ERROR => I);
}
class bar3 {
- static $a1 = array(I => foo\I);
- static $a2 = array(foo\I => foo\I);
- static $a3 = array(foo\foo::I => foo\I);
- static $a4 = array(\foo\I => foo\I);
- static $a5 = array(\foo\foo::I => foo\I);
- static $a6 = array(ArrayObject::STD_PROP_LIST => foo\I);
- static $a7 = array(E_ERROR => foo\I);
+ static $a1 = array(I => foo::I);
+ static $a2 = array(foo::I => foo::I);
+ static $a3 = array(foo::foo::I => foo::I);
+ static $a4 = array(::foo::I => foo::I);
+ static $a5 = array(::foo::foo::I => foo::I);
+ static $a6 = array(ArrayObject::STD_PROP_LIST => foo::I);
+ static $a7 = array(E_ERROR => foo::I);
}
class bar4 {
static $a1 = array(I => ArrayObject::STD_PROP_LIST);
- static $a2 = array(foo\I => ArrayObject::STD_PROP_LIST);
- static $a3 = array(foo\foo::I => ArrayObject::STD_PROP_LIST);
- static $a4 = array(\foo\I => ArrayObject::STD_PROP_LIST);
- static $a5 = array(\foo\foo::I => ArrayObject::STD_PROP_LIST);
+ static $a2 = array(foo::I => ArrayObject::STD_PROP_LIST);
+ static $a3 = array(foo::foo::I => ArrayObject::STD_PROP_LIST);
+ static $a4 = array(::foo::I => ArrayObject::STD_PROP_LIST);
+ static $a5 = array(::foo::foo::I => ArrayObject::STD_PROP_LIST);
static $a6 = array(ArrayObject::STD_PROP_LIST => ArrayObject::STD_PROP_LIST);
static $a7 = array(E_ERROR => ArrayObject::STD_PROP_LIST);
}
class bar5 {
static $a1 = array(I => E_ERROR);
- static $a2 = array(foo\I => E_ERROR);
- static $a3 = array(foo\foo::I => E_ERROR);
- static $a4 = array(\foo\I => E_ERROR);
- static $a5 = array(\foo\foo::I => E_ERROR);
+ static $a2 = array(foo::I => E_ERROR);
+ static $a3 = array(foo::foo::I => E_ERROR);
+ static $a4 = array(::foo::I => E_ERROR);
+ static $a5 = array(::foo::foo::I => E_ERROR);
static $a6 = array(ArrayObject::STD_PROP_LIST => E_ERROR);
static $a7 = array(E_ERROR => E_ERROR);
}
-echo "first\n";
echo C;
-echo foo\C;
-echo foo\foo::C;
echo foo::C;
-echo \foo\foo::C;
+echo foo::foo::C;
+echo ::foo::C;
+echo ::foo::foo::C;
echo ArrayObject::STD_PROP_LIST . "\n";
echo E_ERROR . "\n";
-echo "second\n";
-echo \foo\foo::C1;
-echo \foo\foo::C2;
-echo \foo\foo::C3;
-echo \foo\foo::C4;
-echo \foo\foo::C5;
-echo \foo\foo::C6 . "\n";
-echo \foo\foo::C7 . "\n";
+
+echo foo::foo::C1;
+echo foo::foo::C2;
+echo foo::foo::C3;
+echo foo::foo::C4;
+echo foo::foo::C5;
+echo foo::foo::C6 . "\n";
+echo foo::foo::C7 . "\n";
print_r(bar1::$a1);
print_r(bar1::$a2);
@@ -138,24 +126,20 @@ print_r(bar5::$a4);
print_r(bar5::$a5);
print_r(bar5::$a6);
print_r(bar5::$a7);
-function oops($a = array(foo\unknown)){}
-oops();
?>
---EXPECTF--
-first
-foo\C
-foo\foo\C
-foo\foo\foo::C
-foo\foo::C
-foo\foo::C
+--EXPECT--
+foo::C
+foo::C
+foo::foo::C
+foo::C
+foo::foo::C
1
1
-second
-foo\C
-foo\foo\C
-foo\foo\foo::C
-foo\C
-foo\foo::C
+foo::C
+foo::C
+foo::foo::C
+foo::C
+foo::foo::C
1
1
Array
@@ -164,11 +148,11 @@ Array
)
Array
(
- [12] => 0
+ [11] => 0
)
Array
(
- [32] => 0
+ [22] => 0
)
Array
(
@@ -192,11 +176,11 @@ Array
)
Array
(
- [12] => 11
+ [11] => 11
)
Array
(
- [32] => 11
+ [22] => 11
)
Array
(
@@ -216,31 +200,31 @@ Array
)
Array
(
- [11] => 12
+ [11] => 11
)
Array
(
- [12] => 12
+ [11] => 11
)
Array
(
- [32] => 12
+ [22] => 11
)
Array
(
- [11] => 12
+ [11] => 11
)
Array
(
- [22] => 12
+ [22] => 11
)
Array
(
- [1] => 12
+ [1] => 11
)
Array
(
- [1] => 12
+ [1] => 11
)
Array
(
@@ -248,11 +232,11 @@ Array
)
Array
(
- [12] => 1
+ [11] => 1
)
Array
(
- [32] => 1
+ [22] => 1
)
Array
(
@@ -276,11 +260,11 @@ Array
)
Array
(
- [12] => 1
+ [11] => 1
)
Array
(
- [32] => 1
+ [22] => 1
)
Array
(
@@ -298,5 +282,3 @@ Array
(
[1] => 1
)
-
-Fatal error: Undefined constant 'foo\foo\unknown' in %sbug42819.php on line %d \ No newline at end of file
diff --git a/Zend/tests/bug42820.phpt b/Zend/tests/bug42820.phpt
index 921f0090a9..0a6c7d7876 100755
--- a/Zend/tests/bug42820.phpt
+++ b/Zend/tests/bug42820.phpt
@@ -7,16 +7,16 @@ const ok = 0;
class foo {
const ok = 0;
}
-var_dump(defined('ns\\ok'));
-var_dump(defined('ns\\bug'));
-var_dump(defined('\\ns\\ok'));
-var_dump(defined('\\ns\\bug'));
-var_dump(defined('ns\\foo::ok'));
-var_dump(defined('ns\\foo::bug'));
-var_dump(defined('\\ns\\foo::ok'));
-var_dump(defined('\\ns\\foo::bug'));
-var_dump(defined('ns\\bar::bug'));
-var_dump(defined('\\ns\\bar::bug'));
+var_dump(defined('ns::ok'));
+var_dump(defined('ns::bug'));
+var_dump(defined('::ns::ok'));
+var_dump(defined('::ns::bug'));
+var_dump(defined('ns::foo::ok'));
+var_dump(defined('ns::foo::bug'));
+var_dump(defined('::ns::foo::ok'));
+var_dump(defined('::ns::foo::bug'));
+var_dump(defined('ns::bar::bug'));
+var_dump(defined('::ns::bar::bug'));
--EXPECT--
bool(true)
bool(false)
diff --git a/Zend/tests/bug42859.phpt b/Zend/tests/bug42859.phpt
index 755f41f8d6..931e7fe0f7 100755
--- a/Zend/tests/bug42859.phpt
+++ b/Zend/tests/bug42859.phpt
@@ -5,8 +5,8 @@ Bug #42859 (import always conflicts with internal classes)
namespace Foo;
class Ex {}
-use Blah\Exception;
-use Blah\Ex;
+use Blah::Exception;
+use Blah::Ex;
?>
--EXPECTF--
-Fatal error: Cannot use Blah\Ex as Ex because the name is already in use in %sbug42859.php on line 6
+Fatal error: Cannot use Blah::Ex as Ex because the name is already in use in %sbug42859.php on line 6
diff --git a/Zend/tests/bug43128.phpt b/Zend/tests/bug43128.phpt
index 629f46c594..2832acaeb8 100755
--- a/Zend/tests/bug43128.phpt
+++ b/Zend/tests/bug43128.phpt
@@ -1,7 +1,5 @@
--TEST--
Bug #43128 (Very long class name causes segfault)
---INI--
-memory_limit=128000000
--FILE--
<?php
diff --git a/Zend/tests/bug43183.phpt b/Zend/tests/bug43183.phpt
index a8ca698e9f..61313eb2c6 100755
--- a/Zend/tests/bug43183.phpt
+++ b/Zend/tests/bug43183.phpt
@@ -3,10 +3,10 @@ Bug #43183 ("use" of the same class in difference scripts results in a fatal err
--FILE--
<?php
namespace Test;
-use Test\Foo;
+use Test::Foo;
class Foo {}
class Bar {}
-use Test\Bar;
+use Test::Bar;
echo "ok\n";
--EXPECT--
ok \ No newline at end of file
diff --git a/Zend/tests/bug43332_1.phpt b/Zend/tests/bug43332_1.phpt
index 807c6cb545..ef32162100 100644
--- a/Zend/tests/bug43332_1.phpt
+++ b/Zend/tests/bug43332_1.phpt
@@ -10,6 +10,6 @@ class foo {
$foo = new foo;
$foo->bar($foo); // Ok!
-$foo->bar(new \stdclass); // Error, ok!
+$foo->bar(new stdclass); // Error, ok!
--EXPECTF--
-Catchable fatal error: Argument 1 passed to foobar\foo::bar() must be an instance of foobar\foo, instance of stdClass given, called in %sbug43332_1.php on line 10 and defined in %sbug43332_1.php on line 5
+Catchable fatal error: Argument 1 passed to foobar::foo::bar() must be an instance of foobar::foo, instance of stdClass given, called in %sbug43332_1.php on line 10 and defined in %sbug43332_1.php on line 5
diff --git a/Zend/tests/bug43332_2.phpt b/Zend/tests/bug43332_2.phpt
index b8adef3b13..916f6fa354 100644
--- a/Zend/tests/bug43332_2.phpt
+++ b/Zend/tests/bug43332_2.phpt
@@ -5,11 +5,11 @@ Bug #43332.2 (self and parent as type hint in namespace)
namespace foobar;
class foo {
- public function bar(\self $a) { }
+ public function bar(::self $a) { }
}
$foo = new foo;
$foo->bar($foo); // Ok!
$foo->bar(new stdclass); // Error, ok!
--EXPECTF--
-Fatal error: '\self' is an invalid class name in %sbug43332_2.php on line 5
+Fatal error: '::self' is a wrong class name in %sbug43332_2.php on line 5
diff --git a/Zend/tests/bug43343.phpt b/Zend/tests/bug43343.phpt
index 12f64fbd24..fa1d993ab8 100644
--- a/Zend/tests/bug43343.phpt
+++ b/Zend/tests/bug43343.phpt
@@ -8,4 +8,4 @@ $foo = 'bar';
var_dump(new namespace::$foo);
?>
--EXPECTF--
-Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM, expecting T_NS_SEPARATOR in %sbug43343.php on line 5
+Fatal error: Cannot use 'namespace' as a class name in %sbug43343.php on line 5
diff --git a/Zend/tests/bug43344_10.phpt b/Zend/tests/bug43344_10.phpt
index e9f918cd61..d80a06ba05 100644
--- a/Zend/tests/bug43344_10.phpt
+++ b/Zend/tests/bug43344_10.phpt
@@ -2,7 +2,7 @@
Bug #43344.10 (Wrong error message for undefined namespace constant)
--FILE--
<?php
-echo namespace\bar."\n";
+echo namespace::bar."\n";
?>
--EXPECTF--
Fatal error: Undefined constant 'bar' in %sbug43344_10.php on line %d
diff --git a/Zend/tests/bug43344_11.phpt b/Zend/tests/bug43344_11.phpt
index b55cdccdea..4daa236f87 100644
--- a/Zend/tests/bug43344_11.phpt
+++ b/Zend/tests/bug43344_11.phpt
@@ -2,7 +2,7 @@
Bug #43344.11 (Wrong error message for undefined namespace constant)
--FILE--
<?php
-function f($a=namespace\bar) {
+function f($a=namespace::bar) {
return $a;
}
echo f()."\n";
diff --git a/Zend/tests/bug43344_12.phpt b/Zend/tests/bug43344_12.phpt
index 4d1e154f31..79dfc65cea 100644
--- a/Zend/tests/bug43344_12.phpt
+++ b/Zend/tests/bug43344_12.phpt
@@ -2,7 +2,7 @@
Bug #43344.12 (Wrong error message for undefined namespace constant)
--FILE--
<?php
-function f($a=array(namespace\bar)) {
+function f($a=array(namespace::bar)) {
return $a[0];
}
echo f()."\n";
diff --git a/Zend/tests/bug43344_13.phpt b/Zend/tests/bug43344_13.phpt
index c6aaf92fb3..d4fff4ffdd 100644
--- a/Zend/tests/bug43344_13.phpt
+++ b/Zend/tests/bug43344_13.phpt
@@ -2,7 +2,7 @@
Bug #43344.13 (Wrong error message for undefined namespace constant)
--FILE--
<?php
-function f($a=array(namespace\bar=>0)) {
+function f($a=array(namespace::bar=>0)) {
reset($a);
return key($a);
}
diff --git a/Zend/tests/bug43344_2.phpt b/Zend/tests/bug43344_2.phpt
index 57766afa94..1c55559e26 100644
--- a/Zend/tests/bug43344_2.phpt
+++ b/Zend/tests/bug43344_2.phpt
@@ -6,4 +6,4 @@ namespace Foo;
echo Foo::bar."\n";
?>
--EXPECTF--
-Fatal error: Class 'Foo\Foo' not found in %sbug43344_2.php on line %d
+Fatal error: Class 'Foo::Foo' not found in %sbug43344_2.php on line %d
diff --git a/Zend/tests/bug43344_3.phpt b/Zend/tests/bug43344_3.phpt
index 579ed81ada..26a6b46a3b 100644
--- a/Zend/tests/bug43344_3.phpt
+++ b/Zend/tests/bug43344_3.phpt
@@ -9,4 +9,4 @@ function f($a=Foo::bar) {
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Class 'Foo\Foo' not found in %sbug43344_3.php on line %d
+Fatal error: Class 'Foo::Foo' not found in %sbug43344_3.php on line %d
diff --git a/Zend/tests/bug43344_4.phpt b/Zend/tests/bug43344_4.phpt
index 97e08b3664..20feaf9afe 100644
--- a/Zend/tests/bug43344_4.phpt
+++ b/Zend/tests/bug43344_4.phpt
@@ -9,4 +9,4 @@ function f($a=array(Foo::bar)) {
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Class 'Foo\Foo' not found in %sbug43344_4.php on line %d
+Fatal error: Class 'Foo::Foo' not found in %sbug43344_4.php on line %d
diff --git a/Zend/tests/bug43344_5.phpt b/Zend/tests/bug43344_5.phpt
index 645ef33e7f..2ccd029825 100644
--- a/Zend/tests/bug43344_5.phpt
+++ b/Zend/tests/bug43344_5.phpt
@@ -10,4 +10,4 @@ function f($a=array(Foo::bar=>0)) {
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Class 'Foo\Foo' not found in %sbug43344_5.php on line %d
+Fatal error: Class 'Foo::Foo' not found in %sbug43344_5.php on line %d
diff --git a/Zend/tests/bug43344_6.phpt b/Zend/tests/bug43344_6.phpt
index 38e1961aad..0597b585e0 100644
--- a/Zend/tests/bug43344_6.phpt
+++ b/Zend/tests/bug43344_6.phpt
@@ -3,7 +3,7 @@ Bug #43344.6 (Wrong error message for undefined namespace constant)
--FILE--
<?php
namespace Foo;
-echo namespace\bar."\n";
+echo namespace::bar."\n";
?>
--EXPECTF--
-Fatal error: Undefined constant 'Foo\bar' in %sbug43344_6.php on line %d
+Fatal error: Undefined constant 'Foo::bar' in %sbug43344_6.php on line %d
diff --git a/Zend/tests/bug43344_7.phpt b/Zend/tests/bug43344_7.phpt
index 94e00d9e1f..fab79feec2 100644
--- a/Zend/tests/bug43344_7.phpt
+++ b/Zend/tests/bug43344_7.phpt
@@ -3,10 +3,10 @@ Bug #43344.7 (Wrong error message for undefined namespace constant)
--FILE--
<?php
namespace Foo;
-function f($a=namespace\bar) {
+function f($a=namespace::bar) {
return $a;
}
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Undefined constant 'Foo\bar' in %sbug43344_7.php on line %d
+Fatal error: Undefined constant 'Foo::bar' in %sbug43344_7.php on line %d
diff --git a/Zend/tests/bug43344_8.phpt b/Zend/tests/bug43344_8.phpt
index eb694f7118..a9272d7472 100644
--- a/Zend/tests/bug43344_8.phpt
+++ b/Zend/tests/bug43344_8.phpt
@@ -3,10 +3,10 @@ Bug #43344.8 (Wrong error message for undefined namespace constant)
--FILE--
<?php
namespace Foo;
-function f($a=array(namespace\bar)) {
+function f($a=array(namespace::bar)) {
return $a[0];
}
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Undefined constant 'Foo\bar' in %sbug43344_8.php on line %d
+Fatal error: Undefined constant 'Foo::bar' in %sbug43344_8.php on line %d
diff --git a/Zend/tests/bug43344_9.phpt b/Zend/tests/bug43344_9.phpt
index 31604e7a94..b3c5dfbdb7 100644
--- a/Zend/tests/bug43344_9.phpt
+++ b/Zend/tests/bug43344_9.phpt
@@ -3,11 +3,11 @@ Bug #43344.9 (Wrong error message for undefined namespace constant)
--FILE--
<?php
namespace Foo;
-function f($a=array(namespace\bar=>0)) {
+function f($a=array(namespace::bar=>0)) {
reset($a);
return key($a);
}
echo f()."\n";
?>
--EXPECTF--
-Fatal error: Undefined constant 'Foo\bar' in %sbug43344_9.php on line %d
+Fatal error: Undefined constant 'Foo::bar' in %sbug43344_9.php on line %d
diff --git a/Zend/tests/bug43651.phpt b/Zend/tests/bug43651.phpt
index ea70cf1039..bce0601abe 100644
--- a/Zend/tests/bug43651.phpt
+++ b/Zend/tests/bug43651.phpt
@@ -6,22 +6,22 @@ class Test {
static function foo() {}
}
-var_dump(is_callable("\\\\"));
-var_dump(is_callable("\\"));
-var_dump(is_callable("x\\"));
-var_dump(is_callable("\\x"));
-var_dump(is_callable("x\\x"));
-var_dump(is_callable("x\\\\"));
-var_dump(is_callable("\\x"));
-var_dump(is_callable("x\\\\x"));
+var_dump(is_callable("::"));
+var_dump(is_callable(":"));
+var_dump(is_callable("x:"));
+var_dump(is_callable(":x"));
+var_dump(is_callable("x:x"));
+var_dump(is_callable("x::"));
+var_dump(is_callable("::x"));
+var_dump(is_callable("x::x"));
var_dump(is_callable("cd"));
-var_dump(is_callable("Test\\"));
-var_dump(is_callable("\\Test"));
-var_dump(is_callable("\\Test\\"));
+var_dump(is_callable("Test::"));
+var_dump(is_callable("::Test"));
+var_dump(is_callable("::Test::"));
var_dump(is_callable("Test::foo"));
-var_dump(is_callable("\\Test::foo"));
+var_dump(is_callable("::Test::foo"));
var_dump(is_callable("is_string"));
-var_dump(is_callable("\\is_string"));
+var_dump(is_callable("::is_string"));
--EXPECT--
bool(false)
bool(false)
diff --git a/Zend/tests/bug44653.phpt b/Zend/tests/bug44653.phpt
index 1abf9747c7..defdba810a 100644
--- a/Zend/tests/bug44653.phpt
+++ b/Zend/tests/bug44653.phpt
@@ -14,17 +14,13 @@ class B {
static function fooBar() { echo "bag2\n"; }
}
function fooBar() { echo __FUNCTION__ . PHP_EOL; }
-var_dump(\A\XX);
+var_dump(A::XX);
A::fooBar();
-\A\fooBar();
-B::fooBar();
fooBar();
-\B\fooBar();
+B::fooBar();
?>
--EXPECT--
int(1)
-bag1
-A\fooBar
-bag2
-B\fooBar
-B\fooBar
+A::fooBar
+B::fooBar
+B::fooBar
diff --git a/Zend/tests/class_alias_012.phpt b/Zend/tests/class_alias_012.phpt
index dd1c9b1072..01839668b8 100644
--- a/Zend/tests/class_alias_012.phpt
+++ b/Zend/tests/class_alias_012.phpt
@@ -3,31 +3,31 @@ Testing dynamic alias name
--FILE--
<?php
-namespace test\baz;
+namespace test::baz;
class foo {
}
new foo;
-class_alias(__NAMESPACE__ .'\foo', __NAMESPACE__ .'\T');
+class_alias(__NAMESPACE__ .'::foo', __NAMESPACE__ .'::T');
var_dump(new foo);
var_dump(new T);
-$var = __NAMESPACE__ .'\foo';
+$var = __NAMESPACE__ .'::foo';
var_dump(new $var);
-$var = __NAMESPACE__ .'\T';
+$var = __NAMESPACE__ .'::T';
var_dump(new $var);
?>
--EXPECTF--
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
diff --git a/Zend/tests/class_alias_013.phpt b/Zend/tests/class_alias_013.phpt
index 4991d0fd31..d032e26541 100644
--- a/Zend/tests/class_alias_013.phpt
+++ b/Zend/tests/class_alias_013.phpt
@@ -3,24 +3,24 @@ Testing alias of alias
--FILE--
<?php
-namespace test\baz;
+namespace test::baz;
class foo {
}
new foo;
-$alias1 = __NAMESPACE__ .'\T';
-class_alias(__NAMESPACE__ .'\foo', $alias1);
+$alias1 = __NAMESPACE__ .'::T';
+class_alias(__NAMESPACE__ .'::foo', $alias1);
-$alias2 = $alias1 .'\BAR';
+$alias2 = $alias1 .'::BAR';
class_alias($alias1, $alias2);
-var_dump(new \test\baz\foo, new \test\baz\T\BAR);
+var_dump(new test::baz::foo, new test::baz::T::BAR);
?>
--EXPECTF--
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
-object(test\baz\foo)#%d (0) {
+object(test::baz::foo)#%d (0) {
}
diff --git a/Zend/tests/class_alias_015.phpt b/Zend/tests/class_alias_015.phpt
index c79c077187..d694e10752 100644
--- a/Zend/tests/class_alias_015.phpt
+++ b/Zend/tests/class_alias_015.phpt
@@ -8,11 +8,11 @@ namespace foo;
class bar {
}
-class_alias('foo\bar', 'foo\baz');
+class_alias('foo::bar', 'foo::baz');
-var_dump(new namespace\baz);
+var_dump(new namespace::baz);
?>
--EXPECTF--
-object(foo\bar)#%d (0) {
+object(foo::bar)#%d (0) {
}
diff --git a/Zend/tests/class_alias_016.phpt b/Zend/tests/class_alias_016.phpt
index 930f2ee0e4..6e5c0093e8 100644
--- a/Zend/tests/class_alias_016.phpt
+++ b/Zend/tests/class_alias_016.phpt
@@ -8,14 +8,14 @@ namespace foo;
class bar {
}
-class_alias('foo\bar', 'foo');
+class_alias('foo::bar', 'foo');
-var_dump(new \foo);
+var_dump(new ::foo);
var_dump(new foo);
?>
--EXPECTF--
-object(foo\bar)#%d (0) {
+object(foo::bar)#%d (0) {
}
-Fatal error: Class 'foo\foo' not found in %s on line %d
+Fatal error: Class 'foo::foo' not found in %s on line %d
diff --git a/Zend/tests/class_alias_019.phpt b/Zend/tests/class_alias_019.phpt
index a0dd249d55..4bcc5d9d0c 100644
--- a/Zend/tests/class_alias_019.phpt
+++ b/Zend/tests/class_alias_019.phpt
@@ -9,8 +9,8 @@ namespace foo;
class foo {
}
-class_alias(__NAMESPACE__ .'\foo', 'foo');
-class_alias('\foo', 'foo');
+class_alias(__NAMESPACE__ .'::foo', 'foo');
+class_alias('::foo', 'foo');
?>
--EXPECTF--
diff --git a/Zend/tests/class_alias_020.phpt b/Zend/tests/class_alias_020.phpt
index e2c7d9245e..1c2452cd7f 100644
--- a/Zend/tests/class_alias_020.phpt
+++ b/Zend/tests/class_alias_020.phpt
@@ -9,25 +9,25 @@ namespace foo;
class foo {
}
-class_alias(__NAMESPACE__ .'\foo', 'foo');
+class_alias(__NAMESPACE__ .'::foo', 'foo');
-namespace foo\bar;
+namespace foo::bar;
class foo {
}
-class_alias(__NAMESPACE__ .'\foo', 'bar');
+class_alias(__NAMESPACE__ .'::foo', 'bar');
-var_dump(new \foo, new \bar);
+var_dump(new ::foo, new ::bar);
-var_dump(new \foo\foo, new \foo\bar);
+var_dump(new foo::foo, new foo::bar);
?>
--EXPECTF--
-object(foo\foo)#1 (0) {
+object(foo::foo)#1 (0) {
}
-object(foo\bar\foo)#2 (0) {
+object(foo::bar::foo)#2 (0) {
}
-Fatal error: Class 'foo\bar' not found in %s on line %d
+Fatal error: Class 'foo::bar' not found in %s on line %d
diff --git a/Zend/tests/class_alias_021.phpt b/Zend/tests/class_alias_021.phpt
index dd90e127f4..79049623f0 100644
--- a/Zend/tests/class_alias_021.phpt
+++ b/Zend/tests/class_alias_021.phpt
@@ -7,19 +7,19 @@ namespace foo;
class bar { }
-class_alias('foo\bar', 'baz');
+class_alias('foo::bar', 'baz');
-use \baz as stdClass;
+use ::baz as stdClass;
-var_dump(new bar);
+var_dump(new foo::bar);
var_dump(new stdClass);
-var_dump(new \baz);
+var_dump(new ::baz);
?>
--EXPECTF--
-object(foo\bar)#%d (0) {
+object(foo::bar)#%d (0) {
}
-object(foo\bar)#%d (0) {
+object(foo::bar)#%d (0) {
}
-object(foo\bar)#%d (0) {
+object(foo::bar)#%d (0) {
}
diff --git a/Zend/tests/class_constants_004.phpt b/Zend/tests/class_constants_004.phpt
index 73a42ede7a..104ceb1bb6 100644
--- a/Zend/tests/class_constants_004.phpt
+++ b/Zend/tests/class_constants_004.phpt
@@ -17,15 +17,15 @@ interface Ifoo {
const foo = 4;
}
-$const = __NAMESPACE__ .'\\foo'; // class
-$const2 = __NAMESPACE__ .'\\Ifoo'; // interface
+$const = __NAMESPACE__ .'::foo'; // class
+$const2 = __NAMESPACE__ .'::Ifoo'; // interface
var_dump( foo,
- \foo\foo,
- namespace\foo,
- \foo\foo::foo,
+ foo::foo,
+ namespace::foo,
+ foo::foo::foo,
$const::foo,
- \foo,
+ ::foo,
constant('foo'),
Ifoo::foo,
$const2::foo
diff --git a/Zend/tests/class_exists_001.phpt b/Zend/tests/class_exists_001.phpt
index 8af96a49fc..4ee1ee2925 100644
--- a/Zend/tests/class_exists_001.phpt
+++ b/Zend/tests/class_exists_001.phpt
@@ -9,13 +9,13 @@ class foo {
}
-class_alias(__NAMESPACE__ .'\foo', 'bar');
+class_alias(__NAMESPACE__ .'::foo', 'bar');
-var_dump(class_exists('\bar'));
+var_dump(class_exists('::bar'));
var_dump(class_exists('bar'));
-var_dump(class_exists('foo\bar'));
-var_dump(class_exists('foo\foo'));
+var_dump(class_exists('foo::bar'));
+var_dump(class_exists('foo::foo'));
var_dump(class_exists('foo'));
?>
diff --git a/Zend/tests/closure_027.phpt b/Zend/tests/closure_027.phpt
index f26e114045..7787f729e5 100644
--- a/Zend/tests/closure_027.phpt
+++ b/Zend/tests/closure_027.phpt
@@ -25,7 +25,7 @@ NULL
Notice: Undefined variable: y in %s on line %d
-Warning: Missing argument 1 for {closure}(), called in %s on line %d and defined in %s on line %d
+Warning: Missing argument 1 for (), called in %s on line %d and defined in %s on line %d
NULL
Catchable fatal error: Argument 1 passed to test() must be an instance of Closure, instance of stdClass given, called in %s on line %d and defined in %s on line %d
diff --git a/Zend/tests/constants_003.phpt b/Zend/tests/constants_003.phpt
index 205f95f036..ec3eb6d4ff 100644
--- a/Zend/tests/constants_003.phpt
+++ b/Zend/tests/constants_003.phpt
@@ -9,7 +9,7 @@ const foo = 1;
define('foo', 2);
-var_dump(foo, namespace\foo, \foo\foo, \foo, constant('foo'), constant('foo\foo'));
+var_dump(foo, namespace::foo, foo::foo, ::foo, constant('foo'), constant('foo::foo'));
?>
--EXPECT--
diff --git a/Zend/tests/constants_004.phpt b/Zend/tests/constants_004.phpt
index 69369aa3d9..787ec26e72 100644
--- a/Zend/tests/constants_004.phpt
+++ b/Zend/tests/constants_004.phpt
@@ -10,4 +10,4 @@ const foo = 2;
?>
--EXPECTF--
-Notice: Constant foo\foo already defined in %s on line %d
+Notice: Constant foo::foo already defined in %s on line %d
diff --git a/Zend/tests/constants_006.phpt b/Zend/tests/constants_006.phpt
index 6458a07825..24851531bc 100644
--- a/Zend/tests/constants_006.phpt
+++ b/Zend/tests/constants_006.phpt
@@ -26,7 +26,7 @@ var_dump(__namespace__);
string(%d) "%s"
string(%d) "%s"
int(%d)
-string(21) "test\foo::__construct"
-string(8) "test\foo"
+string(22) "test::foo::__construct"
+string(9) "test::foo"
string(11) "__construct"
string(4) "test"
diff --git a/Zend/tests/constants_009.phpt b/Zend/tests/constants_009.phpt
index ea986dd3c7..c84760be81 100644
--- a/Zend/tests/constants_009.phpt
+++ b/Zend/tests/constants_009.phpt
@@ -3,7 +3,7 @@ Accessing constants inside namespace
--FILE--
<?php
-namespace foo\x;
+namespace foo::x;
const x = 2;
@@ -12,10 +12,8 @@ class x {
}
-var_dump(namespace\x,
-x::x,
-namespace\x::x);
-var_dump(defined('foo\x\x'));
+var_dump(namespace::x, x::x, namespace::x::x);
+var_dump(defined('foo::x::x'));
?>
--EXPECT--
diff --git a/Zend/tests/hex_overflow_32bit.phpt b/Zend/tests/hex_overflow_32bit.phpt
index 0f192f3497..36e9a7e9d3 100644
--- a/Zend/tests/hex_overflow_32bit.phpt
+++ b/Zend/tests/hex_overflow_32bit.phpt
@@ -22,7 +22,7 @@ foreach ($doubles as $d) {
echo "Done\n";
?>
--EXPECTF--
-float(4.0833602971%dE+14)
+float(4083360297110%d)
float(4.7223664828%dE+21)
float(1.3521606402%dE+31)
float(1.9807040628%dE+27)
diff --git a/Zend/tests/inter_02.phpt b/Zend/tests/inter_02.phpt
index 34e8baa5dc..18db230b21 100644
--- a/Zend/tests/inter_02.phpt
+++ b/Zend/tests/inter_02.phpt
@@ -11,7 +11,7 @@ interface foo {
const foo = 2;
}
-function foo($x = \foo\foo::foo) {
+function foo($x = foo::foo::foo) {
var_dump($x);
}
diff --git a/Zend/tests/interface_exists_002.phpt b/Zend/tests/interface_exists_002.phpt
index be78784d55..f4d8a03cd8 100644
--- a/Zend/tests/interface_exists_002.phpt
+++ b/Zend/tests/interface_exists_002.phpt
@@ -13,8 +13,8 @@ interface IBar extends IFoo { }
var_dump(interface_exists('IFoo'));
-var_dump(interface_exists('foo\\IFoo'));
-var_dump(interface_exists('FOO\\ITEST'));
+var_dump(interface_exists('foo::IFoo'));
+var_dump(interface_exists('FOO::ITEST'));
?>
--EXPECT--
diff --git a/Zend/tests/lsb_014.phpt b/Zend/tests/lsb_014.phpt
index 19cf913710..34ee7b48ce 100644
--- a/Zend/tests/lsb_014.phpt
+++ b/Zend/tests/lsb_014.phpt
@@ -1,5 +1,5 @@
---TEST--
-ZE2 Late Static Binding access to static::const through defined() and get_constant()
+--TEST--
+ZE2 Late Static Binding access to static::const through defined() anf get_constant()
--FILE--
<?php
diff --git a/Zend/tests/ns_001.phpt b/Zend/tests/ns_001.phpt
index 67715947af..6821756a43 100755
--- a/Zend/tests/ns_001.phpt
+++ b/Zend/tests/ns_001.phpt
@@ -2,7 +2,7 @@
001: Class in namespace
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Foo {
@@ -22,13 +22,13 @@ class Foo {
$x = new Foo;
$x->bar();
Foo::baz();
-$y = new \test\ns1\Foo;
+$y = new test::ns1::Foo;
$y->bar();
-\test\ns1\Foo::baz();
+test::ns1::Foo::baz();
--EXPECT--
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
diff --git a/Zend/tests/ns_002.phpt b/Zend/tests/ns_002.phpt
index 3d9e09869d..7faca97cd3 100755
--- a/Zend/tests/ns_002.phpt
+++ b/Zend/tests/ns_002.phpt
@@ -2,7 +2,7 @@
002: Import in namespace
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Foo {
static function bar() {
@@ -10,18 +10,18 @@ class Foo {
}
}
-use test\ns1\Foo as Bar;
-use test\ns1 as ns2;
-use test\ns1;
+use test::ns1::Foo as Bar;
+use test::ns1 as ns2;
+use test::ns1;
Foo::bar();
-\test\ns1\Foo::bar();
+test::ns1::Foo::bar();
Bar::bar();
-ns2\Foo::bar();
-ns1\Foo::bar();
+ns2::Foo::bar();
+ns1::Foo::bar();
--EXPECT--
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
-test\ns1\Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
+test::ns1::Foo
diff --git a/Zend/tests/ns_003.phpt b/Zend/tests/ns_003.phpt
index 4372722c25..26c21a9ff0 100755
--- a/Zend/tests/ns_003.phpt
+++ b/Zend/tests/ns_003.phpt
@@ -2,11 +2,11 @@
003: Name conflict (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Exception {
}
echo get_class(new Exception()),"\n";
--EXPECT--
-test\ns1\Exception
+test::ns1::Exception
diff --git a/Zend/tests/ns_004.phpt b/Zend/tests/ns_004.phpt
index d293f65dce..2aa4a809d9 100755
--- a/Zend/tests/ns_004.phpt
+++ b/Zend/tests/ns_004.phpt
@@ -1,9 +1,9 @@
--TEST--
-004: Using global class name from namespace (unqualified - fail)
+004: Name conflict (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
echo get_class(new Exception()),"\n";
---EXPECTF--
-Fatal error: Class 'test\ns1\Exception' not found in %sns_004.php on line %d \ No newline at end of file
+--EXPECT--
+Exception
diff --git a/Zend/tests/ns_005.phpt b/Zend/tests/ns_005.phpt
index c082afc481..fc1d6570fd 100755
--- a/Zend/tests/ns_005.phpt
+++ b/Zend/tests/ns_005.phpt
@@ -2,11 +2,11 @@
005: Name conflict (php name in case if ns name exists)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Exception {
}
-echo get_class(new \Exception()),"\n";
+echo get_class(new ::Exception()),"\n";
--EXPECT--
Exception
diff --git a/Zend/tests/ns_006.phpt b/Zend/tests/ns_006.phpt
index 1c0ec3ab08..f4027408d4 100755
--- a/Zend/tests/ns_006.phpt
+++ b/Zend/tests/ns_006.phpt
@@ -2,12 +2,12 @@
006: Run-time name conflict (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Exception {
}
-$x = "test\\ns1\\Exception";
+$x = "test::ns1::Exception";
echo get_class(new $x),"\n";
--EXPECT--
-test\ns1\Exception
+test::ns1::Exception
diff --git a/Zend/tests/ns_007.phpt b/Zend/tests/ns_007.phpt
index 2f4d1361dc..60ccced504 100755
--- a/Zend/tests/ns_007.phpt
+++ b/Zend/tests/ns_007.phpt
@@ -2,7 +2,7 @@
007: Run-time name conflict (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Exception {
}
diff --git a/Zend/tests/ns_008.phpt b/Zend/tests/ns_008.phpt
index 2c2c9180cf..1c0d116483 100755
--- a/Zend/tests/ns_008.phpt
+++ b/Zend/tests/ns_008.phpt
@@ -7,7 +7,7 @@ namespace test;
class foo {
}
-$x = __NAMESPACE__ . "\\foo";
+$x = __NAMESPACE__ . "::foo";
echo get_class(new $x),"\n";
--EXPECT--
-test\foo
+test::foo
diff --git a/Zend/tests/ns_009.phpt b/Zend/tests/ns_009.phpt
index 3481316f28..3d6aa225d6 100755
--- a/Zend/tests/ns_009.phpt
+++ b/Zend/tests/ns_009.phpt
@@ -5,7 +5,7 @@
class foo {
}
-$x = __NAMESPACE__ . "\\foo";
+$x = __NAMESPACE__ . "::foo";
echo get_class(new $x),"\n";
--EXPECT--
foo
diff --git a/Zend/tests/ns_010.phpt b/Zend/tests/ns_010.phpt
index 28ef61bcdd..95172e0ec3 100755
--- a/Zend/tests/ns_010.phpt
+++ b/Zend/tests/ns_010.phpt
@@ -15,27 +15,35 @@ class Foo {
}
}
new Foo();
-new Y\Foo();
-new \X\Foo();
+new X::Foo();
+new Y::Foo();
+new ::X::Foo();
Foo::bar();
-Y\Foo::bar();
-\X\Foo::bar();
+X::Foo::bar();
+Y::Foo::bar();
+::X::Foo::bar();
echo Foo::C;
-echo Y\Foo::C;
-echo \X\Foo::C;
+echo X::Foo::C;
+echo Y::Foo::C;
+echo ::X::Foo::C;
echo Foo::$var;
-echo Y\Foo::$var;
-echo \X\Foo::$var;
+echo X::Foo::$var;
+echo Y::Foo::$var;
+echo ::X::Foo::$var;
--EXPECT--
class ok
class ok
class ok
+class ok
+method ok
method ok
method ok
method ok
const ok
const ok
const ok
+const ok
+var ok
var ok
var ok
var ok
diff --git a/Zend/tests/ns_011.phpt b/Zend/tests/ns_011.phpt
index 1706f2a00d..c1d9ac3018 100755
--- a/Zend/tests/ns_011.phpt
+++ b/Zend/tests/ns_011.phpt
@@ -2,23 +2,23 @@
011: Function in namespace
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function foo() {
echo __FUNCTION__,"\n";
}
foo();
-\test\ns1\foo();
+test::ns1::foo();
bar();
-\test\ns1\bar();
+test::ns1::bar();
function bar() {
echo __FUNCTION__,"\n";
}
--EXPECT--
-test\ns1\foo
-test\ns1\foo
-test\ns1\bar
-test\ns1\bar
+test::ns1::foo
+test::ns1::foo
+test::ns1::bar
+test::ns1::bar
diff --git a/Zend/tests/ns_012.phpt b/Zend/tests/ns_012.phpt
index 034f124924..ce16db1ab9 100755
--- a/Zend/tests/ns_012.phpt
+++ b/Zend/tests/ns_012.phpt
@@ -2,34 +2,34 @@
012: Import in namespace and functions
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function foo() {
echo __FUNCTION__,"\n";
}
-use test\ns1 as ns2;
+use test::ns1 as ns2;
use test as ns3;
foo();
bar();
-\test\ns1\foo();
-\test\ns1\bar();
-ns2\foo();
-ns2\bar();
-ns3\ns1\foo();
-ns3\ns1\bar();
+test::ns1::foo();
+test::ns1::bar();
+ns2::foo();
+ns2::bar();
+ns3::ns1::foo();
+ns3::ns1::bar();
function bar() {
echo __FUNCTION__,"\n";
}
--EXPECT--
-test\ns1\foo
-test\ns1\bar
-test\ns1\foo
-test\ns1\bar
-test\ns1\foo
-test\ns1\bar
-test\ns1\foo
-test\ns1\bar
+test::ns1::foo
+test::ns1::bar
+test::ns1::foo
+test::ns1::bar
+test::ns1::foo
+test::ns1::bar
+test::ns1::foo
+test::ns1::bar
diff --git a/Zend/tests/ns_013.phpt b/Zend/tests/ns_013.phpt
index ef73b1395f..945b6bc4ec 100755
--- a/Zend/tests/ns_013.phpt
+++ b/Zend/tests/ns_013.phpt
@@ -2,7 +2,7 @@
013: Name conflict and functions (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function strlen($x) {
return __FUNCTION__;
@@ -10,4 +10,4 @@ function strlen($x) {
echo strlen("Hello"),"\n";
--EXPECT--
-test\ns1\strlen
+test::ns1::strlen
diff --git a/Zend/tests/ns_014.phpt b/Zend/tests/ns_014.phpt
index 6bcab51c83..9614b481a4 100755
--- a/Zend/tests/ns_014.phpt
+++ b/Zend/tests/ns_014.phpt
@@ -2,7 +2,7 @@
014: Name conflict and functions (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
echo strlen("Hello"),"\n";
--EXPECT--
diff --git a/Zend/tests/ns_015.phpt b/Zend/tests/ns_015.phpt
index ae2c818345..1ad05b963f 100755
--- a/Zend/tests/ns_015.phpt
+++ b/Zend/tests/ns_015.phpt
@@ -2,13 +2,13 @@
015: Name conflict and functions (php name in case if ns name exists)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function strlen($x) {
return __FUNCTION__;
}
-echo \strlen("Hello"),"\n";
+echo ::strlen("Hello"),"\n";
--EXPECT--
5
diff --git a/Zend/tests/ns_016.phpt b/Zend/tests/ns_016.phpt
index bee8b5bee3..e278625e61 100755
--- a/Zend/tests/ns_016.phpt
+++ b/Zend/tests/ns_016.phpt
@@ -2,13 +2,13 @@
016: Run-time name conflict and functions (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function strlen($x) {
return __FUNCTION__;
}
-$x = "test\\ns1\\strlen";
+$x = "test::ns1::strlen";
echo $x("Hello"),"\n";
--EXPECT--
-test\ns1\strlen
+test::ns1::strlen
diff --git a/Zend/tests/ns_017.phpt b/Zend/tests/ns_017.phpt
index 888d8e5ef4..15ff1efee8 100755
--- a/Zend/tests/ns_017.phpt
+++ b/Zend/tests/ns_017.phpt
@@ -2,7 +2,7 @@
017: Run-time name conflict and functions (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function strlen($x) {
return __FUNCTION__;
diff --git a/Zend/tests/ns_018.phpt b/Zend/tests/ns_018.phpt
index 5c2495c631..be8b4b7d34 100755
--- a/Zend/tests/ns_018.phpt
+++ b/Zend/tests/ns_018.phpt
@@ -8,7 +8,7 @@ function foo() {
return __FUNCTION__;
}
-$x = __NAMESPACE__ . "\\foo";
+$x = __NAMESPACE__ . "::foo";
echo $x(),"\n";
--EXPECT--
-test\foo
+test::foo
diff --git a/Zend/tests/ns_019.phpt b/Zend/tests/ns_019.phpt
index c3db786867..c42e97ed18 100755
--- a/Zend/tests/ns_019.phpt
+++ b/Zend/tests/ns_019.phpt
@@ -6,7 +6,7 @@ function foo() {
return __FUNCTION__;
}
-$x = __NAMESPACE__ . "\\foo";
+$x = __NAMESPACE__ . "::foo";
echo $x(),"\n";
--EXPECT--
foo
diff --git a/Zend/tests/ns_020.phpt b/Zend/tests/ns_020.phpt
index ec4fda0298..9d2e8a7ccb 100755
--- a/Zend/tests/ns_020.phpt
+++ b/Zend/tests/ns_020.phpt
@@ -8,11 +8,11 @@ function foo() {
echo __FUNCTION__,"\n";
}
foo();
-\X\foo();
-Y\foo();
-\X\foo();
+X::foo();
+Y::foo();
+::X::foo();
--EXPECT--
-X\foo
-X\foo
-X\foo
-X\foo
+X::foo
+X::foo
+X::foo
+X::foo
diff --git a/Zend/tests/ns_021.phpt b/Zend/tests/ns_021.phpt
index 405468399f..01609bb607 100755
--- a/Zend/tests/ns_021.phpt
+++ b/Zend/tests/ns_021.phpt
@@ -15,9 +15,9 @@ function foo() {
}
foo();
-\test\foo();
-\test\test::foo();
+test::foo();
+test::test::foo();
--EXPECT--
-test\foo
-test\foo
-test\Test::foo
+test::foo
+test::foo
+test::Test::foo
diff --git a/Zend/tests/ns_022.phpt b/Zend/tests/ns_022.phpt
index 7aebe1d5a2..6944ca403f 100755
--- a/Zend/tests/ns_022.phpt
+++ b/Zend/tests/ns_022.phpt
@@ -2,9 +2,9 @@
022: Name search priority (first look into import, then into current namespace and then for class)
--FILE--
<?php
-namespace a\b\c;
+namespace a::b::c;
-use a\b\c as test;
+use a::b::c as test;
require "ns_022.inc";
@@ -12,8 +12,8 @@ function foo() {
echo __FUNCTION__,"\n";
}
-test\foo();
-\test::foo();
+test::foo();
+::test::foo();
--EXPECT--
-a\b\c\foo
+a::b::c::foo
Test::foo
diff --git a/Zend/tests/ns_023.phpt b/Zend/tests/ns_023.phpt
index bc1681c122..4be9dc700a 100755
--- a/Zend/tests/ns_023.phpt
+++ b/Zend/tests/ns_023.phpt
@@ -2,10 +2,10 @@
023: __NAMESPACE__ constant
--FILE--
<?php
-namespace test\foo;
+namespace test::foo;
var_dump(__NAMESPACE__);
--EXPECT--
-string(8) "test\foo"
+string(9) "test::foo"
--UEXPECT--
-unicode(8) "test\foo"
+unicode(9) "test::foo"
diff --git a/Zend/tests/ns_025.phpt b/Zend/tests/ns_025.phpt
index 917a710d95..e5c8ab0044 100755
--- a/Zend/tests/ns_025.phpt
+++ b/Zend/tests/ns_025.phpt
@@ -2,7 +2,7 @@
025: Name ambiguity (class name & part of namespace name)
--FILE--
<?php
-namespace Foo\Bar;
+namespace Foo::Bar;
class Foo {
function __construct() {
@@ -15,10 +15,10 @@ class Foo {
$x = new Foo;
Foo::Bar();
-$x = new \Foo\Bar\Foo;
-\Foo\Bar\Foo::Bar();
+$x = new Foo::Bar::Foo;
+Foo::Bar::Foo::Bar();
--EXPECT--
-Foo\Bar\Foo
-Foo\Bar\Foo
-Foo\Bar\Foo
-Foo\Bar\Foo
+Foo::Bar::Foo
+Foo::Bar::Foo
+Foo::Bar::Foo
+Foo::Bar::Foo
diff --git a/Zend/tests/ns_026.phpt b/Zend/tests/ns_026.phpt
index af2bf2ca55..ad8654db5f 100755
--- a/Zend/tests/ns_026.phpt
+++ b/Zend/tests/ns_026.phpt
@@ -18,16 +18,13 @@ function Bar() {
}
$x = new Foo;
-\Foo\Bar();
-$x = new \Foo\Foo;
-\Foo\Foo::Bar();
-\Foo\Bar();
-Foo\Bar();
---EXPECTF--
-Method - Foo\Foo::__construct
-Func - Foo\Bar
-Method - Foo\Foo::__construct
-Method - Foo\Foo::Bar
-Func - Foo\Bar
-
-Fatal error: Call to undefined function Foo\Foo\Bar() in %sns_026.php on line %d \ No newline at end of file
+Foo::Bar();
+$x = new Foo::Foo;
+Foo::Foo::Bar();
+::Foo::Bar();
+--EXPECT--
+Method - Foo::Foo::__construct
+Func - Foo::Bar
+Method - Foo::Foo::__construct
+Method - Foo::Foo::Bar
+Func - Foo::Bar
diff --git a/Zend/tests/ns_027.inc b/Zend/tests/ns_027.inc
index 3823818290..014bc40552 100755
--- a/Zend/tests/ns_027.inc
+++ b/Zend/tests/ns_027.inc
@@ -1,5 +1,5 @@
<?php
-namespace Foo\Bar;
+namespace Foo::Bar;
class Foo {
function __construct() {
diff --git a/Zend/tests/ns_027.phpt b/Zend/tests/ns_027.phpt
index 88ef22f93b..064d0521f9 100755
--- a/Zend/tests/ns_027.phpt
+++ b/Zend/tests/ns_027.phpt
@@ -15,10 +15,10 @@ class Foo {
$x = new Foo;
Foo::Bar();
-$x = new Foo\Bar\Foo;
-Foo\Bar\Foo::Bar();
+$x = new Foo::Bar::Foo;
+Foo::Bar::Foo::Bar();
--EXPECT--
Foo
Foo
-Foo\Bar\Foo
-Foo\Bar\Foo
+Foo::Bar::Foo
+Foo::Bar::Foo
diff --git a/Zend/tests/ns_028.phpt b/Zend/tests/ns_028.phpt
index ec23dac818..1b34a594b1 100755
--- a/Zend/tests/ns_028.phpt
+++ b/Zend/tests/ns_028.phpt
@@ -14,13 +14,13 @@ class Foo {
}
$x = new Foo;
-Foo\Bar();
-$x = new Foo\Foo;
-Foo\Foo::Bar();
-\Foo\Bar();
+Foo::Bar();
+$x = new Foo::Foo;
+Foo::Foo::Bar();
+::Foo::Bar();
--EXPECT--
Method - Foo::__construct
-Func - Foo\Bar
-Method - Foo\Foo::__construct
-Method - Foo\Foo::Bar
-Func - Foo\Bar
+Func - Foo::Bar
+Method - Foo::Foo::__construct
+Method - Foo::Foo::Bar
+Func - Foo::Bar
diff --git a/Zend/tests/ns_029.phpt b/Zend/tests/ns_029.phpt
index f1aa954ae3..d719e9e7cf 100755
--- a/Zend/tests/ns_029.phpt
+++ b/Zend/tests/ns_029.phpt
@@ -2,7 +2,7 @@
029: Name ambiguity (class name & import name)
--FILE--
<?php
-use A\B as Foo;
+use A::B as Foo;
class Foo {
}
diff --git a/Zend/tests/ns_030.phpt b/Zend/tests/ns_030.phpt
index 69724159ee..8aa3223f7e 100755
--- a/Zend/tests/ns_030.phpt
+++ b/Zend/tests/ns_030.phpt
@@ -5,8 +5,8 @@
class Foo {
}
-use A\B as Foo;
+use A::B as Foo;
new Foo();
--EXPECTF--
-Fatal error: Cannot use A\B as Foo because the name is already in use in %sns_030.php on line 5
+Fatal error: Cannot use A::B as Foo because the name is already in use in %sns_030.php on line 5
diff --git a/Zend/tests/ns_031.phpt b/Zend/tests/ns_031.phpt
index 840c08621c..3991c5a107 100755
--- a/Zend/tests/ns_031.phpt
+++ b/Zend/tests/ns_031.phpt
@@ -14,8 +14,8 @@ function foo() {
echo __FUNCTION__,"\n";
}
-call_user_func(__NAMESPACE__."\\foo");
-call_user_func(__NAMESPACE__."\\test::foo");
+call_user_func(__NAMESPACE__."::foo");
+call_user_func(__NAMESPACE__."::test::foo");
--EXPECT--
-test\foo
-test\Test::foo
+test::foo
+test::Test::foo
diff --git a/Zend/tests/ns_032.phpt b/Zend/tests/ns_032.phpt
index 5717a33685..86b24fcdc4 100755
--- a/Zend/tests/ns_032.phpt
+++ b/Zend/tests/ns_032.phpt
@@ -12,8 +12,8 @@ function foo() {
echo __FUNCTION__,"\n";
}
-call_user_func(__NAMESPACE__."\\foo");
-call_user_func(__NAMESPACE__."\\test::foo");
+call_user_func(__NAMESPACE__."::foo");
+call_user_func(__NAMESPACE__."::test::foo");
--EXPECT--
foo
Test::foo
diff --git a/Zend/tests/ns_034.phpt b/Zend/tests/ns_034.phpt
index 76775f1180..f8669cfb74 100755
--- a/Zend/tests/ns_034.phpt
+++ b/Zend/tests/ns_034.phpt
@@ -10,18 +10,23 @@ class Foo {
function f1($x=Foo::C) {
echo $x;
}
-function f2($x=B\Foo::C) {
+function f2($x=A::Foo::C) {
echo $x;
}
-function f3($x=\A\Foo::C) {
+function f3($x=B::Foo::C) {
+ echo $x;
+}
+function f4($x=::A::Foo::C) {
echo $x;
}
echo Foo::C;
-echo B\Foo::C;
-echo \A\Foo::C;
+echo A::Foo::C;
+echo B::Foo::C;
+echo ::A::Foo::C;
f1();
f2();
f3();
+f4();
--EXPECT--
ok
ok
@@ -29,3 +34,5 @@ ok
ok
ok
ok
+ok
+ok
diff --git a/Zend/tests/ns_035.phpt b/Zend/tests/ns_035.phpt
index fcc771a74e..259d17f6e3 100755
--- a/Zend/tests/ns_035.phpt
+++ b/Zend/tests/ns_035.phpt
@@ -5,16 +5,14 @@
--FILE--
<?php
namespace A;
-use \ArrayObject;
-
function f1($x = ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
-function f2($x = \ArrayObject::STD_PROP_LIST) {
+function f2($x = ::ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
var_dump(ArrayObject::STD_PROP_LIST);
-var_dump(\ArrayObject::STD_PROP_LIST);
+var_dump(::ArrayObject::STD_PROP_LIST);
f1();
f2();
diff --git a/Zend/tests/ns_036.phpt b/Zend/tests/ns_036.phpt
index 245cf7d5b5..6fee2cb006 100755
--- a/Zend/tests/ns_036.phpt
+++ b/Zend/tests/ns_036.phpt
@@ -12,23 +12,28 @@ class ArrayObject {
function f1($x = ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
-function f2($x = \ArrayObject::STD_PROP_LIST) {
+function f2($x = ::ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
-function f3($x = \A\ArrayObject::STD_PROP_LIST) {
+function f3($x = A::ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
-function f4($x = B\ArrayObject::STD_PROP_LIST) {
+function f4($x = B::ArrayObject::STD_PROP_LIST) {
+ var_dump($x);
+}
+function f5($x = ::A::ArrayObject::STD_PROP_LIST) {
var_dump($x);
}
var_dump(ArrayObject::STD_PROP_LIST);
-var_dump(\ArrayObject::STD_PROP_LIST);
-var_dump(B\ArrayObject::STD_PROP_LIST);
-var_dump(\A\ArrayObject::STD_PROP_LIST);
+var_dump(::ArrayObject::STD_PROP_LIST);
+var_dump(A::ArrayObject::STD_PROP_LIST);
+var_dump(B::ArrayObject::STD_PROP_LIST);
+var_dump(::A::ArrayObject::STD_PROP_LIST);
f1();
f2();
f3();
f4();
+f5();
?>
--EXPECT--
int(2)
@@ -36,6 +41,8 @@ int(1)
int(2)
int(2)
int(2)
+int(2)
int(1)
int(2)
int(2)
+int(2)
diff --git a/Zend/tests/ns_037.phpt b/Zend/tests/ns_037.phpt
index db0a76e940..ed36e0bb57 100755
--- a/Zend/tests/ns_037.phpt
+++ b/Zend/tests/ns_037.phpt
@@ -15,27 +15,35 @@ class X {
}
}
new X();
-new Y\X();
-new \X\X();
+new X::X();
+new Y::X();
+new ::X::X();
X::bar();
-Y\X::bar();
-\X\X::bar();
+X::X::bar();
+Y::X::bar();
+::X::X::bar();
echo X::C;
-echo Y\X::C;
-echo \X\X::C;
+echo X::X::C;
+echo Y::X::C;
+echo ::X::X::C;
echo X::$var;
-echo Y\X::$var;
-echo \X\X::$var;
+echo X::X::$var;
+echo Y::X::$var;
+echo ::X::X::$var;
--EXPECT--
class ok
class ok
class ok
+class ok
+method ok
method ok
method ok
method ok
const ok
const ok
const ok
+const ok
+var ok
var ok
var ok
var ok
diff --git a/Zend/tests/ns_038.phpt b/Zend/tests/ns_038.phpt
index f3a8c8cc63..fcaa3c4454 100755
--- a/Zend/tests/ns_038.phpt
+++ b/Zend/tests/ns_038.phpt
@@ -6,8 +6,8 @@ namespace Exception;
function foo() {
echo "ok\n";
}
-\Exception\foo();
-\Exception::bar();
+Exception::foo();
+Exception::bar();
--EXPECTF--
ok
diff --git a/Zend/tests/ns_040.phpt b/Zend/tests/ns_040.phpt
index 42a3ac07e9..fb2314466c 100644
--- a/Zend/tests/ns_040.phpt
+++ b/Zend/tests/ns_040.phpt
@@ -9,13 +9,13 @@ const B = A;
function f1($x=A) {
echo $x;
}
-function f2($x=\X\A) {
+function f2($x=X::A) {
echo $x;
}
-function f3($x=Y\A) {
+function f3($x=Y::A) {
echo $x;
}
-function f4($x=\X\A) {
+function f4($x=::X::A) {
echo $x;
}
function f5($x=B) {
@@ -31,9 +31,9 @@ function f8($x=array(A=>"aaa\n")) {
echo $x["ok\n"];
}
echo A;
-echo \X\A;
-echo Y\A;
-echo \X\A;
+echo X::A;
+echo Y::A;
+echo ::X::A;
f1();
f2();
f3();
diff --git a/Zend/tests/ns_041.phpt b/Zend/tests/ns_041.phpt
index 0632fc9815..889f3d82c9 100644
--- a/Zend/tests/ns_041.phpt
+++ b/Zend/tests/ns_041.phpt
@@ -2,13 +2,13 @@
041: Constants in namespace
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const FOO = "ok\n";
echo(FOO);
-echo(\test\ns1\FOO);
-echo(\test\ns1\FOO);
+echo(test::ns1::FOO);
+echo(::test::ns1::FOO);
echo(BAR);
const BAR = "ok\n";
diff --git a/Zend/tests/ns_042.phpt b/Zend/tests/ns_042.phpt
index ba420a7c80..eecd5f9256 100644
--- a/Zend/tests/ns_042.phpt
+++ b/Zend/tests/ns_042.phpt
@@ -2,18 +2,18 @@
042: Import in namespace and constants
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const FOO = "ok\n";
-use test\ns1 as ns2;
+use test::ns1 as ns2;
use test as ns3;
echo FOO;
-echo \test\ns1\FOO;
-echo \test\ns1\FOO;
-echo ns2\FOO;
-echo ns3\ns1\FOO;
+echo test::ns1::FOO;
+echo ::test::ns1::FOO;
+echo ns2::FOO;
+echo ns3::ns1::FOO;
--EXPECT--
ok
ok
diff --git a/Zend/tests/ns_043.phpt b/Zend/tests/ns_043.phpt
index bd5ee7440b..63bd05eaaf 100644
--- a/Zend/tests/ns_043.phpt
+++ b/Zend/tests/ns_043.phpt
@@ -2,7 +2,7 @@
043: Name conflict and constants (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
diff --git a/Zend/tests/ns_044.phpt b/Zend/tests/ns_044.phpt
index dbdee2e523..d379b97a24 100644
--- a/Zend/tests/ns_044.phpt
+++ b/Zend/tests/ns_044.phpt
@@ -2,7 +2,7 @@
044: Name conflict and constants (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
var_dump(INI_ALL);
--EXPECT--
diff --git a/Zend/tests/ns_045.phpt b/Zend/tests/ns_045.phpt
index d45f9cf99d..d8c942948e 100644
--- a/Zend/tests/ns_045.phpt
+++ b/Zend/tests/ns_045.phpt
@@ -2,10 +2,10 @@
045: Name conflict and constants (php name in case if ns name exists)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
-var_dump(\INI_ALL);
+var_dump(::INI_ALL);
--EXPECT--
int(7)
diff --git a/Zend/tests/ns_046.phpt b/Zend/tests/ns_046.phpt
index d5203f14dc..e48f0cef24 100644
--- a/Zend/tests/ns_046.phpt
+++ b/Zend/tests/ns_046.phpt
@@ -2,10 +2,10 @@
046: Run-time name conflict and constants (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
-var_dump(constant("test\\ns1\\INI_ALL"));
+var_dump(constant("test::ns1::INI_ALL"));
--EXPECT--
int(0)
diff --git a/Zend/tests/ns_047.phpt b/Zend/tests/ns_047.phpt
index 73e32a0de7..89795da256 100644
--- a/Zend/tests/ns_047.phpt
+++ b/Zend/tests/ns_047.phpt
@@ -2,7 +2,7 @@
047: Run-time name conflict and constants (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
diff --git a/Zend/tests/ns_048.phpt b/Zend/tests/ns_048.phpt
index db21f89103..3837643cf2 100644
--- a/Zend/tests/ns_048.phpt
+++ b/Zend/tests/ns_048.phpt
@@ -2,10 +2,10 @@
048: __NAMESPACE__ constant and runtime names (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const FOO = 0;
-var_dump(constant(__NAMESPACE__ . "\\FOO"));
+var_dump(constant(__NAMESPACE__ . "::FOO"));
--EXPECT--
int(0)
diff --git a/Zend/tests/ns_049.phpt b/Zend/tests/ns_049.phpt
index 91e516579b..3e5ccc6783 100644
--- a/Zend/tests/ns_049.phpt
+++ b/Zend/tests/ns_049.phpt
@@ -4,6 +4,6 @@
<?php
const FOO = 0;
-var_dump(constant(__NAMESPACE__ . "\\FOO"));
+var_dump(constant(__NAMESPACE__ . "::FOO"));
--EXPECT--
int(0)
diff --git a/Zend/tests/ns_050.phpt b/Zend/tests/ns_050.phpt
index f827ec858d..9171f6c4b1 100644
--- a/Zend/tests/ns_050.phpt
+++ b/Zend/tests/ns_050.phpt
@@ -2,7 +2,7 @@
050: Name conflict and compile-time constants (ns name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
diff --git a/Zend/tests/ns_051.phpt b/Zend/tests/ns_051.phpt
index b95b53f78b..07985ba106 100644
--- a/Zend/tests/ns_051.phpt
+++ b/Zend/tests/ns_051.phpt
@@ -2,7 +2,7 @@
051: Name conflict and compile-time constants (php name)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
function foo($x = INI_ALL) {
var_dump($x);
diff --git a/Zend/tests/ns_052.phpt b/Zend/tests/ns_052.phpt
index cb0a05ff9f..1f2c4a073f 100644
--- a/Zend/tests/ns_052.phpt
+++ b/Zend/tests/ns_052.phpt
@@ -2,11 +2,11 @@
052: Name conflict and compile-time constants (php name in case if ns name exists)
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
const INI_ALL = 0;
-function foo($x = \INI_ALL) {
+function foo($x = ::INI_ALL) {
var_dump($x);
}
foo();
diff --git a/Zend/tests/ns_053.phpt b/Zend/tests/ns_053.phpt
index bc5ab12cdb..8df545face 100644
--- a/Zend/tests/ns_053.phpt
+++ b/Zend/tests/ns_053.phpt
@@ -2,11 +2,11 @@
053: Run-time constant definition
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
-define(__NAMESPACE__ . '\\NAME', basename(__FILE__));
+define(__NAMESPACE__ . '::NAME', basename(__FILE__));
echo NAME."\n";
-echo \test\ns1\NAME."\n";
+echo test::ns1::NAME."\n";
--EXPECT--
ns_053.php
ns_053.php
diff --git a/Zend/tests/ns_054.phpt b/Zend/tests/ns_054.phpt
index 54ab958611..0eb9e0448f 100755
--- a/Zend/tests/ns_054.phpt
+++ b/Zend/tests/ns_054.phpt
@@ -4,21 +4,21 @@
<?php if (!extension_loaded("spl")) die("skip SPL is no available"); ?>
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
-class Foo implements \SplObserver {
- function update(\SplSubject $x) {
+class Foo implements SplObserver {
+ function update(::SplSubject $x) {
echo "ok\n";
}
}
-class Bar implements \SplSubject {
- function attach(\SplObserver $x) {
+class Bar implements SplSubject {
+ function attach(::SplObserver $x) {
echo "ok\n";
}
function notify() {
}
- function detach(\SplObserver $x) {
+ function detach(::SplObserver $x) {
}
}
$foo = new Foo();
diff --git a/Zend/tests/ns_055.phpt b/Zend/tests/ns_055.phpt
index a692e47601..83d0613c1e 100755
--- a/Zend/tests/ns_055.phpt
+++ b/Zend/tests/ns_055.phpt
@@ -2,27 +2,32 @@
055: typehints in namespaces
--FILE--
<?php
-namespace test\ns1;
+namespace test::ns1;
class Foo {
function test1(Foo $x) {
echo "ok\n";
}
- function test2(\test\ns1\Foo $x) {
+ function test2(test::ns1::Foo $x) {
echo "ok\n";
}
- function test3(\Exception $x) {
+ function test3(Exception $x) {
+ echo "ok\n";
+ }
+ function test4(::Exception $x) {
echo "ok\n";
}
}
$foo = new Foo();
-$ex = new \Exception();
+$ex = new Exception();
$foo->test1($foo);
$foo->test2($foo);
$foo->test3($ex);
+$foo->test4($ex);
?>
--EXPECT--
ok
ok
ok
+ok
diff --git a/Zend/tests/ns_056.phpt b/Zend/tests/ns_056.phpt
index 2390608d4e..0bc4f0087d 100755
--- a/Zend/tests/ns_056.phpt
+++ b/Zend/tests/ns_056.phpt
@@ -4,16 +4,15 @@
<?php if (!extension_loaded("spl")) die("skip SPL is no available"); ?>
--FILE--
<?php
-namespace test\ns1;
-use \SplObserver;
+namespace test::ns1;
class Foo implements SplObserver {
- function update(\SplSubject $x) {
+ function update(SplSubject $x) {
echo "ok\n";
}
}
-class Bar implements \SplSubject {
+class Bar implements SplSubject {
function attach(SplObserver $x) {
echo "ok\n";
}
diff --git a/Zend/tests/ns_057.phpt b/Zend/tests/ns_057.phpt
index 13bf3054cc..cfa02f923f 100755
--- a/Zend/tests/ns_057.phpt
+++ b/Zend/tests/ns_057.phpt
@@ -1,8 +1,8 @@
--TEST--
-057: Usage of 'namespace' in compound names (inside namespace)
+057: Usage of 'namespace' in compound names (inside namespase)
--FILE--
<?php
-namespace Test\ns1;
+namespace Test::ns1;
const C = "const ok\n";
@@ -12,7 +12,7 @@ function foo() {
class foo {
const C = "const ok\n";
- const C2 = namespace\C;
+ const C2 = namespace::C;
static $var = "var ok\n";
function __construct() {
echo "class ok\n";
@@ -22,27 +22,26 @@ class foo {
}
}
-function f1($x=namespace\C) {
+function f1($x=namespace::C) {
return $x;
}
-function f2($x=namespace\foo::C) {
+function f2($x=namespace::foo::C) {
return $x;
}
-function f3(namespace\foo $x) {
+function f3(namespace::foo $x) {
return "ok\n";
}
-echo namespace\C;
-echo namespace\foo();
-echo namespace\foo::C;
-echo namespace\foo::C2;
-echo namespace\foo::$var;
-echo namespace\foo::bar();
-echo namespace\f1();
-echo namespace\f2();
-echo namespace\f3(new namespace\foo());
-echo namespace\unknown;
+echo namespace::C;
+echo namespace::foo();
+echo namespace::foo::C;
+echo namespace::foo::C2;
+echo namespace::foo::$var;
+echo namespace::foo::bar();
+echo namespace::f1();
+echo namespace::f2();
+echo namespace::f3(new namespace::foo());
?>
--EXPECTF--
const ok
@@ -55,5 +54,3 @@ const ok
const ok
class ok
ok
-
-Fatal error: Undefined constant 'Test\ns1\unknown' in %sns_057.php on line %d \ No newline at end of file
diff --git a/Zend/tests/ns_058.phpt b/Zend/tests/ns_058.phpt
index 7a0cd97d92..6c86f10f9d 100755
--- a/Zend/tests/ns_058.phpt
+++ b/Zend/tests/ns_058.phpt
@@ -10,7 +10,7 @@ function foo() {
class foo {
const C = "const ok\n";
- const C2 = namespace\C;
+ const C2 = namespace::C;
static $var = "var ok\n";
function __construct() {
echo "class ok\n";
@@ -20,29 +20,28 @@ class foo {
}
}
-function f1($x=namespace\C) {
+function f1($x=namespace::C) {
return $x;
}
-function f2($x=namespace\foo::C) {
+function f2($x=namespace::foo::C) {
return $x;
}
-function f3(namespace\foo $x) {
+function f3(namespace::foo $x) {
return "ok\n";
}
-echo namespace\C;
-echo namespace\foo();
-echo namespace\foo::C;
-echo namespace\foo::C2;
-echo namespace\foo::$var;
-echo namespace\foo::bar();
-echo namespace\f1();
-echo namespace\f2();
-echo namespace\f3(new namespace\foo());
-echo namespace\unknown;
+echo namespace::C;
+echo namespace::foo();
+echo namespace::foo::C;
+echo namespace::foo::C2;
+echo namespace::foo::$var;
+echo namespace::foo::bar();
+echo namespace::f1();
+echo namespace::f2();
+echo namespace::f3(new namespace::foo());
?>
---EXPECTF--
+--EXPECT--
const ok
func ok
const ok
@@ -53,5 +52,3 @@ const ok
const ok
class ok
ok
-
-Fatal error: Undefined constant 'unknown' in %sns_058.php on line %d
diff --git a/Zend/tests/ns_060.phpt b/Zend/tests/ns_060.phpt
index 16c8024f00..cc86d0e087 100644
--- a/Zend/tests/ns_060.phpt
+++ b/Zend/tests/ns_060.phpt
@@ -3,21 +3,21 @@
--FILE--
<?php
namespace Foo;
-use Bar\A as B;
+use Bar::A as B;
class A {}
$a = new B;
$b = new A;
echo get_class($a)."\n";
echo get_class($b)."\n";
namespace Bar;
-use Foo\A as B;
+use Foo::A as B;
$a = new B;
$b = new A;
echo get_class($a)."\n";
echo get_class($b)."\n";
class A {}
--EXPECT--
-Bar\A
-Foo\A
-Foo\A
-Bar\A
+Bar::A
+Foo::A
+Foo::A
+Bar::A
diff --git a/Zend/tests/ns_061.phpt b/Zend/tests/ns_061.phpt
index 948f675d6d..a02f63d71f 100644
--- a/Zend/tests/ns_061.phpt
+++ b/Zend/tests/ns_061.phpt
@@ -3,7 +3,7 @@
--FILE--
<?php
class A {}
-use \A as B;
+use ::A as B;
echo get_class(new B)."\n";
--EXPECT--
A
diff --git a/Zend/tests/ns_062.phpt b/Zend/tests/ns_062.phpt
index d795da4c68..07043dbf68 100644
--- a/Zend/tests/ns_062.phpt
+++ b/Zend/tests/ns_062.phpt
@@ -1,10 +1,10 @@
--TEST--
-062: use \global class
+062: use ::global class
--FILE--
<?php
namespace Foo;
-use \stdClass;
-use \stdClass as A;
+use ::stdClass;
+use ::stdClass as A;
echo get_class(new stdClass)."\n";
echo get_class(new A)."\n";
--EXPECT--
diff --git a/Zend/tests/ns_064.phpt b/Zend/tests/ns_064.phpt
index 0a7c4bc82d..29e9e56714 100644
--- a/Zend/tests/ns_064.phpt
+++ b/Zend/tests/ns_064.phpt
@@ -21,7 +21,7 @@ class foo {
}
}
-use test\foo as stdClass;
+use test::foo as stdClass;
$x = new stdClass;
$x->a = 1;
diff --git a/Zend/tests/ns_065.inc b/Zend/tests/ns_065.inc
index 963a74e140..a625a4a1b4 100755
--- a/Zend/tests/ns_065.inc
+++ b/Zend/tests/ns_065.inc
@@ -1,9 +1,9 @@
<?php
-namespace X\Y;
+namespace X::Y;
function foo() {
echo __FUNCTION__."\n";
}
-namespace X\Z;
+namespace X::Z;
function foo() {
echo __FUNCTION__."\n";
}
diff --git a/Zend/tests/ns_065.phpt b/Zend/tests/ns_065.phpt
index 40ccd1e153..8d7e7fbb1a 100755
--- a/Zend/tests/ns_065.phpt
+++ b/Zend/tests/ns_065.phpt
@@ -2,12 +2,12 @@
065: Multiple names in use statement
--FILE--
<?php
-use X\Y as test, X\Z as test2;
+use X::Y as test, X::Z as test2;
require "ns_065.inc";
-test\foo();
-test2\foo();
+test::foo();
+test2::foo();
--EXPECT--
-X\Y\foo
-X\Z\foo
+X::Y::foo
+X::Z::foo
diff --git a/Zend/tests/ns_066.phpt b/Zend/tests/ns_066.phpt
index 881589cf2c..3a7d9a521f 100644
--- a/Zend/tests/ns_066.phpt
+++ b/Zend/tests/ns_066.phpt
@@ -3,8 +3,8 @@
--FILE--
<?php
include __DIR__ . '/ns_027.inc';
-use Foo\Bar\Foo as stdClass;
+use Foo::Bar::Foo as stdClass;
new stdClass();
--EXPECT--
-Foo\Bar\Foo
+Foo::Bar::Foo
diff --git a/Zend/tests/ns_067.inc b/Zend/tests/ns_067.inc
index c3c14b1468..09327b276d 100644
--- a/Zend/tests/ns_067.inc
+++ b/Zend/tests/ns_067.inc
@@ -1,3 +1,3 @@
<?php
-use Foo\Bar\Foo as Test;
+use Foo::Bar::Foo as Test;
new Test();
diff --git a/Zend/tests/ns_067.phpt b/Zend/tests/ns_067.phpt
index b94eb30ead..c5096278db 100644
--- a/Zend/tests/ns_067.phpt
+++ b/Zend/tests/ns_067.phpt
@@ -6,4 +6,4 @@ include __DIR__ . '/ns_022.inc';
include __DIR__ . '/ns_027.inc';
include __DIR__ . '/ns_067.inc';
--EXPECT--
-Foo\Bar\Foo
+Foo::Bar::Foo
diff --git a/Zend/tests/zend_strtod.phpt b/Zend/tests/zend_strtod.phpt
index 7f4bca5966..1b11be0388 100644
--- a/Zend/tests/zend_strtod.phpt
+++ b/Zend/tests/zend_strtod.phpt
@@ -15,5 +15,5 @@ echo "Done\n";
float(-100)
float(808792757210)
float(-4.5646456464565E+27)
-float(-1.1276204760067E+16)
+float(-11276204760067000)
Done
diff --git a/Zend/zend.h b/Zend/zend.h
index af9e09aa1c..b499020ef5 100644
--- a/Zend/zend.h
+++ b/Zend/zend.h
@@ -516,7 +516,7 @@ typedef int (*zend_write_func_t)(const char *str, uint str_length);
/* Ugly hack to support constants as static array indices */
#define IS_CONSTANT_TYPE_MASK 0x0f
-#define IS_CONSTANT_UNQUALIFIED 0x10
+#define IS_CONSTANT_RT_NS_CHECK 0x10
#define IS_CONSTANT_INDEX 0x80
#define IS_LEXICAL_VAR 0x20
#define IS_LEXICAL_REF 0x40
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index 59ea7ab2bc..cf31d6ce3d 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -451,7 +451,7 @@ static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **sp
}
}
break;
- case 'A':
+
case 'a':
{
zval **p = va_arg(*va, zval **);
@@ -459,14 +459,14 @@ static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **sp
*p = NULL;
break;
}
- if (Z_TYPE_PP(arg) == IS_ARRAY || (c == 'A' && Z_TYPE_PP(arg) == IS_OBJECT)) {
+ if (Z_TYPE_PP(arg) == IS_ARRAY) {
*p = *arg;
} else {
return "array";
}
}
break;
- case 'H':
+
case 'h':
{
HashTable **p = va_arg(*va, HashTable **);
@@ -476,11 +476,6 @@ static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **sp
}
if (Z_TYPE_PP(arg) == IS_ARRAY) {
*p = Z_ARRVAL_PP(arg);
- } else if(c == 'H' && Z_TYPE_PP(arg) == IS_OBJECT) {
- *p = HASH_OF(*arg);
- if(*p == NULL) {
- return "array";
- }
} else {
return "array";
}
@@ -675,8 +670,7 @@ static int zend_parse_va_args(int num_args, char *type_spec, va_list *va, int fl
case 'o': case 'O':
case 'z': case 'Z':
case 'C': case 'h':
- case 'f': case 'A':
- case 'H':
+ case 'f':
max_num_args++;
break;
@@ -1800,8 +1794,8 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_functio
if (scope) {
class_name_len = strlen(scope->name);
- if ((lc_class_name = zend_memrchr(scope->name, '\\', class_name_len))) {
- ++lc_class_name;
+ if ((lc_class_name = zend_memrchr(scope->name, ':', class_name_len))) {
+ lc_class_name++;
class_name_len -= (lc_class_name - scope->name);
lc_class_name = zend_str_tolower_dup(lc_class_name, class_name_len);
} else {
@@ -2329,8 +2323,8 @@ static int zend_is_callable_check_class(const char *name, int name_len, zend_fca
} else {
fcc->called_scope = EG(called_scope);
fcc->calling_scope = EG(scope);
- if (!fcc->object_ptr) {
- fcc->object_ptr = EG(This);
+ if (!fcc->object_pp) {
+ fcc->object_pp = EG(This) ? &EG(This) : NULL;
}
ret = 1;
}
@@ -2343,8 +2337,8 @@ static int zend_is_callable_check_class(const char *name, int name_len, zend_fca
} else {
fcc->called_scope = EG(called_scope);
fcc->calling_scope = EG(scope)->parent;
- if (!fcc->object_ptr) {
- fcc->object_ptr = EG(This);
+ if (!fcc->object_pp) {
+ fcc->object_pp = EG(This) ? &EG(This) : NULL;
}
ret = 1;
}
@@ -2355,8 +2349,8 @@ static int zend_is_callable_check_class(const char *name, int name_len, zend_fca
} else {
fcc->called_scope = EG(called_scope);
fcc->calling_scope = EG(called_scope);
- if (!fcc->object_ptr) {
- fcc->object_ptr = EG(This);
+ if (!fcc->object_pp) {
+ fcc->object_pp = EG(This) ? &EG(This) : NULL;
}
ret = 1;
}
@@ -2364,13 +2358,13 @@ static int zend_is_callable_check_class(const char *name, int name_len, zend_fca
zend_class_entry *scope = EG(active_op_array) ? EG(active_op_array)->scope : NULL;
fcc->calling_scope = *pce;
- if (scope && !fcc->object_ptr && EG(This) &&
+ if (scope && !fcc->object_pp && EG(This) &&
instanceof_function(Z_OBJCE_P(EG(This)), scope TSRMLS_CC) &&
instanceof_function(scope, fcc->calling_scope TSRMLS_CC)) {
- fcc->object_ptr = EG(This);
- fcc->called_scope = Z_OBJCE_P(fcc->object_ptr);
+ fcc->object_pp = &EG(This);
+ fcc->called_scope = Z_OBJCE_PP(fcc->object_pp);
} else {
- fcc->called_scope = fcc->object_ptr ? Z_OBJCE_P(fcc->object_ptr) : fcc->calling_scope;
+ fcc->called_scope = fcc->object_pp ? Z_OBJCE_PP(fcc->object_pp) : fcc->calling_scope;
}
ret = 1;
} else {
@@ -2400,11 +2394,13 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
fcc->function_handler = NULL;
if (!ce_org) {
- /* Skip leading \ */
- if (Z_STRVAL_P(callable)[0] == '\\') {
- mlen = Z_STRLEN_P(callable) - 1;
- mname = Z_STRVAL_P(callable) + 1;
- lmname = zend_str_tolower_dup(Z_STRVAL_P(callable) + 1, mlen);
+ /* Skip leading :: */
+ if (Z_STRVAL_P(callable)[0] == ':' &&
+ Z_STRVAL_P(callable)[1] == ':'
+ ) {
+ mlen = Z_STRLEN_P(callable) - 2;
+ mname = Z_STRVAL_P(callable) + 2;
+ lmname = zend_str_tolower_dup(Z_STRVAL_P(callable) + 2, mlen);
} else {
mlen = Z_STRLEN_P(callable);
mname = Z_STRVAL_P(callable);
@@ -2469,23 +2465,10 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
lmname = zend_str_tolower_dup(mname, mlen);
if (zend_hash_find(ftable, lmname, mlen+1, (void**)&fcc->function_handler) == SUCCESS) {
retval = 1;
- if ((fcc->function_handler->op_array.fn_flags & ZEND_ACC_CHANGED) &&
- EG(scope) &&
- instanceof_function(fcc->function_handler->common.scope, EG(scope) TSRMLS_CC)) {
- zend_function *priv_fbc;
-
- if (zend_hash_find(&EG(scope)->function_table, lmname, mlen+1, (void **) &priv_fbc)==SUCCESS
- && priv_fbc->common.fn_flags & ZEND_ACC_PRIVATE
- && priv_fbc->common.scope == EG(scope)) {
- fcc->function_handler = priv_fbc;
- }
- }
- } else if (fcc->object_ptr) {
- if (Z_OBJ_HT_P(fcc->object_ptr)->get_method) {
- fcc->function_handler = Z_OBJ_HT_P(fcc->object_ptr)->get_method(&fcc->object_ptr, mname, mlen TSRMLS_CC);
- retval = fcc->function_handler ? 1 : 0;
- call_via_handler = 1;
- }
+ } else if (fcc->object_pp && Z_OBJ_HT_PP(fcc->object_pp)->get_method) {
+ fcc->function_handler = Z_OBJ_HT_PP(fcc->object_pp)->get_method(fcc->object_pp, mname, mlen TSRMLS_CC);
+ retval = fcc->function_handler ? 1 : 0;
+ call_via_handler = 1;
} else if (fcc->calling_scope) {
if (fcc->calling_scope->get_static_method) {
fcc->function_handler = fcc->calling_scope->get_static_method(fcc->calling_scope, mname, mlen TSRMLS_CC);
@@ -2498,7 +2481,7 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
if (retval) {
if (fcc->calling_scope && !call_via_handler) {
- if (!fcc->object_ptr && !(fcc->function_handler->common.fn_flags & ZEND_ACC_STATIC)) {
+ if (!fcc->object_pp && !(fcc->function_handler->common.fn_flags & ZEND_ACC_STATIC)) {
int severity;
char *verb;
if (fcc->function_handler->common.fn_flags & ZEND_ACC_ALLOW_STATIC) {
@@ -2513,7 +2496,7 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
retval = 0;
}
if (EG(This) && instanceof_function(Z_OBJCE_P(EG(This)), fcc->calling_scope TSRMLS_CC)) {
- fcc->object_ptr = EG(This);
+ fcc->object_pp = &EG(This);
if (error) {
zend_spprintf(error, 0, "non-static method %s::%s() %s be called statically, assuming $this from compatible context %s", fcc->calling_scope->name, fcc->function_handler->common.function_name, verb, Z_OBJCE_P(EG(This))->name);
} else if (retval) {
@@ -2529,7 +2512,7 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
}
if (retval && (check_flags & IS_CALLABLE_CHECK_NO_ACCESS) == 0) {
if (fcc->function_handler->op_array.fn_flags & ZEND_ACC_PRIVATE) {
- if (!zend_check_private(fcc->function_handler, fcc->object_ptr ? Z_OBJCE_P(fcc->object_ptr) : EG(scope), lmname, mlen TSRMLS_CC)) {
+ if (!zend_check_private(fcc->function_handler, fcc->object_pp ? Z_OBJCE_PP(fcc->object_pp) : EG(scope), lmname, mlen TSRMLS_CC)) {
if (error) {
if (*error) {
efree(*error);
@@ -2560,8 +2543,8 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
}
efree(lmname);
- if (fcc->object_ptr) {
- fcc->called_scope = Z_OBJCE_P(fcc->object_ptr);
+ if (fcc->object_pp) {
+ fcc->called_scope = Z_OBJCE_PP(fcc->object_pp);
}
if (retval) {
fcc->initialized = 1;
@@ -2570,7 +2553,7 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
}
/* }}} */
-ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint check_flags, char **callable_name, int *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC) /* {{{ */
+ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval **object_pp, uint check_flags, char **callable_name, int *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC) /* {{{ */
{
zend_bool ret;
int callable_name_len_local;
@@ -2594,22 +2577,22 @@ ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint ch
fcc->called_scope = NULL;
fcc->function_handler = NULL;
fcc->calling_scope = NULL;
- fcc->object_ptr = NULL;
+ fcc->object_pp = NULL;
- if (object_ptr && Z_TYPE_P(object_ptr) != IS_OBJECT) {
- object_ptr = NULL;
+ if (object_pp && (!*object_pp || Z_TYPE_PP(object_pp) != IS_OBJECT)) {
+ object_pp = NULL;
}
- if (object_ptr &&
+ if (object_pp &&
(!EG(objects_store).object_buckets ||
- !EG(objects_store).object_buckets[Z_OBJ_HANDLE_P(object_ptr)].valid)) {
+ !EG(objects_store).object_buckets[Z_OBJ_HANDLE_PP(object_pp)].valid)) {
return 0;
}
switch (Z_TYPE_P(callable)) {
case IS_STRING:
- if (object_ptr) {
- fcc->object_ptr = object_ptr;
- fcc->calling_scope = Z_OBJCE_P(object_ptr);
+ if (object_pp && *object_pp) {
+ fcc->object_pp = object_pp;
+ fcc->calling_scope = Z_OBJCE_PP(object_pp);
if (callable_name) {
char *ptr;
@@ -2687,7 +2670,7 @@ ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint ch
fcc->calling_scope = Z_OBJCE_PP(obj); /* TBFixed: what if it's overloaded? */
- fcc->object_ptr = *obj;
+ fcc->object_pp = obj;
if (callable_name) {
char *ptr;
@@ -2740,7 +2723,7 @@ ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint ch
return 0;
case IS_OBJECT:
- if (Z_OBJ_HANDLER_P(callable, get_closure) && Z_OBJ_HANDLER_P(callable, get_closure)(callable, &fcc->calling_scope, &fcc->function_handler, &fcc->object_ptr TSRMLS_CC) == SUCCESS) {
+ if (Z_OBJ_HANDLER_P(callable, get_closure) && Z_OBJ_HANDLER_P(callable, get_closure)(callable, &fcc->calling_scope, &fcc->function_handler, NULL, &fcc->object_pp TSRMLS_CC) == SUCCESS) {
fcc->called_scope = fcc->calling_scope;
if (callable_name) {
zend_class_entry *ce = Z_OBJCE_P(callable); /* TBFixed: what if it's overloaded? */
@@ -2811,7 +2794,7 @@ ZEND_API int zend_fcall_info_init(zval *callable, uint check_flags, zend_fcall_i
fci->size = sizeof(*fci);
fci->function_table = fcc->calling_scope ? &fcc->calling_scope->function_table : EG(function_table);
- fci->object_ptr = fcc->object_ptr;
+ fci->object_pp = fcc->object_pp;
fci->function_name = callable;
fci->retval_ptr_ptr = NULL;
fci->param_count = 0;
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 2249f98e8b..d8b2b3fcff 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -48,7 +48,7 @@ typedef struct _zend_fcall_info {
zval **retval_ptr_ptr;
zend_uint param_count;
zval ***params;
- zval *object_ptr;
+ zval **object_pp;
zend_bool no_separation;
} zend_fcall_info;
@@ -57,10 +57,10 @@ typedef struct _zend_fcall_info_cache {
zend_function *function_handler;
zend_class_entry *calling_scope;
zend_class_entry *called_scope;
- zval *object_ptr;
+ zval **object_pp;
} zend_fcall_info_cache;
-#define ZEND_NS_NAME(ns, name) ns"\\"name
+#define ZEND_NS_NAME(ns, name) ns"::"name
#define ZEND_FN(name) zif_##name
#define ZEND_MN(name) zim_##name
@@ -101,7 +101,7 @@ typedef struct _zend_fcall_info_cache {
#define ZEND_ARG_OBJ_INFO(pass_by_ref, name, classname, allow_null) { #name, sizeof(#name)-1, #classname, sizeof(#classname)-1, 0, allow_null, pass_by_ref, 0, 0 },
#define ZEND_ARG_ARRAY_INFO(pass_by_ref, name, allow_null) { #name, sizeof(#name)-1, NULL, 0, 1, allow_null, pass_by_ref, 0, 0 },
#define ZEND_BEGIN_ARG_INFO_EX(name, pass_rest_by_reference, return_reference, required_num_args) \
- static const zend_arg_info name[] = { \
+ const zend_arg_info name[] = { \
{ NULL, 0, NULL, 0, 0, 0, pass_rest_by_reference, return_reference, required_num_args },
#define ZEND_BEGIN_ARG_INFO(name, pass_rest_by_reference) \
ZEND_BEGIN_ARG_INFO_EX(name, pass_rest_by_reference, ZEND_RETURN_VALUE, -1)
@@ -277,7 +277,7 @@ ZEND_API void zend_wrong_param_count(TSRMLS_D);
#define IS_CALLABLE_STRICT (IS_CALLABLE_CHECK_IS_STATIC)
-ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval *object_ptr, uint check_flags, char **callable_name, int *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
+ZEND_API zend_bool zend_is_callable_ex(zval *callable, zval **object_pp, uint check_flags, char **callable_name, int *callable_name_len, zend_fcall_info_cache *fcc, char **error TSRMLS_DC);
ZEND_API zend_bool zend_is_callable(zval *callable, uint check_flags, char **callable_name TSRMLS_DC);
ZEND_API zend_bool zend_make_callable(zval *callable, char **callable_name TSRMLS_DC);
ZEND_API const char *zend_get_module_version(const char *module_name);
diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c
index 3c6a17067b..1e11cf86ce 100644
--- a/Zend/zend_alloc.c
+++ b/Zend/zend_alloc.c
@@ -1068,26 +1068,16 @@ ZEND_API zend_mm_heap *zend_mm_startup_ex(const zend_mm_mem_handlers *handlers,
}
if (internal) {
int i;
- zend_mm_free_block *p, *q, *orig;
+ zend_mm_free_block *p;
zend_mm_heap *mm_heap = _zend_mm_alloc_int(heap, sizeof(zend_mm_heap) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC);
*mm_heap = *heap;
p = ZEND_MM_SMALL_FREE_BUCKET(mm_heap, 0);
- orig = ZEND_MM_SMALL_FREE_BUCKET(heap, 0);
for (i = 0; i < ZEND_MM_NUM_BUCKETS; i++) {
- q = p;
- while (q->prev_free_block != orig) {
- q = q->prev_free_block;
- }
- q->prev_free_block = p;
- q = p;
- while (q->next_free_block != orig) {
- q = q->next_free_block;
- }
- q->next_free_block = p;
+ p->prev_free_block->next_free_block = p;
+ p->next_free_block->prev_free_block = p;
p = (zend_mm_free_block*)((char*)p + sizeof(zend_mm_free_block*) * 2);
- orig = (zend_mm_free_block*)((char*)orig + sizeof(zend_mm_free_block*) * 2);
if (mm_heap->large_free_buckets[i]) {
mm_heap->large_free_buckets[i]->parent = &mm_heap->large_free_buckets[i];
}
diff --git a/Zend/zend_alloc.h b/Zend/zend_alloc.h
index 0090c813e7..ae93b18a8b 100644
--- a/Zend/zend_alloc.h
+++ b/Zend/zend_alloc.h
@@ -200,12 +200,12 @@ ZEND_API size_t _zend_mm_block_size(zend_mm_heap *heap, void *p ZEND_FILE_LINE_D
#define zend_mm_alloc(heap, size) _zend_mm_alloc((heap), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
#define zend_mm_free(heap, p) _zend_mm_free((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
#define zend_mm_realloc(heap, p, size) _zend_mm_realloc((heap), (p), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
-#define zend_mm_block_size(heap, p) _zend_mm_block_size((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
+#define zend_mm_block_size(heap, p) _zend_mm_block_size((heap), (p), ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
#define zend_mm_alloc_rel(heap, size) _zend_mm_alloc((heap), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC)
#define zend_mm_free_rel(heap, p) _zend_mm_free((heap), (p) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC)
#define zend_mm_realloc_rel(heap, p, size) _zend_mm_realloc((heap), (p), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC)
-#define zend_mm_block_size_rel(heap, p) _zend_mm_block_size((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
+#define zend_mm_block_size_rel(heap, p) _zend_mm_block_size((heap), (p), ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
/* Heaps with user defined storage */
typedef struct _zend_mm_storage zend_mm_storage;
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index 0a936ed7f4..0e3dba8418 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -33,7 +33,7 @@ static ZEND_FUNCTION(zend_version);
static ZEND_FUNCTION(func_num_args);
static ZEND_FUNCTION(func_get_arg);
static ZEND_FUNCTION(func_get_args);
-static ZEND_FUNCTION(strlen);
+static ZEND_NAMED_FUNCTION(zend_if_strlen);
static ZEND_FUNCTION(strcmp);
static ZEND_FUNCTION(strncmp);
static ZEND_FUNCTION(strcasecmp);
@@ -92,153 +92,276 @@ static ZEND_FUNCTION(gc_enable);
static ZEND_FUNCTION(gc_disable);
/* {{{ arginfo */
-ZEND_BEGIN_ARG_INFO(arginfo_zend__void, 0)
+static
+ZEND_BEGIN_ARG_INFO(arginfo_zend_version, 0)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_gc_collect_cycles, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_gc_enabled, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_gc_enable, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_gc_disable, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_func_num_args, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_func_get_arg, 0, 0, 1)
ZEND_ARG_INFO(0, arg_num)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_func_get_args, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_strlen, 0, 0, 1)
ZEND_ARG_INFO(0, str)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_strcmp, 0, 0, 2)
ZEND_ARG_INFO(0, str1)
ZEND_ARG_INFO(0, str2)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_strncmp, 0, 0, 3)
ZEND_ARG_INFO(0, str1)
ZEND_ARG_INFO(0, str2)
ZEND_ARG_INFO(0, len)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_strcasecmp, 0, 0, 2)
+ ZEND_ARG_INFO(0, str1)
+ ZEND_ARG_INFO(0, str2)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_strncasecmp, 0, 0, 3)
+ ZEND_ARG_INFO(0, str1)
+ ZEND_ARG_INFO(0, str2)
+ ZEND_ARG_INFO(0, len)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_each, 0, 0, 1)
ZEND_ARG_INFO(1, arr)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_error_reporting, 0, 0, 1)
ZEND_ARG_INFO(0, new_error_level)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_define, 0, 0, 3)
ZEND_ARG_INFO(0, constant_name)
ZEND_ARG_INFO(0, value)
ZEND_ARG_INFO(0, case_insensitive)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_defined, 0, 0, 1)
ZEND_ARG_INFO(0, constant_name)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_class, 0, 0, 0)
ZEND_ARG_INFO(0, object)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_called_class, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_get_parent_class, 0, 0, 0)
+ ZEND_ARG_INFO(0, object)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_is_subclass_of, 0, 0, 2)
ZEND_ARG_INFO(0, object)
ZEND_ARG_INFO(0, class_name)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_is_a, 0, 0, 2)
+ ZEND_ARG_INFO(0, object)
+ ZEND_ARG_INFO(0, class_name)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_class_vars, 0, 0, 1)
ZEND_ARG_INFO(0, class_name)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_object_vars, 0, 0, 1)
ZEND_ARG_INFO(0, obj)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_class_methods, 0, 0, 1)
ZEND_ARG_INFO(0, class)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_method_exists, 0, 0, 2)
ZEND_ARG_INFO(0, object)
ZEND_ARG_INFO(0, method)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_property_exists, 0, 0, 2)
ZEND_ARG_INFO(0, object_or_class)
ZEND_ARG_INFO(0, property_name)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_class_exists, 0, 0, 1)
ZEND_ARG_INFO(0, classname)
ZEND_ARG_INFO(0, autoload)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_interface_exists, 0, 0, 1)
+ ZEND_ARG_INFO(0, classname)
+ ZEND_ARG_INFO(0, autoload)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_function_exists, 0, 0, 1)
ZEND_ARG_INFO(0, function_name)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_class_alias, 0, 0, 2)
ZEND_ARG_INFO(0, user_class_name)
ZEND_ARG_INFO(0, alias_name)
ZEND_ARG_INFO(0, autoload)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_included_files, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_trigger_error, 0, 0, 1)
ZEND_ARG_INFO(0, messsage)
ZEND_ARG_INFO(0, error_type)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_set_error_handler, 0, 0, 1)
ZEND_ARG_INFO(0, error_handler)
ZEND_ARG_INFO(0, error_types)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_restore_error_handler, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_set_exception_handler, 0, 0, 1)
ZEND_ARG_INFO(0, exception_handler)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_restore_exception_handler, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_declared_classes, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_declared_interfaces, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_defined_functions, 0)
+ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO(arginfo_get_defined_vars, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_create_function, 0, 0, 2)
ZEND_ARG_INFO(0, args)
ZEND_ARG_INFO(0, code)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_resource_type, 0, 0, 1)
ZEND_ARG_INFO(0, res)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_loaded_extensions, 0, 0, 0)
ZEND_ARG_INFO(0, zend_extensions)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_get_defined_constants, 0, 0, 0)
ZEND_ARG_INFO(0, categorize)
ZEND_END_ARG_INFO()
+static
+ZEND_BEGIN_ARG_INFO(arginfo_debug_print_backtrace, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_debug_backtrace, 0, 0, 0)
ZEND_ARG_INFO(0, provide_object)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_extension_loaded, 0, 0, 1)
ZEND_ARG_INFO(0, extension_name)
ZEND_END_ARG_INFO()
+
+static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_get_extension_funcs, 0, 0, 1)
+ ZEND_ARG_INFO(0, extension_name)
+ZEND_END_ARG_INFO()
/* }}} */
static const zend_function_entry builtin_functions[] = {
- ZEND_FE(zend_version, arginfo_zend__void)
- ZEND_FE(func_num_args, arginfo_zend__void)
+ ZEND_FE(zend_version, arginfo_zend_version)
+ ZEND_FE(func_num_args, arginfo_func_num_args)
ZEND_FE(func_get_arg, arginfo_func_get_arg)
- ZEND_FE(func_get_args, arginfo_zend__void)
- ZEND_FE(strlen, arginfo_strlen)
+ ZEND_FE(func_get_args, arginfo_func_get_args)
+ { "strlen", zend_if_strlen, arginfo_strlen },
ZEND_FE(strcmp, arginfo_strcmp)
ZEND_FE(strncmp, arginfo_strncmp)
- ZEND_FE(strcasecmp, arginfo_strcmp)
- ZEND_FE(strncasecmp, arginfo_strncmp)
+ ZEND_FE(strcasecmp, arginfo_strcasecmp)
+ ZEND_FE(strncasecmp, arginfo_strncasecmp)
ZEND_FE(each, arginfo_each)
ZEND_FE(error_reporting, arginfo_error_reporting)
ZEND_FE(define, arginfo_define)
ZEND_FE(defined, arginfo_defined)
ZEND_FE(get_class, arginfo_get_class)
- ZEND_FE(get_called_class, arginfo_zend__void)
- ZEND_FE(get_parent_class, arginfo_get_class)
+ ZEND_FE(get_called_class, arginfo_get_called_class)
+ ZEND_FE(get_parent_class, arginfo_get_parent_class)
ZEND_FE(method_exists, arginfo_method_exists)
ZEND_FE(property_exists, arginfo_property_exists)
ZEND_FE(class_exists, arginfo_class_exists)
- ZEND_FE(interface_exists, arginfo_class_exists)
+ ZEND_FE(interface_exists, arginfo_interface_exists)
ZEND_FE(function_exists, arginfo_function_exists)
ZEND_FE(class_alias, arginfo_class_alias)
#if ZEND_DEBUG
@@ -247,41 +370,41 @@ static const zend_function_entry builtin_functions[] = {
ZEND_FE(crash, NULL)
#endif
#endif
- ZEND_FE(get_included_files, arginfo_zend__void)
- ZEND_FALIAS(get_required_files, get_included_files, arginfo_zend__void)
+ ZEND_FE(get_included_files, arginfo_get_included_files)
+ ZEND_FALIAS(get_required_files, get_included_files, arginfo_get_included_files)
ZEND_FE(is_subclass_of, arginfo_is_subclass_of)
- ZEND_FE(is_a, arginfo_is_subclass_of)
+ ZEND_FE(is_a, arginfo_is_a)
ZEND_FE(get_class_vars, arginfo_get_class_vars)
ZEND_FE(get_object_vars, arginfo_get_object_vars)
ZEND_FE(get_class_methods, arginfo_get_class_methods)
ZEND_FE(trigger_error, arginfo_trigger_error)
ZEND_FALIAS(user_error, trigger_error, arginfo_trigger_error)
- ZEND_FE(set_error_handler, arginfo_set_error_handler)
- ZEND_FE(restore_error_handler, arginfo_zend__void)
+ ZEND_FE(set_error_handler, arginfo_set_error_handler)
+ ZEND_FE(restore_error_handler, arginfo_restore_error_handler)
ZEND_FE(set_exception_handler, arginfo_set_exception_handler)
- ZEND_FE(restore_exception_handler, arginfo_zend__void)
- ZEND_FE(get_declared_classes, arginfo_zend__void)
- ZEND_FE(get_declared_interfaces, arginfo_zend__void)
- ZEND_FE(get_defined_functions, arginfo_zend__void)
- ZEND_FE(get_defined_vars, arginfo_zend__void)
- ZEND_FE(create_function, arginfo_create_function)
- ZEND_FE(get_resource_type, arginfo_get_resource_type)
+ ZEND_FE(restore_exception_handler, arginfo_restore_exception_handler)
+ ZEND_FE(get_declared_classes, arginfo_get_declared_classes)
+ ZEND_FE(get_declared_interfaces, arginfo_get_declared_interfaces)
+ ZEND_FE(get_defined_functions, arginfo_get_defined_functions)
+ ZEND_FE(get_defined_vars, arginfo_get_defined_vars)
+ ZEND_FE(create_function, arginfo_create_function)
+ ZEND_FE(get_resource_type, arginfo_get_resource_type)
ZEND_FE(get_loaded_extensions, arginfo_get_loaded_extensions)
ZEND_FE(extension_loaded, arginfo_extension_loaded)
- ZEND_FE(get_extension_funcs, arginfo_extension_loaded)
+ ZEND_FE(get_extension_funcs, arginfo_get_extension_funcs)
ZEND_FE(get_defined_constants, arginfo_get_defined_constants)
- ZEND_FE(debug_backtrace, arginfo_debug_backtrace)
- ZEND_FE(debug_print_backtrace, arginfo_zend__void)
+ ZEND_FE(debug_backtrace, arginfo_debug_backtrace)
+ ZEND_FE(debug_print_backtrace, arginfo_debug_print_backtrace)
#if ZEND_DEBUG
ZEND_FE(zend_test_func, NULL)
#ifdef ZTS
ZEND_FE(zend_thread_id, NULL)
#endif
#endif
- ZEND_FE(gc_collect_cycles, arginfo_zend__void)
- ZEND_FE(gc_enabled, arginfo_zend__void)
- ZEND_FE(gc_enable, arginfo_zend__void)
- ZEND_FE(gc_disable, arginfo_zend__void)
+ ZEND_FE(gc_collect_cycles, arginfo_gc_collect_cycles)
+ ZEND_FE(gc_enabled, arginfo_gc_enabled)
+ ZEND_FE(gc_enable, arginfo_gc_enable)
+ ZEND_FE(gc_disable, arginfo_gc_disable)
{ NULL, NULL, NULL }
};
@@ -422,7 +545,7 @@ ZEND_FUNCTION(func_get_args)
/* {{{ proto int strlen(string str)
Get string length */
-ZEND_FUNCTION(strlen)
+ZEND_NAMED_FUNCTION(zend_if_strlen)
{
char *s1;
int s1_len;
diff --git a/Zend/zend_closures.c b/Zend/zend_closures.c
index b5f7e0ea0e..f0fba8e174 100644
--- a/Zend/zend_closures.c
+++ b/Zend/zend_closures.c
@@ -136,8 +136,7 @@ static zend_function *zend_closure_get_method(zval **object_ptr, char *method_na
static zval *zend_closure_read_property(zval *object, zval *member, int type TSRMLS_DC) /* {{{ */
{
ZEND_CLOSURE_PROPERTY_ERROR();
- Z_ADDREF(EG(uninitialized_zval));
- return &EG(uninitialized_zval);
+ return NULL;
}
/* }}} */
@@ -209,7 +208,7 @@ static zend_object_value zend_closure_new(zend_class_entry *class_type TSRMLS_DC
}
/* }}} */
-int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC) /* {{{ */
+int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr TSRMLS_DC) /* {{{ */
{
zend_closure *closure;
@@ -224,11 +223,17 @@ int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function
if (zobj_ptr) {
*zobj_ptr = closure->this_ptr;
}
+ if (zobj_ptr_ptr) {
+ *zobj_ptr_ptr = &closure->this_ptr;
+ }
*ce_ptr = Z_OBJCE_P(closure->this_ptr);
} else {
if (zobj_ptr) {
*zobj_ptr = NULL;
}
+ if (zobj_ptr_ptr) {
+ *zobj_ptr_ptr = NULL;
+ }
*ce_ptr = closure->func.common.scope;
}
return SUCCESS;
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index c8017da0ef..daf67de39f 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -138,8 +138,6 @@ void zend_init_compiler_data_structures(TSRMLS_D)
CG(in_compilation) = 0;
CG(start_lineno) = 0;
CG(current_namespace) = NULL;
- CG(in_namespace) = 0;
- CG(has_bracketed_namespaces) = 0;
CG(current_import) = NULL;
init_compiler_declarables(TSRMLS_C);
zend_hash_apply(CG(auto_globals), (apply_func_t) zend_auto_global_arm TSRMLS_CC);
@@ -585,7 +583,6 @@ void zend_do_assign(znode *result, znode *variable, const znode *value TSRMLS_DC
CG(active_op_array)->vars[value->u.var].name,
CG(active_op_array)->vars[value->u.var].name_len, 1);
SET_UNUSED(opline->op2);
- opline->op2.u.EA.type = ZEND_FETCH_LOCAL;
value = &opline->result;
}
}
@@ -612,13 +609,10 @@ void zend_do_assign(znode *result, znode *variable, const znode *value TSRMLS_DC
last_op->result.u.var == variable->u.var) {
if (last_op->opcode == ZEND_FETCH_OBJ_W) {
if (n > 0) {
- int opline_no = (opline-CG(active_op_array)->opcodes)/sizeof(*opline);
*opline = *last_op;
MAKE_NOP(last_op);
- /* last_op = opline; */
+ last_op = opline;
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
- /* get_next_op can realloc, we need to move last_op */
- last_op = &CG(active_op_array)->opcodes[opline_no];
}
last_op->opcode = ZEND_ASSIGN_OBJ;
zend_do_op_data(opline, value TSRMLS_CC);
@@ -627,14 +621,10 @@ void zend_do_assign(znode *result, znode *variable, const znode *value TSRMLS_DC
return;
} else if (last_op->opcode == ZEND_FETCH_DIM_W) {
if (n > 0) {
- int opline_no = (opline-CG(active_op_array)->opcodes)/sizeof(*opline);
*opline = *last_op;
MAKE_NOP(last_op);
- /* last_op = opline; */
- /* TBFixed: this can realloc opcodes, leaving last_op pointing wrong */
+ last_op = opline;
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
- /* get_next_op can realloc, we need to move last_op */
- last_op = &CG(active_op_array)->opcodes[opline_no];
}
last_op->opcode = ZEND_ASSIGN_DIM;
zend_do_op_data(opline, value TSRMLS_CC);
@@ -1252,9 +1242,9 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
int short_class_name_length;
char *short_class_lcname;
- if ((short_class_name = zend_memrchr(CG(active_class_entry)->name, '\\', CG(active_class_entry)->name_length))) {
- short_class_name_length = CG(active_class_entry)->name_length - (short_class_name - CG(active_class_entry)->name) - 1;
- ++short_class_name;
+ if ((short_class_name = zend_memrchr(CG(active_class_entry)->name, ':', CG(active_class_entry)->name_length))) {
+ short_class_name++;
+ short_class_name_length = CG(active_class_entry)->name_length - (short_class_name - CG(active_class_entry)->name);
} else {
short_class_name = CG(active_class_entry)->name;
short_class_name_length = CG(active_class_entry)->name_length;
@@ -1397,7 +1387,7 @@ void zend_do_begin_lambda_function_declaration(znode *result, znode *function_to
zend_op *current_op;
function_name.op_type = IS_CONST;
- ZVAL_STRINGL(&function_name.u.constant, "{closure}", sizeof("{closure}")-1, 1);
+ ZVAL_STRINGL(&function_name.u.constant, "", sizeof("")-1, 1);
zend_do_begin_function_declaration(function_token, &function_name, 0, return_reference, NULL TSRMLS_CC);
@@ -1412,7 +1402,7 @@ void zend_do_begin_lambda_function_declaration(znode *result, znode *function_to
if (is_static) {
CG(active_op_array)->fn_flags |= ZEND_ACC_STATIC;
}
- CG(active_op_array)->fn_flags |= ZEND_ACC_CLOSURE;
+ CG(active_op_array)->fn_flags |= ZEND_ACC_CLOSURE;
}
@@ -1544,28 +1534,32 @@ int zend_do_begin_function_call(znode *function_name, zend_bool check_namespace
{
zend_function *function;
char *lcname;
- char *is_compound = memchr(Z_STRVAL(function_name->u.constant), '\\', Z_STRLEN(function_name->u.constant));
+ int prefix_len = 0;
- zend_resolve_non_class_name(function_name, check_namespace TSRMLS_CC);
-
- if (check_namespace && CG(current_namespace) && !is_compound) {
- /* We assume we call function from the current namespace
- if it is not prefixed. */
+ if (check_namespace && CG(current_namespace)) {
+ /* We assume we call function from the current namespace
+ if it is not prefixed. */
+ znode tmp;
- /* In run-time PHP will check for function with full name and
- internal function with short name */
- zend_do_begin_dynamic_function_call(function_name, 1 TSRMLS_CC);
- return 1;
- }
+ tmp.op_type = IS_CONST;
+ tmp.u.constant = *CG(current_namespace);
+ zval_copy_ctor(&tmp.u.constant);
+ zend_do_build_namespace_name(&tmp, &tmp, function_name TSRMLS_CC);
+ *function_name = tmp;
+ /* In run-time PHP will check for function with full name and
+ internal function with short name */
+ prefix_len = Z_STRLEN_P(CG(current_namespace)) + 2;
+ }
+
lcname = zend_str_tolower_dup(function_name->u.constant.value.str.val, function_name->u.constant.value.str.len);
if ((zend_hash_find(CG(function_table), lcname, function_name->u.constant.value.str.len+1, (void **) &function)==FAILURE) ||
- ((CG(compiler_options) & ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS) &&
- (function->type == ZEND_INTERNAL_FUNCTION))) {
- zend_do_begin_dynamic_function_call(function_name, 0 TSRMLS_CC);
- efree(lcname);
- return 1; /* Dynamic */
- }
+ ((CG(compiler_options) & ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS) &&
+ (function->type == ZEND_INTERNAL_FUNCTION))) {
+ zend_do_begin_dynamic_function_call(function_name, prefix_len TSRMLS_CC);
+ efree(lcname);
+ return 1; /* Dynamic */
+ }
efree(function_name->u.constant.value.str.val);
function_name->u.constant.value.str.val = lcname;
@@ -1631,15 +1625,14 @@ void zend_do_clone(znode *result, const znode *expr TSRMLS_DC)
}
-void zend_do_begin_dynamic_function_call(znode *function_name, int ns_call TSRMLS_DC)
+void zend_do_begin_dynamic_function_call(znode *function_name, int prefix_len TSRMLS_DC)
{
unsigned char *ptr = NULL;
- zend_op *opline, *opline2;
+ zend_op *opline;
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
- if (ns_call) {
- char *slash;
- int prefix_len, name_len;
+
+ if (prefix_len) {
/* In run-time PHP will check for function with full name and
internal function with short name */
opline->opcode = ZEND_INIT_NS_FCALL_BY_NAME;
@@ -1650,20 +1643,14 @@ void zend_do_begin_dynamic_function_call(znode *function_name, int ns_call TSRML
Z_STRVAL(opline->op1.u.constant) = zend_str_tolower_dup(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant));
Z_STRLEN(opline->op1.u.constant) = Z_STRLEN(opline->op2.u.constant);
opline->extended_value = zend_hash_func(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant) + 1);
- slash = zend_memrchr(Z_STRVAL(opline->op1.u.constant), '\\', Z_STRLEN(opline->op1.u.constant));
- prefix_len = slash-Z_STRVAL(opline->op1.u.constant)+1;
- name_len = Z_STRLEN(opline->op1.u.constant)-prefix_len;
- opline2 = get_next_op(CG(active_op_array) TSRMLS_CC);
- opline2->opcode = ZEND_OP_DATA;
- opline2->op1.op_type = IS_CONST;
- Z_TYPE(opline2->op1.u.constant) = IS_LONG;
- if(!slash) {
- zend_error(E_CORE_ERROR, "Namespaced name %s should contain slash", Z_STRVAL(opline->op1.u.constant));
- }
- /* this is the length of namespace prefix */
- Z_LVAL(opline2->op1.u.constant) = prefix_len;
- /* this is the hash of the non-prefixed part, lowercased */
- opline2->extended_value = zend_hash_func(slash+1, name_len+1);
+ opline = get_next_op(CG(active_op_array) TSRMLS_CC);
+ opline->opcode = ZEND_OP_DATA;
+ opline->op1.op_type = IS_CONST;
+ Z_TYPE(opline->op1.u.constant) = IS_STRING;
+ Z_STRLEN(opline->op1.u.constant) = Z_STRLEN(function_name->u.constant) - prefix_len;
+ Z_STRVAL(opline->op1.u.constant) = zend_str_tolower_dup(Z_STRVAL(function_name->u.constant) + prefix_len, Z_STRLEN(opline->op1.u.constant));
+ SET_UNUSED(opline->op2);
+ opline->extended_value = zend_hash_func(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant) + 1);
} else {
opline->opcode = ZEND_INIT_FCALL_BY_NAME;
opline->op2 = *function_name;
@@ -1679,58 +1666,10 @@ void zend_do_begin_dynamic_function_call(znode *function_name, int ns_call TSRML
}
}
- zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *));
- zend_do_extended_fcall_begin(TSRMLS_C);
-}
-
-void zend_resolve_non_class_name(znode *element_name, zend_bool check_namespace TSRMLS_DC)
-{
- znode tmp;
- int len;
- zval **ns;
- char *lcname, *compound = memchr(Z_STRVAL(element_name->u.constant), '\\', Z_STRLEN(element_name->u.constant));
- if (Z_STRVAL(element_name->u.constant)[0] == '\\') {
- /* name starts with \ so it is known and unambiguos, nothing to do here but shorten it */
- memmove(Z_STRVAL(element_name->u.constant), Z_STRVAL(element_name->u.constant)+1, Z_STRLEN(element_name->u.constant));
- --Z_STRLEN(element_name->u.constant);
- return;
- }
-
- if(!check_namespace) {
- return;
- }
-
- if (compound && CG(current_import)) {
- len = compound - Z_STRVAL(element_name->u.constant);
- lcname = zend_str_tolower_dup(Z_STRVAL(element_name->u.constant), len);
- /* Check if first part of compound name is an import name */
- if (zend_hash_find(CG(current_import), lcname, len+1, (void**)&ns) == SUCCESS) {
- /* Substitute import name */
- tmp.op_type = IS_CONST;
- tmp.u.constant = **ns;
- zval_copy_ctor(&tmp.u.constant);
- len += 1;
- Z_STRLEN(element_name->u.constant) -= len;
- memmove(Z_STRVAL(element_name->u.constant), Z_STRVAL(element_name->u.constant)+len, Z_STRLEN(element_name->u.constant)+1);
- zend_do_build_namespace_name(&tmp, &tmp, element_name TSRMLS_CC);
- *element_name = tmp;
- efree(lcname);
- return;
- }
- efree(lcname);
- }
- if (CG(current_namespace)) {
- tmp = *element_name;
- Z_STRLEN(tmp.u.constant) = sizeof("\\")-1 + Z_STRLEN(element_name->u.constant) + Z_STRLEN_P(CG(current_namespace));
- Z_STRVAL(tmp.u.constant) = (char *) emalloc(Z_STRLEN(tmp.u.constant)+1);
- memcpy(Z_STRVAL(tmp.u.constant), Z_STRVAL_P(CG(current_namespace)), Z_STRLEN_P(CG(current_namespace)));
- memcpy(&(Z_STRVAL(tmp.u.constant)[Z_STRLEN_P(CG(current_namespace))]), "\\", sizeof("\\")-1);
- memcpy(&(Z_STRVAL(tmp.u.constant)[Z_STRLEN_P(CG(current_namespace)) + sizeof("\\")-1]), Z_STRVAL(element_name->u.constant), Z_STRLEN(element_name->u.constant)+1);
- STR_FREE(Z_STRVAL(element_name->u.constant));
- *element_name = tmp;
- }
+ zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *));
+ zend_do_extended_fcall_begin(TSRMLS_C);
}
void zend_resolve_class_name(znode *class_name, ulong *fetch_type, int check_ns_name TSRMLS_DC)
@@ -1741,51 +1680,40 @@ void zend_resolve_class_name(znode *class_name, ulong *fetch_type, int check_ns_
znode tmp;
int len;
- compound = memchr(Z_STRVAL(class_name->u.constant), '\\', Z_STRLEN(class_name->u.constant));
+ compound = memchr(Z_STRVAL(class_name->u.constant), ':', Z_STRLEN(class_name->u.constant));
if (compound) {
- /* This is a compound class name that contains namespace prefix */
- if (Z_STRVAL(class_name->u.constant)[0] == '\\') {
- /* The STRING name has "\" prefix */
- Z_STRLEN(class_name->u.constant) -= 1;
- memmove(Z_STRVAL(class_name->u.constant), Z_STRVAL(class_name->u.constant)+1, Z_STRLEN(class_name->u.constant)+1);
+ /* This is a compound class name that cotains namespace prefix */
+ if (Z_TYPE(class_name->u.constant) == IS_STRING &&
+ Z_STRVAL(class_name->u.constant)[0] == ':') {
+ /* The STRING name has "::" prefix */
+ Z_STRLEN(class_name->u.constant) -= 2;
+ memmove(Z_STRVAL(class_name->u.constant), Z_STRVAL(class_name->u.constant)+2, Z_STRLEN(class_name->u.constant)+1);
Z_STRVAL(class_name->u.constant) = erealloc(
Z_STRVAL(class_name->u.constant),
Z_STRLEN(class_name->u.constant) + 1);
if (ZEND_FETCH_CLASS_DEFAULT != zend_get_class_fetch_type(Z_STRVAL(class_name->u.constant), Z_STRLEN(class_name->u.constant))) {
- zend_error(E_COMPILE_ERROR, "'\\%s' is an invalid class name", Z_STRVAL(class_name->u.constant));
+ zend_error(E_COMPILE_ERROR, "'::%s' is a wrong class name", Z_STRVAL(class_name->u.constant));
}
- } else {
- if (CG(current_import)) {
- len = compound - Z_STRVAL(class_name->u.constant);
- lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), len);
- /* Check if first part of compound name is an import name */
- if (zend_hash_find(CG(current_import), lcname, len+1, (void**)&ns) == SUCCESS) {
- /* Substitute import name */
- tmp.op_type = IS_CONST;
- tmp.u.constant = **ns;
- zval_copy_ctor(&tmp.u.constant);
- len += 1;
- Z_STRLEN(class_name->u.constant) -= len;
- memmove(Z_STRVAL(class_name->u.constant), Z_STRVAL(class_name->u.constant)+len, Z_STRLEN(class_name->u.constant)+1);
- zend_do_build_namespace_name(&tmp, &tmp, class_name TSRMLS_CC);
- *class_name = tmp;
- efree(lcname);
- return;
- }
- efree(lcname);
- }
- /* Here name is not prefixed with \ and not imported */
- if (CG(current_namespace)) {
+ } else if (CG(current_import)) {
+ len = compound - Z_STRVAL(class_name->u.constant);
+ lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), len);
+ /* Check if first part of compound name is an import name */
+ if (zend_hash_find(CG(current_import), lcname, len+1, (void**)&ns) == SUCCESS) {
+ /* Substitute import name */
tmp.op_type = IS_CONST;
- tmp.u.constant = *CG(current_namespace);
+ tmp.u.constant = **ns;
zval_copy_ctor(&tmp.u.constant);
+ len += 2;
+ Z_STRLEN(class_name->u.constant) -= len;
+ memmove(Z_STRVAL(class_name->u.constant), Z_STRVAL(class_name->u.constant)+len, Z_STRLEN(class_name->u.constant)+1);
zend_do_build_namespace_name(&tmp, &tmp, class_name TSRMLS_CC);
*class_name = tmp;
}
+ efree(lcname);
}
} else if (CG(current_import) || CG(current_namespace)) {
- /* this is a plain name (without \) */
+ /* this is a plain name (without ::) */
lcname = zend_str_tolower_dup(Z_STRVAL(class_name->u.constant), Z_STRLEN(class_name->u.constant));
if (CG(current_import) &&
@@ -1795,7 +1723,23 @@ void zend_resolve_class_name(znode *class_name, ulong *fetch_type, int check_ns_
class_name->u.constant = **ns;
zval_copy_ctor(&class_name->u.constant);
} else if (CG(current_namespace)) {
- /* plain name, no import - prepend current namespace to it */
+ zend_class_entry **pce;
+
+ if (check_ns_name) {
+ /* PHP will need to perform additional cheks at run-time to
+ determine if we assume namespace or class name. */
+ *fetch_type |= ZEND_FETCH_CLASS_RT_NS_NAME;
+ }
+
+ if ((CG(compiler_options) & ZEND_COMPILE_IGNORE_INTERNAL_CLASSES) ||
+ (zend_hash_find(CG(class_table), lcname, Z_STRLEN(class_name->u.constant)+1, (void**)&pce) == SUCCESS &&
+ (*pce)->type == ZEND_INTERNAL_CLASS)) {
+ /* There is an internal class with the same name exists.
+ PHP will need to perform additional cheks at run-time to
+ determine if we assume class in current namespace or
+ internal one. */
+ *fetch_type |= ZEND_FETCH_CLASS_RT_NS_CHECK;
+ }
tmp.op_type = IS_CONST;
tmp.u.constant = *CG(current_namespace);
zval_copy_ctor(&tmp.u.constant);
@@ -1958,7 +1902,7 @@ void zend_release_labels(TSRMLS_D) /* {{{ */
}
/* }}} */
-void zend_do_build_full_name(znode *result, znode *prefix, znode *name, int is_class_member TSRMLS_DC)
+void zend_do_build_full_name(znode *result, znode *prefix, znode *name TSRMLS_DC)
{
zend_uint length;
@@ -1968,21 +1912,12 @@ void zend_do_build_full_name(znode *result, znode *prefix, znode *name, int is_c
*result = *prefix;
}
- if (is_class_member) {
- length = sizeof("::")-1 + result->u.constant.value.str.len + name->u.constant.value.str.len;
- result->u.constant.value.str.val = erealloc(result->u.constant.value.str.val, length+1);
- memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len], "::", sizeof("::")-1);
- memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len + sizeof("::")-1], name->u.constant.value.str.val, name->u.constant.value.str.len+1);
- STR_FREE(name->u.constant.value.str.val);
- result->u.constant.value.str.len = length;
- } else {
- length = sizeof("\\")-1 + result->u.constant.value.str.len + name->u.constant.value.str.len;
- result->u.constant.value.str.val = erealloc(result->u.constant.value.str.val, length+1);
- memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len], "\\", sizeof("\\")-1);
- memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len + sizeof("\\")-1], name->u.constant.value.str.val, name->u.constant.value.str.len+1);
- STR_FREE(name->u.constant.value.str.val);
- result->u.constant.value.str.len = length;
- }
+ length = sizeof("::")-1 + result->u.constant.value.str.len + name->u.constant.value.str.len;
+ result->u.constant.value.str.val = erealloc(result->u.constant.value.str.val, length+1);
+ memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len], "::", sizeof("::")-1);
+ memcpy(&result->u.constant.value.str.val[result->u.constant.value.str.len + sizeof("::")-1], name->u.constant.value.str.val, name->u.constant.value.str.len+1);
+ STR_FREE(name->u.constant.value.str.val);
+ result->u.constant.value.str.len = length;
}
int zend_do_begin_class_member_function_call(znode *class_name, znode *method_name TSRMLS_DC)
@@ -1992,11 +1927,10 @@ int zend_do_begin_class_member_function_call(znode *class_name, znode *method_na
zend_op *opline;
ulong fetch_type = 0;
-#if 0
if (class_name->op_type == IS_CONST &&
Z_TYPE(class_name->u.constant) == IS_STRING &&
Z_STRLEN(class_name->u.constant) == 0) {
- /* namespace\func() not in namespace */
+ /* namespace::func() not in namespace */
zval_dtor(&class_name->u.constant);
if (CG(current_namespace)) {
znode tmp;
@@ -2009,7 +1943,6 @@ int zend_do_begin_class_member_function_call(znode *class_name, znode *method_na
}
return zend_do_begin_function_call(method_name, 0 TSRMLS_CC);
}
-#endif
if (method_name->op_type == IS_CONST) {
char *lcname = zend_str_tolower_dup(Z_STRVAL(method_name->u.constant), Z_STRLEN(method_name->u.constant));
@@ -2032,12 +1965,13 @@ int zend_do_begin_class_member_function_call(znode *class_name, znode *method_na
}
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->opcode = ZEND_INIT_STATIC_METHOD_CALL;
+ opline->extended_value = fetch_type & ~ZEND_FETCH_CLASS_RT_NS_NAME;
opline->op1 = class_node;
opline->op2 = *method_name;
if (class_node.op_type == IS_CONST &&
method_name->op_type == IS_CONST) {
- /* Prebuild ns\func name to speedup run-time check.
+ /* Prebuild ns::func name to speedup run-time check.
The additional names are stored in additional OP_DATA opcode. */
char *nsname, *fname;
unsigned int nsname_len, len;
@@ -2049,11 +1983,17 @@ int zend_do_begin_class_member_function_call(znode *class_name, znode *method_na
nsname = Z_STRVAL(class_node.u.constant);
nsname_len = Z_STRLEN(class_node.u.constant);
- len = nsname_len + 1 + Z_STRLEN(method_name->u.constant);
+ if (fetch_type & ZEND_FETCH_CLASS_RT_NS_NAME) {
+ /* Remove namespace name */
+ nsname = (char *)memchr(nsname, ':', nsname_len) + 2;
+ nsname_len -= (nsname - Z_STRVAL(class_node.u.constant));
+ }
+ len = nsname_len + 2 + Z_STRLEN(method_name->u.constant);
fname = emalloc(len + 1);
memcpy(fname, nsname, nsname_len);
- fname[nsname_len] = '\\';
- memcpy(fname + nsname_len + 1,
+ fname[nsname_len] = ':';
+ fname[nsname_len + 1] = ':';
+ memcpy(fname + nsname_len + 2,
Z_STRVAL(method_name->u.constant),
Z_STRLEN(method_name->u.constant)+1);
zend_str_tolower(fname, len);
@@ -2583,8 +2523,8 @@ static zend_bool zend_do_perform_implementation_check(const zend_function *fe, c
char *colon;
if (fe->common.type != ZEND_USER_FUNCTION ||
- strchr(proto->common.arg_info[i].class_name, '\\') != NULL ||
- (colon = zend_memrchr(fe->common.arg_info[i].class_name, '\\', fe->common.arg_info[i].class_name_len)) == NULL ||
+ strchr(proto->common.arg_info[i].class_name, ':') != NULL ||
+ (colon = zend_memrchr(fe->common.arg_info[i].class_name, ':', fe->common.arg_info[i].class_name_len)) == NULL ||
strcasecmp(colon+1, proto->common.arg_info[i].class_name) != 0) {
return 0;
}
@@ -3831,20 +3771,7 @@ static zend_constant* zend_get_ct_const(const zval *const_name, int all_internal
{
zend_constant *c = NULL;
- if (Z_STRVAL_P(const_name)[0] == '\\') {
- if (zend_hash_find(EG(zend_constants), Z_STRVAL_P(const_name)+1, Z_STRLEN_P(const_name), (void **) &c) == FAILURE) {
- char *lookup_name = zend_str_tolower_dup(Z_STRVAL_P(const_name)+1, Z_STRLEN_P(const_name)-1);
-
- if (zend_hash_find(EG(zend_constants), lookup_name, Z_STRLEN_P(const_name), (void **) &c)==SUCCESS) {
- if ((c->flags & CONST_CT_SUBST) && !(c->flags & CONST_CS)) {
- efree(lookup_name);
- return c;
- }
- }
- efree(lookup_name);
- return NULL;
- }
- } else if (zend_hash_find(EG(zend_constants), Z_STRVAL_P(const_name), Z_STRLEN_P(const_name)+1, (void **) &c) == FAILURE) {
+ if (zend_hash_find(EG(zend_constants), Z_STRVAL_P(const_name), Z_STRLEN_P(const_name)+1, (void **) &c) == FAILURE) {
char *lookup_name = zend_str_tolower_dup(Z_STRVAL_P(const_name), Z_STRLEN_P(const_name));
if (zend_hash_find(EG(zend_constants), lookup_name, Z_STRLEN_P(const_name)+1, (void **) &c)==SUCCESS) {
@@ -3888,88 +3815,112 @@ static int zend_constant_ct_subst(znode *result, zval *const_name, int all_inter
void zend_do_fetch_constant(znode *result, znode *constant_container, znode *constant_name, int mode, zend_bool check_namespace TSRMLS_DC) /* {{{ */
{
- znode tmp;
- zend_op *opline;
- int type;
- char *compound;
ulong fetch_type = 0;
+ znode tmp;
+
+ if (constant_container &&
+ constant_container->op_type == IS_CONST &&
+ Z_TYPE(constant_container->u.constant) == IS_STRING &&
+ Z_STRLEN(constant_container->u.constant) == 0) {
+ /* namespace::const */
+ zval_dtor(&constant_container->u.constant);
+ check_namespace = 1;
+ constant_container = NULL;
+ fetch_type = ZEND_FETCH_CLASS_RT_NS_CHECK | IS_CONSTANT_RT_NS_CHECK;
+ }
+
+ switch (mode) {
+ case ZEND_CT:
+ if (constant_container) {
+ int type = zend_get_class_fetch_type(Z_STRVAL(constant_container->u.constant), Z_STRLEN(constant_container->u.constant));
- if (constant_container) {
- switch (mode) {
- case ZEND_CT:
- /* this is a class constant */
- type = zend_get_class_fetch_type(Z_STRVAL(constant_container->u.constant), Z_STRLEN(constant_container->u.constant));
-
if (ZEND_FETCH_CLASS_STATIC == type) {
zend_error(E_ERROR, "\"static::\" is not allowed in compile-time constants");
} else if (ZEND_FETCH_CLASS_DEFAULT == type) {
zend_resolve_class_name(constant_container, &fetch_type, 1 TSRMLS_CC);
}
- zend_do_build_full_name(NULL, constant_container, constant_name, 1 TSRMLS_CC);
+ zend_do_build_full_name(NULL, constant_container, constant_name TSRMLS_CC);
*result = *constant_container;
result->u.constant.type = IS_CONSTANT | fetch_type;
- break;
- case ZEND_RT:
- if (constant_container->op_type == IS_CONST &&
- ZEND_FETCH_CLASS_DEFAULT == zend_get_class_fetch_type(Z_STRVAL(constant_container->u.constant), Z_STRLEN(constant_container->u.constant))) {
- zend_resolve_class_name(constant_container, &fetch_type, 1 TSRMLS_CC);
- } else {
- zend_do_fetch_class(&tmp, constant_container TSRMLS_CC);
+ } else if (fetch_type || !zend_constant_ct_subst(result, &constant_name->u.constant, 0 TSRMLS_CC)) {
+ if (check_namespace && CG(current_namespace)) {
+ /* We assume we use constant from the current namespace
+ if it is not prefixed. */
+ tmp.op_type = IS_CONST;
+ tmp.u.constant = *CG(current_namespace);
+ zval_copy_ctor(&tmp.u.constant);
+ zend_do_build_namespace_name(&tmp, &tmp, constant_name TSRMLS_CC);
+ *constant_name = tmp;
+ fetch_type |= IS_CONSTANT_RT_NS_CHECK;
+ }
+ *result = *constant_name;
+ result->u.constant.type = IS_CONSTANT | fetch_type;
+ }
+ break;
+ case ZEND_RT:
+ if (constant_container ||
+ !zend_constant_ct_subst(result, &constant_name->u.constant, (!CG(current_namespace) || !check_namespace) TSRMLS_CC)) {
+ zend_op *opline;
+
+ if (constant_container) {
+ if (constant_container->op_type == IS_CONST &&
+ ZEND_FETCH_CLASS_DEFAULT == zend_get_class_fetch_type(Z_STRVAL(constant_container->u.constant), Z_STRLEN(constant_container->u.constant))) {
+ zend_resolve_class_name(constant_container, &fetch_type, 1 TSRMLS_CC);
+ } else {
+ zend_do_fetch_class(&tmp, constant_container TSRMLS_CC);
+ constant_container = &tmp;
+ }
+ } else if (check_namespace && CG(current_namespace)) {
+ /* We assume we use constant from the current namespace
+ if it is not prefixed. */
+ tmp.op_type = IS_CONST;
+ tmp.u.constant = *CG(current_namespace);
+ zval_copy_ctor(&tmp.u.constant);
constant_container = &tmp;
+ fetch_type |= IS_CONSTANT_RT_NS_CHECK;
}
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->opcode = ZEND_FETCH_CONSTANT;
+ opline->extended_value = fetch_type & ~ZEND_FETCH_CLASS_RT_NS_NAME;
opline->result.op_type = IS_TMP_VAR;
opline->result.u.var = get_temporary_variable(CG(active_op_array));
- opline->op1 = *constant_container;
+ if (constant_container) {
+ opline->op1 = *constant_container;
+ } else {
+ SET_UNUSED(opline->op1);
+ }
opline->op2 = *constant_name;
*result = opline->result;
- break;
- }
- return;
- }
- /* namespace constant */
- /* only one that did not contain \ from the start can be converted to string if unknown */
- switch (mode) {
- case ZEND_CT:
- compound = memchr(Z_STRVAL(constant_name->u.constant), '\\', Z_STRLEN(constant_name->u.constant));
- /* this is a namespace constant, or an unprefixed constant */
-
- if (zend_constant_ct_subst(result, &constant_name->u.constant, 0 TSRMLS_CC)) {
- break;
- }
- zend_resolve_non_class_name(constant_name, check_namespace TSRMLS_CC);
-
- if(!compound) {
- fetch_type |= IS_CONSTANT_UNQUALIFIED;
- }
-
- *result = *constant_name;
- result->u.constant.type = IS_CONSTANT | fetch_type;
- break;
- case ZEND_RT:
- compound = memchr(Z_STRVAL(constant_name->u.constant), '\\', Z_STRLEN(constant_name->u.constant));
-
- zend_resolve_non_class_name(constant_name, check_namespace TSRMLS_CC);
-
- if(zend_constant_ct_subst(result, &constant_name->u.constant, 1 TSRMLS_CC)) {
- break;
- }
+ if (opline->op1.op_type == IS_CONST) {
+ /* Prebuild ns::func name to speedup run-time check.
+ The additional names are stored in additional OP_DATA opcode. */
+ char *nsname;
+ unsigned int nsname_len;
+
+ opline = get_next_op(CG(active_op_array) TSRMLS_CC);
+ opline->opcode = ZEND_OP_DATA;
+ opline->op1.op_type = IS_CONST;
+ SET_UNUSED(opline->op2);
+
+ nsname = Z_STRVAL(constant_container->u.constant);
+ nsname_len = Z_STRLEN(constant_container->u.constant);
+ if (fetch_type & ZEND_FETCH_CLASS_RT_NS_NAME) {
+ /* Remove namespace name */
+ nsname = (char *)memchr(nsname, ':', nsname_len) + 2;
+ nsname_len -= (nsname - Z_STRVAL(constant_container->u.constant));
+ }
- opline = get_next_op(CG(active_op_array) TSRMLS_CC);
- opline->opcode = ZEND_FETCH_CONSTANT;
- opline->result.op_type = IS_TMP_VAR;
- opline->result.u.var = get_temporary_variable(CG(active_op_array));
- *result = opline->result;
- SET_UNUSED(opline->op1);
- if(compound) {
- /* the name is unambiguous */
- opline->extended_value = 0;
- } else {
- opline->extended_value = IS_CONSTANT_UNQUALIFIED;
+ Z_TYPE(opline->op1.u.constant) = IS_STRING;
+ Z_STRVAL(opline->op1.u.constant) = emalloc(nsname_len + 2 + Z_STRLEN(constant_name->u.constant) + 1);
+ zend_str_tolower_copy(Z_STRVAL(opline->op1.u.constant), nsname, nsname_len);
+ Z_STRVAL(opline->op1.u.constant)[nsname_len] = ':';
+ Z_STRVAL(opline->op1.u.constant)[nsname_len+1] = ':';
+ memcpy(Z_STRVAL(opline->op1.u.constant)+nsname_len+2, Z_STRVAL(constant_name->u.constant), Z_STRLEN(constant_name->u.constant) + 1);
+ Z_STRLEN(opline->op1.u.constant) = nsname_len + 2 + Z_STRLEN(constant_name->u.constant);
+ opline->extended_value = zend_hash_func(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant) + 1);
+ }
}
- opline->op2 = *constant_name;
break;
}
}
@@ -4681,13 +4632,12 @@ void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC)
zend_multibyte_yyinput_again(old_input_filter, old_encoding TSRMLS_CC);
}
}
- efree(val->u.constant.value.str.val);
#else /* !ZEND_MULTIBYTE */
} else if (!zend_binary_strcasecmp(var->u.constant.value.str.val, var->u.constant.value.str.len, "encoding", sizeof("encoding")-1)) {
/* Do not generate any kind of warning for encoding declares */
/* zend_error(E_COMPILE_WARNING, "Declare encoding [%s] not supported", val->u.constant.value.str.val); */
- zval_dtor(&val->u.constant);
#endif /* ZEND_MULTIBYTE */
+ efree(val->u.constant.value.str.val);
} else {
zend_error(E_COMPILE_WARNING, "Unsupported declare '%s'", var->u.constant.value.str.val);
zval_dtor(&val->u.constant);
@@ -4952,9 +4902,6 @@ again:
if (LANG_SCNG(yy_text)[LANG_SCNG(yy_leng)-1] != '>') {
CG(increment_lineno) = 1;
}
- if (CG(has_bracketed_namespaces) && !CG(in_namespace)) {
- goto again;
- }
retval = ';'; /* implicit ; */
break;
case T_OPEN_TAG_WITH_ECHO:
@@ -5066,7 +5013,7 @@ void zend_do_build_namespace_name(znode *result, znode *prefix, znode *name TSRM
*result = *prefix;
if (Z_TYPE(result->u.constant) == IS_STRING &&
Z_STRLEN(result->u.constant) == 0) {
- /* namespace\ */
+ /* namespace:: */
if (CG(current_namespace)) {
znode tmp;
@@ -5084,32 +5031,15 @@ void zend_do_build_namespace_name(znode *result, znode *prefix, znode *name TSRM
Z_STRLEN(result->u.constant) = 0;
}
/* prefix = result */
- zend_do_build_full_name(NULL, result, name, 0 TSRMLS_CC);
+ zend_do_build_full_name(NULL, result, name TSRMLS_CC);
}
/* }}} */
-void zend_do_begin_namespace(const znode *name, zend_bool with_bracket TSRMLS_DC) /* {{{ */
+void zend_do_namespace(const znode *name TSRMLS_DC) /* {{{ */
{
char *lcname;
- /* handle mixed syntax declaration or nested namespaces */
- if (!CG(has_bracketed_namespaces)) {
- if (CG(current_namespace)) {
- /* previous namespace declarations were unbracketed */
- if (with_bracket) {
- zend_error(E_COMPILE_ERROR, "Cannot mix bracketed namespace declarations with unbracketed namespace declarations");
- }
- }
- } else {
- /* previous namespace declarations were bracketed */
- if (!with_bracket) {
- zend_error(E_COMPILE_ERROR, "Cannot mix bracketed namespace declarations with unbracketed namespace declarations");
- } else if (CG(current_namespace) || CG(in_namespace)) {
- zend_error(E_COMPILE_ERROR, "Namespace declarations cannot be nested");
- }
- }
-
- if (((!with_bracket && !CG(current_namespace)) || (with_bracket && !CG(has_bracketed_namespaces))) && CG(active_op_array)->last > 0) {
+ if (CG(active_op_array)->last > 0) {
/* ignore ZEND_EXT_STMT and ZEND_TICKS */
int num = CG(active_op_array)->last;
while (num > 0 &&
@@ -5117,45 +5047,31 @@ void zend_do_begin_namespace(const znode *name, zend_bool with_bracket TSRMLS_DC
CG(active_op_array)->opcodes[num-1].opcode == ZEND_TICKS)) {
--num;
}
- if (num > 0) {
+ if (!CG(current_namespace) && num > 0) {
zend_error(E_COMPILE_ERROR, "Namespace declaration statement has to be the very first statement in the script");
}
}
-
- CG(in_namespace) = 1;
- if (with_bracket) {
- CG(has_bracketed_namespaces) = 1;
+ lcname = zend_str_tolower_dup(Z_STRVAL(name->u.constant), Z_STRLEN(name->u.constant));
+ if (((Z_STRLEN(name->u.constant) == sizeof("self")-1) &&
+ !memcmp(lcname, "self", sizeof("self")-1)) ||
+ ((Z_STRLEN(name->u.constant) == sizeof("parent")-1) &&
+ !memcmp(lcname, "parent", sizeof("parent")-1))) {
+ zend_error(E_COMPILE_ERROR, "Cannot use '%s' as namespace name", Z_STRVAL(name->u.constant));
}
+ efree(lcname);
- if (name) {
- lcname = zend_str_tolower_dup(Z_STRVAL(name->u.constant), Z_STRLEN(name->u.constant));
- if (((Z_STRLEN(name->u.constant) == sizeof("self")-1) &&
- !memcmp(lcname, "self", sizeof("self")-1)) ||
- ((Z_STRLEN(name->u.constant) == sizeof("parent")-1) &&
- !memcmp(lcname, "parent", sizeof("parent")-1))) {
- zend_error(E_COMPILE_ERROR, "Cannot use '%s' as namespace name", Z_STRVAL(name->u.constant));
- }
- efree(lcname);
-
- if (CG(current_namespace)) {
- zval_dtor(CG(current_namespace));
- } else {
- ALLOC_ZVAL(CG(current_namespace));
- }
- *CG(current_namespace) = name->u.constant;
+ if (CG(current_namespace)) {
+ zval_dtor(CG(current_namespace));
} else {
- if (CG(current_namespace)) {
- zval_dtor(CG(current_namespace));
- FREE_ZVAL(CG(current_namespace));
- CG(current_namespace) = NULL;
- }
+ ALLOC_ZVAL(CG(current_namespace));
}
-
if (CG(current_import)) {
zend_hash_destroy(CG(current_import));
efree(CG(current_import));
CG(current_import) = NULL;
}
+
+ *CG(current_namespace) = name->u.constant;
}
/* }}} */
@@ -5178,10 +5094,10 @@ void zend_do_use(znode *ns_name, znode *new_name, int is_global TSRMLS_DC) /* {{
} else {
char *p;
- /* The form "use A\B" is eqivalent to "use A\B as B".
- So we extract the last part of compound name to use as a new_name */
+ /* The form "use A::B" is eqivalent to "use A::B as B".
+ So we extract the last part of compound name ti use as a new_name */
name = &tmp;
- p = zend_memrchr(Z_STRVAL_P(ns), '\\', Z_STRLEN_P(ns));
+ p = zend_memrchr(Z_STRVAL_P(ns), ':', Z_STRLEN_P(ns));
if (p) {
ZVAL_STRING(name, p+1, 1);
} else {
@@ -5202,15 +5118,16 @@ void zend_do_use(znode *ns_name, znode *new_name, int is_global TSRMLS_DC) /* {{
if (CG(current_namespace)) {
/* Prefix import name with current namespace name to avoid conflicts with classes */
- char *ns_name = emalloc(Z_STRLEN_P(CG(current_namespace)) + 1 + Z_STRLEN_P(name) + 1);
+ char *ns_name = emalloc(Z_STRLEN_P(CG(current_namespace)) + 2 + Z_STRLEN_P(name) + 1);
zend_str_tolower_copy(ns_name, Z_STRVAL_P(CG(current_namespace)), Z_STRLEN_P(CG(current_namespace)));
- ns_name[Z_STRLEN_P(CG(current_namespace))] = '\\';
- memcpy(ns_name+Z_STRLEN_P(CG(current_namespace))+1, lcname, Z_STRLEN_P(name)+1);
- if (zend_hash_exists(CG(class_table), ns_name, Z_STRLEN_P(CG(current_namespace)) + 1 + Z_STRLEN_P(name)+1)) {
+ ns_name[Z_STRLEN_P(CG(current_namespace))] = ':';
+ ns_name[Z_STRLEN_P(CG(current_namespace))+1] = ':';
+ memcpy(ns_name+Z_STRLEN_P(CG(current_namespace))+2, lcname, Z_STRLEN_P(name)+1);
+ if (zend_hash_exists(CG(class_table), ns_name, Z_STRLEN_P(CG(current_namespace)) + 2 + Z_STRLEN_P(name)+1)) {
char *tmp = zend_str_tolower_dup(Z_STRVAL_P(ns), Z_STRLEN_P(ns));
- if (Z_STRLEN_P(ns) != Z_STRLEN_P(CG(current_namespace)) + 1 + Z_STRLEN_P(name) ||
+ if (Z_STRLEN_P(ns) != Z_STRLEN_P(CG(current_namespace)) + 2 + Z_STRLEN_P(name) ||
memcmp(tmp, ns_name, Z_STRLEN_P(ns))) {
zend_error(E_COMPILE_ERROR, "Cannot use %s as %s because the name is already in use", Z_STRVAL_P(ns), Z_STRVAL_P(name));
}
@@ -5253,7 +5170,7 @@ void zend_do_declare_constant(znode *name, znode *value TSRMLS_DC) /* {{{ */
}
if (CG(current_namespace)) {
- /* Prefix constant name with name of current namespace, lowercased */
+ /* Prefix constant name with name of current namespace */
znode tmp;
tmp.op_type = IS_CONST;
@@ -5271,17 +5188,8 @@ void zend_do_declare_constant(znode *name, znode *value TSRMLS_DC) /* {{{ */
}
/* }}} */
-void zend_verify_namespace(TSRMLS_D) /* {{{ */
-{
- if (CG(has_bracketed_namespaces) && !CG(in_namespace)) {
- zend_error(E_COMPILE_ERROR, "No code may exist outside of namespace {}");
- }
-}
-/* }}} */
-
-void zend_do_end_namespace(TSRMLS_D) /* {{{ */
+void zend_do_end_compilation(TSRMLS_D) /* {{{ */
{
- CG(in_namespace) = 0;
if (CG(current_namespace)) {
zval_dtor(CG(current_namespace));
FREE_ZVAL(CG(current_namespace));
@@ -5295,13 +5203,6 @@ void zend_do_end_namespace(TSRMLS_D) /* {{{ */
}
/* }}} */
-void zend_do_end_compilation(TSRMLS_D) /* {{{ */
-{
- CG(has_bracketed_namespaces) = 0;
- zend_do_end_namespace(TSRMLS_C);
-}
-/* }}} */
-
/* {{{ zend_dirname
Returns directory name component of path */
ZEND_API size_t zend_dirname(char *path, size_t len)
diff --git a/Zend/zend_compile.h b/Zend/zend_compile.h
index c607604cae..cb76bc4780 100644
--- a/Zend/zend_compile.h
+++ b/Zend/zend_compile.h
@@ -359,7 +359,6 @@ ZEND_API char *zend_get_compiled_filename(TSRMLS_D);
ZEND_API int zend_get_compiled_lineno(TSRMLS_D);
ZEND_API size_t zend_get_scanned_file_offset(TSRMLS_D);
-void zend_resolve_non_class_name(znode *element_name, zend_bool check_namespace TSRMLS_DC);
void zend_resolve_class_name(znode *class_name, ulong *fetch_type, int check_ns_name TSRMLS_DC);
ZEND_API char* zend_get_compiled_variable_name(const zend_op_array *op_array, zend_uint var, int* name_len);
@@ -428,7 +427,7 @@ void zend_do_begin_method_call(znode *left_bracket TSRMLS_DC);
void zend_do_clone(znode *result, const znode *expr TSRMLS_DC);
void zend_do_begin_dynamic_function_call(znode *function_name, int prefix_len TSRMLS_DC);
void zend_do_fetch_class(znode *result, znode *class_name TSRMLS_DC);
-void zend_do_build_full_name(znode *result, znode *prefix, znode *name, int is_class_member TSRMLS_DC);
+void zend_do_build_full_name(znode *result, znode *prefix, znode *name TSRMLS_DC);
int zend_do_begin_class_member_function_call(znode *class_name, znode *method_name TSRMLS_DC);
void zend_do_end_function_call(znode *function_name, znode *result, const znode *argument_list, int is_method, int is_dynamic_fcall TSRMLS_DC);
void zend_do_return(znode *expr, int do_end_vparse TSRMLS_DC);
@@ -537,9 +536,7 @@ void zend_do_abstract_method(const znode *function_name, znode *modifiers, const
void zend_do_declare_constant(znode *name, znode *value TSRMLS_DC);
void zend_do_build_namespace_name(znode *result, znode *prefix, znode *name TSRMLS_DC);
-void zend_do_begin_namespace(const znode *name, zend_bool with_brackets TSRMLS_DC);
-void zend_do_end_namespace(TSRMLS_D);
-void zend_verify_namespace(TSRMLS_D);
+void zend_do_namespace(const znode *name TSRMLS_DC);
void zend_do_use(znode *name, znode *new_name, int is_global TSRMLS_DC);
void zend_do_end_compilation(TSRMLS_D);
@@ -638,6 +635,8 @@ int zendlex(znode *zendlval TSRMLS_DC);
#define ZEND_FETCH_CLASS_INTERFACE 6
#define ZEND_FETCH_CLASS_STATIC 7
#define ZEND_FETCH_CLASS_MASK 0x0f
+#define ZEND_FETCH_CLASS_RT_NS_CHECK 0x20
+#define ZEND_FETCH_CLASS_RT_NS_NAME 0x40
#define ZEND_FETCH_CLASS_NO_AUTOLOAD 0x80
#define ZEND_FETCH_CLASS_SILENT 0x0100
diff --git a/Zend/zend_constants.c b/Zend/zend_constants.c
index cdf4dcac65..f215a885ba 100644
--- a/Zend/zend_constants.c
+++ b/Zend/zend_constants.c
@@ -277,26 +277,27 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
zend_constant *c;
int retval = 1;
char *colon;
- zend_class_entry *ce = NULL;
- char *class_name;
- zval **ret_constant;
-
- /* Skip leading \\ */
- if (name[0] == '\\') {
- name += 1;
- name_len -= 1;
- }
+ /* Skip leading :: */
+ if (name[0] == ':' && name[1] == ':') {
+ name += 2;
+ name_len -= 2;
+ flags &= ZEND_FETCH_CLASS_SILENT;
+ }
+
if ((colon = zend_memrchr(name, ':', name_len)) &&
- colon > name && (*(colon - 1) == ':')) {
+ colon > name &&
+ *(colon-1) == ':') {
+ /* compound constant name */
+ zend_class_entry *ce = NULL;
int class_name_len = colon - name - 1;
int const_name_len = name_len - class_name_len - 2;
- char *constant_name = colon + 1;
- char *lcname;
+ char *constant_name = constant_name = colon + 1;
+ char *class_name = estrndup(name, class_name_len);
+ char *lcname = zend_str_tolower_dup(class_name, class_name_len);
+ zval **ret_constant;
- class_name = estrndup(name, class_name_len);
- lcname = zend_str_tolower_dup(class_name, class_name_len);
if (!scope) {
if (EG(in_execution)) {
scope = EG(scope);
@@ -333,58 +334,62 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
}
efree(lcname);
} else {
+ /* Check for namespace constant */
+ char *nsname;
+ unsigned int nsname_len;
+
+ /* Concatenate lowercase namespace name and constant name */
+ lcname = erealloc(lcname, class_name_len + 2 + const_name_len + 1);
+ lcname[class_name_len] = ':';
+ lcname[class_name_len+1] = ':';
+ memcpy(lcname + class_name_len + 2, constant_name, const_name_len + 1);
+
+ nsname = lcname;
+ nsname_len = class_name_len + 2 + const_name_len;
+ if (flags & ZEND_FETCH_CLASS_RT_NS_NAME) {
+ nsname = (char *)memchr(nsname, ':', nsname_len) + 2;
+ nsname_len -= (nsname - lcname);
+ }
+
+ if (zend_hash_find(EG(zend_constants), nsname, nsname_len+1, (void **) &c) == SUCCESS) {
+ efree(lcname);
+ efree(class_name);
+ *result = c->value;
+ zval_update_constant_ex(&result, (void*)1, NULL TSRMLS_CC);
+ zval_copy_ctor(result);
+ Z_SET_REFCOUNT_P(result, 1);
+ Z_UNSET_ISREF_P(result);
+ return 1;
+ }
efree(lcname);
- ce = zend_fetch_class(class_name, class_name_len, flags TSRMLS_CC);
+
+ if ((flags & IS_CONSTANT_RT_NS_CHECK) == 0) {
+ /* Check for class */
+ ce = zend_fetch_class(class_name, class_name_len, flags TSRMLS_CC);
+ }
}
+
if (retval && ce) {
if (zend_hash_find(&ce->constants_table, constant_name, const_name_len+1, (void **) &ret_constant) != SUCCESS) {
retval = 0;
+ }
+ } else {
+ if ((flags & ZEND_FETCH_CLASS_RT_NS_NAME) == 0) {
+ if ((flags & IS_CONSTANT_RT_NS_CHECK) != 0) {
+ name = constant_name;
+ name_len = const_name_len;
+ efree(class_name);
+ retval = 1;
+ return zend_get_constant(name, name_len, result TSRMLS_CC);
+ }
if ((flags & ZEND_FETCH_CLASS_SILENT) == 0) {
- zend_error(E_ERROR, "Undefined class constant '%s::%s'", class_name, constant_name);
+ zend_error(E_ERROR, "Class '%s' not found", class_name);
}
}
- } else if (!ce) {
retval = 0;
}
efree(class_name);
- goto finish;
- }
-
- /* non-class constant */
- if ((colon = zend_memrchr(name, '\\', name_len)) != NULL) {
- /* compound constant name */
- int prefix_len = colon - name;
- int const_name_len = name_len - prefix_len - 1;
- char *constant_name = colon + 1;
- char *lcname;
-
- lcname = zend_str_tolower_dup(name, prefix_len);
- /* Check for namespace constant */
- /* Concatenate lowercase namespace name and constant name */
- lcname = erealloc(lcname, prefix_len + 1 + const_name_len + 1);
- lcname[prefix_len] = '\\';
- memcpy(lcname + prefix_len + 1, constant_name, const_name_len + 1);
-
- if (zend_hash_find(EG(zend_constants), lcname, prefix_len + 1 + const_name_len + 1, (void **) &c) == SUCCESS) {
- efree(lcname);
- *result = c->value;
- zval_update_constant_ex(&result, (void*)1, NULL TSRMLS_CC);
- zval_copy_ctor(result);
- Z_SET_REFCOUNT_P(result, 1);
- Z_UNSET_ISREF_P(result);
- return 1;
- }
-
- efree(lcname);
- /* name requires runtime resolution, need to check non-namespaced name */
- if ((flags & IS_CONSTANT_UNQUALIFIED) != 0) {
- name = constant_name;
- name_len = const_name_len;
- return zend_get_constant(name, name_len, result TSRMLS_CC);
- }
- retval = 0;
-finish:
if (retval) {
zval_update_constant_ex(ret_constant, (void*)1, ce TSRMLS_CC);
*result = **ret_constant;
diff --git a/Zend/zend_exceptions.c b/Zend/zend_exceptions.c
index 564c653474..aeab6e6421 100644
--- a/Zend/zend_exceptions.c
+++ b/Zend/zend_exceptions.c
@@ -551,7 +551,7 @@ ZEND_METHOD(exception, __toString)
fci.function_table = &Z_OBJCE_P(exception)->function_table;
fci.function_name = &fname;
fci.symbol_table = NULL;
- fci.object_ptr = exception;
+ fci.object_pp = &exception;
fci.retval_ptr_ptr = &trace;
fci.param_count = 0;
fci.params = NULL;
@@ -605,6 +605,7 @@ ZEND_METHOD(exception, __toString)
* And never try to change the state of exceptions and never implement anything
* that gives the user anything to accomplish this.
*/
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_exception___construct, 0, 0, 0)
ZEND_ARG_INFO(0, message)
ZEND_ARG_INFO(0, code)
@@ -625,6 +626,7 @@ const static zend_function_entry default_exception_functions[] = {
{NULL, NULL, NULL}
};
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_error_exception___construct, 0, 0, 0)
ZEND_ARG_INFO(0, message)
ZEND_ARG_INFO(0, code)
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index f356b8d910..96aa0bad23 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -146,7 +146,6 @@ void init_executor(TSRMLS_D) /* {{{ */
EG(in_execution) = 0;
EG(in_autoload) = NULL;
EG(autoload_func) = NULL;
- EG(error_handling) = EH_NORMAL;
zend_vm_stack_init(TSRMLS_C);
zend_vm_stack_push((void *) NULL TSRMLS_CC);
@@ -504,64 +503,29 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
is_ref = Z_ISREF_P(p);
if (!zend_get_constant_ex(p->value.str.val, p->value.str.len, &const_value, scope, Z_REAL_TYPE_P(p) TSRMLS_CC)) {
- char *actual = Z_STRVAL_P(p);
-
- if ((colon = zend_memrchr(Z_STRVAL_P(p), ':', Z_STRLEN_P(p)))) {
- zend_error(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(p));
+ if ((colon = zend_memrchr(Z_STRVAL_P(p), ':', Z_STRLEN_P(p))) &&
+ colon > Z_STRVAL_P(p) &&
+ *(colon-1) == ':') {
+ if ((Z_TYPE_P(p) & IS_CONSTANT_RT_NS_CHECK) == 0) {
+ zend_error(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(p));
+ } else if (Z_TYPE_P(p) & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error(E_ERROR, "Undefined constant '%s'", Z_STRVAL_P(p));
+ }
Z_STRLEN_P(p) -= ((colon - Z_STRVAL_P(p)) + 1);
if (inline_change) {
- colon = estrndup(colon, Z_STRLEN_P(p));
+ colon = estrndup(colon + 1, Z_STRLEN_P(p));
efree(Z_STRVAL_P(p));
Z_STRVAL_P(p) = colon;
} else {
Z_STRVAL_P(p) = colon + 1;
}
- } else {
- char *save = actual, *slash;
- int actual_len = Z_STRLEN_P(p);
- if ((Z_TYPE_P(p) & IS_CONSTANT_UNQUALIFIED) && (slash = (char *)zend_memrchr(actual, '\\', actual_len))) {
- actual = slash + 1;
- actual_len -= (actual - Z_STRVAL_P(p));
- if (inline_change) {
- actual = estrndup(actual, actual_len);
- Z_STRVAL_P(p) = actual;
- Z_STRLEN_P(p) = actual_len;
- }
- }
- if (actual[0] == '\\') {
- if (inline_change) {
- memmove(Z_STRVAL_P(p), Z_STRVAL_P(p)+1, Z_STRLEN_P(p));
- --Z_STRLEN_P(p);
- } else {
- ++actual;
- }
- --actual_len;
- }
- if ((Z_TYPE_P(p) & IS_CONSTANT_UNQUALIFIED) == 0) {
- int fix_save = 0;
- if (save[0] == '\\') {
- save++;
- fix_save = 1;
- }
- zend_error(E_ERROR, "Undefined constant '%s'", save);
- if (fix_save) {
- save--;
- }
- if (inline_change) {
- efree(save);
- }
- save = NULL;
- }
- if (inline_change && save && save != actual) {
- efree(save);
- }
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", actual, actual);
- p->type = IS_STRING;
- if (!inline_change) {
- Z_STRVAL_P(p) = actual;
- Z_STRLEN_P(p) = actual_len;
- zval_copy_ctor(p);
- }
+ } else if (Z_TYPE_P(p) & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error(E_ERROR, "Undefined constant '%s'", Z_STRVAL_P(p));
+ }
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", Z_STRVAL_P(p), Z_STRVAL_P(p));
+ p->type = IS_STRING;
+ if (!inline_change) {
+ zval_copy_ctor(p);
}
} else {
if (inline_change) {
@@ -606,29 +570,20 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
continue;
}
if (!zend_get_constant_ex(str_index, str_index_len - 3, &const_value, scope, str_index[str_index_len - 2] TSRMLS_CC)) {
- char *actual, *save = str_index;
- if ((colon = zend_memrchr(str_index, ':', str_index_len - 3))) {
- zend_error(E_ERROR, "Undefined class constant '%s'", str_index);
- str_index_len -= ((colon - str_index) + 1);
- str_index = colon;
- } else {
- if (str_index[str_index_len - 2] & IS_CONSTANT_UNQUALIFIED) {
- actual = (char *)zend_memrchr(str_index, '\\', str_index_len - 3) + 1;
- str_index_len -= (actual - str_index);
- str_index = actual;
- }
- if (str_index[0] == '\\') {
- ++str_index;
- --str_index_len;
+ if ((colon = zend_memrchr(str_index, ':', str_index_len - 3)) &&
+ colon > str_index &&
+ *(colon-1) == ':') {
+ if ((str_index[str_index_len - 2] & IS_CONSTANT_RT_NS_CHECK) == 0) {
+ zend_error(E_ERROR, "Undefined class constant '%s'", str_index);
+ } else if (str_index[str_index_len - 2] & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error(E_ERROR, "Undefined constant '%s'", str_index);
}
- if (save[0] == '\\') {
- ++save;
- }
- if ((str_index[str_index_len - 2] & IS_CONSTANT_UNQUALIFIED) == 0) {
- zend_error(E_ERROR, "Undefined constant '%s'", save);
- }
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", str_index, str_index);
- }
+ str_index_len -= ((colon - str_index) + 1);
+ str_index = colon + 1;
+ } else if (str_index[str_index_len - 2] & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error(E_ERROR, "Undefined constant '%s'", str_index);
+ }
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", str_index, str_index);
ZVAL_STRINGL(&const_value, str_index, str_index_len-3, 1);
}
@@ -715,7 +670,7 @@ int call_user_function_ex(HashTable *function_table, zval **object_pp, zval *fun
fci.size = sizeof(fci);
fci.function_table = function_table;
- fci.object_ptr = object_pp ? *object_pp : NULL;
+ fci.object_pp = object_pp;
fci.function_name = function_name;
fci.retval_ptr_ptr = retval_ptr_ptr;
fci.param_count = param_count;
@@ -782,7 +737,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
fci_cache = &fci_cache_local;
}
- if (!zend_is_callable_ex(fci->function_name, fci->object_ptr, IS_CALLABLE_CHECK_SILENT, &callable_name, NULL, fci_cache, &error TSRMLS_CC)) {
+ if (!zend_is_callable_ex(fci->function_name, fci->object_pp, IS_CALLABLE_CHECK_SILENT, &callable_name, NULL, fci_cache, &error TSRMLS_CC)) {
if (error) {
zend_error(E_WARNING, "Invalid callback %s, %s", callable_name, error);
efree(error);
@@ -805,10 +760,10 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
EX(function_state).function = fci_cache->function_handler;
calling_scope = fci_cache->calling_scope;
called_scope = fci_cache->called_scope;
- fci->object_ptr = fci_cache->object_ptr;
- EX(object) = fci->object_ptr;
- if (fci->object_ptr && Z_TYPE_P(fci->object_ptr) == IS_OBJECT &&
- (!EG(objects_store).object_buckets || !EG(objects_store).object_buckets[Z_OBJ_HANDLE_P(fci->object_ptr)].valid)) {
+ fci->object_pp = fci_cache->object_pp;
+ EX(object) = fci->object_pp ? *fci->object_pp : NULL;
+ if (fci->object_pp && *fci->object_pp && Z_TYPE_PP(fci->object_pp) == IS_OBJECT &&
+ (!EG(objects_store).object_buckets || !EG(objects_store).object_buckets[Z_OBJ_HANDLE_PP(fci->object_pp)].valid)) {
return FAILURE;
}
@@ -886,11 +841,11 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
EG(called_scope) = NULL;
}
- if (fci->object_ptr) {
+ if (fci->object_pp) {
if ((EX(function_state).function->common.fn_flags & ZEND_ACC_STATIC)) {
EG(This) = NULL;
} else {
- EG(This) = fci->object_ptr;
+ EG(This) = *fci->object_pp;
if (!PZVAL_IS_REF(EG(This))) {
Z_ADDREF_P(EG(This)); /* For $this pointer */
@@ -943,11 +898,14 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
EG(opline_ptr) = original_opline_ptr;
} else if (EX(function_state).function->type == ZEND_INTERNAL_FUNCTION) {
int call_via_handler = (EX(function_state).function->common.fn_flags & ZEND_ACC_CALL_VIA_HANDLER) != 0;
+ zend_error_handling error_handling;
+ zend_save_error_handling(&error_handling TSRMLS_CC);
ALLOC_INIT_ZVAL(*fci->retval_ptr_ptr);
if (EX(function_state).function->common.scope) {
EG(scope) = EX(function_state).function->common.scope;
}
- ((zend_internal_function *) EX(function_state).function)->handler(fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, fci->object_ptr, 1 TSRMLS_CC);
+ ((zend_internal_function *) EX(function_state).function)->handler(fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, (fci->object_pp?*fci->object_pp:NULL), 1 TSRMLS_CC);
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
/* We shouldn't fix bad extensions here,
because it can break proper ones (Bug #34045)
if (!EX(function_state).function->common.return_reference)
@@ -967,8 +925,11 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
ALLOC_INIT_ZVAL(*fci->retval_ptr_ptr);
/* Not sure what should be done here if it's a static method */
- if (fci->object_ptr) {
- Z_OBJ_HT_P(fci->object_ptr)->call_method(EX(function_state).function->common.function_name, fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, fci->object_ptr, 1 TSRMLS_CC);
+ if (fci->object_pp) {
+ zend_error_handling error_handling;
+ zend_save_error_handling(&error_handling TSRMLS_CC);
+ Z_OBJ_HT_PP(fci->object_pp)->call_method(EX(function_state).function->common.function_name, fci->param_count, *fci->retval_ptr_ptr, fci->retval_ptr_ptr, *fci->object_pp, 1 TSRMLS_CC);
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
} else {
zend_error_noreturn(E_ERROR, "Cannot call overloaded function for non-object");
}
@@ -1006,9 +967,10 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, int use_aut
zval autoload_function;
zval *class_name_ptr;
zval *retval_ptr = NULL;
- int retval, lc_length;
+ int retval;
char *lc_name;
char *lc_free;
+ zval *exception;
zend_fcall_info fcall_info;
zend_fcall_info_cache fcall_cache;
char dummy = 1;
@@ -1020,14 +982,13 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, int use_aut
lc_free = lc_name = do_alloca(name_length + 1, use_heap);
zend_str_tolower_copy(lc_name, name, name_length);
- lc_length = name_length + 1;
- if (lc_name[0] == '\\') {
- lc_name += 1;
- lc_length -= 1;
+ if (lc_name[0] == ':' && lc_name[1] == ':') {
+ lc_name += 2;
+ name_length -= 2;
}
- if (zend_hash_find(EG(class_table), lc_name, lc_length, (void **) ce) == SUCCESS) {
+ if (zend_hash_find(EG(class_table), lc_name, name_length + 1, (void **) ce) == SUCCESS) {
free_alloca(lc_free, use_heap);
return SUCCESS;
}
@@ -1045,7 +1006,7 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, int use_aut
zend_hash_init(EG(in_autoload), 0, NULL, NULL, 0);
}
- if (zend_hash_add(EG(in_autoload), lc_name, lc_length, (void**)&dummy, sizeof(char), NULL) == FAILURE) {
+ if (zend_hash_add(EG(in_autoload), lc_name, name_length + 1, (void**)&dummy, sizeof(char), NULL) == FAILURE) {
free_alloca(lc_free, use_heap);
return FAILURE;
}
@@ -1065,35 +1026,42 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, int use_aut
fcall_info.retval_ptr_ptr = &retval_ptr;
fcall_info.param_count = 1;
fcall_info.params = args;
- fcall_info.object_ptr = NULL;
+ fcall_info.object_pp = NULL;
fcall_info.no_separation = 1;
fcall_cache.initialized = EG(autoload_func) ? 1 : 0;
fcall_cache.function_handler = EG(autoload_func);
fcall_cache.calling_scope = NULL;
fcall_cache.called_scope = NULL;
- fcall_cache.object_ptr = NULL;
+ fcall_cache.object_pp = NULL;
+ exception = EG(exception);
zend_exception_save(TSRMLS_C);
retval = zend_call_function(&fcall_info, &fcall_cache TSRMLS_CC);
- zend_exception_restore(TSRMLS_C);
-
EG(autoload_func) = fcall_cache.function_handler;
zval_ptr_dtor(&class_name_ptr);
- zend_hash_del(EG(in_autoload), lc_name, lc_length);
+ zend_hash_del(EG(in_autoload), lc_name, name_length + 1);
- if (retval_ptr) {
- zval_ptr_dtor(&retval_ptr);
+ if (retval == FAILURE) {
+ zend_exception_restore(TSRMLS_C);
+ free_alloca(lc_free, use_heap);
+ return FAILURE;
}
- if (retval == FAILURE) {
+ if (EG(exception) && exception) {
+ zend_exception_restore(TSRMLS_C);
free_alloca(lc_free, use_heap);
+ zend_error(E_ERROR, "Function %s(%s) threw an exception of type '%s'", ZEND_AUTOLOAD_FUNC_NAME, name, Z_OBJCE_P(EG(exception))->name);
return FAILURE;
}
+ zend_exception_restore(TSRMLS_C);
+ if (retval_ptr) {
+ zval_ptr_dtor(&retval_ptr);
+ }
- retval = zend_hash_find(EG(class_table), lc_name, lc_length, (void **) ce);
+ retval = zend_hash_find(EG(class_table), lc_name, name_length + 1, (void **) ce);
free_alloca(lc_free, use_heap);
return retval;
}
@@ -1467,6 +1435,7 @@ zend_class_entry *zend_fetch_class(const char *class_name, uint class_name_len,
{
zend_class_entry **pce;
int use_autoload = (fetch_type & ZEND_FETCH_CLASS_NO_AUTOLOAD) == 0;
+ int rt_ns_check = (fetch_type & ZEND_FETCH_CLASS_RT_NS_CHECK) ? 1 : 0;
int silent = (fetch_type & ZEND_FETCH_CLASS_SILENT) != 0;
fetch_type &= ZEND_FETCH_CLASS_MASK;
@@ -1500,14 +1469,36 @@ check_fetch_type:
break;
}
- if (zend_lookup_class_ex(class_name, class_name_len, use_autoload, &pce TSRMLS_CC) == FAILURE) {
+ if (zend_lookup_class_ex(class_name, class_name_len, (!rt_ns_check & use_autoload), &pce TSRMLS_CC) == FAILURE) {
+ if (rt_ns_check) {
+ /* Check if we have internal class with the same name */
+ char *php_name;
+ uint php_name_len;
+
+ php_name = zend_memrchr(class_name, ':', class_name_len);
+ if (php_name) {
+ php_name++;
+ php_name_len = class_name_len - (php_name - class_name);
+ php_name = zend_str_tolower_dup(php_name, php_name_len);
+ if (zend_hash_find(EG(class_table), php_name, php_name_len + 1, (void **) &pce) == SUCCESS &&
+ (*pce)->type == ZEND_INTERNAL_CLASS
+ ) {
+ efree(php_name);
+ return *pce;
+ }
+ efree(php_name);
+ }
+ }
if (use_autoload) {
- if (!silent && !EG(exception)) {
+ if (rt_ns_check && zend_lookup_class_ex(class_name, class_name_len, 1, &pce TSRMLS_CC) == SUCCESS) {
+ return *pce;
+ }
+ if (!silent) {
if (fetch_type == ZEND_FETCH_CLASS_INTERFACE) {
zend_error(E_ERROR, "Interface '%s' not found", class_name);
} else {
zend_error(E_ERROR, "Class '%s' not found", class_name);
- }
+ }
}
}
return NULL;
@@ -1617,20 +1608,8 @@ ZEND_API int zend_delete_global_variable(char *name, int name_len TSRMLS_DC) /*
ZEND_API void zend_rebuild_symbol_table(TSRMLS_D) /* {{{ */
{
zend_uint i;
- zend_execute_data *ex;
if (!EG(active_symbol_table)) {
-
- /* Search for last called user function */
- ex = EG(current_execute_data);
- while (ex && !ex->op_array) {
- ex = ex->prev_execute_data;
- }
- if (ex && ex->symbol_table) {
- EG(active_symbol_table) = ex->symbol_table;
- return;
- }
-
if (EG(symtable_cache_ptr)>=EG(symtable_cache)) {
/*printf("Cache hit! Reusing %x\n", symtable_cache[symtable_cache_ptr]);*/
EG(active_symbol_table) = *(EG(symtable_cache_ptr)--);
@@ -1639,24 +1618,24 @@ ZEND_API void zend_rebuild_symbol_table(TSRMLS_D) /* {{{ */
zend_hash_init(EG(active_symbol_table), 0, NULL, ZVAL_PTR_DTOR, 0);
/*printf("Cache miss! Initialized %x\n", EG(active_symbol_table));*/
}
- if (ex && ex->op_array) {
- ex->symbol_table = EG(active_symbol_table);
+ if (EG(current_execute_data) && EG(current_execute_data)->op_array) {
+ EG(current_execute_data)->symbol_table = EG(active_symbol_table);
- if (ex->op_array->this_var != -1 &&
- !ex->CVs[ex->op_array->this_var] &&
+ if (EG(current_execute_data)->op_array->this_var != -1 &&
+ !EG(current_execute_data)->CVs[EG(current_execute_data)->op_array->this_var] &&
EG(This)) {
- ex->CVs[ex->op_array->this_var] = (zval**)ex->CVs + ex->op_array->last_var + ex->op_array->this_var;
- *ex->CVs[ex->op_array->this_var] = EG(This);
+ EG(current_execute_data)->CVs[EG(current_execute_data)->op_array->this_var] = (zval**)EG(current_execute_data)->CVs + EG(current_execute_data)->op_array->last_var + EG(current_execute_data)->op_array->this_var;
+ *EG(current_execute_data)->CVs[EG(current_execute_data)->op_array->this_var] = EG(This);
}
- for (i = 0; i < ex->op_array->last_var; i++) {
- if (ex->CVs[i]) {
+ for (i = 0; i < EG(current_execute_data)->op_array->last_var; i++) {
+ if (EG(current_execute_data)->CVs[i]) {
zend_hash_quick_update(EG(active_symbol_table),
- ex->op_array->vars[i].name,
- ex->op_array->vars[i].name_len + 1,
- ex->op_array->vars[i].hash_value,
- (void**)ex->CVs[i],
+ EG(current_execute_data)->op_array->vars[i].name,
+ EG(current_execute_data)->op_array->vars[i].name_len + 1,
+ EG(current_execute_data)->op_array->vars[i].hash_value,
+ (void**)EG(current_execute_data)->CVs[i],
sizeof(zval*),
- (void**)&ex->CVs[i]);
+ (void**)&EG(current_execute_data)->CVs[i]);
}
}
}
diff --git a/Zend/zend_globals.h b/Zend/zend_globals.h
index d30dd89b11..88fe44e083 100644
--- a/Zend/zend_globals.h
+++ b/Zend/zend_globals.h
@@ -134,8 +134,6 @@ struct _zend_compiler_globals {
zval *current_namespace;
HashTable *current_import;
- zend_bool in_namespace;
- zend_bool has_bracketed_namespaces;
HashTable *labels;
zend_stack labels_stack;
diff --git a/Zend/zend_ini_scanner.c b/Zend/zend_ini_scanner.c
index cdfb643632..c19b8f0b9c 100644
--- a/Zend/zend_ini_scanner.c
+++ b/Zend/zend_ini_scanner.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Wed Nov 5 22:35:51 2008 */
+/* Generated by re2c 0.13.5 on Sun Aug 17 23:55:27 2008 */
#line 1 "Zend/zend_ini_scanner.l"
/*
+----------------------------------------------------------------------+
@@ -190,7 +190,7 @@ int zend_ini_scanner_get_lineno(TSRMLS_D)
*/
char *zend_ini_scanner_get_filename(TSRMLS_D)
{
- return ini_filename ? ini_filename : "Unknown";
+ return ini_filename;
}
/* }}} */
@@ -246,10 +246,21 @@ static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_ty
if (*s == '\\') {
s++;
if (s >= end) {
- *t++ = '\\';
continue;
}
switch (*s) {
+ case 'n':
+ *t++ = '\n';
+ Z_STRLEN_P(lval)--;
+ break;
+ case 'r':
+ *t++ = '\r';
+ Z_STRLEN_P(lval)--;
+ break;
+ case 't':
+ *t++ = '\t';
+ Z_STRLEN_P(lval)--;
+ break;
case '"':
if (*s != quote_type) {
*t++ = '\\';
@@ -294,7 +305,7 @@ restart:
}
-#line 298 "Zend/zend_ini_scanner.c"
+#line 309 "Zend/zend_ini_scanner.c"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
@@ -399,7 +410,6 @@ yyc_INITIAL:
case '|':
case '}':
case '~': goto yy9;
- case '#': goto yy11;
case '0':
case '1':
case '2':
@@ -452,20 +462,20 @@ yyc_INITIAL:
case 'v':
case 'w':
case 'x':
- case 'z': goto yy12;
- case ';': goto yy14;
- case '=': goto yy15;
+ case 'z': goto yy11;
+ case ';': goto yy13;
+ case '=': goto yy14;
case 'F':
- case 'f': goto yy17;
+ case 'f': goto yy16;
case 'N':
- case 'n': goto yy18;
+ case 'n': goto yy17;
case 'O':
- case 'o': goto yy19;
+ case 'o': goto yy18;
case 'T':
- case 't': goto yy20;
+ case 't': goto yy19;
case 'Y':
- case 'y': goto yy21;
- case '[': goto yy22;
+ case 'y': goto yy20;
+ case '[': goto yy21;
default: goto yy2;
}
yy2:
@@ -477,80 +487,75 @@ yy2:
{
return 0;
}
-#line 481 "Zend/zend_ini_scanner.c"
+#line 491 "Zend/zend_ini_scanner.c"
yy4:
YYDEBUG(4, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy62;
+ goto yy56;
yy5:
YYDEBUG(5, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 467 "Zend/zend_ini_scanner.l"
+#line 474 "Zend/zend_ini_scanner.l"
{
/* eat whitespace */
goto restart;
}
-#line 495 "Zend/zend_ini_scanner.c"
+#line 505 "Zend/zend_ini_scanner.c"
yy6:
YYDEBUG(6, *YYCURSOR);
++YYCURSOR;
yy7:
YYDEBUG(7, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 472 "Zend/zend_ini_scanner.l"
+#line 479 "Zend/zend_ini_scanner.l"
{
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 507 "Zend/zend_ini_scanner.c"
+#line 517 "Zend/zend_ini_scanner.c"
yy8:
YYDEBUG(8, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy60;
+ if (yych == '\n') goto yy54;
goto yy7;
yy9:
YYDEBUG(9, *YYCURSOR);
++YYCURSOR;
YYDEBUG(10, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 422 "Zend/zend_ini_scanner.l"
+#line 433 "Zend/zend_ini_scanner.l"
{ /* Disallow these chars outside option values */
return yytext[0];
}
-#line 522 "Zend/zend_ini_scanner.c"
+#line 532 "Zend/zend_ini_scanner.c"
yy11:
YYDEBUG(11, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy56;
-yy12:
- YYDEBUG(12, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy25;
-yy13:
- YYDEBUG(13, *YYCURSOR);
+ goto yy24;
+yy12:
+ YYDEBUG(12, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 382 "Zend/zend_ini_scanner.l"
+#line 393 "Zend/zend_ini_scanner.l"
{ /* Get option name */
RETURN_TOKEN(TC_LABEL, yytext, yyleng);
}
-#line 540 "Zend/zend_ini_scanner.c"
-yy14:
- YYDEBUG(14, *YYCURSOR);
+#line 545 "Zend/zend_ini_scanner.c"
+yy13:
+ YYDEBUG(13, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy51;
-yy15:
- YYDEBUG(15, *YYCURSOR);
+ goto yy50;
+yy14:
+ YYDEBUG(14, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy49;
-yy16:
- YYDEBUG(16, *YYCURSOR);
+ goto yy48;
+yy15:
+ YYDEBUG(15, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 386 "Zend/zend_ini_scanner.l"
+#line 397 "Zend/zend_ini_scanner.l"
{ /* Start option value */
if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
yy_push_state(ST_RAW TSRMLS_CC);
@@ -559,63 +564,63 @@ yy16:
}
return '=';
}
-#line 563 "Zend/zend_ini_scanner.c"
+#line 568 "Zend/zend_ini_scanner.c"
+yy16:
+ YYDEBUG(16, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy44;
+ if (yych == 'a') goto yy44;
+ goto yy24;
yy17:
YYDEBUG(17, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy45;
- if (yych == 'a') goto yy45;
- goto yy25;
-yy18:
- YYDEBUG(18, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'O') goto yy41;
- if (yych <= 'T') goto yy25;
- goto yy42;
+ if (yych == 'O') goto yy40;
+ if (yych <= 'T') goto yy24;
+ goto yy41;
} else {
if (yych <= 'o') {
- if (yych <= 'n') goto yy25;
- goto yy41;
+ if (yych <= 'n') goto yy24;
+ goto yy40;
} else {
- if (yych == 'u') goto yy42;
- goto yy25;
+ if (yych == 'u') goto yy41;
+ goto yy24;
}
}
-yy19:
- YYDEBUG(19, *YYCURSOR);
+yy18:
+ YYDEBUG(18, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'N') {
- if (yych == 'F') goto yy36;
- if (yych <= 'M') goto yy25;
- goto yy30;
+ if (yych == 'F') goto yy35;
+ if (yych <= 'M') goto yy24;
+ goto yy29;
} else {
if (yych <= 'f') {
- if (yych <= 'e') goto yy25;
- goto yy36;
+ if (yych <= 'e') goto yy24;
+ goto yy35;
} else {
- if (yych == 'n') goto yy30;
- goto yy25;
+ if (yych == 'n') goto yy29;
+ goto yy24;
}
}
+yy19:
+ YYDEBUG(19, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy33;
+ if (yych == 'r') goto yy33;
+ goto yy24;
yy20:
YYDEBUG(20, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy34;
- if (yych == 'r') goto yy34;
- goto yy25;
+ if (yych == 'E') goto yy25;
+ if (yych == 'e') goto yy25;
+ goto yy24;
yy21:
YYDEBUG(21, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy26;
- if (yych == 'e') goto yy26;
- goto yy25;
-yy22:
- YYDEBUG(22, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(23, *YYCURSOR);
+ YYDEBUG(22, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 320 "Zend/zend_ini_scanner.l"
+#line 331 "Zend/zend_ini_scanner.l"
{ /* Section start */
/* Enter section data lookup state */
if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
@@ -625,37 +630,37 @@ yy22:
}
return TC_SECTION;
}
-#line 629 "Zend/zend_ini_scanner.c"
-yy24:
- YYDEBUG(24, *YYCURSOR);
+#line 634 "Zend/zend_ini_scanner.c"
+yy23:
+ YYDEBUG(23, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy25:
- YYDEBUG(25, *YYCURSOR);
+yy24:
+ YYDEBUG(24, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy24;
+ goto yy23;
}
- if (yych == '[') goto yy27;
- goto yy13;
+ if (yych == '[') goto yy26;
+ goto yy12;
+yy25:
+ YYDEBUG(25, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy29;
+ if (yych == 's') goto yy29;
+ goto yy24;
yy26:
YYDEBUG(26, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy30;
- if (yych == 's') goto yy30;
- goto yy25;
-yy27:
- YYDEBUG(27, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(28, *YYCURSOR);
+ YYDEBUG(27, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy27;
+ goto yy26;
}
- YYDEBUG(29, *YYCURSOR);
+ YYDEBUG(28, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 345 "Zend/zend_ini_scanner.l"
+#line 356 "Zend/zend_ini_scanner.l"
{ /* Start of option with offset */
/* Eat trailing whitespace and [ */
EAT_TRAILING_WHITESPACE_EX('[');
@@ -665,236 +670,204 @@ yy27:
RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
}
-#line 669 "Zend/zend_ini_scanner.c"
-yy30:
- YYDEBUG(30, *YYCURSOR);
+#line 674 "Zend/zend_ini_scanner.c"
+yy29:
+ YYDEBUG(29, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 32) {
- goto yy24;
+ goto yy23;
}
- if (yych == '[') goto yy27;
- goto yy33;
-yy31:
- YYDEBUG(31, *YYCURSOR);
+ if (yych == '[') goto yy26;
+ goto yy32;
+yy30:
+ YYDEBUG(30, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 374 "Zend/zend_ini_scanner.l"
+#line 385 "Zend/zend_ini_scanner.l"
{ /* TRUE value (when used outside option value/offset this causes parse error!) */
RETURN_TOKEN(BOOL_TRUE, "1", 1);
}
-#line 685 "Zend/zend_ini_scanner.c"
-yy32:
- YYDEBUG(32, *YYCURSOR);
+#line 690 "Zend/zend_ini_scanner.c"
+yy31:
+ YYDEBUG(31, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
+yy32:
+ YYDEBUG(32, *YYCURSOR);
+ if (yych == '\t') goto yy31;
+ if (yych == ' ') goto yy31;
+ goto yy30;
yy33:
YYDEBUG(33, *YYCURSOR);
- if (yych == '\t') goto yy32;
- if (yych == ' ') goto yy32;
- goto yy31;
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy34;
+ if (yych != 'u') goto yy24;
yy34:
YYDEBUG(34, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy35;
- if (yych != 'u') goto yy25;
+ if (yych == 'E') goto yy29;
+ if (yych == 'e') goto yy29;
+ goto yy24;
yy35:
YYDEBUG(35, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy30;
- if (yych == 'e') goto yy30;
- goto yy25;
+ if (yych == 'F') goto yy36;
+ if (yych != 'f') goto yy24;
yy36:
YYDEBUG(36, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy37;
- if (yych != 'f') goto yy25;
-yy37:
- YYDEBUG(37, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 32) {
- goto yy24;
+ goto yy23;
}
- if (yych == '[') goto yy27;
- goto yy40;
-yy38:
- YYDEBUG(38, *YYCURSOR);
+ if (yych == '[') goto yy26;
+ goto yy39;
+yy37:
+ YYDEBUG(37, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 378 "Zend/zend_ini_scanner.l"
+#line 389 "Zend/zend_ini_scanner.l"
{ /* FALSE value (when used outside option value/offset this causes parse error!)*/
RETURN_TOKEN(BOOL_FALSE, "", 0);
}
-#line 727 "Zend/zend_ini_scanner.c"
-yy39:
- YYDEBUG(39, *YYCURSOR);
+#line 732 "Zend/zend_ini_scanner.c"
+yy38:
+ YYDEBUG(38, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
+yy39:
+ YYDEBUG(39, *YYCURSOR);
+ if (yych == '\t') goto yy38;
+ if (yych == ' ') goto yy38;
+ goto yy37;
yy40:
YYDEBUG(40, *YYCURSOR);
- if (yych == '\t') goto yy39;
- if (yych == ' ') goto yy39;
- goto yy38;
-yy41:
- YYDEBUG(41, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'Z') {
if (yych <= '9') {
- if (yych <= ',') goto yy40;
- if (yych == '/') goto yy40;
- goto yy24;
+ if (yych <= ',') goto yy39;
+ if (yych == '/') goto yy39;
+ goto yy23;
} else {
- if (yych <= '@') goto yy40;
- if (yych == 'N') goto yy44;
- goto yy24;
+ if (yych <= '@') goto yy39;
+ if (yych == 'N') goto yy43;
+ goto yy23;
}
} else {
if (yych <= '`') {
- if (yych <= '[') goto yy27;
- if (yych == '_') goto yy24;
- goto yy40;
+ if (yych <= '[') goto yy26;
+ if (yych == '_') goto yy23;
+ goto yy39;
} else {
- if (yych == 'n') goto yy44;
- if (yych <= 'z') goto yy24;
- goto yy40;
+ if (yych == 'n') goto yy43;
+ if (yych <= 'z') goto yy23;
+ goto yy39;
}
}
+yy41:
+ YYDEBUG(41, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy42;
+ if (yych != 'l') goto yy24;
yy42:
YYDEBUG(42, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy43;
- if (yych != 'l') goto yy25;
+ if (yych == 'L') goto yy36;
+ if (yych == 'l') goto yy36;
+ goto yy24;
yy43:
YYDEBUG(43, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy37;
- if (yych == 'l') goto yy37;
- goto yy25;
+ if (yych == 'E') goto yy36;
+ if (yych == 'e') goto yy36;
+ goto yy24;
yy44:
YYDEBUG(44, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy37;
- if (yych == 'e') goto yy37;
- goto yy25;
+ if (yych == 'L') goto yy45;
+ if (yych != 'l') goto yy24;
yy45:
YYDEBUG(45, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy46;
- if (yych != 'l') goto yy25;
+ if (yych == 'S') goto yy46;
+ if (yych != 's') goto yy24;
yy46:
YYDEBUG(46, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy47;
- if (yych != 's') goto yy25;
+ if (yych == 'E') goto yy36;
+ if (yych == 'e') goto yy36;
+ goto yy24;
yy47:
YYDEBUG(47, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy37;
- if (yych == 'e') goto yy37;
- goto yy25;
-yy48:
- YYDEBUG(48, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
+yy48:
+ YYDEBUG(48, *YYCURSOR);
+ if (yych == '\t') goto yy47;
+ if (yych == ' ') goto yy47;
+ goto yy15;
yy49:
YYDEBUG(49, *YYCURSOR);
- if (yych == '\t') goto yy48;
- if (yych == ' ') goto yy48;
- goto yy16;
-yy50:
- YYDEBUG(50, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy51:
- YYDEBUG(51, *YYCURSOR);
+yy50:
+ YYDEBUG(50, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy50;
+ goto yy49;
}
- if (yych >= '\r') goto yy54;
+ if (yych >= '\r') goto yy53;
+yy51:
+ YYDEBUG(51, *YYCURSOR);
+ ++YYCURSOR;
yy52:
YYDEBUG(52, *YYCURSOR);
- ++YYCURSOR;
-yy53:
- YYDEBUG(53, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 477 "Zend/zend_ini_scanner.l"
+#line 484 "Zend/zend_ini_scanner.l"
{ /* Comment */
BEGIN(INITIAL);
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 828 "Zend/zend_ini_scanner.c"
+#line 833 "Zend/zend_ini_scanner.c"
+yy53:
+ YYDEBUG(53, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy51;
+ goto yy52;
yy54:
YYDEBUG(54, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy52;
- goto yy53;
+ goto yy7;
yy55:
YYDEBUG(55, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(2);
- yych = *YYCURSOR;
-yy56:
- YYDEBUG(56, *YYCURSOR);
- if (yych == '\n') goto yy57;
- if (yych == '\r') goto yy59;
- goto yy55;
-yy57:
- YYDEBUG(57, *YYCURSOR);
- ++YYCURSOR;
-yy58:
- YYDEBUG(58, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 483 "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 857 "Zend/zend_ini_scanner.c"
-yy59:
- YYDEBUG(59, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy57;
- goto yy58;
-yy60:
- YYDEBUG(60, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy7;
-yy61:
- YYDEBUG(61, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy62:
- YYDEBUG(62, *YYCURSOR);
- if (yych <= ' ') {
+yy56:
+ YYDEBUG(56, *YYCURSOR);
+ if (yych <= 0x1F) {
if (yych <= '\n') {
if (yych <= 0x08) goto yy5;
- if (yych <= '\t') goto yy61;
- goto yy60;
+ if (yych <= '\t') goto yy55;
+ goto yy54;
} else {
- if (yych == '\r') goto yy63;
- if (yych <= 0x1F) goto yy5;
- goto yy61;
+ if (yych != '\r') goto yy5;
}
} else {
- if (yych <= ':') {
- if (yych == '#') goto yy55;
- goto yy5;
+ if (yych <= ';') {
+ if (yych <= ' ') goto yy55;
+ if (yych <= ':') goto yy5;
+ goto yy49;
} else {
- if (yych <= ';') goto yy50;
- if (yych == '=') goto yy48;
+ if (yych == '=') goto yy47;
goto yy5;
}
}
-yy63:
- YYDEBUG(63, *YYCURSOR);
+ YYDEBUG(57, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy60;
+ if ((yych = *YYCURSOR) == '\n') goto yy54;
goto yy7;
}
/* *********************************** */
@@ -934,197 +907,162 @@ yyc_ST_DOUBLE_QUOTES:
16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16,
};
- YYDEBUG(64, *YYCURSOR);
- YYFILL(3);
+ YYDEBUG(58, *YYCURSOR);
+ YYFILL(2);
yych = *YYCURSOR;
if (yych <= '#') {
- if (yych == '"') goto yy68;
+ if (yych == '"') goto yy62;
} else {
- if (yych <= '$') goto yy70;
- if (yych == '\\') goto yy72;
+ if (yych <= '$') goto yy64;
+ if (yych == '\\') goto yy66;
}
- YYDEBUG(66, *YYCURSOR);
+ YYDEBUG(60, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy76;
-yy67:
- YYDEBUG(67, *YYCURSOR);
+ goto yy68;
+yy61:
+ YYDEBUG(61, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 449 "Zend/zend_ini_scanner.l"
+#line 460 "Zend/zend_ini_scanner.l"
{ /* Escape double quoted string contents */
- if(yyleng > 1 && yytext[yyleng-1] == '"' && yytext[yyleng-2] == '\\') {
- yyless(yyleng-1);
- yyleng--;
- }
zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
return TC_QUOTED_STRING;
}
-#line 963 "Zend/zend_ini_scanner.c"
-yy68:
- YYDEBUG(68, *YYCURSOR);
+#line 932 "Zend/zend_ini_scanner.c"
+yy62:
+ YYDEBUG(62, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy90;
-yy69:
- YYDEBUG(69, *YYCURSOR);
+ goto yy81;
+yy63:
+ YYDEBUG(63, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 458 "Zend/zend_ini_scanner.l"
+#line 465 "Zend/zend_ini_scanner.l"
{ /* Double quoted '"' string ends */
yy_pop_state(TSRMLS_C);
return '"';
}
-#line 977 "Zend/zend_ini_scanner.c"
-yy70:
- YYDEBUG(70, *YYCURSOR);
+#line 946 "Zend/zend_ini_scanner.c"
+yy64:
+ YYDEBUG(64, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '\\') {
- if (yych <= 0x00) goto yy71;
- if (yych <= '[') goto yy75;
- goto yy79;
+ if (yych <= 0x00) goto yy65;
+ if (yych <= '[') goto yy67;
+ goto yy72;
} else {
- if (yych == '{') goto yy87;
- goto yy75;
+ if (yych == '{') goto yy78;
+ goto yy67;
}
-yy71:
- YYDEBUG(71, *YYCURSOR);
+yy65:
+ YYDEBUG(65, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 495 "Zend/zend_ini_scanner.l"
{
return 0;
}
-#line 996 "Zend/zend_ini_scanner.c"
-yy72:
- YYDEBUG(72, *YYCURSOR);
- yyaccept = 1;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych != '"') goto yy75;
- YYDEBUG(73, *YYCURSOR);
+#line 965 "Zend/zend_ini_scanner.c"
+yy66:
+ YYDEBUG(66, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy74;
- if (yych != '\r') goto yy75;
-yy74:
- YYDEBUG(74, *YYCURSOR);
- YYCURSOR = YYMARKER;
- if (yyaccept <= 0) {
- goto yy67;
- } else {
- goto yy71;
- }
-yy75:
- YYDEBUG(75, *YYCURSOR);
+yy67:
+ YYDEBUG(67, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy76:
- YYDEBUG(76, *YYCURSOR);
+yy68:
+ YYDEBUG(68, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy75;
+ goto yy67;
}
- if (yych <= '#') goto yy67;
- if (yych <= '$') goto yy78;
- YYDEBUG(77, *YYCURSOR);
+ if (yych <= '#') goto yy61;
+ if (yych <= '$') goto yy70;
+ YYDEBUG(69, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- if (yych == '"') goto yy84;
- goto yy75;
-yy78:
- YYDEBUG(78, *YYCURSOR);
+ goto yy67;
+yy70:
+ YYDEBUG(70, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy74;
- if (yych <= '[') goto yy75;
+ if (yych <= 0x00) goto yy71;
+ if (yych <= '[') goto yy67;
+ goto yy72;
} else {
- if (yych == '{') goto yy74;
- goto yy75;
+ if (yych != '{') goto yy67;
}
-yy79:
- YYDEBUG(79, *YYCURSOR);
+yy71:
+ YYDEBUG(71, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy61;
+yy72:
+ YYDEBUG(72, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy80;
+ goto yy73;
}
- if (yych == '\\') goto yy82;
- goto yy75;
-yy80:
- YYDEBUG(80, *YYCURSOR);
+ if (yych == '\\') goto yy75;
+ goto yy67;
+yy73:
+ YYDEBUG(73, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(81, *YYCURSOR);
+ YYDEBUG(74, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy80;
+ goto yy73;
}
- if (yych == '\\') goto yy85;
- goto yy75;
-yy82:
- YYDEBUG(82, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- YYDEBUG(83, *YYCURSOR);
- if (yybm[0+yych] & 16) {
- goto yy75;
- }
- if (yych <= '#') goto yy84;
- if (yych <= '$') goto yy80;
- goto yy82;
-yy84:
- YYDEBUG(84, *YYCURSOR);
- ++YYCURSOR;
- YYFILL(1);
- yych = *YYCURSOR;
- if (yych == '\n') goto yy67;
- if (yych == '\r') goto yy67;
- goto yy75;
-yy85:
- YYDEBUG(85, *YYCURSOR);
+ if (yych == '\\') goto yy77;
+ goto yy67;
+yy75:
+ YYDEBUG(75, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- if (yybm[0+yych] & 16) {
- goto yy75;
+ YYDEBUG(76, *YYCURSOR);
+ if (yybm[0+yych] & 32) {
+ goto yy73;
}
- if (yych <= '#') goto yy86;
- if (yych <= '$') goto yy80;
- goto yy82;
-yy86:
- YYDEBUG(86, *YYCURSOR);
+ if (yych == '\\') goto yy75;
+ goto yy67;
+yy77:
+ YYDEBUG(77, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy80;
+ goto yy73;
}
- if (yych == '\\') goto yy82;
- goto yy75;
-yy87:
- YYDEBUG(87, *YYCURSOR);
+ if (yych == '\\') goto yy75;
+ goto yy67;
+yy78:
+ YYDEBUG(78, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(88, *YYCURSOR);
+ YYDEBUG(79, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 360 "Zend/zend_ini_scanner.l"
+#line 371 "Zend/zend_ini_scanner.l"
{ /* Variable start */
yy_push_state(ST_VARNAME TSRMLS_CC);
return TC_DOLLAR_CURLY;
}
-#line 1117 "Zend/zend_ini_scanner.c"
-yy89:
- YYDEBUG(89, *YYCURSOR);
+#line 1055 "Zend/zend_ini_scanner.c"
+yy80:
+ YYDEBUG(80, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy90:
- YYDEBUG(90, *YYCURSOR);
+yy81:
+ YYDEBUG(81, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy89;
+ goto yy80;
}
- goto yy69;
+ goto yy63;
}
/* *********************************** */
yyc_ST_OFFSET:
@@ -1163,495 +1101,495 @@ yyc_ST_OFFSET:
66, 66, 66, 66, 66, 66, 66, 66,
66, 66, 66, 66, 66, 66, 66, 66,
};
- YYDEBUG(91, *YYCURSOR);
+ YYDEBUG(82, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= ',') {
if (yych <= ' ') {
if (yych <= '\n') {
- if (yych <= 0x08) goto yy93;
- if (yych <= '\t') goto yy95;
- goto yy96;
+ if (yych <= 0x08) goto yy84;
+ if (yych <= '\t') goto yy86;
+ goto yy87;
} else {
- if (yych == '\r') goto yy96;
- if (yych >= ' ') goto yy95;
+ if (yych == '\r') goto yy87;
+ if (yych >= ' ') goto yy86;
}
} else {
if (yych <= '#') {
- if (yych == '"') goto yy98;
+ if (yych == '"') goto yy89;
} else {
- if (yych <= '$') goto yy100;
- if (yych == '\'') goto yy101;
+ if (yych <= '$') goto yy91;
+ if (yych == '\'') goto yy92;
}
}
} else {
if (yych <= '@') {
if (yych <= '/') {
- if (yych <= '-') goto yy102;
- if (yych <= '.') goto yy103;
+ if (yych <= '-') goto yy93;
+ if (yych <= '.') goto yy94;
} else {
- if (yych <= '9') goto yy104;
- if (yych == ';') goto yy96;
+ if (yych <= '9') goto yy95;
+ if (yych == ';') goto yy87;
}
} else {
if (yych <= '\\') {
- if (yych <= 'Z') goto yy106;
- if (yych >= '\\') goto yy108;
+ if (yych <= 'Z') goto yy97;
+ if (yych >= '\\') goto yy99;
} else {
- if (yych <= ']') goto yy109;
- if (yych <= '`') goto yy93;
- if (yych <= 'z') goto yy106;
+ if (yych <= ']') goto yy100;
+ if (yych <= '`') goto yy84;
+ if (yych <= 'z') goto yy97;
}
}
}
-yy93:
- YYDEBUG(93, *YYCURSOR);
+yy84:
+ YYDEBUG(84, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy112;
-yy94:
- YYDEBUG(94, *YYCURSOR);
+ goto yy103;
+yy85:
+ YYDEBUG(85, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 440 "Zend/zend_ini_scanner.l"
+#line 451 "Zend/zend_ini_scanner.l"
{ /* Get rest as section/offset value */
RETURN_TOKEN(TC_STRING, yytext, yyleng);
}
-#line 1220 "Zend/zend_ini_scanner.c"
-yy95:
- YYDEBUG(95, *YYCURSOR);
+#line 1158 "Zend/zend_ini_scanner.c"
+yy86:
+ YYDEBUG(86, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy138;
+ goto yy129;
}
- if (yych == '"') goto yy140;
- if (yych == ']') goto yy141;
- goto yy112;
-yy96:
- YYDEBUG(96, *YYCURSOR);
+ if (yych == '"') goto yy131;
+ if (yych == ']') goto yy132;
+ goto yy103;
+yy87:
+ YYDEBUG(87, *YYCURSOR);
++YYCURSOR;
-yy97:
- YYDEBUG(97, *YYCURSOR);
+yy88:
+ YYDEBUG(88, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 495 "Zend/zend_ini_scanner.l"
{
return 0;
}
-#line 1241 "Zend/zend_ini_scanner.c"
-yy98:
- YYDEBUG(98, *YYCURSOR);
+#line 1179 "Zend/zend_ini_scanner.c"
+yy89:
+ YYDEBUG(89, *YYCURSOR);
++YYCURSOR;
-yy99:
- YYDEBUG(99, *YYCURSOR);
+yy90:
+ YYDEBUG(90, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 444 "Zend/zend_ini_scanner.l"
+#line 455 "Zend/zend_ini_scanner.l"
{ /* Double quoted '"' string start */
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
return '"';
}
-#line 1253 "Zend/zend_ini_scanner.c"
-yy100:
- YYDEBUG(100, *YYCURSOR);
+#line 1191 "Zend/zend_ini_scanner.c"
+yy91:
+ YYDEBUG(91, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy97;
- if (yych <= '[') goto yy111;
- goto yy116;
+ if (yych <= 0x00) goto yy88;
+ if (yych <= '[') goto yy102;
+ goto yy107;
} else {
- if (yych == '{') goto yy136;
- goto yy111;
+ if (yych == '{') goto yy127;
+ goto yy102;
}
-yy101:
- YYDEBUG(101, *YYCURSOR);
+yy92:
+ YYDEBUG(92, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy132;
+ goto yy123;
}
- goto yy97;
-yy102:
- YYDEBUG(102, *YYCURSOR);
+ goto yy88;
+yy93:
+ YYDEBUG(93, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy112;
- if (yych <= '9') goto yy130;
- goto yy112;
-yy103:
- YYDEBUG(103, *YYCURSOR);
+ if (yych <= '/') goto yy103;
+ if (yych <= '9') goto yy121;
+ goto yy103;
+yy94:
+ YYDEBUG(94, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy112;
- if (yych <= '9') goto yy128;
- goto yy112;
-yy104:
- YYDEBUG(104, *YYCURSOR);
+ if (yych <= '/') goto yy103;
+ if (yych <= '9') goto yy119;
+ goto yy103;
+yy95:
+ YYDEBUG(95, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '\'') {
if (yych <= '\r') {
- if (yych == '\n') goto yy105;
- if (yych <= '\f') goto yy112;
+ if (yych == '\n') goto yy96;
+ if (yych <= '\f') goto yy103;
} else {
- if (yych == '"') goto yy105;
- if (yych <= '&') goto yy112;
+ if (yych == '"') goto yy96;
+ if (yych <= '&') goto yy103;
}
} else {
if (yych <= '9') {
- if (yych == '.') goto yy124;
- if (yych <= '/') goto yy112;
- goto yy126;
+ if (yych == '.') goto yy115;
+ if (yych <= '/') goto yy103;
+ goto yy117;
} else {
if (yych <= ';') {
- if (yych <= ':') goto yy112;
+ if (yych <= ':') goto yy103;
} else {
- if (yych != ']') goto yy112;
+ if (yych != ']') goto yy103;
}
}
}
-yy105:
- YYDEBUG(105, *YYCURSOR);
+yy96:
+ YYDEBUG(96, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 418 "Zend/zend_ini_scanner.l"
+#line 429 "Zend/zend_ini_scanner.l"
{ /* Get number option value as string */
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
}
-#line 1319 "Zend/zend_ini_scanner.c"
-yy106:
- YYDEBUG(106, *YYCURSOR);
+#line 1257 "Zend/zend_ini_scanner.c"
+yy97:
+ YYDEBUG(97, *YYCURSOR);
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy122;
+ goto yy113;
}
if (yych <= '"') {
if (yych <= '\f') {
- if (yych != '\n') goto yy112;
+ if (yych != '\n') goto yy103;
} else {
- if (yych <= '\r') goto yy107;
- if (yych <= '!') goto yy112;
+ if (yych <= '\r') goto yy98;
+ if (yych <= '!') goto yy103;
}
} else {
if (yych <= ':') {
- if (yych != '\'') goto yy112;
+ if (yych != '\'') goto yy103;
} else {
- if (yych <= ';') goto yy107;
- if (yych != ']') goto yy112;
+ if (yych <= ';') goto yy98;
+ if (yych != ']') goto yy103;
}
}
-yy107:
- YYDEBUG(107, *YYCURSOR);
+yy98:
+ YYDEBUG(98, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 414 "Zend/zend_ini_scanner.l"
+#line 425 "Zend/zend_ini_scanner.l"
{ /* Get constant option value */
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
}
-#line 1349 "Zend/zend_ini_scanner.c"
-yy108:
- YYDEBUG(108, *YYCURSOR);
+#line 1287 "Zend/zend_ini_scanner.c"
+yy99:
+ YYDEBUG(99, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy111;
-yy109:
- YYDEBUG(109, *YYCURSOR);
+ goto yy102;
+yy100:
+ YYDEBUG(100, *YYCURSOR);
++YYCURSOR;
-yy110:
- YYDEBUG(110, *YYCURSOR);
+yy101:
+ YYDEBUG(101, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 355 "Zend/zend_ini_scanner.l"
+#line 366 "Zend/zend_ini_scanner.l"
{ /* End of section or an option offset */
BEGIN(INITIAL);
return ']';
}
-#line 1365 "Zend/zend_ini_scanner.c"
-yy111:
- YYDEBUG(111, *YYCURSOR);
+#line 1303 "Zend/zend_ini_scanner.c"
+yy102:
+ YYDEBUG(102, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy112:
- YYDEBUG(112, *YYCURSOR);
+yy103:
+ YYDEBUG(103, *YYCURSOR);
if (yybm[0+yych] & 2) {
- goto yy111;
+ goto yy102;
}
- if (yych == '$') goto yy114;
- if (yych != '\\') goto yy94;
-yy113:
- YYDEBUG(113, *YYCURSOR);
+ if (yych == '$') goto yy105;
+ if (yych != '\\') goto yy85;
+yy104:
+ YYDEBUG(104, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- goto yy111;
-yy114:
- YYDEBUG(114, *YYCURSOR);
+ goto yy102;
+yy105:
+ YYDEBUG(105, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy115;
- if (yych <= '[') goto yy111;
- goto yy116;
+ if (yych <= 0x00) goto yy106;
+ if (yych <= '[') goto yy102;
+ goto yy107;
} else {
- if (yych != '{') goto yy111;
+ if (yych != '{') goto yy102;
}
-yy115:
- YYDEBUG(115, *YYCURSOR);
+yy106:
+ YYDEBUG(106, *YYCURSOR);
YYCURSOR = YYMARKER;
if (yyaccept <= 1) {
if (yyaccept <= 0) {
- goto yy94;
+ goto yy85;
} else {
- goto yy97;
+ goto yy88;
}
} else {
if (yyaccept <= 2) {
- goto yy105;
+ goto yy96;
} else {
- goto yy107;
+ goto yy98;
}
}
-yy116:
- YYDEBUG(116, *YYCURSOR);
+yy107:
+ YYDEBUG(107, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 4) {
- goto yy117;
+ goto yy108;
}
- if (yych == '\\') goto yy119;
- goto yy111;
-yy117:
- YYDEBUG(117, *YYCURSOR);
+ if (yych == '\\') goto yy110;
+ goto yy102;
+yy108:
+ YYDEBUG(108, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(118, *YYCURSOR);
+ YYDEBUG(109, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy117;
+ goto yy108;
}
- if (yych == '\\') goto yy121;
- goto yy111;
-yy119:
- YYDEBUG(119, *YYCURSOR);
+ if (yych == '\\') goto yy112;
+ goto yy102;
+yy110:
+ YYDEBUG(110, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(120, *YYCURSOR);
+ YYDEBUG(111, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy117;
+ goto yy108;
}
- if (yych == '\\') goto yy119;
- goto yy111;
-yy121:
- YYDEBUG(121, *YYCURSOR);
+ if (yych == '\\') goto yy110;
+ goto yy102;
+yy112:
+ YYDEBUG(112, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 4) {
- goto yy117;
+ goto yy108;
}
- if (yych == '\\') goto yy119;
- goto yy111;
-yy122:
- YYDEBUG(122, *YYCURSOR);
+ if (yych == '\\') goto yy110;
+ goto yy102;
+yy113:
+ YYDEBUG(113, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(123, *YYCURSOR);
+ YYDEBUG(114, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy122;
+ goto yy113;
}
if (yych <= '$') {
if (yych <= '\r') {
- if (yych == '\n') goto yy107;
- if (yych <= '\f') goto yy111;
- goto yy107;
+ if (yych == '\n') goto yy98;
+ if (yych <= '\f') goto yy102;
+ goto yy98;
} else {
- if (yych == '"') goto yy107;
- if (yych <= '#') goto yy111;
- goto yy114;
+ if (yych == '"') goto yy98;
+ if (yych <= '#') goto yy102;
+ goto yy105;
}
} else {
if (yych <= ';') {
- if (yych == '\'') goto yy107;
- if (yych <= ':') goto yy111;
- goto yy107;
+ if (yych == '\'') goto yy98;
+ if (yych <= ':') goto yy102;
+ goto yy98;
} else {
- if (yych <= '[') goto yy111;
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy107;
- goto yy111;
+ if (yych <= '[') goto yy102;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy98;
+ goto yy102;
}
}
-yy124:
- YYDEBUG(124, *YYCURSOR);
+yy115:
+ YYDEBUG(115, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(125, *YYCURSOR);
+ YYDEBUG(116, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy124;
+ goto yy115;
}
if (yych <= '$') {
if (yych <= '\r') {
- if (yych == '\n') goto yy105;
- if (yych <= '\f') goto yy111;
- goto yy105;
+ if (yych == '\n') goto yy96;
+ if (yych <= '\f') goto yy102;
+ goto yy96;
} else {
- if (yych == '"') goto yy105;
- if (yych <= '#') goto yy111;
- goto yy114;
+ if (yych == '"') goto yy96;
+ if (yych <= '#') goto yy102;
+ goto yy105;
}
} else {
if (yych <= ';') {
- if (yych == '\'') goto yy105;
- if (yych <= ':') goto yy111;
- goto yy105;
+ if (yych == '\'') goto yy96;
+ if (yych <= ':') goto yy102;
+ goto yy96;
} else {
- if (yych <= '[') goto yy111;
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy105;
- goto yy111;
+ if (yych <= '[') goto yy102;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy96;
+ goto yy102;
}
}
-yy126:
- YYDEBUG(126, *YYCURSOR);
+yy117:
+ YYDEBUG(117, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(127, *YYCURSOR);
+ YYDEBUG(118, *YYCURSOR);
if (yych <= '\'') {
if (yych <= '!') {
if (yych <= '\n') {
- if (yych <= '\t') goto yy111;
- goto yy105;
+ if (yych <= '\t') goto yy102;
+ goto yy96;
} else {
- if (yych == '\r') goto yy105;
- goto yy111;
+ if (yych == '\r') goto yy96;
+ goto yy102;
}
} else {
if (yych <= '#') {
- if (yych <= '"') goto yy105;
- goto yy111;
+ if (yych <= '"') goto yy96;
+ goto yy102;
} else {
- if (yych <= '$') goto yy114;
- if (yych <= '&') goto yy111;
- goto yy105;
+ if (yych <= '$') goto yy105;
+ if (yych <= '&') goto yy102;
+ goto yy96;
}
}
} else {
if (yych <= ':') {
if (yych <= '.') {
- if (yych <= '-') goto yy111;
- goto yy124;
+ if (yych <= '-') goto yy102;
+ goto yy115;
} else {
- if (yych <= '/') goto yy111;
- if (yych <= '9') goto yy126;
- goto yy111;
+ if (yych <= '/') goto yy102;
+ if (yych <= '9') goto yy117;
+ goto yy102;
}
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy105;
- goto yy111;
+ if (yych <= ';') goto yy96;
+ goto yy102;
} else {
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy105;
- goto yy111;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy96;
+ goto yy102;
}
}
}
-yy128:
- YYDEBUG(128, *YYCURSOR);
+yy119:
+ YYDEBUG(119, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(129, *YYCURSOR);
+ YYDEBUG(120, *YYCURSOR);
if (yych <= '&') {
if (yych <= '\r') {
- if (yych == '\n') goto yy105;
- if (yych <= '\f') goto yy111;
- goto yy105;
+ if (yych == '\n') goto yy96;
+ if (yych <= '\f') goto yy102;
+ goto yy96;
} else {
if (yych <= '"') {
- if (yych <= '!') goto yy111;
- goto yy105;
+ if (yych <= '!') goto yy102;
+ goto yy96;
} else {
- if (yych == '$') goto yy114;
- goto yy111;
+ if (yych == '$') goto yy105;
+ goto yy102;
}
}
} else {
if (yych <= ':') {
- if (yych <= '\'') goto yy105;
- if (yych <= '/') goto yy111;
- if (yych <= '9') goto yy128;
- goto yy111;
+ if (yych <= '\'') goto yy96;
+ if (yych <= '/') goto yy102;
+ if (yych <= '9') goto yy119;
+ goto yy102;
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy105;
- goto yy111;
+ if (yych <= ';') goto yy96;
+ goto yy102;
} else {
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy105;
- goto yy111;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy96;
+ goto yy102;
}
}
}
-yy130:
- YYDEBUG(130, *YYCURSOR);
+yy121:
+ YYDEBUG(121, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(131, *YYCURSOR);
+ YYDEBUG(122, *YYCURSOR);
if (yych <= '&') {
if (yych <= '\r') {
- if (yych == '\n') goto yy105;
- if (yych <= '\f') goto yy111;
- goto yy105;
+ if (yych == '\n') goto yy96;
+ if (yych <= '\f') goto yy102;
+ goto yy96;
} else {
if (yych <= '"') {
- if (yych <= '!') goto yy111;
- goto yy105;
+ if (yych <= '!') goto yy102;
+ goto yy96;
} else {
- if (yych == '$') goto yy114;
- goto yy111;
+ if (yych == '$') goto yy105;
+ goto yy102;
}
}
} else {
if (yych <= ':') {
- if (yych <= '\'') goto yy105;
- if (yych <= '/') goto yy111;
- if (yych <= '9') goto yy130;
- goto yy111;
+ if (yych <= '\'') goto yy96;
+ if (yych <= '/') goto yy102;
+ if (yych <= '9') goto yy121;
+ goto yy102;
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy105;
- goto yy111;
+ if (yych <= ';') goto yy96;
+ goto yy102;
} else {
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy105;
- goto yy111;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy96;
+ goto yy102;
}
}
}
-yy132:
- YYDEBUG(132, *YYCURSOR);
+yy123:
+ YYDEBUG(123, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(133, *YYCURSOR);
+ YYDEBUG(124, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy132;
+ goto yy123;
}
- YYDEBUG(134, *YYCURSOR);
+ YYDEBUG(125, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(135, *YYCURSOR);
+ YYDEBUG(126, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 330 "Zend/zend_ini_scanner.l"
+#line 341 "Zend/zend_ini_scanner.l"
{ /* Raw string */
/* Eat leading and trailing single quotes */
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
@@ -1660,59 +1598,59 @@ yy132:
}
RETURN_TOKEN(TC_RAW, yytext, yyleng);
}
-#line 1664 "Zend/zend_ini_scanner.c"
-yy136:
- YYDEBUG(136, *YYCURSOR);
+#line 1602 "Zend/zend_ini_scanner.c"
+yy127:
+ YYDEBUG(127, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(137, *YYCURSOR);
+ YYDEBUG(128, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 360 "Zend/zend_ini_scanner.l"
+#line 371 "Zend/zend_ini_scanner.l"
{ /* Variable start */
yy_push_state(ST_VARNAME TSRMLS_CC);
return TC_DOLLAR_CURLY;
}
-#line 1675 "Zend/zend_ini_scanner.c"
-yy138:
- YYDEBUG(138, *YYCURSOR);
+#line 1613 "Zend/zend_ini_scanner.c"
+yy129:
+ YYDEBUG(129, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(139, *YYCURSOR);
+ YYDEBUG(130, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy138;
+ goto yy129;
}
if (yych <= '$') {
if (yych <= '\r') {
- if (yych == '\n') goto yy94;
- if (yych <= '\f') goto yy111;
- goto yy94;
+ if (yych == '\n') goto yy85;
+ if (yych <= '\f') goto yy102;
+ goto yy85;
} else {
- if (yych == '"') goto yy140;
- if (yych <= '#') goto yy111;
- goto yy114;
+ if (yych == '"') goto yy131;
+ if (yych <= '#') goto yy102;
+ goto yy105;
}
} else {
if (yych <= ';') {
- if (yych == '\'') goto yy94;
- if (yych <= ':') goto yy111;
- goto yy94;
+ if (yych == '\'') goto yy85;
+ if (yych <= ':') goto yy102;
+ goto yy85;
} else {
- if (yych <= '[') goto yy111;
- if (yych <= '\\') goto yy113;
- if (yych <= ']') goto yy141;
- goto yy111;
+ if (yych <= '[') goto yy102;
+ if (yych <= '\\') goto yy104;
+ if (yych <= ']') goto yy132;
+ goto yy102;
}
}
-yy140:
- YYDEBUG(140, *YYCURSOR);
+yy131:
+ YYDEBUG(131, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy99;
-yy141:
- YYDEBUG(141, *YYCURSOR);
+ goto yy90;
+yy132:
+ YYDEBUG(132, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy110;
+ goto yy101;
}
/* *********************************** */
yyc_ST_RAW:
@@ -1751,34 +1689,34 @@ yyc_ST_RAW:
160, 160, 160, 160, 160, 160, 160, 160,
160, 160, 160, 160, 160, 160, 160, 160,
};
- YYDEBUG(142, *YYCURSOR);
+ YYDEBUG(133, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= 0x1F) {
if (yych <= '\n') {
- if (yych <= 0x08) goto yy144;
- if (yych <= '\t') goto yy146;
- goto yy147;
+ if (yych <= 0x08) goto yy135;
+ if (yych <= '\t') goto yy137;
+ goto yy138;
} else {
- if (yych == '\r') goto yy149;
+ if (yych == '\r') goto yy140;
}
} else {
if (yych <= ';') {
- if (yych <= ' ') goto yy146;
- if (yych >= ';') goto yy150;
+ if (yych <= ' ') goto yy137;
+ if (yych >= ';') goto yy141;
} else {
- if (yych == '=') goto yy152;
+ if (yych == '=') goto yy143;
}
}
-yy144:
- YYDEBUG(144, *YYCURSOR);
+yy135:
+ YYDEBUG(135, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy163;
-yy145:
- YYDEBUG(145, *YYCURSOR);
+ goto yy154;
+yy136:
+ YYDEBUG(136, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 395 "Zend/zend_ini_scanner.l"
+#line 406 "Zend/zend_ini_scanner.l"
{ /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
/* Eat leading and trailing double quotes */
if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
@@ -1787,129 +1725,129 @@ yy145:
}
RETURN_TOKEN(TC_RAW, yytext, yyleng);
}
-#line 1791 "Zend/zend_ini_scanner.c"
-yy146:
- YYDEBUG(146, *YYCURSOR);
+#line 1729 "Zend/zend_ini_scanner.c"
+yy137:
+ YYDEBUG(137, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy159;
+ goto yy150;
}
if (yych <= '\f') {
- if (yych == '\n') goto yy158;
- goto yy163;
+ if (yych == '\n') goto yy149;
+ goto yy154;
} else {
- if (yych <= '\r') goto yy161;
- if (yych == ';') goto yy153;
- goto yy163;
+ if (yych <= '\r') goto yy152;
+ if (yych == ';') goto yy144;
+ goto yy154;
}
-yy147:
- YYDEBUG(147, *YYCURSOR);
+yy138:
+ YYDEBUG(138, *YYCURSOR);
++YYCURSOR;
-yy148:
- YYDEBUG(148, *YYCURSOR);
+yy139:
+ YYDEBUG(139, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 408 "Zend/zend_ini_scanner.l"
+#line 419 "Zend/zend_ini_scanner.l"
{ /* End of option value */
BEGIN(INITIAL);
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 1819 "Zend/zend_ini_scanner.c"
-yy149:
- YYDEBUG(149, *YYCURSOR);
+#line 1757 "Zend/zend_ini_scanner.c"
+yy140:
+ YYDEBUG(140, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy158;
- goto yy148;
-yy150:
- YYDEBUG(150, *YYCURSOR);
+ if (yych == '\n') goto yy149;
+ goto yy139;
+yy141:
+ YYDEBUG(141, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy154;
-yy151:
- YYDEBUG(151, *YYCURSOR);
+ goto yy145;
+yy142:
+ YYDEBUG(142, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 490 "Zend/zend_ini_scanner.l"
{ /* End of option value (if EOF is reached before EOL */
BEGIN(INITIAL);
return END_OF_LINE;
}
-#line 1838 "Zend/zend_ini_scanner.c"
-yy152:
- YYDEBUG(152, *YYCURSOR);
+#line 1776 "Zend/zend_ini_scanner.c"
+yy143:
+ YYDEBUG(143, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy151;
-yy153:
- YYDEBUG(153, *YYCURSOR);
+ goto yy142;
+yy144:
+ YYDEBUG(144, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy154:
- YYDEBUG(154, *YYCURSOR);
+yy145:
+ YYDEBUG(145, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy153;
+ goto yy144;
}
- if (yych >= '\r') goto yy157;
-yy155:
- YYDEBUG(155, *YYCURSOR);
+ if (yych >= '\r') goto yy148;
+yy146:
+ YYDEBUG(146, *YYCURSOR);
++YYCURSOR;
-yy156:
- YYDEBUG(156, *YYCURSOR);
+yy147:
+ YYDEBUG(147, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 477 "Zend/zend_ini_scanner.l"
+#line 484 "Zend/zend_ini_scanner.l"
{ /* Comment */
BEGIN(INITIAL);
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 1866 "Zend/zend_ini_scanner.c"
-yy157:
- YYDEBUG(157, *YYCURSOR);
+#line 1804 "Zend/zend_ini_scanner.c"
+yy148:
+ YYDEBUG(148, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy155;
- goto yy156;
-yy158:
- YYDEBUG(158, *YYCURSOR);
+ if (yych == '\n') goto yy146;
+ goto yy147;
+yy149:
+ YYDEBUG(149, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy148;
-yy159:
- YYDEBUG(159, *YYCURSOR);
+ goto yy139;
+yy150:
+ YYDEBUG(150, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(160, *YYCURSOR);
+ YYDEBUG(151, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy159;
+ goto yy150;
}
if (yych <= '\r') {
- if (yych == '\n') goto yy158;
- if (yych <= '\f') goto yy162;
+ if (yych == '\n') goto yy149;
+ if (yych <= '\f') goto yy153;
} else {
if (yych <= ';') {
- if (yych <= ':') goto yy162;
- goto yy153;
+ if (yych <= ':') goto yy153;
+ goto yy144;
} else {
- if (yych == '=') goto yy145;
- goto yy162;
+ if (yych == '=') goto yy136;
+ goto yy153;
}
}
-yy161:
- YYDEBUG(161, *YYCURSOR);
+yy152:
+ YYDEBUG(152, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy158;
- goto yy148;
-yy162:
- YYDEBUG(162, *YYCURSOR);
+ if (yych == '\n') goto yy149;
+ goto yy139;
+yy153:
+ YYDEBUG(153, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy163:
- YYDEBUG(163, *YYCURSOR);
+yy154:
+ YYDEBUG(154, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy162;
+ goto yy153;
}
- goto yy145;
+ goto yy136;
}
/* *********************************** */
yyc_ST_SECTION_RAW:
@@ -1948,85 +1886,85 @@ yyc_ST_SECTION_RAW:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(164, *YYCURSOR);
+ YYDEBUG(155, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= '\f') {
- if (yych == '\n') goto yy168;
+ if (yych == '\n') goto yy159;
} else {
- if (yych <= '\r') goto yy168;
- if (yych == ']') goto yy170;
+ if (yych <= '\r') goto yy159;
+ if (yych == ']') goto yy161;
}
- YYDEBUG(166, *YYCURSOR);
+ YYDEBUG(157, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy177;
-yy167:
- YYDEBUG(167, *YYCURSOR);
+ goto yy168;
+yy158:
+ YYDEBUG(158, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 404 "Zend/zend_ini_scanner.l"
+#line 415 "Zend/zend_ini_scanner.l"
{ /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
RETURN_TOKEN(TC_RAW, yytext, yyleng);
}
-#line 1972 "Zend/zend_ini_scanner.c"
-yy168:
- YYDEBUG(168, *YYCURSOR);
+#line 1910 "Zend/zend_ini_scanner.c"
+yy159:
+ YYDEBUG(159, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(169, *YYCURSOR);
+ YYDEBUG(160, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 495 "Zend/zend_ini_scanner.l"
{
return 0;
}
-#line 1982 "Zend/zend_ini_scanner.c"
-yy170:
- YYDEBUG(170, *YYCURSOR);
+#line 1920 "Zend/zend_ini_scanner.c"
+yy161:
+ YYDEBUG(161, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy173;
-yy171:
- YYDEBUG(171, *YYCURSOR);
+ goto yy164;
+yy162:
+ YYDEBUG(162, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 339 "Zend/zend_ini_scanner.l"
+#line 350 "Zend/zend_ini_scanner.l"
{ /* End of section */
BEGIN(INITIAL);
SCNG(lineno)++;
return ']';
}
-#line 1997 "Zend/zend_ini_scanner.c"
-yy172:
- YYDEBUG(172, *YYCURSOR);
+#line 1935 "Zend/zend_ini_scanner.c"
+yy163:
+ YYDEBUG(163, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy173:
- YYDEBUG(173, *YYCURSOR);
+yy164:
+ YYDEBUG(164, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy172;
+ goto yy163;
}
- if (yych == '\n') goto yy174;
- if (yych == '\r') goto yy175;
- goto yy171;
-yy174:
- YYDEBUG(174, *YYCURSOR);
+ if (yych == '\n') goto yy165;
+ if (yych == '\r') goto yy166;
+ goto yy162;
+yy165:
+ YYDEBUG(165, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy171;
-yy175:
- YYDEBUG(175, *YYCURSOR);
+ goto yy162;
+yy166:
+ YYDEBUG(166, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy174;
- goto yy171;
-yy176:
- YYDEBUG(176, *YYCURSOR);
+ if (yych == '\n') goto yy165;
+ goto yy162;
+yy167:
+ YYDEBUG(167, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy177:
- YYDEBUG(177, *YYCURSOR);
+yy168:
+ YYDEBUG(168, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy176;
+ goto yy167;
}
- goto yy167;
+ goto yy158;
}
/* *********************************** */
yyc_ST_SECTION_VALUE:
@@ -2065,522 +2003,522 @@ yyc_ST_SECTION_VALUE:
132, 132, 132, 132, 132, 132, 132, 132,
132, 132, 132, 132, 132, 132, 132, 132,
};
- YYDEBUG(178, *YYCURSOR);
+ YYDEBUG(169, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= ',') {
if (yych <= ' ') {
if (yych <= '\n') {
- if (yych <= 0x08) goto yy180;
- if (yych <= '\t') goto yy182;
- goto yy183;
+ if (yych <= 0x08) goto yy171;
+ if (yych <= '\t') goto yy173;
+ goto yy174;
} else {
- if (yych == '\r') goto yy183;
- if (yych >= ' ') goto yy182;
+ if (yych == '\r') goto yy174;
+ if (yych >= ' ') goto yy173;
}
} else {
if (yych <= '#') {
- if (yych == '"') goto yy185;
+ if (yych == '"') goto yy176;
} else {
- if (yych <= '$') goto yy187;
- if (yych == '\'') goto yy188;
+ if (yych <= '$') goto yy178;
+ if (yych == '\'') goto yy179;
}
}
} else {
if (yych <= '@') {
if (yych <= '/') {
- if (yych <= '-') goto yy189;
- if (yych <= '.') goto yy190;
+ if (yych <= '-') goto yy180;
+ if (yych <= '.') goto yy181;
} else {
- if (yych <= '9') goto yy191;
- if (yych == ';') goto yy183;
+ if (yych <= '9') goto yy182;
+ if (yych == ';') goto yy174;
}
} else {
if (yych <= '\\') {
- if (yych <= 'Z') goto yy193;
- if (yych >= '\\') goto yy195;
+ if (yych <= 'Z') goto yy184;
+ if (yych >= '\\') goto yy186;
} else {
- if (yych <= ']') goto yy196;
- if (yych <= '`') goto yy180;
- if (yych <= 'z') goto yy193;
+ if (yych <= ']') goto yy187;
+ if (yych <= '`') goto yy171;
+ if (yych <= 'z') goto yy184;
}
}
}
-yy180:
- YYDEBUG(180, *YYCURSOR);
+yy171:
+ YYDEBUG(171, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy203;
-yy181:
- YYDEBUG(181, *YYCURSOR);
+ goto yy194;
+yy172:
+ YYDEBUG(172, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 440 "Zend/zend_ini_scanner.l"
+#line 451 "Zend/zend_ini_scanner.l"
{ /* Get rest as section/offset value */
RETURN_TOKEN(TC_STRING, yytext, yyleng);
}
-#line 2122 "Zend/zend_ini_scanner.c"
-yy182:
- YYDEBUG(182, *YYCURSOR);
+#line 2060 "Zend/zend_ini_scanner.c"
+yy173:
+ YYDEBUG(173, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy229;
- goto yy203;
+ if (yych == '\t') goto yy220;
+ goto yy194;
} else {
- if (yych <= ' ') goto yy229;
- if (yych == '"') goto yy231;
- goto yy203;
+ if (yych <= ' ') goto yy220;
+ if (yych == '"') goto yy222;
+ goto yy194;
}
-yy183:
- YYDEBUG(183, *YYCURSOR);
+yy174:
+ YYDEBUG(174, *YYCURSOR);
++YYCURSOR;
-yy184:
- YYDEBUG(184, *YYCURSOR);
+yy175:
+ YYDEBUG(175, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 495 "Zend/zend_ini_scanner.l"
{
return 0;
}
-#line 2145 "Zend/zend_ini_scanner.c"
-yy185:
- YYDEBUG(185, *YYCURSOR);
+#line 2083 "Zend/zend_ini_scanner.c"
+yy176:
+ YYDEBUG(176, *YYCURSOR);
++YYCURSOR;
-yy186:
- YYDEBUG(186, *YYCURSOR);
+yy177:
+ YYDEBUG(177, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 444 "Zend/zend_ini_scanner.l"
+#line 455 "Zend/zend_ini_scanner.l"
{ /* Double quoted '"' string start */
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
return '"';
}
-#line 2157 "Zend/zend_ini_scanner.c"
-yy187:
- YYDEBUG(187, *YYCURSOR);
+#line 2095 "Zend/zend_ini_scanner.c"
+yy178:
+ YYDEBUG(178, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy184;
- if (yych <= '[') goto yy202;
- goto yy207;
+ if (yych <= 0x00) goto yy175;
+ if (yych <= '[') goto yy193;
+ goto yy198;
} else {
- if (yych == '{') goto yy227;
- goto yy202;
+ if (yych == '{') goto yy218;
+ goto yy193;
}
-yy188:
- YYDEBUG(188, *YYCURSOR);
+yy179:
+ YYDEBUG(179, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy223;
+ goto yy214;
}
- goto yy184;
-yy189:
- YYDEBUG(189, *YYCURSOR);
+ goto yy175;
+yy180:
+ YYDEBUG(180, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy203;
- if (yych <= '9') goto yy221;
- goto yy203;
-yy190:
- YYDEBUG(190, *YYCURSOR);
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy212;
+ goto yy194;
+yy181:
+ YYDEBUG(181, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy203;
- if (yych <= '9') goto yy219;
- goto yy203;
-yy191:
- YYDEBUG(191, *YYCURSOR);
+ if (yych <= '/') goto yy194;
+ if (yych <= '9') goto yy210;
+ goto yy194;
+yy182:
+ YYDEBUG(182, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '\'') {
if (yych <= '\r') {
- if (yych == '\n') goto yy192;
- if (yych <= '\f') goto yy203;
+ if (yych == '\n') goto yy183;
+ if (yych <= '\f') goto yy194;
} else {
- if (yych == '"') goto yy192;
- if (yych <= '&') goto yy203;
+ if (yych == '"') goto yy183;
+ if (yych <= '&') goto yy194;
}
} else {
if (yych <= '9') {
- if (yych == '.') goto yy215;
- if (yych <= '/') goto yy203;
- goto yy217;
+ if (yych == '.') goto yy206;
+ if (yych <= '/') goto yy194;
+ goto yy208;
} else {
if (yych <= ';') {
- if (yych <= ':') goto yy203;
+ if (yych <= ':') goto yy194;
} else {
- if (yych != ']') goto yy203;
+ if (yych != ']') goto yy194;
}
}
}
-yy192:
- YYDEBUG(192, *YYCURSOR);
+yy183:
+ YYDEBUG(183, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 418 "Zend/zend_ini_scanner.l"
+#line 429 "Zend/zend_ini_scanner.l"
{ /* Get number option value as string */
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
}
-#line 2223 "Zend/zend_ini_scanner.c"
-yy193:
- YYDEBUG(193, *YYCURSOR);
+#line 2161 "Zend/zend_ini_scanner.c"
+yy184:
+ YYDEBUG(184, *YYCURSOR);
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy213;
+ goto yy204;
}
if (yych <= '"') {
if (yych <= '\f') {
- if (yych != '\n') goto yy203;
+ if (yych != '\n') goto yy194;
} else {
- if (yych <= '\r') goto yy194;
- if (yych <= '!') goto yy203;
+ if (yych <= '\r') goto yy185;
+ if (yych <= '!') goto yy194;
}
} else {
if (yych <= ':') {
- if (yych != '\'') goto yy203;
+ if (yych != '\'') goto yy194;
} else {
- if (yych <= ';') goto yy194;
- if (yych != ']') goto yy203;
+ if (yych <= ';') goto yy185;
+ if (yych != ']') goto yy194;
}
}
-yy194:
- YYDEBUG(194, *YYCURSOR);
+yy185:
+ YYDEBUG(185, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 414 "Zend/zend_ini_scanner.l"
+#line 425 "Zend/zend_ini_scanner.l"
{ /* Get constant option value */
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
}
-#line 2253 "Zend/zend_ini_scanner.c"
-yy195:
- YYDEBUG(195, *YYCURSOR);
+#line 2191 "Zend/zend_ini_scanner.c"
+yy186:
+ YYDEBUG(186, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy202;
-yy196:
- YYDEBUG(196, *YYCURSOR);
+ goto yy193;
+yy187:
+ YYDEBUG(187, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy199;
-yy197:
- YYDEBUG(197, *YYCURSOR);
+ goto yy190;
+yy188:
+ YYDEBUG(188, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 339 "Zend/zend_ini_scanner.l"
+#line 350 "Zend/zend_ini_scanner.l"
{ /* End of section */
BEGIN(INITIAL);
SCNG(lineno)++;
return ']';
}
-#line 2272 "Zend/zend_ini_scanner.c"
-yy198:
- YYDEBUG(198, *YYCURSOR);
+#line 2210 "Zend/zend_ini_scanner.c"
+yy189:
+ YYDEBUG(189, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy199:
- YYDEBUG(199, *YYCURSOR);
+yy190:
+ YYDEBUG(190, *YYCURSOR);
if (yybm[0+yych] & 2) {
- goto yy198;
+ goto yy189;
}
- if (yych == '\n') goto yy200;
- if (yych == '\r') goto yy201;
- goto yy197;
-yy200:
- YYDEBUG(200, *YYCURSOR);
+ if (yych == '\n') goto yy191;
+ if (yych == '\r') goto yy192;
+ goto yy188;
+yy191:
+ YYDEBUG(191, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy197;
-yy201:
- YYDEBUG(201, *YYCURSOR);
+ goto yy188;
+yy192:
+ YYDEBUG(192, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy200;
- goto yy197;
-yy202:
- YYDEBUG(202, *YYCURSOR);
+ if (yych == '\n') goto yy191;
+ goto yy188;
+yy193:
+ YYDEBUG(193, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy203:
- YYDEBUG(203, *YYCURSOR);
+yy194:
+ YYDEBUG(194, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy202;
+ goto yy193;
}
- if (yych == '$') goto yy205;
- if (yych != '\\') goto yy181;
-yy204:
- YYDEBUG(204, *YYCURSOR);
+ if (yych == '$') goto yy196;
+ if (yych != '\\') goto yy172;
+yy195:
+ YYDEBUG(195, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- goto yy202;
-yy205:
- YYDEBUG(205, *YYCURSOR);
+ goto yy193;
+yy196:
+ YYDEBUG(196, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy206;
- if (yych <= '[') goto yy202;
- goto yy207;
+ if (yych <= 0x00) goto yy197;
+ if (yych <= '[') goto yy193;
+ goto yy198;
} else {
- if (yych != '{') goto yy202;
+ if (yych != '{') goto yy193;
}
-yy206:
- YYDEBUG(206, *YYCURSOR);
+yy197:
+ YYDEBUG(197, *YYCURSOR);
YYCURSOR = YYMARKER;
if (yyaccept <= 1) {
if (yyaccept <= 0) {
- goto yy181;
+ goto yy172;
} else {
- goto yy184;
+ goto yy175;
}
} else {
if (yyaccept <= 2) {
- goto yy192;
+ goto yy183;
} else {
- goto yy194;
+ goto yy185;
}
}
-yy207:
- YYDEBUG(207, *YYCURSOR);
+yy198:
+ YYDEBUG(198, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 8) {
- goto yy208;
+ goto yy199;
}
- if (yych == '\\') goto yy210;
- goto yy202;
-yy208:
- YYDEBUG(208, *YYCURSOR);
+ if (yych == '\\') goto yy201;
+ goto yy193;
+yy199:
+ YYDEBUG(199, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(209, *YYCURSOR);
+ YYDEBUG(200, *YYCURSOR);
if (yybm[0+yych] & 8) {
- goto yy208;
+ goto yy199;
}
- if (yych == '\\') goto yy212;
- goto yy202;
-yy210:
- YYDEBUG(210, *YYCURSOR);
+ if (yych == '\\') goto yy203;
+ goto yy193;
+yy201:
+ YYDEBUG(201, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(211, *YYCURSOR);
+ YYDEBUG(202, *YYCURSOR);
if (yybm[0+yych] & 8) {
- goto yy208;
+ goto yy199;
}
- if (yych == '\\') goto yy210;
- goto yy202;
-yy212:
- YYDEBUG(212, *YYCURSOR);
+ if (yych == '\\') goto yy201;
+ goto yy193;
+yy203:
+ YYDEBUG(203, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 8) {
- goto yy208;
+ goto yy199;
}
- if (yych == '\\') goto yy210;
- goto yy202;
-yy213:
- YYDEBUG(213, *YYCURSOR);
+ if (yych == '\\') goto yy201;
+ goto yy193;
+yy204:
+ YYDEBUG(204, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(214, *YYCURSOR);
+ YYDEBUG(205, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy213;
+ goto yy204;
}
if (yych <= '$') {
if (yych <= '\r') {
- if (yych == '\n') goto yy194;
- if (yych <= '\f') goto yy202;
- goto yy194;
+ if (yych == '\n') goto yy185;
+ if (yych <= '\f') goto yy193;
+ goto yy185;
} else {
- if (yych == '"') goto yy194;
- if (yych <= '#') goto yy202;
- goto yy205;
+ if (yych == '"') goto yy185;
+ if (yych <= '#') goto yy193;
+ goto yy196;
}
} else {
if (yych <= ';') {
- if (yych == '\'') goto yy194;
- if (yych <= ':') goto yy202;
- goto yy194;
+ if (yych == '\'') goto yy185;
+ if (yych <= ':') goto yy193;
+ goto yy185;
} else {
- if (yych <= '[') goto yy202;
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy194;
- goto yy202;
+ if (yych <= '[') goto yy193;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy185;
+ goto yy193;
}
}
-yy215:
- YYDEBUG(215, *YYCURSOR);
+yy206:
+ YYDEBUG(206, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(216, *YYCURSOR);
+ YYDEBUG(207, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy215;
+ goto yy206;
}
if (yych <= '$') {
if (yych <= '\r') {
- if (yych == '\n') goto yy192;
- if (yych <= '\f') goto yy202;
- goto yy192;
+ if (yych == '\n') goto yy183;
+ if (yych <= '\f') goto yy193;
+ goto yy183;
} else {
- if (yych == '"') goto yy192;
- if (yych <= '#') goto yy202;
- goto yy205;
+ if (yych == '"') goto yy183;
+ if (yych <= '#') goto yy193;
+ goto yy196;
}
} else {
if (yych <= ';') {
- if (yych == '\'') goto yy192;
- if (yych <= ':') goto yy202;
- goto yy192;
+ if (yych == '\'') goto yy183;
+ if (yych <= ':') goto yy193;
+ goto yy183;
} else {
- if (yych <= '[') goto yy202;
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy192;
- goto yy202;
+ if (yych <= '[') goto yy193;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy183;
+ goto yy193;
}
}
-yy217:
- YYDEBUG(217, *YYCURSOR);
+yy208:
+ YYDEBUG(208, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(218, *YYCURSOR);
+ YYDEBUG(209, *YYCURSOR);
if (yych <= '\'') {
if (yych <= '!') {
if (yych <= '\n') {
- if (yych <= '\t') goto yy202;
- goto yy192;
+ if (yych <= '\t') goto yy193;
+ goto yy183;
} else {
- if (yych == '\r') goto yy192;
- goto yy202;
+ if (yych == '\r') goto yy183;
+ goto yy193;
}
} else {
if (yych <= '#') {
- if (yych <= '"') goto yy192;
- goto yy202;
+ if (yych <= '"') goto yy183;
+ goto yy193;
} else {
- if (yych <= '$') goto yy205;
- if (yych <= '&') goto yy202;
- goto yy192;
+ if (yych <= '$') goto yy196;
+ if (yych <= '&') goto yy193;
+ goto yy183;
}
}
} else {
if (yych <= ':') {
if (yych <= '.') {
- if (yych <= '-') goto yy202;
- goto yy215;
+ if (yych <= '-') goto yy193;
+ goto yy206;
} else {
- if (yych <= '/') goto yy202;
- if (yych <= '9') goto yy217;
- goto yy202;
+ if (yych <= '/') goto yy193;
+ if (yych <= '9') goto yy208;
+ goto yy193;
}
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy192;
- goto yy202;
+ if (yych <= ';') goto yy183;
+ goto yy193;
} else {
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy192;
- goto yy202;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy183;
+ goto yy193;
}
}
}
-yy219:
- YYDEBUG(219, *YYCURSOR);
+yy210:
+ YYDEBUG(210, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(220, *YYCURSOR);
+ YYDEBUG(211, *YYCURSOR);
if (yych <= '&') {
if (yych <= '\r') {
- if (yych == '\n') goto yy192;
- if (yych <= '\f') goto yy202;
- goto yy192;
+ if (yych == '\n') goto yy183;
+ if (yych <= '\f') goto yy193;
+ goto yy183;
} else {
if (yych <= '"') {
- if (yych <= '!') goto yy202;
- goto yy192;
+ if (yych <= '!') goto yy193;
+ goto yy183;
} else {
- if (yych == '$') goto yy205;
- goto yy202;
+ if (yych == '$') goto yy196;
+ goto yy193;
}
}
} else {
if (yych <= ':') {
- if (yych <= '\'') goto yy192;
- if (yych <= '/') goto yy202;
- if (yych <= '9') goto yy219;
- goto yy202;
+ if (yych <= '\'') goto yy183;
+ if (yych <= '/') goto yy193;
+ if (yych <= '9') goto yy210;
+ goto yy193;
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy192;
- goto yy202;
+ if (yych <= ';') goto yy183;
+ goto yy193;
} else {
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy192;
- goto yy202;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy183;
+ goto yy193;
}
}
}
-yy221:
- YYDEBUG(221, *YYCURSOR);
+yy212:
+ YYDEBUG(212, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(222, *YYCURSOR);
+ YYDEBUG(213, *YYCURSOR);
if (yych <= '&') {
if (yych <= '\r') {
- if (yych == '\n') goto yy192;
- if (yych <= '\f') goto yy202;
- goto yy192;
+ if (yych == '\n') goto yy183;
+ if (yych <= '\f') goto yy193;
+ goto yy183;
} else {
if (yych <= '"') {
- if (yych <= '!') goto yy202;
- goto yy192;
+ if (yych <= '!') goto yy193;
+ goto yy183;
} else {
- if (yych == '$') goto yy205;
- goto yy202;
+ if (yych == '$') goto yy196;
+ goto yy193;
}
}
} else {
if (yych <= ':') {
- if (yych <= '\'') goto yy192;
- if (yych <= '/') goto yy202;
- if (yych <= '9') goto yy221;
- goto yy202;
+ if (yych <= '\'') goto yy183;
+ if (yych <= '/') goto yy193;
+ if (yych <= '9') goto yy212;
+ goto yy193;
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy192;
- goto yy202;
+ if (yych <= ';') goto yy183;
+ goto yy193;
} else {
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy192;
- goto yy202;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy183;
+ goto yy193;
}
}
}
-yy223:
- YYDEBUG(223, *YYCURSOR);
+yy214:
+ YYDEBUG(214, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(224, *YYCURSOR);
+ YYDEBUG(215, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy223;
+ goto yy214;
}
- YYDEBUG(225, *YYCURSOR);
+ YYDEBUG(216, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(226, *YYCURSOR);
+ YYDEBUG(217, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 330 "Zend/zend_ini_scanner.l"
+#line 341 "Zend/zend_ini_scanner.l"
{ /* Raw string */
/* Eat leading and trailing single quotes */
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
@@ -2589,65 +2527,65 @@ yy223:
}
RETURN_TOKEN(TC_RAW, yytext, yyleng);
}
-#line 2593 "Zend/zend_ini_scanner.c"
-yy227:
- YYDEBUG(227, *YYCURSOR);
+#line 2531 "Zend/zend_ini_scanner.c"
+yy218:
+ YYDEBUG(218, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(228, *YYCURSOR);
+ YYDEBUG(219, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 360 "Zend/zend_ini_scanner.l"
+#line 371 "Zend/zend_ini_scanner.l"
{ /* Variable start */
yy_push_state(ST_VARNAME TSRMLS_CC);
return TC_DOLLAR_CURLY;
}
-#line 2604 "Zend/zend_ini_scanner.c"
-yy229:
- YYDEBUG(229, *YYCURSOR);
+#line 2542 "Zend/zend_ini_scanner.c"
+yy220:
+ YYDEBUG(220, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(230, *YYCURSOR);
+ YYDEBUG(221, *YYCURSOR);
if (yych <= '"') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy202;
- if (yych <= '\t') goto yy229;
- if (yych <= '\n') goto yy181;
- goto yy202;
+ if (yych <= 0x08) goto yy193;
+ if (yych <= '\t') goto yy220;
+ if (yych <= '\n') goto yy172;
+ goto yy193;
} else {
if (yych <= 0x1F) {
- if (yych <= '\r') goto yy181;
- goto yy202;
+ if (yych <= '\r') goto yy172;
+ goto yy193;
} else {
- if (yych <= ' ') goto yy229;
- if (yych <= '!') goto yy202;
+ if (yych <= ' ') goto yy220;
+ if (yych <= '!') goto yy193;
}
}
} else {
if (yych <= ':') {
if (yych <= '$') {
- if (yych <= '#') goto yy202;
- goto yy205;
+ if (yych <= '#') goto yy193;
+ goto yy196;
} else {
- if (yych == '\'') goto yy181;
- goto yy202;
+ if (yych == '\'') goto yy172;
+ goto yy193;
}
} else {
if (yych <= '[') {
- if (yych <= ';') goto yy181;
- goto yy202;
+ if (yych <= ';') goto yy172;
+ goto yy193;
} else {
- if (yych <= '\\') goto yy204;
- if (yych <= ']') goto yy181;
- goto yy202;
+ if (yych <= '\\') goto yy195;
+ if (yych <= ']') goto yy172;
+ goto yy193;
}
}
}
-yy231:
- YYDEBUG(231, *YYCURSOR);
+yy222:
+ YYDEBUG(222, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy186;
+ goto yy177;
}
/* *********************************** */
yyc_ST_VALUE:
@@ -2686,27 +2624,27 @@ yyc_ST_VALUE:
162, 162, 162, 162, 162, 162, 162, 162,
162, 162, 162, 162, 162, 162, 162, 162,
};
- YYDEBUG(232, *YYCURSOR);
+ YYDEBUG(223, *YYCURSOR);
YYFILL(6);
yych = *YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
- case 0x00: goto yy234;
+ case 0x00: goto yy225;
case '\t':
- case ' ': goto yy238;
- case '\n': goto yy240;
- case '\r': goto yy242;
+ case ' ': goto yy229;
+ case '\n': goto yy231;
+ case '\r': goto yy233;
case '!':
case '&':
case '(':
case ')':
case '|':
- case '~': goto yy243;
- case '"': goto yy245;
- case '$': goto yy247;
- case '\'': goto yy248;
- case '-': goto yy249;
- case '.': goto yy250;
+ case '~': goto yy234;
+ case '"': goto yy236;
+ case '$': goto yy238;
+ case '\'': goto yy239;
+ case '-': goto yy240;
+ case '.': goto yy241;
case '0':
case '1':
case '2':
@@ -2716,9 +2654,9 @@ yyc_ST_VALUE:
case '6':
case '7':
case '8':
- case '9': goto yy251;
- case ';': goto yy253;
- case '=': goto yy254;
+ case '9': goto yy242;
+ case ';': goto yy244;
+ case '=': goto yy245;
case 'A':
case 'B':
case 'C':
@@ -2760,1531 +2698,1531 @@ yyc_ST_VALUE:
case 'v':
case 'w':
case 'x':
- case 'z': goto yy256;
+ case 'z': goto yy247;
case 'F':
- case 'f': goto yy258;
+ case 'f': goto yy249;
case 'N':
- case 'n': goto yy259;
+ case 'n': goto yy250;
case 'O':
- case 'o': goto yy260;
+ case 'o': goto yy251;
case 'T':
- case 't': goto yy261;
+ case 't': goto yy252;
case 'Y':
- case 'y': goto yy262;
- default: goto yy236;
+ case 'y': goto yy253;
+ default: goto yy227;
}
-yy234:
- YYDEBUG(234, *YYCURSOR);
+yy225:
+ YYDEBUG(225, *YYCURSOR);
++YYCURSOR;
-yy235:
- YYDEBUG(235, *YYCURSOR);
+yy226:
+ YYDEBUG(226, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 490 "Zend/zend_ini_scanner.l"
{ /* End of option value (if EOF is reached before EOL */
BEGIN(INITIAL);
return END_OF_LINE;
}
-#line 2788 "Zend/zend_ini_scanner.c"
-yy236:
- YYDEBUG(236, *YYCURSOR);
+#line 2726 "Zend/zend_ini_scanner.c"
+yy227:
+ YYDEBUG(227, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy264;
-yy237:
- YYDEBUG(237, *YYCURSOR);
+ goto yy255;
+yy228:
+ YYDEBUG(228, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 436 "Zend/zend_ini_scanner.l"
+#line 447 "Zend/zend_ini_scanner.l"
{ /* Get everything else as option/offset value */
RETURN_TOKEN(TC_STRING, yytext, yyleng);
}
-#line 2801 "Zend/zend_ini_scanner.c"
-yy238:
- YYDEBUG(238, *YYCURSOR);
+#line 2739 "Zend/zend_ini_scanner.c"
+yy229:
+ YYDEBUG(229, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy314;
-yy239:
- YYDEBUG(239, *YYCURSOR);
+ goto yy305;
+yy230:
+ YYDEBUG(230, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 463 "Zend/zend_ini_scanner.l"
+#line 470 "Zend/zend_ini_scanner.l"
{
RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
}
-#line 2814 "Zend/zend_ini_scanner.c"
-yy240:
- YYDEBUG(240, *YYCURSOR);
+#line 2752 "Zend/zend_ini_scanner.c"
+yy231:
+ YYDEBUG(231, *YYCURSOR);
++YYCURSOR;
-yy241:
- YYDEBUG(241, *YYCURSOR);
+yy232:
+ YYDEBUG(232, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 408 "Zend/zend_ini_scanner.l"
+#line 419 "Zend/zend_ini_scanner.l"
{ /* End of option value */
BEGIN(INITIAL);
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 2827 "Zend/zend_ini_scanner.c"
-yy242:
- YYDEBUG(242, *YYCURSOR);
+#line 2765 "Zend/zend_ini_scanner.c"
+yy233:
+ YYDEBUG(233, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy312;
- goto yy241;
-yy243:
- YYDEBUG(243, *YYCURSOR);
+ if (yych == '\n') goto yy303;
+ goto yy232;
+yy234:
+ YYDEBUG(234, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy311;
-yy244:
- YYDEBUG(244, *YYCURSOR);
+ goto yy302;
+yy235:
+ YYDEBUG(235, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 426 "Zend/zend_ini_scanner.l"
+#line 437 "Zend/zend_ini_scanner.l"
{ /* Boolean operators */
return yytext[0];
}
-#line 2845 "Zend/zend_ini_scanner.c"
-yy245:
- YYDEBUG(245, *YYCURSOR);
+#line 2783 "Zend/zend_ini_scanner.c"
+yy236:
+ YYDEBUG(236, *YYCURSOR);
++YYCURSOR;
-yy246:
- YYDEBUG(246, *YYCURSOR);
+yy237:
+ YYDEBUG(237, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 444 "Zend/zend_ini_scanner.l"
+#line 455 "Zend/zend_ini_scanner.l"
{ /* Double quoted '"' string start */
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
return '"';
}
-#line 2857 "Zend/zend_ini_scanner.c"
-yy247:
- YYDEBUG(247, *YYCURSOR);
+#line 2795 "Zend/zend_ini_scanner.c"
+yy238:
+ YYDEBUG(238, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy235;
- if (yych <= '[') goto yy263;
- goto yy270;
+ if (yych <= 0x00) goto yy226;
+ if (yych <= '[') goto yy254;
+ goto yy261;
} else {
- if (yych == '{') goto yy308;
- goto yy263;
+ if (yych == '{') goto yy299;
+ goto yy254;
}
-yy248:
- YYDEBUG(248, *YYCURSOR);
+yy239:
+ YYDEBUG(239, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy304;
+ goto yy295;
}
- goto yy235;
-yy249:
- YYDEBUG(249, *YYCURSOR);
+ goto yy226;
+yy240:
+ YYDEBUG(240, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy264;
- if (yych <= '9') goto yy302;
- goto yy264;
-yy250:
- YYDEBUG(250, *YYCURSOR);
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy293;
+ goto yy255;
+yy241:
+ YYDEBUG(241, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy264;
- if (yych <= '9') goto yy300;
- goto yy264;
-yy251:
- YYDEBUG(251, *YYCURSOR);
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy291;
+ goto yy255;
+yy242:
+ YYDEBUG(242, *YYCURSOR);
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '.') {
if (yych <= '\r') {
if (yych <= 0x08) {
- if (yych >= 0x01) goto yy264;
+ if (yych >= 0x01) goto yy255;
} else {
- if (yych <= '\n') goto yy252;
- if (yych <= '\f') goto yy264;
+ if (yych <= '\n') goto yy243;
+ if (yych <= '\f') goto yy255;
}
} else {
if (yych <= '%') {
- if (yych <= 0x1F) goto yy264;
- if (yych >= '#') goto yy264;
+ if (yych <= 0x1F) goto yy255;
+ if (yych >= '#') goto yy255;
} else {
- if (yych <= ')') goto yy252;
- if (yych <= '-') goto yy264;
- goto yy296;
+ if (yych <= ')') goto yy243;
+ if (yych <= '-') goto yy255;
+ goto yy287;
}
}
} else {
if (yych <= '<') {
if (yych <= '9') {
- if (yych <= '/') goto yy264;
- goto yy298;
+ if (yych <= '/') goto yy255;
+ goto yy289;
} else {
- if (yych != ';') goto yy264;
+ if (yych != ';') goto yy255;
}
} else {
if (yych <= '|') {
- if (yych <= '=') goto yy252;
- if (yych <= '{') goto yy264;
+ if (yych <= '=') goto yy243;
+ if (yych <= '{') goto yy255;
} else {
- if (yych != '~') goto yy264;
+ if (yych != '~') goto yy255;
}
}
}
-yy252:
- YYDEBUG(252, *YYCURSOR);
+yy243:
+ YYDEBUG(243, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 418 "Zend/zend_ini_scanner.l"
+#line 429 "Zend/zend_ini_scanner.l"
{ /* Get number option value as string */
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
}
-#line 2937 "Zend/zend_ini_scanner.c"
-yy253:
- YYDEBUG(253, *YYCURSOR);
+#line 2875 "Zend/zend_ini_scanner.c"
+yy244:
+ YYDEBUG(244, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy292;
-yy254:
- YYDEBUG(254, *YYCURSOR);
+ goto yy283;
+yy245:
+ YYDEBUG(245, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(255, *YYCURSOR);
+ YYDEBUG(246, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 430 "Zend/zend_ini_scanner.l"
+#line 441 "Zend/zend_ini_scanner.l"
{ /* Make = used in option value to trigger error */
yyless(0);
BEGIN(INITIAL);
return END_OF_LINE;
}
-#line 2954 "Zend/zend_ini_scanner.c"
-yy256:
- YYDEBUG(256, *YYCURSOR);
+#line 2892 "Zend/zend_ini_scanner.c"
+yy247:
+ YYDEBUG(247, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy265;
+ goto yy256;
}
if (yych <= ')') {
if (yych <= '\f') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- if (yych >= '\v') goto yy264;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ if (yych >= '\v') goto yy255;
} else {
if (yych <= 0x1F) {
- if (yych >= 0x0E) goto yy264;
+ if (yych >= 0x0E) goto yy255;
} else {
- if (yych <= '"') goto yy257;
- if (yych <= '%') goto yy264;
+ if (yych <= '"') goto yy248;
+ if (yych <= '%') goto yy255;
}
}
} else {
if (yych <= '=') {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy264;
+ if (yych <= '{') goto yy255;
} else {
- if (yych != '~') goto yy264;
+ if (yych != '~') goto yy255;
}
}
}
-yy257:
- YYDEBUG(257, *YYCURSOR);
+yy248:
+ YYDEBUG(248, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 414 "Zend/zend_ini_scanner.l"
+#line 425 "Zend/zend_ini_scanner.l"
{ /* Get constant option value */
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
}
-#line 2994 "Zend/zend_ini_scanner.c"
-yy258:
- YYDEBUG(258, *YYCURSOR);
+#line 2932 "Zend/zend_ini_scanner.c"
+yy249:
+ YYDEBUG(249, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '<') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '/') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- goto yy264;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ goto yy255;
} else {
- if (yych <= '9') goto yy265;
- if (yych == ';') goto yy257;
- goto yy264;
+ if (yych <= '9') goto yy256;
+ if (yych == ';') goto yy248;
+ goto yy255;
}
}
} else {
if (yych <= '`') {
if (yych <= 'A') {
- if (yych <= '=') goto yy257;
- if (yych <= '@') goto yy264;
- goto yy288;
+ if (yych <= '=') goto yy248;
+ if (yych <= '@') goto yy255;
+ goto yy279;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych <= 'a') goto yy288;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych <= 'a') goto yy279;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy259:
- YYDEBUG(259, *YYCURSOR);
+yy250:
+ YYDEBUG(250, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'N') {
if (yych <= '%') {
if (yych <= '\f') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- if (yych <= '\n') goto yy257;
- goto yy264;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ if (yych <= '\n') goto yy248;
+ goto yy255;
} else {
- if (yych <= '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- if (yych <= '"') goto yy257;
- goto yy264;
+ if (yych <= '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ if (yych <= '"') goto yy248;
+ goto yy255;
}
} else {
if (yych <= ':') {
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- if (yych <= '9') goto yy265;
- goto yy264;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy256;
+ goto yy255;
} else {
if (yych <= '<') {
- if (yych <= ';') goto yy257;
- goto yy264;
+ if (yych <= ';') goto yy248;
+ goto yy255;
} else {
- if (yych <= '=') goto yy257;
- if (yych <= '@') goto yy264;
- goto yy265;
+ if (yych <= '=') goto yy248;
+ if (yych <= '@') goto yy255;
+ goto yy256;
}
}
}
} else {
if (yych <= 'n') {
if (yych <= 'Z') {
- if (yych <= 'O') goto yy284;
- if (yych == 'U') goto yy285;
- goto yy265;
+ if (yych <= 'O') goto yy275;
+ if (yych == 'U') goto yy276;
+ goto yy256;
} else {
- if (yych == '_') goto yy265;
- if (yych <= '`') goto yy264;
- goto yy265;
+ if (yych == '_') goto yy256;
+ if (yych <= '`') goto yy255;
+ goto yy256;
}
} else {
if (yych <= 'z') {
- if (yych <= 'o') goto yy284;
- if (yych == 'u') goto yy285;
- goto yy265;
+ if (yych <= 'o') goto yy275;
+ if (yych == 'u') goto yy276;
+ goto yy256;
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy264;
- goto yy257;
+ if (yych <= '{') goto yy255;
+ goto yy248;
} else {
- if (yych == '~') goto yy257;
- goto yy264;
+ if (yych == '~') goto yy248;
+ goto yy255;
}
}
}
}
-yy260:
- YYDEBUG(260, *YYCURSOR);
+yy251:
+ YYDEBUG(251, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'E') {
if (yych <= '%') {
if (yych <= '\f') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- if (yych <= '\n') goto yy257;
- goto yy264;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ if (yych <= '\n') goto yy248;
+ goto yy255;
} else {
- if (yych <= '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- if (yych <= '"') goto yy257;
- goto yy264;
+ if (yych <= '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ if (yych <= '"') goto yy248;
+ goto yy255;
}
} else {
if (yych <= ':') {
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- if (yych <= '9') goto yy265;
- goto yy264;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy256;
+ goto yy255;
} else {
if (yych <= '<') {
- if (yych <= ';') goto yy257;
- goto yy264;
+ if (yych <= ';') goto yy248;
+ goto yy255;
} else {
- if (yych <= '=') goto yy257;
- if (yych <= '@') goto yy264;
- goto yy265;
+ if (yych <= '=') goto yy248;
+ if (yych <= '@') goto yy255;
+ goto yy256;
}
}
}
} else {
if (yych <= 'e') {
if (yych <= 'Z') {
- if (yych <= 'F') goto yy279;
- if (yych == 'N') goto yy273;
- goto yy265;
+ if (yych <= 'F') goto yy270;
+ if (yych == 'N') goto yy264;
+ goto yy256;
} else {
- if (yych == '_') goto yy265;
- if (yych <= '`') goto yy264;
- goto yy265;
+ if (yych == '_') goto yy256;
+ if (yych <= '`') goto yy255;
+ goto yy256;
}
} else {
if (yych <= 'z') {
- if (yych <= 'f') goto yy279;
- if (yych == 'n') goto yy273;
- goto yy265;
+ if (yych <= 'f') goto yy270;
+ if (yych == 'n') goto yy264;
+ goto yy256;
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy264;
- goto yy257;
+ if (yych <= '{') goto yy255;
+ goto yy248;
} else {
- if (yych == '~') goto yy257;
- goto yy264;
+ if (yych == '~') goto yy248;
+ goto yy255;
}
}
}
}
-yy261:
- YYDEBUG(261, *YYCURSOR);
+yy252:
+ YYDEBUG(252, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'R') {
- if (yych <= '@') goto yy264;
- if (yych <= 'Q') goto yy265;
- goto yy277;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'Q') goto yy256;
+ goto yy268;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'r') goto yy277;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'r') goto yy268;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy262:
- YYDEBUG(262, *YYCURSOR);
+yy253:
+ YYDEBUG(253, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'E') {
- if (yych <= '@') goto yy264;
- if (yych <= 'D') goto yy265;
- goto yy267;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'D') goto yy256;
+ goto yy258;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'e') goto yy267;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'e') goto yy258;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy263:
- YYDEBUG(263, *YYCURSOR);
+yy254:
+ YYDEBUG(254, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy264:
- YYDEBUG(264, *YYCURSOR);
+yy255:
+ YYDEBUG(255, *YYCURSOR);
if (yybm[0+yych] & 2) {
- goto yy263;
+ goto yy254;
}
- if (yych == '$') goto yy268;
- goto yy237;
-yy265:
- YYDEBUG(265, *YYCURSOR);
+ if (yych == '$') goto yy259;
+ goto yy228;
+yy256:
+ YYDEBUG(256, *YYCURSOR);
yyaccept = 4;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(266, *YYCURSOR);
+ YYDEBUG(257, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy265;
+ goto yy256;
}
if (yych <= '%') {
if (yych <= '\r') {
if (yych <= 0x08) {
- if (yych <= 0x00) goto yy257;
- goto yy263;
+ if (yych <= 0x00) goto yy248;
+ goto yy254;
} else {
- if (yych <= '\n') goto yy257;
- if (yych <= '\f') goto yy263;
- goto yy257;
+ if (yych <= '\n') goto yy248;
+ if (yych <= '\f') goto yy254;
+ goto yy248;
}
} else {
if (yych <= '"') {
- if (yych <= 0x1F) goto yy263;
- goto yy257;
+ if (yych <= 0x1F) goto yy254;
+ goto yy248;
} else {
- if (yych == '$') goto yy268;
- goto yy263;
+ if (yych == '$') goto yy259;
+ goto yy254;
}
}
} else {
if (yych <= '=') {
if (yych <= ':') {
- if (yych <= ')') goto yy257;
- goto yy263;
+ if (yych <= ')') goto yy248;
+ goto yy254;
} else {
- if (yych == '<') goto yy263;
- goto yy257;
+ if (yych == '<') goto yy254;
+ goto yy248;
}
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy263;
- goto yy257;
+ if (yych <= '{') goto yy254;
+ goto yy248;
} else {
- if (yych == '~') goto yy257;
- goto yy263;
+ if (yych == '~') goto yy248;
+ goto yy254;
}
}
}
-yy267:
- YYDEBUG(267, *YYCURSOR);
+yy258:
+ YYDEBUG(258, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'S') {
- if (yych <= '@') goto yy264;
- if (yych <= 'R') goto yy265;
- goto yy273;
- } else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'R') goto yy256;
goto yy264;
+ } else {
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 's') goto yy273;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 's') goto yy264;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy268:
- YYDEBUG(268, *YYCURSOR);
+yy259:
+ YYDEBUG(259, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\\') {
- if (yych <= 0x00) goto yy269;
- if (yych <= '[') goto yy263;
- goto yy270;
+ if (yych <= 0x00) goto yy260;
+ if (yych <= '[') goto yy254;
+ goto yy261;
} else {
- if (yych != '{') goto yy263;
+ if (yych != '{') goto yy254;
}
-yy269:
- YYDEBUG(269, *YYCURSOR);
+yy260:
+ YYDEBUG(260, *YYCURSOR);
YYCURSOR = YYMARKER;
if (yyaccept <= 3) {
if (yyaccept <= 1) {
if (yyaccept <= 0) {
- goto yy237;
+ goto yy228;
} else {
- goto yy239;
+ goto yy230;
}
} else {
if (yyaccept <= 2) {
- goto yy235;
+ goto yy226;
} else {
- goto yy252;
+ goto yy243;
}
}
} else {
if (yyaccept <= 5) {
if (yyaccept <= 4) {
- goto yy257;
+ goto yy248;
} else {
- goto yy274;
+ goto yy265;
}
} else {
- goto yy281;
+ goto yy272;
}
}
-yy270:
- YYDEBUG(270, *YYCURSOR);
+yy261:
+ YYDEBUG(261, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 8) {
- goto yy271;
+ goto yy262;
}
- goto yy263;
-yy271:
- YYDEBUG(271, *YYCURSOR);
+ goto yy254;
+yy262:
+ YYDEBUG(262, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(272, *YYCURSOR);
+ YYDEBUG(263, *YYCURSOR);
if (yybm[0+yych] & 8) {
- goto yy271;
+ goto yy262;
}
- if (yych <= 0x00) goto yy237;
- if (yych == '\\') goto yy270;
- goto yy263;
-yy273:
- YYDEBUG(273, *YYCURSOR);
+ if (yych <= 0x00) goto yy228;
+ if (yych == '\\') goto yy261;
+ goto yy254;
+yy264:
+ YYDEBUG(264, *YYCURSOR);
yyaccept = 5;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy275;
+ goto yy266;
}
if (yych <= ';') {
if (yych <= ' ') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy274;
- if (yych <= '\t') goto yy264;
+ if (yych <= 0x00) goto yy265;
+ if (yych <= '\t') goto yy255;
} else {
- if (yych != '\r') goto yy264;
+ if (yych != '\r') goto yy255;
}
} else {
if (yych <= ')') {
- if (yych <= '"') goto yy274;
- if (yych <= '%') goto yy264;
+ if (yych <= '"') goto yy265;
+ if (yych <= '%') goto yy255;
} else {
- if (yych <= '/') goto yy264;
- if (yych <= '9') goto yy265;
- if (yych <= ':') goto yy264;
+ if (yych <= '/') goto yy255;
+ if (yych <= '9') goto yy256;
+ if (yych <= ':') goto yy255;
}
}
} else {
if (yych <= '_') {
if (yych <= '@') {
- if (yych != '=') goto yy264;
+ if (yych != '=') goto yy255;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych <= '^') goto yy264;
- goto yy265;
+ if (yych <= 'Z') goto yy256;
+ if (yych <= '^') goto yy255;
+ goto yy256;
}
} else {
if (yych <= '{') {
- if (yych <= '`') goto yy264;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych <= '`') goto yy255;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych >= 0x7F) goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych >= 0x7F) goto yy255;
}
}
}
-yy274:
- YYDEBUG(274, *YYCURSOR);
+yy265:
+ YYDEBUG(265, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 374 "Zend/zend_ini_scanner.l"
+#line 385 "Zend/zend_ini_scanner.l"
{ /* TRUE value (when used outside option value/offset this causes parse error!) */
RETURN_TOKEN(BOOL_TRUE, "1", 1);
}
-#line 3490 "Zend/zend_ini_scanner.c"
-yy275:
- YYDEBUG(275, *YYCURSOR);
+#line 3428 "Zend/zend_ini_scanner.c"
+yy266:
+ YYDEBUG(266, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(276, *YYCURSOR);
+ YYDEBUG(267, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy275;
+ goto yy266;
}
- goto yy274;
-yy277:
- YYDEBUG(277, *YYCURSOR);
+ goto yy265;
+yy268:
+ YYDEBUG(268, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'U') {
- if (yych <= '@') goto yy264;
- if (yych <= 'T') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'T') goto yy256;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'u') goto yy278;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'u') goto yy269;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy278:
- YYDEBUG(278, *YYCURSOR);
+yy269:
+ YYDEBUG(269, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'E') {
- if (yych <= '@') goto yy264;
- if (yych <= 'D') goto yy265;
- goto yy273;
- } else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'D') goto yy256;
goto yy264;
+ } else {
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'e') goto yy273;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'e') goto yy264;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy279:
- YYDEBUG(279, *YYCURSOR);
+yy270:
+ YYDEBUG(270, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'F') {
- if (yych <= '@') goto yy264;
- if (yych <= 'E') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'E') goto yy256;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'f') goto yy280;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'f') goto yy271;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy280:
- YYDEBUG(280, *YYCURSOR);
+yy271:
+ YYDEBUG(271, *YYCURSOR);
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy265;
+ goto yy256;
}
if (yych <= '%') {
if (yych <= '\f') {
if (yych <= 0x08) {
- if (yych >= 0x01) goto yy264;
+ if (yych >= 0x01) goto yy255;
} else {
- if (yych <= '\t') goto yy282;
- if (yych >= '\v') goto yy264;
+ if (yych <= '\t') goto yy273;
+ if (yych >= '\v') goto yy255;
}
} else {
if (yych <= 0x1F) {
- if (yych >= 0x0E) goto yy264;
+ if (yych >= 0x0E) goto yy255;
} else {
- if (yych <= ' ') goto yy282;
- if (yych >= '#') goto yy264;
+ if (yych <= ' ') goto yy273;
+ if (yych >= '#') goto yy255;
}
}
} else {
if (yych <= '=') {
if (yych <= ':') {
- if (yych >= '*') goto yy264;
+ if (yych >= '*') goto yy255;
} else {
- if (yych == '<') goto yy264;
+ if (yych == '<') goto yy255;
}
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy264;
+ if (yych <= '{') goto yy255;
} else {
- if (yych != '~') goto yy264;
+ if (yych != '~') goto yy255;
}
}
}
-yy281:
- YYDEBUG(281, *YYCURSOR);
+yy272:
+ YYDEBUG(272, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 378 "Zend/zend_ini_scanner.l"
+#line 389 "Zend/zend_ini_scanner.l"
{ /* FALSE value (when used outside option value/offset this causes parse error!)*/
RETURN_TOKEN(BOOL_FALSE, "", 0);
}
-#line 3694 "Zend/zend_ini_scanner.c"
-yy282:
- YYDEBUG(282, *YYCURSOR);
+#line 3632 "Zend/zend_ini_scanner.c"
+yy273:
+ YYDEBUG(273, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(283, *YYCURSOR);
- if (yych == '\t') goto yy282;
- if (yych == ' ') goto yy282;
- goto yy281;
-yy284:
- YYDEBUG(284, *YYCURSOR);
+ YYDEBUG(274, *YYCURSOR);
+ if (yych == '\t') goto yy273;
+ if (yych == ' ') goto yy273;
+ goto yy272;
+yy275:
+ YYDEBUG(275, *YYCURSOR);
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '<') {
if (yych <= ' ') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy281;
- if (yych <= 0x08) goto yy264;
- if (yych <= '\t') goto yy282;
- goto yy281;
+ if (yych <= 0x00) goto yy272;
+ if (yych <= 0x08) goto yy255;
+ if (yych <= '\t') goto yy273;
+ goto yy272;
} else {
- if (yych == '\r') goto yy281;
- if (yych <= 0x1F) goto yy264;
- goto yy282;
+ if (yych == '\r') goto yy272;
+ if (yych <= 0x1F) goto yy255;
+ goto yy273;
}
} else {
if (yych <= '/') {
- if (yych <= '"') goto yy281;
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy281;
- goto yy264;
+ if (yych <= '"') goto yy272;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy272;
+ goto yy255;
} else {
- if (yych <= '9') goto yy265;
- if (yych == ';') goto yy281;
- goto yy264;
+ if (yych <= '9') goto yy256;
+ if (yych == ';') goto yy272;
+ goto yy255;
}
}
} else {
if (yych <= '`') {
if (yych <= 'N') {
- if (yych <= '=') goto yy281;
- if (yych <= '@') goto yy264;
- if (yych <= 'M') goto yy265;
- goto yy287;
+ if (yych <= '=') goto yy272;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'M') goto yy256;
+ goto yy278;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'n') goto yy287;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'n') goto yy278;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy281;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy272;
+ goto yy255;
}
}
}
-yy285:
- YYDEBUG(285, *YYCURSOR);
+yy276:
+ YYDEBUG(276, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'L') {
- if (yych <= '@') goto yy264;
- if (yych <= 'K') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'K') goto yy256;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'l') goto yy286;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'l') goto yy277;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy286:
- YYDEBUG(286, *YYCURSOR);
+yy277:
+ YYDEBUG(277, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'L') {
- if (yych <= '@') goto yy264;
- if (yych <= 'K') goto yy265;
- goto yy280;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'K') goto yy256;
+ goto yy271;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'l') goto yy280;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'l') goto yy271;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy287:
- YYDEBUG(287, *YYCURSOR);
+yy278:
+ YYDEBUG(278, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'E') {
- if (yych <= '@') goto yy264;
- if (yych <= 'D') goto yy265;
- goto yy280;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'D') goto yy256;
+ goto yy271;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'e') goto yy280;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'e') goto yy271;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy288:
- YYDEBUG(288, *YYCURSOR);
+yy279:
+ YYDEBUG(279, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'L') {
- if (yych <= '@') goto yy264;
- if (yych <= 'K') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'K') goto yy256;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'l') goto yy289;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'l') goto yy280;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy289:
- YYDEBUG(289, *YYCURSOR);
+yy280:
+ YYDEBUG(280, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'S') {
- if (yych <= '@') goto yy264;
- if (yych <= 'R') goto yy265;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'R') goto yy256;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 's') goto yy290;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 's') goto yy281;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy290:
- YYDEBUG(290, *YYCURSOR);
+yy281:
+ YYDEBUG(281, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '=') {
if (yych <= '"') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy257;
- if (yych <= 0x08) goto yy264;
- goto yy257;
+ if (yych <= 0x00) goto yy248;
+ if (yych <= 0x08) goto yy255;
+ goto yy248;
} else {
- if (yych == '\r') goto yy257;
- if (yych <= 0x1F) goto yy264;
- goto yy257;
+ if (yych == '\r') goto yy248;
+ if (yych <= 0x1F) goto yy255;
+ goto yy248;
}
} else {
if (yych <= '9') {
- if (yych <= '%') goto yy264;
- if (yych <= ')') goto yy257;
- if (yych <= '/') goto yy264;
- goto yy265;
+ if (yych <= '%') goto yy255;
+ if (yych <= ')') goto yy248;
+ if (yych <= '/') goto yy255;
+ goto yy256;
} else {
- if (yych == ';') goto yy257;
- if (yych <= '<') goto yy264;
- goto yy257;
+ if (yych == ';') goto yy248;
+ if (yych <= '<') goto yy255;
+ goto yy248;
}
}
} else {
if (yych <= '`') {
if (yych <= 'E') {
- if (yych <= '@') goto yy264;
- if (yych <= 'D') goto yy265;
- goto yy280;
+ if (yych <= '@') goto yy255;
+ if (yych <= 'D') goto yy256;
+ goto yy271;
} else {
- if (yych <= 'Z') goto yy265;
- if (yych == '_') goto yy265;
- goto yy264;
+ if (yych <= 'Z') goto yy256;
+ if (yych == '_') goto yy256;
+ goto yy255;
}
} else {
if (yych <= '{') {
- if (yych == 'e') goto yy280;
- if (yych <= 'z') goto yy265;
- goto yy264;
+ if (yych == 'e') goto yy271;
+ if (yych <= 'z') goto yy256;
+ goto yy255;
} else {
- if (yych == '}') goto yy264;
- if (yych <= '~') goto yy257;
- goto yy264;
+ if (yych == '}') goto yy255;
+ if (yych <= '~') goto yy248;
+ goto yy255;
}
}
}
-yy291:
- YYDEBUG(291, *YYCURSOR);
+yy282:
+ YYDEBUG(282, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy292:
- YYDEBUG(292, *YYCURSOR);
+yy283:
+ YYDEBUG(283, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy291;
+ goto yy282;
}
- if (yych >= '\r') goto yy295;
-yy293:
- YYDEBUG(293, *YYCURSOR);
+ if (yych >= '\r') goto yy286;
+yy284:
+ YYDEBUG(284, *YYCURSOR);
++YYCURSOR;
-yy294:
- YYDEBUG(294, *YYCURSOR);
+yy285:
+ YYDEBUG(285, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 477 "Zend/zend_ini_scanner.l"
+#line 484 "Zend/zend_ini_scanner.l"
{ /* Comment */
BEGIN(INITIAL);
SCNG(lineno)++;
return END_OF_LINE;
}
-#line 4076 "Zend/zend_ini_scanner.c"
-yy295:
- YYDEBUG(295, *YYCURSOR);
+#line 4014 "Zend/zend_ini_scanner.c"
+yy286:
+ YYDEBUG(286, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy293;
- goto yy294;
-yy296:
- YYDEBUG(296, *YYCURSOR);
+ if (yych == '\n') goto yy284;
+ goto yy285;
+yy287:
+ YYDEBUG(287, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(297, *YYCURSOR);
+ YYDEBUG(288, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy296;
+ goto yy287;
}
if (yych <= '%') {
if (yych <= '\r') {
if (yych <= 0x08) {
- if (yych <= 0x00) goto yy252;
- goto yy263;
+ if (yych <= 0x00) goto yy243;
+ goto yy254;
} else {
- if (yych <= '\n') goto yy252;
- if (yych <= '\f') goto yy263;
- goto yy252;
+ if (yych <= '\n') goto yy243;
+ if (yych <= '\f') goto yy254;
+ goto yy243;
}
} else {
if (yych <= '"') {
- if (yych <= 0x1F) goto yy263;
- goto yy252;
+ if (yych <= 0x1F) goto yy254;
+ goto yy243;
} else {
- if (yych == '$') goto yy268;
- goto yy263;
+ if (yych == '$') goto yy259;
+ goto yy254;
}
}
} else {
if (yych <= '=') {
if (yych <= ':') {
- if (yych <= ')') goto yy252;
- goto yy263;
+ if (yych <= ')') goto yy243;
+ goto yy254;
} else {
- if (yych == '<') goto yy263;
- goto yy252;
+ if (yych == '<') goto yy254;
+ goto yy243;
}
} else {
if (yych <= '|') {
- if (yych <= '{') goto yy263;
- goto yy252;
+ if (yych <= '{') goto yy254;
+ goto yy243;
} else {
- if (yych == '~') goto yy252;
- goto yy263;
+ if (yych == '~') goto yy243;
+ goto yy254;
}
}
}
-yy298:
- YYDEBUG(298, *YYCURSOR);
+yy289:
+ YYDEBUG(289, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(299, *YYCURSOR);
+ YYDEBUG(290, *YYCURSOR);
if (yych <= '-') {
if (yych <= 0x1F) {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy252;
- if (yych <= 0x08) goto yy263;
- goto yy252;
+ if (yych <= 0x00) goto yy243;
+ if (yych <= 0x08) goto yy254;
+ goto yy243;
} else {
- if (yych == '\r') goto yy252;
- goto yy263;
+ if (yych == '\r') goto yy243;
+ goto yy254;
}
} else {
if (yych <= '$') {
- if (yych <= '"') goto yy252;
- if (yych <= '#') goto yy263;
- goto yy268;
+ if (yych <= '"') goto yy243;
+ if (yych <= '#') goto yy254;
+ goto yy259;
} else {
- if (yych <= '%') goto yy263;
- if (yych <= ')') goto yy252;
- goto yy263;
+ if (yych <= '%') goto yy254;
+ if (yych <= ')') goto yy243;
+ goto yy254;
}
}
} else {
if (yych <= '<') {
if (yych <= '9') {
- if (yych <= '.') goto yy296;
- if (yych <= '/') goto yy263;
- goto yy298;
+ if (yych <= '.') goto yy287;
+ if (yych <= '/') goto yy254;
+ goto yy289;
} else {
- if (yych == ';') goto yy252;
- goto yy263;
+ if (yych == ';') goto yy243;
+ goto yy254;
}
} else {
if (yych <= '|') {
- if (yych <= '=') goto yy252;
- if (yych <= '{') goto yy263;
- goto yy252;
+ if (yych <= '=') goto yy243;
+ if (yych <= '{') goto yy254;
+ goto yy243;
} else {
- if (yych == '~') goto yy252;
- goto yy263;
+ if (yych == '~') goto yy243;
+ goto yy254;
}
}
}
-yy300:
- YYDEBUG(300, *YYCURSOR);
+yy291:
+ YYDEBUG(291, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(301, *YYCURSOR);
+ YYDEBUG(292, *YYCURSOR);
if (yych <= ')') {
if (yych <= '\r') {
if (yych <= 0x08) {
- if (yych <= 0x00) goto yy252;
- goto yy263;
+ if (yych <= 0x00) goto yy243;
+ goto yy254;
} else {
- if (yych <= '\n') goto yy252;
- if (yych <= '\f') goto yy263;
- goto yy252;
+ if (yych <= '\n') goto yy243;
+ if (yych <= '\f') goto yy254;
+ goto yy243;
}
} else {
if (yych <= '#') {
- if (yych <= 0x1F) goto yy263;
- if (yych <= '"') goto yy252;
- goto yy263;
+ if (yych <= 0x1F) goto yy254;
+ if (yych <= '"') goto yy243;
+ goto yy254;
} else {
- if (yych <= '$') goto yy268;
- if (yych <= '%') goto yy263;
- goto yy252;
+ if (yych <= '$') goto yy259;
+ if (yych <= '%') goto yy254;
+ goto yy243;
}
}
} else {
if (yych <= '<') {
if (yych <= '9') {
- if (yych <= '/') goto yy263;
- goto yy300;
+ if (yych <= '/') goto yy254;
+ goto yy291;
} else {
- if (yych == ';') goto yy252;
- goto yy263;
+ if (yych == ';') goto yy243;
+ goto yy254;
}
} else {
if (yych <= '|') {
- if (yych <= '=') goto yy252;
- if (yych <= '{') goto yy263;
- goto yy252;
+ if (yych <= '=') goto yy243;
+ if (yych <= '{') goto yy254;
+ goto yy243;
} else {
- if (yych == '~') goto yy252;
- goto yy263;
+ if (yych == '~') goto yy243;
+ goto yy254;
}
}
}
-yy302:
- YYDEBUG(302, *YYCURSOR);
+yy293:
+ YYDEBUG(293, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(303, *YYCURSOR);
+ YYDEBUG(294, *YYCURSOR);
if (yych <= ')') {
if (yych <= '\r') {
if (yych <= 0x08) {
- if (yych <= 0x00) goto yy252;
- goto yy263;
+ if (yych <= 0x00) goto yy243;
+ goto yy254;
} else {
- if (yych <= '\n') goto yy252;
- if (yych <= '\f') goto yy263;
- goto yy252;
+ if (yych <= '\n') goto yy243;
+ if (yych <= '\f') goto yy254;
+ goto yy243;
}
} else {
if (yych <= '#') {
- if (yych <= 0x1F) goto yy263;
- if (yych <= '"') goto yy252;
- goto yy263;
+ if (yych <= 0x1F) goto yy254;
+ if (yych <= '"') goto yy243;
+ goto yy254;
} else {
- if (yych <= '$') goto yy268;
- if (yych <= '%') goto yy263;
- goto yy252;
+ if (yych <= '$') goto yy259;
+ if (yych <= '%') goto yy254;
+ goto yy243;
}
}
} else {
if (yych <= '<') {
if (yych <= '9') {
- if (yych <= '/') goto yy263;
- goto yy302;
+ if (yych <= '/') goto yy254;
+ goto yy293;
} else {
- if (yych == ';') goto yy252;
- goto yy263;
+ if (yych == ';') goto yy243;
+ goto yy254;
}
} else {
if (yych <= '|') {
- if (yych <= '=') goto yy252;
- if (yych <= '{') goto yy263;
- goto yy252;
+ if (yych <= '=') goto yy243;
+ if (yych <= '{') goto yy254;
+ goto yy243;
} else {
- if (yych == '~') goto yy252;
- goto yy263;
+ if (yych == '~') goto yy243;
+ goto yy254;
}
}
}
-yy304:
- YYDEBUG(304, *YYCURSOR);
+yy295:
+ YYDEBUG(295, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(305, *YYCURSOR);
+ YYDEBUG(296, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy304;
+ goto yy295;
}
- YYDEBUG(306, *YYCURSOR);
+ YYDEBUG(297, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(307, *YYCURSOR);
+ YYDEBUG(298, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 330 "Zend/zend_ini_scanner.l"
+#line 341 "Zend/zend_ini_scanner.l"
{ /* Raw string */
/* Eat leading and trailing single quotes */
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
@@ -4293,66 +4231,66 @@ yy304:
}
RETURN_TOKEN(TC_RAW, yytext, yyleng);
}
-#line 4297 "Zend/zend_ini_scanner.c"
-yy308:
- YYDEBUG(308, *YYCURSOR);
+#line 4235 "Zend/zend_ini_scanner.c"
+yy299:
+ YYDEBUG(299, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(309, *YYCURSOR);
+ YYDEBUG(300, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 360 "Zend/zend_ini_scanner.l"
+#line 371 "Zend/zend_ini_scanner.l"
{ /* Variable start */
yy_push_state(ST_VARNAME TSRMLS_CC);
return TC_DOLLAR_CURLY;
}
-#line 4308 "Zend/zend_ini_scanner.c"
-yy310:
- YYDEBUG(310, *YYCURSOR);
+#line 4246 "Zend/zend_ini_scanner.c"
+yy301:
+ YYDEBUG(301, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy311:
- YYDEBUG(311, *YYCURSOR);
- if (yych == '\t') goto yy310;
- if (yych == ' ') goto yy310;
- goto yy244;
-yy312:
- YYDEBUG(312, *YYCURSOR);
+yy302:
+ YYDEBUG(302, *YYCURSOR);
+ if (yych == '\t') goto yy301;
+ if (yych == ' ') goto yy301;
+ goto yy235;
+yy303:
+ YYDEBUG(303, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy241;
-yy313:
- YYDEBUG(313, *YYCURSOR);
+ goto yy232;
+yy304:
+ YYDEBUG(304, *YYCURSOR);
yyaccept = 1;
YYMARKER = ++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
-yy314:
- YYDEBUG(314, *YYCURSOR);
+yy305:
+ YYDEBUG(305, *YYCURSOR);
if (yych <= 0x1F) {
if (yych <= '\n') {
- if (yych <= 0x08) goto yy239;
- if (yych <= '\t') goto yy313;
- goto yy312;
+ if (yych <= 0x08) goto yy230;
+ if (yych <= '\t') goto yy304;
+ goto yy303;
} else {
- if (yych == '\r') goto yy316;
- goto yy239;
+ if (yych == '\r') goto yy307;
+ goto yy230;
}
} else {
if (yych <= '"') {
- if (yych <= ' ') goto yy313;
- if (yych <= '!') goto yy239;
+ if (yych <= ' ') goto yy304;
+ if (yych <= '!') goto yy230;
} else {
- if (yych == ';') goto yy291;
- goto yy239;
+ if (yych == ';') goto yy282;
+ goto yy230;
}
}
- YYDEBUG(315, *YYCURSOR);
+ YYDEBUG(306, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy246;
-yy316:
- YYDEBUG(316, *YYCURSOR);
+ goto yy237;
+yy307:
+ YYDEBUG(307, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy312;
- goto yy241;
+ if ((yych = *YYCURSOR) == '\n') goto yy303;
+ goto yy232;
}
/* *********************************** */
yyc_ST_VARNAME:
@@ -4391,68 +4329,68 @@ yyc_ST_VARNAME:
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
};
- YYDEBUG(317, *YYCURSOR);
+ YYDEBUG(308, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy321;
+ if (yych >= '0') goto yy312;
} else {
- if (yych <= '@') goto yy319;
- if (yych <= 'Z') goto yy321;
+ if (yych <= '@') goto yy310;
+ if (yych <= 'Z') goto yy312;
}
} else {
if (yych <= 'z') {
- if (yych != '`') goto yy321;
+ if (yych != '`') goto yy312;
} else {
- if (yych == '}') goto yy323;
+ if (yych == '}') goto yy314;
}
}
-yy319:
- YYDEBUG(319, *YYCURSOR);
+yy310:
+ YYDEBUG(310, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(320, *YYCURSOR);
+ YYDEBUG(311, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 495 "Zend/zend_ini_scanner.l"
{
return 0;
}
-#line 4421 "Zend/zend_ini_scanner.c"
-yy321:
- YYDEBUG(321, *YYCURSOR);
+#line 4359 "Zend/zend_ini_scanner.c"
+yy312:
+ YYDEBUG(312, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy326;
-yy322:
- YYDEBUG(322, *YYCURSOR);
+ goto yy317;
+yy313:
+ YYDEBUG(313, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 365 "Zend/zend_ini_scanner.l"
+#line 376 "Zend/zend_ini_scanner.l"
{ /* Variable name */
RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
}
-#line 4434 "Zend/zend_ini_scanner.c"
-yy323:
- YYDEBUG(323, *YYCURSOR);
+#line 4372 "Zend/zend_ini_scanner.c"
+yy314:
+ YYDEBUG(314, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(324, *YYCURSOR);
+ YYDEBUG(315, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 369 "Zend/zend_ini_scanner.l"
+#line 380 "Zend/zend_ini_scanner.l"
{ /* Variable end */
yy_pop_state(TSRMLS_C);
return '}';
}
-#line 4445 "Zend/zend_ini_scanner.c"
-yy325:
- YYDEBUG(325, *YYCURSOR);
+#line 4383 "Zend/zend_ini_scanner.c"
+yy316:
+ YYDEBUG(316, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy326:
- YYDEBUG(326, *YYCURSOR);
+yy317:
+ YYDEBUG(317, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy325;
+ goto yy316;
}
- goto yy322;
+ goto yy313;
}
}
#line 499 "Zend/zend_ini_scanner.l"
diff --git a/Zend/zend_ini_scanner.l b/Zend/zend_ini_scanner.l
index 4782383030..742bbe2b24 100644
--- a/Zend/zend_ini_scanner.l
+++ b/Zend/zend_ini_scanner.l
@@ -188,7 +188,7 @@ int zend_ini_scanner_get_lineno(TSRMLS_D)
*/
char *zend_ini_scanner_get_filename(TSRMLS_D)
{
- return ini_filename ? ini_filename : "Unknown";
+ return ini_filename;
}
/* }}} */
@@ -244,10 +244,21 @@ static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_ty
if (*s == '\\') {
s++;
if (s >= end) {
- *t++ = '\\';
continue;
}
switch (*s) {
+ case 'n':
+ *t++ = '\n';
+ Z_STRLEN_P(lval)--;
+ break;
+ case 'r':
+ *t++ = '\r';
+ Z_STRLEN_P(lval)--;
+ break;
+ case 't':
+ *t++ = '\t';
+ Z_STRLEN_P(lval)--;
+ break;
case '"':
if (*s != quote_type) {
*t++ = '\\';
@@ -313,7 +324,7 @@ RAW_VALUE_CHARS [^=\n\r;]
LITERAL_DOLLAR ("$"([^{\000]|("\\"{ANY_CHAR})))
VALUE_CHARS ([^$= \t\n\r;&|~()!"'\000]|{LITERAL_DOLLAR})
SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR})
-DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"[^"])|{LITERAL_DOLLAR}|"\\"["][^\r\n])
+DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR})
<!*> := yyleng = YYCURSOR - SCNG(yy_text);
@@ -446,11 +457,7 @@ DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"[^"])|{LITERAL_DOLLAR}|"\\"["][^\r\n])
return '"';
}
-<ST_DOUBLE_QUOTES>{DOUBLE_QUOTES_CHARS}+("\\"["])? { /* Escape double quoted string contents */
- if(yyleng > 1 && yytext[yyleng-1] == '"' && yytext[yyleng-2] == '\\') {
- yyless(yyleng-1);
- yyleng--;
- }
+<ST_DOUBLE_QUOTES>{DOUBLE_QUOTES_CHARS}+ { /* Escape double quoted string contents */
zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
return TC_QUOTED_STRING;
}
@@ -480,13 +487,6 @@ DOUBLE_QUOTES_CHARS ([^$"\\]|("\\"[^"])|{LITERAL_DOLLAR}|"\\"["][^\r\n])
return END_OF_LINE;
}
-<INITIAL>{TABS_AND_SPACES}*[#][^\r\n]*{NEWLINE} { /* #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;
-}
-
<ST_VALUE,ST_RAW>[^] { /* End of option value (if EOF is reached before EOL */
BEGIN(INITIAL);
return END_OF_LINE;
diff --git a/Zend/zend_ini_scanner_defs.h b/Zend/zend_ini_scanner_defs.h
index 97d3a07b44..9b77800970 100644
--- a/Zend/zend_ini_scanner_defs.h
+++ b/Zend/zend_ini_scanner_defs.h
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Wed Nov 5 22:35:51 2008 */
+/* Generated by re2c 0.13.5 on Sun Aug 17 23:55:27 2008 */
#line 3 "Zend/zend_ini_scanner_defs.h"
enum YYCONDTYPE {
diff --git a/Zend/zend_interfaces.c b/Zend/zend_interfaces.c
index b4edac5aee..a1e82a1978 100755
--- a/Zend/zend_interfaces.c
+++ b/Zend/zend_interfaces.c
@@ -46,7 +46,7 @@ ZEND_API zval* zend_call_method(zval **object_pp, zend_class_entry *obj_ce, zend
fci.size = sizeof(fci);
/*fci.function_table = NULL; will be read form zend_class_entry of object if needed */
- fci.object_ptr = object_pp ? *object_pp : NULL;
+ fci.object_pp = object_pp;
fci.function_name = &z_fname;
fci.retval_ptr_ptr = retval_ptr_ptr ? retval_ptr_ptr : &retval;
fci.param_count = param_count;
@@ -85,7 +85,7 @@ ZEND_API zval* zend_call_method(zval **object_pp, zend_class_entry *obj_ce, zend
}
fcic.calling_scope = obj_ce;
fcic.called_scope = object_pp ? obj_ce : EG(called_scope);
- fcic.object_ptr = object_pp ? *object_pp : NULL;
+ fcic.object_pp = object_pp;
result = zend_call_function(&fci, &fcic TSRMLS_CC);
}
if (result == FAILURE) {
@@ -498,14 +498,17 @@ const zend_function_entry zend_funcs_iterator[] = {
const zend_function_entry *zend_funcs_traversable = NULL;
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_arrayaccess_offset, 0, 0, 1)
ZEND_ARG_INFO(0, offset)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_arrayaccess_offset_get, 0, 0, 1) /* actually this should be return by ref but atm cannot be */
ZEND_ARG_INFO(0, offset)
ZEND_END_ARG_INFO()
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_arrayaccess_offset_value, 0, 0, 2)
ZEND_ARG_INFO(0, offset)
ZEND_ARG_INFO(0, value)
@@ -519,6 +522,7 @@ const zend_function_entry zend_funcs_arrayaccess[] = {
{NULL, NULL, NULL}
};
+static
ZEND_BEGIN_ARG_INFO(arginfo_serializable_serialize, 0)
ZEND_ARG_INFO(0, serialized)
ZEND_END_ARG_INFO()
diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y
index 7feb689087..57844cede4 100644
--- a/Zend/zend_language_parser.y
+++ b/Zend/zend_language_parser.y
@@ -147,7 +147,6 @@
%token T_NAMESPACE
%token T_NS_C
%token T_DIR
-%token T_NS_SEPARATOR
%% /* Rules */
@@ -162,21 +161,17 @@ top_statement_list:
namespace_name:
T_STRING { $$ = $1; }
- | namespace_name T_NS_SEPARATOR T_STRING { zend_do_build_namespace_name(&$$, &$1, &$3 TSRMLS_CC); }
+ | namespace_name T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_build_namespace_name(&$$, &$1, &$3 TSRMLS_CC); }
;
top_statement:
- statement { zend_verify_namespace(TSRMLS_C); }
- | function_declaration_statement { zend_verify_namespace(TSRMLS_C); zend_do_early_binding(TSRMLS_C); }
- | class_declaration_statement { zend_verify_namespace(TSRMLS_C); zend_do_early_binding(TSRMLS_C); }
+ statement
+ | function_declaration_statement { zend_do_early_binding(TSRMLS_C); }
+ | class_declaration_statement { zend_do_early_binding(TSRMLS_C); }
| T_HALT_COMPILER '(' ')' ';' { zend_do_halt_compiler_register(TSRMLS_C); YYACCEPT; }
- | T_NAMESPACE namespace_name ';' { zend_do_begin_namespace(&$2, 0 TSRMLS_CC); }
- | T_NAMESPACE namespace_name '{' { zend_do_begin_namespace(&$2, 1 TSRMLS_CC); }
- top_statement_list '}' { zend_do_end_namespace(TSRMLS_C); }
- | T_NAMESPACE '{' { zend_do_begin_namespace(NULL, 1 TSRMLS_CC); }
- top_statement_list '}' { zend_do_end_namespace(TSRMLS_C); }
- | T_USE use_declarations ';' { zend_verify_namespace(TSRMLS_C); }
- | constant_declaration ';' { zend_verify_namespace(TSRMLS_C); }
+ | T_NAMESPACE namespace_name ';' { zend_do_namespace(&$2 TSRMLS_CC); }
+ | T_USE use_declarations ';'
+ | constant_declaration ';'
;
use_declarations:
@@ -187,8 +182,8 @@ use_declarations:
use_declaration:
namespace_name { zend_do_use(&$1, NULL, 0 TSRMLS_CC); }
| namespace_name T_AS T_STRING { zend_do_use(&$1, &$3, 0 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name { zend_do_use(&$2, NULL, 1 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name T_AS T_STRING { zend_do_use(&$2, &$4, 1 TSRMLS_CC); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_use(&$2, NULL, 1 TSRMLS_CC); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING T_AS T_STRING { zend_do_use(&$2, &$4, 1 TSRMLS_CC); }
;
constant_declaration:
@@ -670,15 +665,12 @@ lexical_var_list:
;
function_call:
- namespace_name '(' { $2.u.opline_num = zend_do_begin_function_call(&$1, 1 TSRMLS_CC); }
+ T_STRING '(' { $2.u.opline_num = zend_do_begin_function_call(&$1, 1 TSRMLS_CC); }
function_call_parameter_list
')' { zend_do_end_function_call(&$1, &$$, &$4, 0, $2.u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
- | T_NAMESPACE T_NS_SEPARATOR namespace_name '(' { $1.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$1.u.constant); zend_do_build_namespace_name(&$1, &$1, &$3 TSRMLS_CC); $4.u.opline_num = zend_do_begin_function_call(&$1, 0 TSRMLS_CC); }
- function_call_parameter_list
- ')' { zend_do_end_function_call(&$1, &$$, &$6, 0, $4.u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
- | T_NS_SEPARATOR namespace_name '(' { $3.u.opline_num = zend_do_begin_function_call(&$2, 0 TSRMLS_CC); }
- function_call_parameter_list
- ')' { zend_do_end_function_call(&$2, &$$, &$5, 0, $3.u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING '(' { $3.u.opline_num = zend_do_begin_function_call(&$2, 0 TSRMLS_CC); }
+ function_call_parameter_list
+ ')' { zend_do_end_function_call(&$2, &$$, &$5, 0, $3.u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
| class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING '(' { $4.u.opline_num = zend_do_begin_class_member_function_call(&$1, &$3 TSRMLS_CC); }
function_call_parameter_list
')' { zend_do_end_function_call($4.u.opline_num?NULL:&$3, &$$, &$6, $4.u.opline_num, $4.u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
@@ -697,16 +689,18 @@ function_call:
;
class_name:
- T_STATIC { $$.op_type = IS_CONST; ZVAL_STRINGL(&$$.u.constant, "static", sizeof("static")-1, 1);}
- | namespace_name { $$ = $1; }
- | T_NAMESPACE T_NS_SEPARATOR namespace_name { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); zend_do_build_namespace_name(&$$, &$$, &$3 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name { char *tmp = estrndup(Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL($2.u.constant)); Z_STRVAL($2.u.constant) = tmp; ++Z_STRLEN($2.u.constant); $$ = $2; }
+ T_STRING { $$ = $1; }
+ | T_STATIC { $$.op_type = IS_CONST; ZVAL_STRINGL(&$$.u.constant, "static", sizeof("static")-1, 1);}
+ | T_NAMESPACE { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_build_namespace_name(&$$, NULL, &$2 TSRMLS_CC); }
+ | class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_build_namespace_name(&$$, &$1, &$3 TSRMLS_CC); }
;
fully_qualified_class_name:
- namespace_name { $$ = $1; }
- | T_NAMESPACE T_NS_SEPARATOR namespace_name { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); zend_do_build_namespace_name(&$$, &$$, &$3 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name { char *tmp = estrndup(Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL($2.u.constant)); Z_STRVAL($2.u.constant) = tmp; ++Z_STRLEN($2.u.constant); $$ = $2; }
+ T_STRING { $$ = $1; }
+ | T_NAMESPACE { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_build_namespace_name(&$$, NULL, &$2 TSRMLS_CC); }
+ | fully_qualified_class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_build_namespace_name(&$$, &$1, &$3 TSRMLS_CC); }
;
@@ -772,9 +766,8 @@ common_scalar:
static_scalar: /* compile-time evaluated scalars */
common_scalar { $$ = $1; }
- | namespace_name { zend_do_fetch_constant(&$$, NULL, &$1, ZEND_CT, 1 TSRMLS_CC); }
- | T_NAMESPACE T_NS_SEPARATOR namespace_name { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); zend_do_build_namespace_name(&$$, &$$, &$3 TSRMLS_CC); $3 = $$; zend_do_fetch_constant(&$$, NULL, &$3, ZEND_CT, 0 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name { char *tmp = estrndup(Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL($2.u.constant)); Z_STRVAL($2.u.constant) = tmp; ++Z_STRLEN($2.u.constant); zend_do_fetch_constant(&$$, NULL, &$2, ZEND_CT, 0 TSRMLS_CC); }
+ | T_STRING { zend_do_fetch_constant(&$$, NULL, &$1, ZEND_CT, 1 TSRMLS_CC); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_fetch_constant(&$$, NULL, &$2, ZEND_CT, 0 TSRMLS_CC); }
| '+' static_scalar { ZVAL_LONG(&$1.u.constant, 0); add_function(&$2.u.constant, &$1.u.constant, &$2.u.constant TSRMLS_CC); $$ = $2; }
| '-' static_scalar { ZVAL_LONG(&$1.u.constant, 0); sub_function(&$2.u.constant, &$1.u.constant, &$2.u.constant TSRMLS_CC); $$ = $2; }
| T_ARRAY '(' static_array_pair_list ')' { $$ = $3; Z_TYPE($$.u.constant) = IS_CONSTANT_ARRAY; }
@@ -786,11 +779,10 @@ static_class_constant:
;
scalar:
- T_STRING_VARNAME { $$ = $1; }
- | class_constant { $$ = $1; }
- | namespace_name { zend_do_fetch_constant(&$$, NULL, &$1, ZEND_RT, 1 TSRMLS_CC); }
- | T_NAMESPACE T_NS_SEPARATOR namespace_name { $$.op_type = IS_CONST; ZVAL_EMPTY_STRING(&$$.u.constant); zend_do_build_namespace_name(&$$, &$$, &$3 TSRMLS_CC); $3 = $$; zend_do_fetch_constant(&$$, NULL, &$3, ZEND_RT, 0 TSRMLS_CC); }
- | T_NS_SEPARATOR namespace_name { char *tmp = estrndup(Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); memcpy(&(tmp[1]), Z_STRVAL($2.u.constant), Z_STRLEN($2.u.constant)+1); tmp[0] = '\\'; efree(Z_STRVAL($2.u.constant)); Z_STRVAL($2.u.constant) = tmp; ++Z_STRLEN($2.u.constant); zend_do_fetch_constant(&$$, NULL, &$2, ZEND_RT, 0 TSRMLS_CC); }
+ T_STRING { zend_do_fetch_constant(&$$, NULL, &$1, ZEND_RT, 1 TSRMLS_CC); }
+ | T_PAAMAYIM_NEKUDOTAYIM T_STRING { zend_do_fetch_constant(&$$, NULL, &$2, ZEND_RT, 0 TSRMLS_CC); }
+ | T_STRING_VARNAME { $$ = $1; }
+ | class_constant { $$ = $1; }
| common_scalar { $$ = $1; }
| '"' encaps_list '"' { $$ = $2; }
| T_START_HEREDOC encaps_list T_END_HEREDOC { $$ = $2; }
diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c
index 05a698a321..15be32fae0 100644
--- a/Zend/zend_language_scanner.c
+++ b/Zend/zend_language_scanner.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.6.dev on Tue Nov 4 01:40:34 2008 */
+/* Generated by re2c 0.13.5 on Fri Aug 15 14:25:23 2008 */
#line 1 "Zend/zend_language_scanner.l"
/*
+----------------------------------------------------------------------+
@@ -978,7 +978,7 @@ yyc_INITIAL:
yy3:
YYDEBUG(3, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1641 "Zend/zend_language_scanner.l"
+#line 1637 "Zend/zend_language_scanner.l"
{
inline_char_handler:
@@ -1042,7 +1042,7 @@ yy5:
yy6:
YYDEBUG(6, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1629 "Zend/zend_language_scanner.l"
+#line 1625 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1061,7 +1061,7 @@ yy7:
if ((yych = *YYCURSOR) == '=') goto yy43;
YYDEBUG(8, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1606 "Zend/zend_language_scanner.l"
+#line 1602 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1259,7 +1259,7 @@ yy35:
++YYCURSOR;
YYDEBUG(38, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1570 "Zend/zend_language_scanner.l"
+#line 1566 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1295,7 +1295,7 @@ yy43:
++YYCURSOR;
YYDEBUG(44, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1580 "Zend/zend_language_scanner.l"
+#line 1576 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1313,7 +1313,7 @@ yy45:
++YYCURSOR;
YYDEBUG(46, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1593 "Zend/zend_language_scanner.l"
+#line 1589 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1352,7 +1352,7 @@ yy50:
yy51:
YYDEBUG(51, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1619 "Zend/zend_language_scanner.l"
+#line 1615 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -1452,7 +1452,7 @@ yy56:
yy57:
YYDEBUG(57, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2021 "Zend/zend_language_scanner.l"
+#line 2017 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1476,7 +1476,7 @@ yy59:
yy60:
YYDEBUG(60, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2046 "Zend/zend_language_scanner.l"
+#line 2042 "Zend/zend_language_scanner.l"
{
zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
@@ -1493,7 +1493,7 @@ yy62:
++YYCURSOR;
YYDEBUG(63, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2124 "Zend/zend_language_scanner.l"
+#line 2120 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '`';
@@ -1586,7 +1586,7 @@ yy68:
yy70:
YYDEBUG(70, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2051 "Zend/zend_language_scanner.l"
+#line 2047 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
@@ -1626,7 +1626,7 @@ yy74:
yy76:
YYDEBUG(76, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1709 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -1638,7 +1638,7 @@ yy77:
++YYCURSOR;
YYDEBUG(78, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1363 "Zend/zend_language_scanner.l"
+#line 1359 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -1654,7 +1654,7 @@ yy80:
++YYCURSOR;
YYDEBUG(81, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1701 "Zend/zend_language_scanner.l"
+#line 1697 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1680,7 +1680,7 @@ yy83:
++YYCURSOR;
YYDEBUG(84, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1691 "Zend/zend_language_scanner.l"
+#line 1687 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1745,7 +1745,7 @@ yy87:
}
YYDEBUG(89, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1801 "Zend/zend_language_scanner.l"
+#line 1797 "Zend/zend_language_scanner.l"
{
yymore();
}
@@ -1756,7 +1756,7 @@ yy90:
if ((yych = *YYCURSOR) == '/') goto yy92;
YYDEBUG(91, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1819 "Zend/zend_language_scanner.l"
+#line 1815 "Zend/zend_language_scanner.l"
{
yymore();
}
@@ -1766,7 +1766,7 @@ yy92:
++YYCURSOR;
YYDEBUG(93, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1813 "Zend/zend_language_scanner.l"
+#line 1809 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
BEGIN(ST_IN_SCRIPTING);
@@ -1829,7 +1829,7 @@ yy96:
}
YYDEBUG(98, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1801 "Zend/zend_language_scanner.l"
+#line 1797 "Zend/zend_language_scanner.l"
{
yymore();
}
@@ -1840,7 +1840,7 @@ yy99:
if ((yych = *YYCURSOR) == '/') goto yy101;
YYDEBUG(100, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1819 "Zend/zend_language_scanner.l"
+#line 1815 "Zend/zend_language_scanner.l"
{
yymore();
}
@@ -1850,7 +1850,7 @@ yy101:
++YYCURSOR;
YYDEBUG(102, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1805 "Zend/zend_language_scanner.l"
+#line 1801 "Zend/zend_language_scanner.l"
{
CG(doc_comment) = estrndup(yytext, yyleng);
CG(doc_comment_len) = yyleng;
@@ -1945,7 +1945,7 @@ yy106:
yy107:
YYDEBUG(107, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2021 "Zend/zend_language_scanner.l"
+#line 2017 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -1970,7 +1970,7 @@ yy109:
yy110:
YYDEBUG(110, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2028 "Zend/zend_language_scanner.l"
+#line 2024 "Zend/zend_language_scanner.l"
{
zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
@@ -1987,7 +1987,7 @@ yy112:
++YYCURSOR;
YYDEBUG(113, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2118 "Zend/zend_language_scanner.l"
+#line 2114 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '"';
@@ -2083,7 +2083,7 @@ yy118:
yy120:
YYDEBUG(120, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2039 "Zend/zend_language_scanner.l"
+#line 2035 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
@@ -2123,7 +2123,7 @@ yy124:
yy126:
YYDEBUG(126, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1709 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -2135,7 +2135,7 @@ yy127:
++YYCURSOR;
YYDEBUG(128, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1363 "Zend/zend_language_scanner.l"
+#line 1359 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -2151,7 +2151,7 @@ yy130:
++YYCURSOR;
YYDEBUG(131, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1701 "Zend/zend_language_scanner.l"
+#line 1697 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -2177,7 +2177,7 @@ yy133:
++YYCURSOR;
YYDEBUG(134, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1691 "Zend/zend_language_scanner.l"
+#line 1687 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -2196,7 +2196,7 @@ yyc_ST_END_HEREDOC:
++YYCURSOR;
YYDEBUG(138, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2007 "Zend/zend_language_scanner.l"
+#line 2003 "Zend/zend_language_scanner.l"
{
YYCURSOR += CG(heredoc_len) - 1;
yyleng = CG(heredoc_len);
@@ -2265,7 +2265,7 @@ yyc_ST_HEREDOC:
yy141:
YYDEBUG(141, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2065 "Zend/zend_language_scanner.l"
+#line 2061 "Zend/zend_language_scanner.l"
{
zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
@@ -2316,7 +2316,7 @@ yy143:
yy144:
YYDEBUG(144, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2021 "Zend/zend_language_scanner.l"
+#line 2017 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
@@ -2573,7 +2573,7 @@ yy161:
yy163:
YYDEBUG(163, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2070 "Zend/zend_language_scanner.l"
+#line 2066 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC);
@@ -2678,7 +2678,7 @@ yy170:
++YYCURSOR;
YYDEBUG(171, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1970 "Zend/zend_language_scanner.l"
+#line 1966 "Zend/zend_language_scanner.l"
{
char *end = yytext + yyleng - 1;
@@ -2975,7 +2975,7 @@ yy191:
yy193:
YYDEBUG(193, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1709 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
@@ -2987,7 +2987,7 @@ yy194:
++YYCURSOR;
YYDEBUG(195, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1363 "Zend/zend_language_scanner.l"
+#line 1359 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
@@ -3003,7 +3003,7 @@ yy197:
++YYCURSOR;
YYDEBUG(198, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1701 "Zend/zend_language_scanner.l"
+#line 1697 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -3029,7 +3029,7 @@ yy200:
++YYCURSOR;
YYDEBUG(201, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1691 "Zend/zend_language_scanner.l"
+#line 1687 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -3143,32 +3143,33 @@ yyc_ST_IN_SCRIPTING:
case 0x1C:
case 0x1D:
case 0x1E:
- case 0x1F: goto yy264;
+ case 0x1F:
+ case '\\': goto yy262;
case '\t':
case '\n':
case '\r':
case ' ': goto yy220;
- case '!': goto yy233;
- case '"': goto yy258;
- case '#': goto yy256;
- case '$': goto yy245;
- case '%': goto yy239;
- case '&': goto yy240;
- case '\'': goto yy260;
- case '(': goto yy227;
+ case '!': goto yy231;
+ case '"': goto yy256;
+ case '#': goto yy254;
+ case '$': goto yy243;
+ case '%': goto yy237;
+ case '&': goto yy238;
+ case '\'': goto yy258;
+ case '(': goto yy225;
case ')':
case ',':
case ';':
case '@':
case '[':
case ']':
- case '~': goto yy246;
- case '*': goto yy236;
- case '+': goto yy232;
+ case '~': goto yy244;
+ case '*': goto yy234;
+ case '+': goto yy230;
case '-': goto yy218;
- case '.': goto yy238;
- case '/': goto yy237;
- case '0': goto yy252;
+ case '.': goto yy236;
+ case '/': goto yy235;
+ case '0': goto yy250;
case '1':
case '2':
case '3':
@@ -3177,12 +3178,12 @@ yyc_ST_IN_SCRIPTING:
case '6':
case '7':
case '8':
- case '9': goto yy254;
+ case '9': goto yy252;
case ':': goto yy222;
- case '<': goto yy234;
- case '=': goto yy230;
- case '>': goto yy235;
- case '?': goto yy247;
+ case '<': goto yy232;
+ case '=': goto yy228;
+ case '>': goto yy233;
+ case '?': goto yy245;
case 'A':
case 'a': goto yy213;
case 'B':
@@ -3200,11 +3201,11 @@ yyc_ST_IN_SCRIPTING:
case 'I':
case 'i': goto yy211;
case 'L':
- case 'l': goto yy231;
+ case 'l': goto yy229;
case 'N':
- case 'n': goto yy225;
+ case 'n': goto yy223;
case 'O':
- case 'o': goto yy243;
+ case 'o': goto yy241;
case 'P':
case 'p': goto yy217;
case 'R':
@@ -3214,21 +3215,20 @@ yyc_ST_IN_SCRIPTING:
case 'T':
case 't': goto yy210;
case 'U':
- case 'u': goto yy228;
+ case 'u': goto yy226;
case 'V':
- case 'v': goto yy226;
+ case 'v': goto yy224;
case 'W':
case 'w': goto yy212;
case 'X':
- case 'x': goto yy244;
- case '\\': goto yy223;
- case '^': goto yy242;
- case '_': goto yy229;
- case '`': goto yy262;
- case '{': goto yy248;
- case '|': goto yy241;
- case '}': goto yy250;
- default: goto yy255;
+ case 'x': goto yy242;
+ case '^': goto yy240;
+ case '_': goto yy227;
+ case '`': goto yy260;
+ case '{': goto yy246;
+ case '|': goto yy239;
+ case '}': goto yy248;
+ default: goto yy253;
}
yy204:
YYDEBUG(204, *YYCURSOR);
@@ -3236,23 +3236,23 @@ yy204:
YYDEBUG(-1, yych);
switch ((yych = *YYCURSOR)) {
case 'C':
- case 'c': goto yy796;
+ case 'c': goto yy794;
case 'L':
- case 'l': goto yy797;
+ case 'l': goto yy795;
case 'M':
- case 'm': goto yy798;
+ case 'm': goto yy796;
case 'N':
- case 'n': goto yy799;
+ case 'n': goto yy797;
case 'V':
- case 'v': goto yy800;
+ case 'v': goto yy798;
case 'X':
- case 'x': goto yy801;
- default: goto yy282;
+ case 'x': goto yy799;
+ default: goto yy280;
}
yy205:
YYDEBUG(205, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1733 "Zend/zend_language_scanner.l"
+#line 1729 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
@@ -3264,21 +3264,21 @@ yy206:
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'H') {
- if (yych == 'E') goto yy778;
- goto yy282;
+ if (yych == 'E') goto yy776;
+ goto yy280;
} else {
- if (yych <= 'I') goto yy779;
- if (yych <= 'N') goto yy282;
- goto yy780;
+ if (yych <= 'I') goto yy777;
+ if (yych <= 'N') goto yy280;
+ goto yy778;
}
} else {
if (yych <= 'h') {
- if (yych == 'e') goto yy778;
- goto yy282;
+ if (yych == 'e') goto yy776;
+ goto yy280;
} else {
- if (yych <= 'i') goto yy779;
- if (yych == 'o') goto yy780;
- goto yy282;
+ if (yych <= 'i') goto yy777;
+ if (yych == 'o') goto yy778;
+ goto yy280;
}
}
yy207:
@@ -3286,21 +3286,21 @@ yy207:
yych = *++YYCURSOR;
if (yych <= 'U') {
if (yych <= 'N') {
- if (yych == 'I') goto yy757;
- goto yy282;
+ if (yych == 'I') goto yy755;
+ goto yy280;
} else {
- if (yych <= 'O') goto yy758;
- if (yych <= 'T') goto yy282;
- goto yy759;
+ if (yych <= 'O') goto yy756;
+ if (yych <= 'T') goto yy280;
+ goto yy757;
}
} else {
if (yych <= 'n') {
- if (yych == 'i') goto yy757;
- goto yy282;
+ if (yych == 'i') goto yy755;
+ goto yy280;
} else {
- if (yych <= 'o') goto yy758;
- if (yych == 'u') goto yy759;
- goto yy282;
+ if (yych <= 'o') goto yy756;
+ if (yych == 'u') goto yy757;
+ goto yy280;
}
}
yy208:
@@ -3308,43 +3308,43 @@ yy208:
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'K') {
- if (yych == 'A') goto yy729;
- goto yy282;
+ if (yych == 'A') goto yy727;
+ goto yy280;
} else {
- if (yych <= 'L') goto yy730;
- if (yych <= 'N') goto yy282;
- goto yy731;
+ if (yych <= 'L') goto yy728;
+ if (yych <= 'N') goto yy280;
+ goto yy729;
}
} else {
if (yych <= 'k') {
- if (yych == 'a') goto yy729;
- goto yy282;
+ if (yych == 'a') goto yy727;
+ goto yy280;
} else {
- if (yych <= 'l') goto yy730;
- if (yych == 'o') goto yy731;
- goto yy282;
+ if (yych <= 'l') goto yy728;
+ if (yych == 'o') goto yy729;
+ goto yy280;
}
}
yy209:
YYDEBUG(209, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy711;
- if (yych == 'e') goto yy711;
- goto yy282;
+ if (yych == 'E') goto yy709;
+ if (yych == 'e') goto yy709;
+ goto yy280;
yy210:
YYDEBUG(210, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'R') {
- if (yych == 'H') goto yy703;
- if (yych <= 'Q') goto yy282;
- goto yy704;
+ if (yych == 'H') goto yy701;
+ if (yych <= 'Q') goto yy280;
+ goto yy702;
} else {
if (yych <= 'h') {
- if (yych <= 'g') goto yy282;
- goto yy703;
+ if (yych <= 'g') goto yy280;
+ goto yy701;
} else {
- if (yych == 'r') goto yy704;
- goto yy282;
+ if (yych == 'r') goto yy702;
+ goto yy280;
}
}
yy211:
@@ -3352,70 +3352,70 @@ yy211:
yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'L') {
- if (yych == 'F') goto yy656;
- goto yy282;
+ if (yych == 'F') goto yy654;
+ goto yy280;
} else {
- if (yych <= 'M') goto yy658;
- if (yych <= 'N') goto yy659;
- if (yych <= 'R') goto yy282;
- goto yy660;
+ if (yych <= 'M') goto yy656;
+ if (yych <= 'N') goto yy657;
+ if (yych <= 'R') goto yy280;
+ goto yy658;
}
} else {
if (yych <= 'm') {
- if (yych == 'f') goto yy656;
- if (yych <= 'l') goto yy282;
- goto yy658;
+ if (yych == 'f') goto yy654;
+ if (yych <= 'l') goto yy280;
+ goto yy656;
} else {
- if (yych <= 'n') goto yy659;
- if (yych == 's') goto yy660;
- goto yy282;
+ if (yych <= 'n') goto yy657;
+ if (yych == 's') goto yy658;
+ goto yy280;
}
}
yy212:
YYDEBUG(212, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy651;
- if (yych == 'h') goto yy651;
- goto yy282;
+ if (yych == 'H') goto yy649;
+ if (yych == 'h') goto yy649;
+ goto yy280;
yy213:
YYDEBUG(213, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'M') {
- if (yych == 'B') goto yy633;
- goto yy282;
+ if (yych == 'B') goto yy631;
+ goto yy280;
} else {
- if (yych <= 'N') goto yy634;
- if (yych <= 'Q') goto yy282;
- if (yych <= 'R') goto yy635;
- goto yy636;
+ if (yych <= 'N') goto yy632;
+ if (yych <= 'Q') goto yy280;
+ if (yych <= 'R') goto yy633;
+ goto yy634;
}
} else {
if (yych <= 'n') {
- if (yych == 'b') goto yy633;
- if (yych <= 'm') goto yy282;
- goto yy634;
+ if (yych == 'b') goto yy631;
+ if (yych <= 'm') goto yy280;
+ goto yy632;
} else {
- if (yych <= 'q') goto yy282;
- if (yych <= 'r') goto yy635;
- if (yych <= 's') goto yy636;
- goto yy282;
+ if (yych <= 'q') goto yy280;
+ if (yych <= 'r') goto yy633;
+ if (yych <= 's') goto yy634;
+ goto yy280;
}
}
yy214:
YYDEBUG(214, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'W') {
- if (yych == 'T') goto yy621;
- if (yych <= 'V') goto yy282;
- goto yy622;
+ if (yych == 'T') goto yy619;
+ if (yych <= 'V') goto yy280;
+ goto yy620;
} else {
if (yych <= 't') {
- if (yych <= 's') goto yy282;
- goto yy621;
+ if (yych <= 's') goto yy280;
+ goto yy619;
} else {
- if (yych == 'w') goto yy622;
- goto yy282;
+ if (yych == 'w') goto yy620;
+ goto yy280;
}
}
yy215:
@@ -3426,38 +3426,38 @@ yy215:
if (yych <= '/') {
if (yych <= '"') {
if (yych <= '!') goto yy205;
- goto yy614;
+ goto yy612;
} else {
- if (yych == '\'') goto yy265;
+ if (yych == '\'') goto yy263;
goto yy205;
}
} else {
if (yych <= ';') {
- if (yych <= '9') goto yy281;
+ if (yych <= '9') goto yy279;
goto yy205;
} else {
- if (yych <= '<') goto yy613;
+ if (yych <= '<') goto yy611;
if (yych <= '@') goto yy205;
- goto yy281;
+ goto yy279;
}
}
} else {
if (yych <= '`') {
if (yych <= 'Z') {
- if (yych <= 'R') goto yy615;
- goto yy281;
+ if (yych <= 'R') goto yy613;
+ goto yy279;
} else {
- if (yych == '_') goto yy281;
+ if (yych == '_') goto yy279;
goto yy205;
}
} else {
if (yych <= 'r') {
- if (yych <= 'q') goto yy281;
- goto yy615;
+ if (yych <= 'q') goto yy279;
+ goto yy613;
} else {
- if (yych <= 'z') goto yy281;
+ if (yych <= 'z') goto yy279;
if (yych <= '~') goto yy205;
- goto yy281;
+ goto yy279;
}
}
}
@@ -3465,47 +3465,47 @@ yy216:
YYDEBUG(216, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'L') goto yy603;
- if (yych <= 'N') goto yy282;
- goto yy604;
+ if (yych == 'L') goto yy601;
+ if (yych <= 'N') goto yy280;
+ goto yy602;
} else {
if (yych <= 'l') {
- if (yych <= 'k') goto yy282;
- goto yy603;
+ if (yych <= 'k') goto yy280;
+ goto yy601;
} else {
- if (yych == 'o') goto yy604;
- goto yy282;
+ if (yych == 'o') goto yy602;
+ goto yy280;
}
}
yy217:
YYDEBUG(217, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'R') goto yy579;
- if (yych <= 'T') goto yy282;
- goto yy580;
+ if (yych == 'R') goto yy577;
+ if (yych <= 'T') goto yy280;
+ goto yy578;
} else {
if (yych <= 'r') {
- if (yych <= 'q') goto yy282;
- goto yy579;
+ if (yych <= 'q') goto yy280;
+ goto yy577;
} else {
- if (yych == 'u') goto yy580;
- goto yy282;
+ if (yych == 'u') goto yy578;
+ goto yy280;
}
}
yy218:
YYDEBUG(218, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '<') {
- if (yych == '-') goto yy575;
+ if (yych == '-') goto yy573;
} else {
- if (yych <= '=') goto yy573;
- if (yych <= '>') goto yy577;
+ if (yych <= '=') goto yy571;
+ if (yych <= '>') goto yy575;
}
yy219:
YYDEBUG(219, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1352 "Zend/zend_language_scanner.l"
+#line 1348 "Zend/zend_language_scanner.l"
{
return yytext[0];
}
@@ -3514,7 +3514,7 @@ yy220:
YYDEBUG(220, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy572;
+ goto yy570;
yy221:
YYDEBUG(221, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
@@ -3530,257 +3530,247 @@ yy221:
yy222:
YYDEBUG(222, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == ':') goto yy569;
+ if (yych == ':') goto yy567;
goto yy219;
yy223:
YYDEBUG(223, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(224, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1116 "Zend/zend_language_scanner.l"
- {
- return T_NS_SEPARATOR;
-}
-#line 3545 "Zend/zend_language_scanner.c"
-yy225:
- YYDEBUG(225, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'E') {
- if (yych == 'A') goto yy557;
- if (yych <= 'D') goto yy282;
- goto yy558;
+ if (yych == 'A') goto yy555;
+ if (yych <= 'D') goto yy280;
+ goto yy556;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy282;
- goto yy557;
+ if (yych <= '`') goto yy280;
+ goto yy555;
} else {
- if (yych == 'e') goto yy558;
- goto yy282;
+ if (yych == 'e') goto yy556;
+ goto yy280;
}
}
-yy226:
- YYDEBUG(226, *YYCURSOR);
+yy224:
+ YYDEBUG(224, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy554;
- if (yych == 'a') goto yy554;
- goto yy282;
-yy227:
- YYDEBUG(227, *YYCURSOR);
+ if (yych == 'A') goto yy552;
+ if (yych == 'a') goto yy552;
+ goto yy280;
+yy225:
+ YYDEBUG(225, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy475;
+ if (yych == '\t') goto yy473;
if (yych <= 0x1F) goto yy219;
- goto yy475;
+ goto yy473;
} else {
if (yych <= '@') goto yy219;
if (yych == 'C') goto yy219;
- goto yy475;
+ goto yy473;
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy475;
+ if (yych == 'F') goto yy473;
if (yych <= 'H') goto yy219;
- goto yy475;
+ goto yy473;
} else {
- if (yych == 'O') goto yy475;
+ if (yych == 'O') goto yy473;
if (yych <= 'Q') goto yy219;
- goto yy475;
+ goto yy473;
}
}
} else {
if (yych <= 'f') {
if (yych <= 'b') {
- if (yych == 'U') goto yy475;
+ if (yych == 'U') goto yy473;
if (yych <= '`') goto yy219;
- goto yy475;
+ goto yy473;
} else {
- if (yych == 'd') goto yy475;
+ if (yych == 'd') goto yy473;
if (yych <= 'e') goto yy219;
- goto yy475;
+ goto yy473;
}
} else {
if (yych <= 'o') {
- if (yych == 'i') goto yy475;
+ if (yych == 'i') goto yy473;
if (yych <= 'n') goto yy219;
- goto yy475;
+ goto yy473;
} else {
if (yych <= 's') {
if (yych <= 'q') goto yy219;
- goto yy475;
+ goto yy473;
} else {
- if (yych == 'u') goto yy475;
+ if (yych == 'u') goto yy473;
goto yy219;
}
}
}
}
-yy228:
- YYDEBUG(228, *YYCURSOR);
+yy226:
+ YYDEBUG(226, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
- if (yych == 'N') goto yy466;
- if (yych <= 'R') goto yy282;
- goto yy467;
+ if (yych == 'N') goto yy464;
+ if (yych <= 'R') goto yy280;
+ goto yy465;
} else {
if (yych <= 'n') {
- if (yych <= 'm') goto yy282;
- goto yy466;
+ if (yych <= 'm') goto yy280;
+ goto yy464;
} else {
- if (yych == 's') goto yy467;
- goto yy282;
+ if (yych == 's') goto yy465;
+ goto yy280;
}
}
+yy227:
+ YYDEBUG(227, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '_') goto yy390;
+ goto yy280;
+yy228:
+ YYDEBUG(228, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '<') goto yy219;
+ if (yych <= '=') goto yy384;
+ if (yych <= '>') goto yy386;
+ goto yy219;
yy229:
YYDEBUG(229, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy392;
- goto yy282;
+ if (yych == 'I') goto yy380;
+ if (yych == 'i') goto yy380;
+ goto yy280;
yy230:
YYDEBUG(230, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '<') goto yy219;
- if (yych <= '=') goto yy386;
- if (yych <= '>') goto yy388;
+ if (yych == '+') goto yy378;
+ if (yych == '=') goto yy376;
goto yy219;
yy231:
YYDEBUG(231, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy382;
- if (yych == 'i') goto yy382;
- goto yy282;
+ if (yych == '=') goto yy373;
+ goto yy219;
yy232:
YYDEBUG(232, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '+') goto yy380;
- if (yych == '=') goto yy378;
- goto yy219;
-yy233:
- YYDEBUG(233, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '=') goto yy375;
- goto yy219;
-yy234:
- YYDEBUG(234, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= ';') {
- if (yych == '/') goto yy347;
+ if (yych == '/') goto yy345;
goto yy219;
} else {
- if (yych <= '<') goto yy345;
- if (yych <= '=') goto yy348;
- if (yych <= '>') goto yy350;
+ if (yych <= '<') goto yy343;
+ if (yych <= '=') goto yy346;
+ if (yych <= '>') goto yy348;
goto yy219;
}
-yy235:
- YYDEBUG(235, *YYCURSOR);
+yy233:
+ YYDEBUG(233, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '<') goto yy219;
- if (yych <= '=') goto yy341;
- if (yych <= '>') goto yy339;
+ if (yych <= '=') goto yy339;
+ if (yych <= '>') goto yy337;
goto yy219;
-yy236:
- YYDEBUG(236, *YYCURSOR);
+yy234:
+ YYDEBUG(234, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy337;
+ if (yych == '=') goto yy335;
goto yy219;
-yy237:
- YYDEBUG(237, *YYCURSOR);
+yy235:
+ YYDEBUG(235, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '.') {
- if (yych == '*') goto yy328;
+ if (yych == '*') goto yy326;
goto yy219;
} else {
- if (yych <= '/') goto yy330;
- if (yych == '=') goto yy331;
+ if (yych <= '/') goto yy328;
+ if (yych == '=') goto yy329;
goto yy219;
}
+yy236:
+ YYDEBUG(236, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy219;
+ if (yych <= '9') goto yy322;
+ if (yych == '=') goto yy324;
+ goto yy219;
+yy237:
+ YYDEBUG(237, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '<') goto yy219;
+ if (yych <= '=') goto yy318;
+ if (yych <= '>') goto yy316;
+ goto yy219;
yy238:
YYDEBUG(238, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '/') goto yy219;
- if (yych <= '9') goto yy324;
- if (yych == '=') goto yy326;
+ if (yych == '&') goto yy312;
+ if (yych == '=') goto yy314;
goto yy219;
yy239:
YYDEBUG(239, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '<') goto yy219;
- if (yych <= '=') goto yy320;
- if (yych <= '>') goto yy318;
+ if (yych == '=') goto yy310;
+ if (yych == '|') goto yy308;
goto yy219;
yy240:
YYDEBUG(240, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '&') goto yy314;
- if (yych == '=') goto yy316;
+ if (yych == '=') goto yy306;
goto yy219;
yy241:
YYDEBUG(241, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy312;
- if (yych == '|') goto yy310;
- goto yy219;
+ if (yych == 'R') goto yy304;
+ if (yych == 'r') goto yy304;
+ goto yy280;
yy242:
YYDEBUG(242, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy308;
- goto yy219;
+ if (yych == 'O') goto yy301;
+ if (yych == 'o') goto yy301;
+ goto yy280;
yy243:
YYDEBUG(243, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy306;
- if (yych == 'r') goto yy306;
- goto yy282;
-yy244:
- YYDEBUG(244, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy303;
- if (yych == 'o') goto yy303;
- goto yy282;
-yy245:
- YYDEBUG(245, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= '_') {
if (yych <= '@') goto yy219;
- if (yych <= 'Z') goto yy300;
+ if (yych <= 'Z') goto yy298;
if (yych <= '^') goto yy219;
- goto yy300;
+ goto yy298;
} else {
if (yych <= '`') goto yy219;
- if (yych <= 'z') goto yy300;
+ if (yych <= 'z') goto yy298;
if (yych <= '~') goto yy219;
- goto yy300;
+ goto yy298;
}
-yy246:
- YYDEBUG(246, *YYCURSOR);
+yy244:
+ YYDEBUG(244, *YYCURSOR);
yych = *++YYCURSOR;
goto yy219;
-yy247:
- YYDEBUG(247, *YYCURSOR);
+yy245:
+ YYDEBUG(245, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '>') goto yy296;
+ if (yych == '>') goto yy294;
goto yy219;
-yy248:
- YYDEBUG(248, *YYCURSOR);
+yy246:
+ YYDEBUG(246, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(249, *YYCURSOR);
+ YYDEBUG(247, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1357 "Zend/zend_language_scanner.l"
+#line 1353 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
return '{';
}
-#line 3778 "Zend/zend_language_scanner.c"
-yy250:
- YYDEBUG(250, *YYCURSOR);
+#line 3768 "Zend/zend_language_scanner.c"
+yy248:
+ YYDEBUG(248, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(251, *YYCURSOR);
+ YYDEBUG(249, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1369 "Zend/zend_language_scanner.l"
+#line 1365 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -3788,30 +3778,30 @@ yy250:
}
return '}';
}
-#line 3792 "Zend/zend_language_scanner.c"
-yy252:
- YYDEBUG(252, *YYCURSOR);
+#line 3782 "Zend/zend_language_scanner.c"
+yy250:
+ YYDEBUG(250, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'E') {
if (yych <= '/') {
- if (yych == '.') goto yy283;
+ if (yych == '.') goto yy281;
} else {
- if (yych <= '9') goto yy286;
- if (yych >= 'E') goto yy288;
+ if (yych <= '9') goto yy284;
+ if (yych >= 'E') goto yy286;
}
} else {
if (yych <= 'd') {
- if (yych == 'X') goto yy292;
+ if (yych == 'X') goto yy290;
} else {
- if (yych <= 'e') goto yy288;
- if (yych == 'x') goto yy292;
+ if (yych <= 'e') goto yy286;
+ if (yych == 'x') goto yy290;
}
}
-yy253:
- YYDEBUG(253, *YYCURSOR);
+yy251:
+ YYDEBUG(251, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1395 "Zend/zend_language_scanner.l"
+#line 1391 "Zend/zend_language_scanner.l"
{
if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
zendlval->value.lval = strtol(yytext, NULL, 0);
@@ -3832,105 +3822,105 @@ yy253:
zendlval->type = IS_LONG;
return T_LNUMBER;
}
-#line 3836 "Zend/zend_language_scanner.c"
-yy254:
- YYDEBUG(254, *YYCURSOR);
+#line 3826 "Zend/zend_language_scanner.c"
+yy252:
+ YYDEBUG(252, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '9') {
- if (yych == '.') goto yy283;
- if (yych <= '/') goto yy253;
- goto yy286;
+ if (yych == '.') goto yy281;
+ if (yych <= '/') goto yy251;
+ goto yy284;
} else {
if (yych <= 'E') {
- if (yych <= 'D') goto yy253;
- goto yy288;
+ if (yych <= 'D') goto yy251;
+ goto yy286;
} else {
- if (yych == 'e') goto yy288;
- goto yy253;
+ if (yych == 'e') goto yy286;
+ goto yy251;
}
}
-yy255:
- YYDEBUG(255, *YYCURSOR);
+yy253:
+ YYDEBUG(253, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy282;
-yy256:
- YYDEBUG(256, *YYCURSOR);
+ goto yy280;
+yy254:
+ YYDEBUG(254, *YYCURSOR);
++YYCURSOR;
-yy257:
- YYDEBUG(257, *YYCURSOR);
+yy255:
+ YYDEBUG(255, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1740 "Zend/zend_language_scanner.l"
+#line 1736 "Zend/zend_language_scanner.l"
{
BEGIN(ST_ONE_LINE_COMMENT);
yymore();
}
-#line 3869 "Zend/zend_language_scanner.c"
-yy258:
- YYDEBUG(258, *YYCURSOR);
+#line 3859 "Zend/zend_language_scanner.c"
+yy256:
+ YYDEBUG(256, *YYCURSOR);
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy274;
-yy259:
- YYDEBUG(259, *YYCURSOR);
+ goto yy272;
+yy257:
+ YYDEBUG(257, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1907 "Zend/zend_language_scanner.l"
+#line 1903 "Zend/zend_language_scanner.l"
{
BEGIN(ST_DOUBLE_QUOTES);
return '"';
}
-#line 3883 "Zend/zend_language_scanner.c"
-yy260:
- YYDEBUG(260, *YYCURSOR);
+#line 3873 "Zend/zend_language_scanner.c"
+yy258:
+ YYDEBUG(258, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
- goto yy266;
-yy261:
- YYDEBUG(261, *YYCURSOR);
+ goto yy264;
+yy259:
+ YYDEBUG(259, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2130 "Zend/zend_language_scanner.l"
+#line 2126 "Zend/zend_language_scanner.l"
{
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 3897 "Zend/zend_language_scanner.c"
-yy262:
- YYDEBUG(262, *YYCURSOR);
+#line 3887 "Zend/zend_language_scanner.c"
+yy260:
+ YYDEBUG(260, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(263, *YYCURSOR);
+ YYDEBUG(261, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1958 "Zend/zend_language_scanner.l"
+#line 1954 "Zend/zend_language_scanner.l"
{
BEGIN(ST_BACKQUOTE);
return '`';
}
-#line 3908 "Zend/zend_language_scanner.c"
-yy264:
- YYDEBUG(264, *YYCURSOR);
+#line 3898 "Zend/zend_language_scanner.c"
+yy262:
+ YYDEBUG(262, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy261;
-yy265:
- YYDEBUG(265, *YYCURSOR);
+ goto yy259;
+yy263:
+ YYDEBUG(263, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy266:
- YYDEBUG(266, *YYCURSOR);
+yy264:
+ YYDEBUG(264, *YYCURSOR);
if (yybm[256+yych] & 128) {
- goto yy265;
+ goto yy263;
}
- if (yych <= '[') goto yy268;
- YYDEBUG(267, *YYCURSOR);
+ if (yych <= '[') goto yy266;
+ YYDEBUG(265, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- goto yy265;
-yy268:
- YYDEBUG(268, *YYCURSOR);
+ goto yy263;
+yy266:
+ YYDEBUG(266, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(269, *YYCURSOR);
+ YYDEBUG(267, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1856 "Zend/zend_language_scanner.l"
+#line 1852 "Zend/zend_language_scanner.l"
{
register char *s, *t;
char *end;
@@ -3980,22 +3970,22 @@ yy268:
#endif /* ZEND_MULTIBYTE */
return T_CONSTANT_ENCAPSED_STRING;
}
-#line 3984 "Zend/zend_language_scanner.c"
-yy270:
- YYDEBUG(270, *YYCURSOR);
+#line 3974 "Zend/zend_language_scanner.c"
+yy268:
+ YYDEBUG(268, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(271, *YYCURSOR);
+ YYDEBUG(269, *YYCURSOR);
if (yybm[0+yych] & 2) {
- goto yy273;
+ goto yy271;
}
- if (yych <= '#') goto yy278;
- if (yych <= '$') goto yy272;
- if (yych <= 'z') goto yy275;
- goto yy270;
-yy272:
- YYDEBUG(272, *YYCURSOR);
+ if (yych <= '#') goto yy276;
+ if (yych <= '$') goto yy270;
+ if (yych <= 'z') goto yy273;
+ goto yy268;
+yy270:
+ YYDEBUG(270, *YYCURSOR);
YYCURSOR = YYMARKER;
if (yyaccept <= 3) {
if (yyaccept <= 1) {
@@ -4006,186 +3996,186 @@ yy272:
}
} else {
if (yyaccept <= 2) {
- goto yy253;
+ goto yy251;
} else {
- goto yy259;
+ goto yy257;
}
}
} else {
if (yyaccept <= 5) {
if (yyaccept <= 4) {
- goto yy261;
+ goto yy259;
} else {
- goto yy285;
+ goto yy283;
}
} else {
if (yyaccept <= 6) {
- goto yy329;
+ goto yy327;
} else {
- goto yy346;
+ goto yy344;
}
}
}
-yy273:
- YYDEBUG(273, *YYCURSOR);
+yy271:
+ YYDEBUG(271, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy274:
- YYDEBUG(274, *YYCURSOR);
+yy272:
+ YYDEBUG(272, *YYCURSOR);
if (yybm[0+yych] & 2) {
- goto yy273;
+ goto yy271;
}
- if (yych <= '#') goto yy278;
- if (yych <= '$') goto yy276;
- if (yych >= '{') goto yy270;
-yy275:
- YYDEBUG(275, *YYCURSOR);
+ if (yych <= '#') goto yy276;
+ if (yych <= '$') goto yy274;
+ if (yych >= '{') goto yy268;
+yy273:
+ YYDEBUG(273, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- goto yy273;
-yy276:
- YYDEBUG(276, *YYCURSOR);
+ goto yy271;
+yy274:
+ YYDEBUG(274, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(277, *YYCURSOR);
+ YYDEBUG(275, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy276;
+ goto yy274;
}
if (yych <= '\\') {
if (yych <= '@') {
- if (yych != '"') goto yy273;
+ if (yych != '"') goto yy271;
} else {
- if (yych <= 'Z') goto yy272;
- if (yych <= '[') goto yy273;
- goto yy280;
+ if (yych <= 'Z') goto yy270;
+ if (yych <= '[') goto yy271;
+ goto yy278;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy272;
- goto yy273;
+ if (yych == '_') goto yy270;
+ goto yy271;
} else {
- if (yych <= '{') goto yy272;
- if (yych <= '~') goto yy273;
- goto yy272;
+ if (yych <= '{') goto yy270;
+ if (yych <= '~') goto yy271;
+ goto yy270;
}
}
-yy278:
- YYDEBUG(278, *YYCURSOR);
+yy276:
+ YYDEBUG(276, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(279, *YYCURSOR);
+ YYDEBUG(277, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1848 "Zend/zend_language_scanner.l"
+#line 1844 "Zend/zend_language_scanner.l"
{
int bprefix = (yytext[0] != '"') ? 1 : 0;
zend_scan_escape_string(zendlval, yytext+bprefix+1, yyleng-bprefix-2, '"' TSRMLS_CC);
return T_CONSTANT_ENCAPSED_STRING;
}
-#line 4088 "Zend/zend_language_scanner.c"
-yy280:
- YYDEBUG(280, *YYCURSOR);
+#line 4078 "Zend/zend_language_scanner.c"
+yy278:
+ YYDEBUG(278, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- goto yy273;
-yy281:
- YYDEBUG(281, *YYCURSOR);
+ goto yy271;
+yy279:
+ YYDEBUG(279, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy282:
- YYDEBUG(282, *YYCURSOR);
+yy280:
+ YYDEBUG(280, *YYCURSOR);
if (yybm[0+yych] & 8) {
- goto yy281;
+ goto yy279;
}
goto yy205;
-yy283:
- YYDEBUG(283, *YYCURSOR);
+yy281:
+ YYDEBUG(281, *YYCURSOR);
yyaccept = 5;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(284, *YYCURSOR);
+ YYDEBUG(282, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy283;
+ goto yy281;
}
- if (yych == 'E') goto yy288;
- if (yych == 'e') goto yy288;
-yy285:
- YYDEBUG(285, *YYCURSOR);
+ if (yych == 'E') goto yy286;
+ if (yych == 'e') goto yy286;
+yy283:
+ YYDEBUG(283, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1456 "Zend/zend_language_scanner.l"
+#line 1452 "Zend/zend_language_scanner.l"
{
zendlval->value.dval = zend_strtod(yytext, NULL);
zendlval->type = IS_DOUBLE;
return T_DNUMBER;
}
-#line 4127 "Zend/zend_language_scanner.c"
-yy286:
- YYDEBUG(286, *YYCURSOR);
+#line 4117 "Zend/zend_language_scanner.c"
+yy284:
+ YYDEBUG(284, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(287, *YYCURSOR);
+ YYDEBUG(285, *YYCURSOR);
if (yych <= '9') {
- if (yych == '.') goto yy283;
- if (yych <= '/') goto yy253;
- goto yy286;
+ if (yych == '.') goto yy281;
+ if (yych <= '/') goto yy251;
+ goto yy284;
} else {
if (yych <= 'E') {
- if (yych <= 'D') goto yy253;
+ if (yych <= 'D') goto yy251;
} else {
- if (yych != 'e') goto yy253;
+ if (yych != 'e') goto yy251;
}
}
-yy288:
- YYDEBUG(288, *YYCURSOR);
+yy286:
+ YYDEBUG(286, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= ',') {
- if (yych != '+') goto yy272;
+ if (yych != '+') goto yy270;
} else {
- if (yych <= '-') goto yy289;
- if (yych <= '/') goto yy272;
- if (yych <= '9') goto yy290;
- goto yy272;
+ if (yych <= '-') goto yy287;
+ if (yych <= '/') goto yy270;
+ if (yych <= '9') goto yy288;
+ goto yy270;
}
-yy289:
- YYDEBUG(289, *YYCURSOR);
+yy287:
+ YYDEBUG(287, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '/') goto yy272;
- if (yych >= ':') goto yy272;
-yy290:
- YYDEBUG(290, *YYCURSOR);
+ if (yych <= '/') goto yy270;
+ if (yych >= ':') goto yy270;
+yy288:
+ YYDEBUG(288, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(291, *YYCURSOR);
- if (yych <= '/') goto yy285;
- if (yych <= '9') goto yy290;
- goto yy285;
-yy292:
- YYDEBUG(292, *YYCURSOR);
+ YYDEBUG(289, *YYCURSOR);
+ if (yych <= '/') goto yy283;
+ if (yych <= '9') goto yy288;
+ goto yy283;
+yy290:
+ YYDEBUG(290, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy293;
+ goto yy291;
}
- goto yy272;
-yy293:
- YYDEBUG(293, *YYCURSOR);
+ goto yy270;
+yy291:
+ YYDEBUG(291, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(294, *YYCURSOR);
+ YYDEBUG(292, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy293;
+ goto yy291;
}
- YYDEBUG(295, *YYCURSOR);
+ YYDEBUG(293, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1416 "Zend/zend_language_scanner.l"
+#line 1412 "Zend/zend_language_scanner.l"
{
char *hex = yytext + 2; /* Skip "0x" */
int len = yyleng - 2;
@@ -4206,16 +4196,16 @@ yy293:
return T_DNUMBER;
}
}
-#line 4210 "Zend/zend_language_scanner.c"
-yy296:
- YYDEBUG(296, *YYCURSOR);
+#line 4200 "Zend/zend_language_scanner.c"
+yy294:
+ YYDEBUG(294, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy298;
- if (yych == '\r') goto yy299;
-yy297:
- YYDEBUG(297, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '\n') goto yy296;
+ if (yych == '\r') goto yy297;
+yy295:
+ YYDEBUG(295, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1823 "Zend/zend_language_scanner.l"
+#line 1819 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -4223,76 +4213,86 @@ yy297:
BEGIN(INITIAL);
return T_CLOSE_TAG; /* implicit ';' at php-end tag */
}
-#line 4227 "Zend/zend_language_scanner.c"
-yy298:
- YYDEBUG(298, *YYCURSOR);
+#line 4217 "Zend/zend_language_scanner.c"
+yy296:
+ YYDEBUG(296, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy297;
-yy299:
- YYDEBUG(299, *YYCURSOR);
+ goto yy295;
+yy297:
+ YYDEBUG(297, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy298;
- goto yy297;
-yy300:
- YYDEBUG(300, *YYCURSOR);
+ if (yych == '\n') goto yy296;
+ goto yy295;
+yy298:
+ YYDEBUG(298, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(301, *YYCURSOR);
+ YYDEBUG(299, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy300;
+ if (yych >= '0') goto yy298;
} else {
- if (yych <= '@') goto yy302;
- if (yych <= 'Z') goto yy300;
+ if (yych <= '@') goto yy300;
+ if (yych <= 'Z') goto yy298;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy300;
+ if (yych <= '_') goto yy298;
} else {
- if (yych <= 'z') goto yy300;
- if (yych >= 0x7F) goto yy300;
+ if (yych <= 'z') goto yy298;
+ if (yych >= 0x7F) goto yy298;
}
}
-yy302:
- YYDEBUG(302, *YYCURSOR);
+yy300:
+ YYDEBUG(300, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1709 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 4267 "Zend/zend_language_scanner.c"
-yy303:
- YYDEBUG(303, *YYCURSOR);
+#line 4257 "Zend/zend_language_scanner.c"
+yy301:
+ YYDEBUG(301, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy304;
- if (yych != 'r') goto yy282;
+ if (yych == 'R') goto yy302;
+ if (yych != 'r') goto yy280;
+yy302:
+ YYDEBUG(302, *YYCURSOR);
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 8) {
+ goto yy279;
+ }
+ YYDEBUG(303, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1336 "Zend/zend_language_scanner.l"
+ {
+ return T_LOGICAL_XOR;
+}
+#line 4275 "Zend/zend_language_scanner.c"
yy304:
YYDEBUG(304, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
YYDEBUG(305, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1340 "Zend/zend_language_scanner.l"
+#line 1328 "Zend/zend_language_scanner.l"
{
- return T_LOGICAL_XOR;
+ return T_LOGICAL_OR;
}
-#line 4285 "Zend/zend_language_scanner.c"
+#line 4288 "Zend/zend_language_scanner.c"
yy306:
YYDEBUG(306, *YYCURSOR);
++YYCURSOR;
- if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
- }
YYDEBUG(307, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1332 "Zend/zend_language_scanner.l"
+#line 1316 "Zend/zend_language_scanner.l"
{
- return T_LOGICAL_OR;
+ return T_XOR_EQUAL;
}
#line 4298 "Zend/zend_language_scanner.c"
yy308:
@@ -4302,7 +4302,7 @@ yy308:
yyleng = YYCURSOR - SCNG(yy_text);
#line 1320 "Zend/zend_language_scanner.l"
{
- return T_XOR_EQUAL;
+ return T_BOOLEAN_OR;
}
#line 4308 "Zend/zend_language_scanner.c"
yy310:
@@ -4310,9 +4310,9 @@ yy310:
++YYCURSOR;
YYDEBUG(311, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1324 "Zend/zend_language_scanner.l"
+#line 1312 "Zend/zend_language_scanner.l"
{
- return T_BOOLEAN_OR;
+ return T_OR_EQUAL;
}
#line 4318 "Zend/zend_language_scanner.c"
yy312:
@@ -4320,9 +4320,9 @@ yy312:
++YYCURSOR;
YYDEBUG(313, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1316 "Zend/zend_language_scanner.l"
+#line 1324 "Zend/zend_language_scanner.l"
{
- return T_OR_EQUAL;
+ return T_BOOLEAN_AND;
}
#line 4328 "Zend/zend_language_scanner.c"
yy314:
@@ -4330,30 +4330,20 @@ yy314:
++YYCURSOR;
YYDEBUG(315, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1328 "Zend/zend_language_scanner.l"
+#line 1308 "Zend/zend_language_scanner.l"
{
- return T_BOOLEAN_AND;
+ return T_AND_EQUAL;
}
#line 4338 "Zend/zend_language_scanner.c"
yy316:
YYDEBUG(316, *YYCURSOR);
++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy320;
+ if (yych == '\r') goto yy321;
+yy317:
YYDEBUG(317, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1312 "Zend/zend_language_scanner.l"
- {
- return T_AND_EQUAL;
-}
-#line 4348 "Zend/zend_language_scanner.c"
-yy318:
- YYDEBUG(318, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy322;
- if (yych == '\r') goto yy323;
-yy319:
- YYDEBUG(319, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1832 "Zend/zend_language_scanner.l"
+#line 1828 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
BEGIN(INITIAL);
@@ -4366,124 +4356,134 @@ yy319:
return yytext[0];
}
}
-#line 4370 "Zend/zend_language_scanner.c"
-yy320:
- YYDEBUG(320, *YYCURSOR);
+#line 4360 "Zend/zend_language_scanner.c"
+yy318:
+ YYDEBUG(318, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(321, *YYCURSOR);
+ YYDEBUG(319, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1300 "Zend/zend_language_scanner.l"
+#line 1296 "Zend/zend_language_scanner.l"
{
return T_MOD_EQUAL;
}
-#line 4380 "Zend/zend_language_scanner.c"
-yy322:
- YYDEBUG(322, *YYCURSOR);
+#line 4370 "Zend/zend_language_scanner.c"
+yy320:
+ YYDEBUG(320, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy319;
-yy323:
- YYDEBUG(323, *YYCURSOR);
+ goto yy317;
+yy321:
+ YYDEBUG(321, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy322;
- goto yy319;
-yy324:
- YYDEBUG(324, *YYCURSOR);
+ if (yych == '\n') goto yy320;
+ goto yy317;
+yy322:
+ YYDEBUG(322, *YYCURSOR);
yyaccept = 5;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(325, *YYCURSOR);
+ YYDEBUG(323, *YYCURSOR);
if (yych <= 'D') {
- if (yych <= '/') goto yy285;
- if (yych <= '9') goto yy324;
- goto yy285;
+ if (yych <= '/') goto yy283;
+ if (yych <= '9') goto yy322;
+ goto yy283;
} else {
- if (yych <= 'E') goto yy288;
- if (yych == 'e') goto yy288;
- goto yy285;
+ if (yych <= 'E') goto yy286;
+ if (yych == 'e') goto yy286;
+ goto yy283;
}
-yy326:
- YYDEBUG(326, *YYCURSOR);
+yy324:
+ YYDEBUG(324, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(327, *YYCURSOR);
+ YYDEBUG(325, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1296 "Zend/zend_language_scanner.l"
+#line 1292 "Zend/zend_language_scanner.l"
{
return T_CONCAT_EQUAL;
}
-#line 4415 "Zend/zend_language_scanner.c"
-yy328:
- YYDEBUG(328, *YYCURSOR);
+#line 4405 "Zend/zend_language_scanner.c"
+yy326:
+ YYDEBUG(326, *YYCURSOR);
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '*') goto yy333;
-yy329:
- YYDEBUG(329, *YYCURSOR);
+ if (yych == '*') goto yy331;
+yy327:
+ YYDEBUG(327, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1795 "Zend/zend_language_scanner.l"
+#line 1791 "Zend/zend_language_scanner.l"
{
BEGIN(ST_COMMENT);
yymore();
}
-#line 4429 "Zend/zend_language_scanner.c"
-yy330:
- YYDEBUG(330, *YYCURSOR);
+#line 4419 "Zend/zend_language_scanner.c"
+yy328:
+ YYDEBUG(328, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy257;
-yy331:
- YYDEBUG(331, *YYCURSOR);
+ goto yy255;
+yy329:
+ YYDEBUG(329, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(332, *YYCURSOR);
+ YYDEBUG(330, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1292 "Zend/zend_language_scanner.l"
+#line 1288 "Zend/zend_language_scanner.l"
{
return T_DIV_EQUAL;
}
-#line 4443 "Zend/zend_language_scanner.c"
-yy333:
- YYDEBUG(333, *YYCURSOR);
+#line 4433 "Zend/zend_language_scanner.c"
+yy331:
+ YYDEBUG(331, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy334;
+ goto yy332;
}
- goto yy272;
-yy334:
- YYDEBUG(334, *YYCURSOR);
+ goto yy270;
+yy332:
+ YYDEBUG(332, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(335, *YYCURSOR);
+ YYDEBUG(333, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy334;
+ goto yy332;
}
- YYDEBUG(336, *YYCURSOR);
+ YYDEBUG(334, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1789 "Zend/zend_language_scanner.l"
+#line 1785 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
BEGIN(ST_DOC_COMMENT);
yymore();
}
+#line 4458 "Zend/zend_language_scanner.c"
+yy335:
+ YYDEBUG(335, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(336, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1284 "Zend/zend_language_scanner.l"
+ {
+ return T_MUL_EQUAL;
+}
#line 4468 "Zend/zend_language_scanner.c"
yy337:
YYDEBUG(337, *YYCURSOR);
++YYCURSOR;
+ if ((yych = *YYCURSOR) == '=') goto yy341;
YYDEBUG(338, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1288 "Zend/zend_language_scanner.l"
+#line 1344 "Zend/zend_language_scanner.l"
{
- return T_MUL_EQUAL;
+ return T_SR;
}
-#line 4478 "Zend/zend_language_scanner.c"
+#line 4479 "Zend/zend_language_scanner.c"
yy339:
YYDEBUG(339, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy343;
YYDEBUG(340, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1348 "Zend/zend_language_scanner.l"
+#line 1272 "Zend/zend_language_scanner.l"
{
- return T_SR;
+ return T_IS_GREATER_OR_EQUAL;
}
#line 4489 "Zend/zend_language_scanner.c"
yy341:
@@ -4491,223 +4491,213 @@ yy341:
++YYCURSOR;
YYDEBUG(342, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1276 "Zend/zend_language_scanner.l"
+#line 1304 "Zend/zend_language_scanner.l"
{
- return T_IS_GREATER_OR_EQUAL;
+ return T_SR_EQUAL;
}
#line 4499 "Zend/zend_language_scanner.c"
yy343:
YYDEBUG(343, *YYCURSOR);
- ++YYCURSOR;
+ yyaccept = 7;
+ yych = *(YYMARKER = ++YYCURSOR);
+ if (yych <= ';') goto yy344;
+ if (yych <= '<') goto yy359;
+ if (yych <= '=') goto yy357;
+yy344:
YYDEBUG(344, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1308 "Zend/zend_language_scanner.l"
+#line 1340 "Zend/zend_language_scanner.l"
{
- return T_SR_EQUAL;
+ return T_SL;
}
-#line 4509 "Zend/zend_language_scanner.c"
+#line 4514 "Zend/zend_language_scanner.c"
yy345:
YYDEBUG(345, *YYCURSOR);
- yyaccept = 7;
- yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= ';') goto yy346;
- if (yych <= '<') goto yy361;
- if (yych <= '=') goto yy359;
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy350;
+ if (yych == 's') goto yy350;
+ goto yy270;
yy346:
YYDEBUG(346, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(347, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1344 "Zend/zend_language_scanner.l"
+#line 1268 "Zend/zend_language_scanner.l"
{
- return T_SL;
+ return T_IS_SMALLER_OR_EQUAL;
}
-#line 4524 "Zend/zend_language_scanner.c"
-yy347:
- YYDEBUG(347, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy352;
- if (yych == 's') goto yy352;
- goto yy272;
+#line 4530 "Zend/zend_language_scanner.c"
yy348:
YYDEBUG(348, *YYCURSOR);
++YYCURSOR;
+yy349:
YYDEBUG(349, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1272 "Zend/zend_language_scanner.l"
+#line 1264 "Zend/zend_language_scanner.l"
{
- return T_IS_SMALLER_OR_EQUAL;
+ return T_IS_NOT_EQUAL;
}
-#line 4540 "Zend/zend_language_scanner.c"
+#line 4541 "Zend/zend_language_scanner.c"
yy350:
YYDEBUG(350, *YYCURSOR);
- ++YYCURSOR;
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy351;
+ if (yych != 'c') goto yy270;
yy351:
YYDEBUG(351, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1268 "Zend/zend_language_scanner.l"
- {
- return T_IS_NOT_EQUAL;
-}
-#line 4551 "Zend/zend_language_scanner.c"
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy352;
+ if (yych != 'r') goto yy270;
yy352:
YYDEBUG(352, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy353;
- if (yych != 'c') goto yy272;
+ if (yych == 'I') goto yy353;
+ if (yych != 'i') goto yy270;
yy353:
YYDEBUG(353, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy354;
- if (yych != 'r') goto yy272;
+ if (yych == 'P') goto yy354;
+ if (yych != 'p') goto yy270;
yy354:
YYDEBUG(354, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy355;
- if (yych != 'i') goto yy272;
+ if (yych == 'T') goto yy355;
+ if (yych != 't') goto yy270;
yy355:
YYDEBUG(355, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'P') goto yy356;
- if (yych != 'p') goto yy272;
-yy356:
- YYDEBUG(356, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy357;
- if (yych != 't') goto yy272;
-yy357:
- YYDEBUG(357, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(358, *YYCURSOR);
+ YYDEBUG(356, *YYCURSOR);
if (yych <= '\r') {
- if (yych <= 0x08) goto yy272;
- if (yych <= '\n') goto yy357;
- if (yych <= '\f') goto yy272;
- goto yy357;
+ if (yych <= 0x08) goto yy270;
+ if (yych <= '\n') goto yy355;
+ if (yych <= '\f') goto yy270;
+ goto yy355;
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy272;
- goto yy357;
+ if (yych <= 0x1F) goto yy270;
+ goto yy355;
} else {
- if (yych == '>') goto yy296;
- goto yy272;
+ if (yych == '>') goto yy294;
+ goto yy270;
}
}
-yy359:
- YYDEBUG(359, *YYCURSOR);
+yy357:
+ YYDEBUG(357, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(360, *YYCURSOR);
+ YYDEBUG(358, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1304 "Zend/zend_language_scanner.l"
+#line 1300 "Zend/zend_language_scanner.l"
{
return T_SL_EQUAL;
}
-#line 4606 "Zend/zend_language_scanner.c"
-yy361:
- YYDEBUG(361, *YYCURSOR);
+#line 4596 "Zend/zend_language_scanner.c"
+yy359:
+ YYDEBUG(359, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(362, *YYCURSOR);
+ YYDEBUG(360, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy361;
+ goto yy359;
}
if (yych <= 'Z') {
if (yych <= '&') {
- if (yych == '"') goto yy366;
- goto yy272;
+ if (yych == '"') goto yy364;
+ goto yy270;
} else {
- if (yych <= '\'') goto yy365;
- if (yych <= '@') goto yy272;
+ if (yych <= '\'') goto yy363;
+ if (yych <= '@') goto yy270;
}
} else {
if (yych <= '`') {
- if (yych != '_') goto yy272;
+ if (yych != '_') goto yy270;
} else {
- if (yych <= 'z') goto yy363;
- if (yych <= '~') goto yy272;
+ if (yych <= 'z') goto yy361;
+ if (yych <= '~') goto yy270;
}
}
-yy363:
- YYDEBUG(363, *YYCURSOR);
+yy361:
+ YYDEBUG(361, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(364, *YYCURSOR);
+ YYDEBUG(362, *YYCURSOR);
if (yych <= '@') {
if (yych <= '\f') {
- if (yych == '\n') goto yy370;
- goto yy272;
+ if (yych == '\n') goto yy368;
+ goto yy270;
} else {
- if (yych <= '\r') goto yy372;
- if (yych <= '/') goto yy272;
- if (yych <= '9') goto yy363;
- goto yy272;
+ if (yych <= '\r') goto yy370;
+ if (yych <= '/') goto yy270;
+ if (yych <= '9') goto yy361;
+ goto yy270;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy363;
- if (yych <= '^') goto yy272;
- goto yy363;
+ if (yych <= 'Z') goto yy361;
+ if (yych <= '^') goto yy270;
+ goto yy361;
} else {
- if (yych <= '`') goto yy272;
- if (yych <= 'z') goto yy363;
- if (yych <= '~') goto yy272;
- goto yy363;
+ if (yych <= '`') goto yy270;
+ if (yych <= 'z') goto yy361;
+ if (yych <= '~') goto yy270;
+ goto yy361;
}
}
-yy365:
- YYDEBUG(365, *YYCURSOR);
+yy363:
+ YYDEBUG(363, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\'') goto yy272;
- if (yych <= '/') goto yy374;
- if (yych <= '9') goto yy272;
- goto yy374;
-yy366:
- YYDEBUG(366, *YYCURSOR);
+ if (yych == '\'') goto yy270;
+ if (yych <= '/') goto yy372;
+ if (yych <= '9') goto yy270;
+ goto yy372;
+yy364:
+ YYDEBUG(364, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '"') goto yy272;
- if (yych <= '/') goto yy368;
- if (yych <= '9') goto yy272;
- goto yy368;
-yy367:
- YYDEBUG(367, *YYCURSOR);
+ if (yych == '"') goto yy270;
+ if (yych <= '/') goto yy366;
+ if (yych <= '9') goto yy270;
+ goto yy366;
+yy365:
+ YYDEBUG(365, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy368:
- YYDEBUG(368, *YYCURSOR);
+yy366:
+ YYDEBUG(366, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
- if (yych != '"') goto yy272;
+ if (yych != '"') goto yy270;
} else {
- if (yych <= '9') goto yy367;
- if (yych <= '@') goto yy272;
- goto yy367;
+ if (yych <= '9') goto yy365;
+ if (yych <= '@') goto yy270;
+ goto yy365;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy367;
- goto yy272;
+ if (yych == '_') goto yy365;
+ goto yy270;
} else {
- if (yych <= 'z') goto yy367;
- if (yych <= '~') goto yy272;
- goto yy367;
+ if (yych <= 'z') goto yy365;
+ if (yych <= '~') goto yy270;
+ goto yy365;
}
}
-yy369:
- YYDEBUG(369, *YYCURSOR);
+yy367:
+ YYDEBUG(367, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy370;
- if (yych == '\r') goto yy372;
- goto yy272;
-yy370:
- YYDEBUG(370, *YYCURSOR);
+ if (yych == '\n') goto yy368;
+ if (yych == '\r') goto yy370;
+ goto yy270;
+yy368:
+ YYDEBUG(368, *YYCURSOR);
++YYCURSOR;
-yy371:
- YYDEBUG(371, *YYCURSOR);
+yy369:
+ YYDEBUG(369, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1913 "Zend/zend_language_scanner.l"
+#line 1909 "Zend/zend_language_scanner.l"
{
char *s;
int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -4751,49 +4741,59 @@ yy371:
return T_START_HEREDOC;
}
-#line 4755 "Zend/zend_language_scanner.c"
-yy372:
- YYDEBUG(372, *YYCURSOR);
+#line 4745 "Zend/zend_language_scanner.c"
+yy370:
+ YYDEBUG(370, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\n') goto yy370;
- goto yy371;
-yy373:
- YYDEBUG(373, *YYCURSOR);
+ if (yych == '\n') goto yy368;
+ goto yy369;
+yy371:
+ YYDEBUG(371, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy374:
- YYDEBUG(374, *YYCURSOR);
+yy372:
+ YYDEBUG(372, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
- if (yych == '\'') goto yy369;
- goto yy272;
+ if (yych == '\'') goto yy367;
+ goto yy270;
} else {
- if (yych <= '9') goto yy373;
- if (yych <= '@') goto yy272;
- goto yy373;
+ if (yych <= '9') goto yy371;
+ if (yych <= '@') goto yy270;
+ goto yy371;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy373;
- goto yy272;
+ if (yych == '_') goto yy371;
+ goto yy270;
} else {
- if (yych <= 'z') goto yy373;
- if (yych <= '~') goto yy272;
- goto yy373;
+ if (yych <= 'z') goto yy371;
+ if (yych <= '~') goto yy270;
+ goto yy371;
}
}
-yy375:
- YYDEBUG(375, *YYCURSOR);
+yy373:
+ YYDEBUG(373, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '=') goto yy351;
+ if (yych != '=') goto yy349;
+ YYDEBUG(374, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(375, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1256 "Zend/zend_language_scanner.l"
+ {
+ return T_IS_NOT_IDENTICAL;
+}
+#line 4789 "Zend/zend_language_scanner.c"
+yy376:
YYDEBUG(376, *YYCURSOR);
++YYCURSOR;
YYDEBUG(377, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1260 "Zend/zend_language_scanner.l"
+#line 1276 "Zend/zend_language_scanner.l"
{
- return T_IS_NOT_IDENTICAL;
+ return T_PLUS_EQUAL;
}
#line 4799 "Zend/zend_language_scanner.c"
yy378:
@@ -4801,53 +4801,53 @@ yy378:
++YYCURSOR;
YYDEBUG(379, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1280 "Zend/zend_language_scanner.l"
+#line 1244 "Zend/zend_language_scanner.l"
{
- return T_PLUS_EQUAL;
+ return T_INC;
}
#line 4809 "Zend/zend_language_scanner.c"
yy380:
YYDEBUG(380, *YYCURSOR);
- ++YYCURSOR;
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy381;
+ if (yych != 's') goto yy280;
+yy381:
YYDEBUG(381, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1248 "Zend/zend_language_scanner.l"
- {
- return T_INC;
-}
-#line 4819 "Zend/zend_language_scanner.c"
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy382;
+ if (yych != 't') goto yy280;
yy382:
YYDEBUG(382, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy383;
- if (yych != 's') goto yy282;
-yy383:
+ ++YYCURSOR;
+ if (yybm[0+(yych = *YYCURSOR)] & 8) {
+ goto yy279;
+ }
YYDEBUG(383, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy384;
- if (yych != 't') goto yy282;
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1236 "Zend/zend_language_scanner.l"
+ {
+ return T_LIST;
+}
+#line 4832 "Zend/zend_language_scanner.c"
yy384:
YYDEBUG(384, *YYCURSOR);
++YYCURSOR;
- if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
- }
+ if ((yych = *YYCURSOR) == '=') goto yy388;
YYDEBUG(385, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1240 "Zend/zend_language_scanner.l"
+#line 1260 "Zend/zend_language_scanner.l"
{
- return T_LIST;
+ return T_IS_EQUAL;
}
-#line 4842 "Zend/zend_language_scanner.c"
+#line 4843 "Zend/zend_language_scanner.c"
yy386:
YYDEBUG(386, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy390;
YYDEBUG(387, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1264 "Zend/zend_language_scanner.l"
+#line 1232 "Zend/zend_language_scanner.l"
{
- return T_IS_EQUAL;
+ return T_DOUBLE_ARROW;
}
#line 4853 "Zend/zend_language_scanner.c"
yy388:
@@ -4855,143 +4855,133 @@ yy388:
++YYCURSOR;
YYDEBUG(389, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1236 "Zend/zend_language_scanner.l"
+#line 1252 "Zend/zend_language_scanner.l"
{
- return T_DOUBLE_ARROW;
+ return T_IS_IDENTICAL;
}
#line 4863 "Zend/zend_language_scanner.c"
yy390:
YYDEBUG(390, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(391, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1256 "Zend/zend_language_scanner.l"
- {
- return T_IS_IDENTICAL;
-}
-#line 4873 "Zend/zend_language_scanner.c"
-yy392:
- YYDEBUG(392, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'C':
- case 'c': goto yy394;
+ case 'c': goto yy392;
case 'D':
- case 'd': goto yy398;
+ case 'd': goto yy396;
case 'F':
- case 'f': goto yy395;
+ case 'f': goto yy393;
case 'H':
- case 'h': goto yy393;
+ case 'h': goto yy391;
case 'L':
- case 'l': goto yy397;
+ case 'l': goto yy395;
case 'M':
- case 'm': goto yy396;
+ case 'm': goto yy394;
case 'N':
- case 'n': goto yy399;
- default: goto yy282;
+ case 'n': goto yy397;
+ default: goto yy280;
}
-yy393:
- YYDEBUG(393, *YYCURSOR);
+yy391:
+ YYDEBUG(391, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy453;
- if (yych == 'a') goto yy453;
- goto yy282;
-yy394:
- YYDEBUG(394, *YYCURSOR);
+ if (yych == 'A') goto yy451;
+ if (yych == 'a') goto yy451;
+ goto yy280;
+yy392:
+ YYDEBUG(392, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy446;
- if (yych == 'l') goto yy446;
- goto yy282;
-yy395:
- YYDEBUG(395, *YYCURSOR);
+ if (yych == 'L') goto yy444;
+ if (yych == 'l') goto yy444;
+ goto yy280;
+yy393:
+ YYDEBUG(393, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'I') goto yy430;
- if (yych <= 'T') goto yy282;
- goto yy431;
+ if (yych == 'I') goto yy428;
+ if (yych <= 'T') goto yy280;
+ goto yy429;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy282;
- goto yy430;
+ if (yych <= 'h') goto yy280;
+ goto yy428;
} else {
- if (yych == 'u') goto yy431;
- goto yy282;
+ if (yych == 'u') goto yy429;
+ goto yy280;
}
}
+yy394:
+ YYDEBUG(394, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy420;
+ if (yych == 'e') goto yy420;
+ goto yy280;
+yy395:
+ YYDEBUG(395, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy414;
+ if (yych == 'i') goto yy414;
+ goto yy280;
yy396:
YYDEBUG(396, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy422;
- if (yych == 'e') goto yy422;
- goto yy282;
+ if (yych == 'I') goto yy409;
+ if (yych == 'i') goto yy409;
+ goto yy280;
yy397:
YYDEBUG(397, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy416;
- if (yych == 'i') goto yy416;
- goto yy282;
+ if (yych == 'A') goto yy398;
+ if (yych != 'a') goto yy280;
yy398:
YYDEBUG(398, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy411;
- if (yych == 'i') goto yy411;
- goto yy282;
+ if (yych == 'M') goto yy399;
+ if (yych != 'm') goto yy280;
yy399:
YYDEBUG(399, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy400;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy400;
+ if (yych != 'e') goto yy280;
yy400:
YYDEBUG(400, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy401;
- if (yych != 'm') goto yy282;
+ if (yych == 'S') goto yy401;
+ if (yych != 's') goto yy280;
yy401:
YYDEBUG(401, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy402;
- if (yych != 'e') goto yy282;
+ if (yych == 'P') goto yy402;
+ if (yych != 'p') goto yy280;
yy402:
YYDEBUG(402, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy403;
- if (yych != 's') goto yy282;
+ if (yych == 'A') goto yy403;
+ if (yych != 'a') goto yy280;
yy403:
YYDEBUG(403, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy404;
- if (yych != 'p') goto yy282;
+ if (yych == 'C') goto yy404;
+ if (yych != 'c') goto yy280;
yy404:
YYDEBUG(404, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy405;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy405;
+ if (yych != 'e') goto yy280;
yy405:
YYDEBUG(405, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy406;
- if (yych != 'c') goto yy282;
-yy406:
+ if (yych != '_') goto yy280;
YYDEBUG(406, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy407;
- if (yych != 'e') goto yy282;
-yy407:
+ if (yych != '_') goto yy280;
YYDEBUG(407, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(408, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(409, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(410, *YYCURSOR);
+ YYDEBUG(408, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1560 "Zend/zend_language_scanner.l"
+#line 1556 "Zend/zend_language_scanner.l"
{
if (CG(current_namespace)) {
*zendlval = *CG(current_namespace);
@@ -5001,27 +4991,27 @@ yy407:
}
return T_NS_C;
}
-#line 5005 "Zend/zend_language_scanner.c"
-yy411:
- YYDEBUG(411, *YYCURSOR);
+#line 4995 "Zend/zend_language_scanner.c"
+yy409:
+ YYDEBUG(409, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy412;
- if (yych != 'r') goto yy282;
-yy412:
- YYDEBUG(412, *YYCURSOR);
+ if (yych == 'R') goto yy410;
+ if (yych != 'r') goto yy280;
+yy410:
+ YYDEBUG(410, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(413, *YYCURSOR);
+ if (yych != '_') goto yy280;
+ YYDEBUG(411, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(414, *YYCURSOR);
+ if (yych != '_') goto yy280;
+ YYDEBUG(412, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(415, *YYCURSOR);
+ YYDEBUG(413, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1533 "Zend/zend_language_scanner.l"
+#line 1529 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
const size_t filename_len = strlen(filename);
@@ -5048,73 +5038,73 @@ yy412:
zendlval->type = IS_STRING;
return T_DIR;
}
-#line 5052 "Zend/zend_language_scanner.c"
+#line 5042 "Zend/zend_language_scanner.c"
+yy414:
+ YYDEBUG(414, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy415;
+ if (yych != 'n') goto yy280;
+yy415:
+ YYDEBUG(415, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy416;
+ if (yych != 'e') goto yy280;
yy416:
YYDEBUG(416, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy417;
- if (yych != 'n') goto yy282;
-yy417:
+ if (yych != '_') goto yy280;
YYDEBUG(417, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy418;
- if (yych != 'e') goto yy282;
-yy418:
+ if (yych != '_') goto yy280;
YYDEBUG(418, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(419, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(420, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(421, *YYCURSOR);
+ YYDEBUG(419, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1515 "Zend/zend_language_scanner.l"
+#line 1511 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = CG(zend_lineno);
zendlval->type = IS_LONG;
return T_LINE;
}
-#line 5083 "Zend/zend_language_scanner.c"
+#line 5073 "Zend/zend_language_scanner.c"
+yy420:
+ YYDEBUG(420, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy421;
+ if (yych != 't') goto yy280;
+yy421:
+ YYDEBUG(421, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy422;
+ if (yych != 'h') goto yy280;
yy422:
YYDEBUG(422, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy423;
- if (yych != 't') goto yy282;
+ if (yych == 'O') goto yy423;
+ if (yych != 'o') goto yy280;
yy423:
YYDEBUG(423, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy424;
- if (yych != 'h') goto yy282;
+ if (yych == 'D') goto yy424;
+ if (yych != 'd') goto yy280;
yy424:
YYDEBUG(424, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy425;
- if (yych != 'o') goto yy282;
-yy425:
+ if (yych != '_') goto yy280;
YYDEBUG(425, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy426;
- if (yych != 'd') goto yy282;
-yy426:
+ if (yych != '_') goto yy280;
YYDEBUG(426, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(427, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(428, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(429, *YYCURSOR);
+ YYDEBUG(427, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1494 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
{
char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL;
char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL;
@@ -5135,58 +5125,58 @@ yy426:
zendlval->type = IS_STRING;
return T_METHOD_C;
}
-#line 5139 "Zend/zend_language_scanner.c"
+#line 5129 "Zend/zend_language_scanner.c"
+yy428:
+ YYDEBUG(428, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy439;
+ if (yych == 'l') goto yy439;
+ goto yy280;
+yy429:
+ YYDEBUG(429, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy430;
+ if (yych != 'n') goto yy280;
yy430:
YYDEBUG(430, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy441;
- if (yych == 'l') goto yy441;
- goto yy282;
+ if (yych == 'C') goto yy431;
+ if (yych != 'c') goto yy280;
yy431:
YYDEBUG(431, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy432;
- if (yych != 'n') goto yy282;
+ if (yych == 'T') goto yy432;
+ if (yych != 't') goto yy280;
yy432:
YYDEBUG(432, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy433;
- if (yych != 'c') goto yy282;
+ if (yych == 'I') goto yy433;
+ if (yych != 'i') goto yy280;
yy433:
YYDEBUG(433, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy434;
- if (yych != 't') goto yy282;
+ if (yych == 'O') goto yy434;
+ if (yych != 'o') goto yy280;
yy434:
YYDEBUG(434, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy435;
- if (yych != 'i') goto yy282;
+ if (yych == 'N') goto yy435;
+ if (yych != 'n') goto yy280;
yy435:
YYDEBUG(435, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy436;
- if (yych != 'o') goto yy282;
-yy436:
+ if (yych != '_') goto yy280;
YYDEBUG(436, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy437;
- if (yych != 'n') goto yy282;
-yy437:
+ if (yych != '_') goto yy280;
YYDEBUG(437, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(438, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(439, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(440, *YYCURSOR);
+ YYDEBUG(438, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1478 "Zend/zend_language_scanner.l"
+#line 1474 "Zend/zend_language_scanner.l"
{
char *func_name = NULL;
@@ -5202,27 +5192,27 @@ yy437:
zendlval->type = IS_STRING;
return T_FUNC_C;
}
-#line 5206 "Zend/zend_language_scanner.c"
-yy441:
- YYDEBUG(441, *YYCURSOR);
+#line 5196 "Zend/zend_language_scanner.c"
+yy439:
+ YYDEBUG(439, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy442;
- if (yych != 'e') goto yy282;
-yy442:
- YYDEBUG(442, *YYCURSOR);
+ if (yych == 'E') goto yy440;
+ if (yych != 'e') goto yy280;
+yy440:
+ YYDEBUG(440, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(443, *YYCURSOR);
+ if (yych != '_') goto yy280;
+ YYDEBUG(441, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(444, *YYCURSOR);
+ if (yych != '_') goto yy280;
+ YYDEBUG(442, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(445, *YYCURSOR);
+ YYDEBUG(443, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1521 "Zend/zend_language_scanner.l"
+#line 1517 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
@@ -5234,37 +5224,37 @@ yy442:
zendlval->type = IS_STRING;
return T_FILE;
}
-#line 5238 "Zend/zend_language_scanner.c"
+#line 5228 "Zend/zend_language_scanner.c"
+yy444:
+ YYDEBUG(444, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy445;
+ if (yych != 'a') goto yy280;
+yy445:
+ YYDEBUG(445, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy446;
+ if (yych != 's') goto yy280;
yy446:
YYDEBUG(446, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy447;
- if (yych != 'a') goto yy282;
+ if (yych == 'S') goto yy447;
+ if (yych != 's') goto yy280;
yy447:
YYDEBUG(447, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy448;
- if (yych != 's') goto yy282;
-yy448:
+ if (yych != '_') goto yy280;
YYDEBUG(448, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy449;
- if (yych != 's') goto yy282;
-yy449:
+ if (yych != '_') goto yy280;
YYDEBUG(449, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(450, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
- YYDEBUG(451, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(452, *YYCURSOR);
+ YYDEBUG(450, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1462 "Zend/zend_language_scanner.l"
+#line 1458 "Zend/zend_language_scanner.l"
{
char *class_name = NULL;
@@ -5280,746 +5270,756 @@ yy449:
zendlval->type = IS_STRING;
return T_CLASS_C;
}
-#line 5284 "Zend/zend_language_scanner.c"
+#line 5274 "Zend/zend_language_scanner.c"
+yy451:
+ YYDEBUG(451, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy452;
+ if (yych != 'l') goto yy280;
+yy452:
+ YYDEBUG(452, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy453;
+ if (yych != 't') goto yy280;
yy453:
YYDEBUG(453, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy454;
- if (yych != 'l') goto yy282;
-yy454:
+ if (yych != '_') goto yy280;
YYDEBUG(454, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy455;
- if (yych != 't') goto yy282;
+ if (yych == 'C') goto yy455;
+ if (yych != 'c') goto yy280;
yy455:
YYDEBUG(455, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy282;
+ if (yych == 'O') goto yy456;
+ if (yych != 'o') goto yy280;
+yy456:
YYDEBUG(456, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy457;
- if (yych != 'c') goto yy282;
+ if (yych == 'M') goto yy457;
+ if (yych != 'm') goto yy280;
yy457:
YYDEBUG(457, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy458;
- if (yych != 'o') goto yy282;
+ if (yych == 'P') goto yy458;
+ if (yych != 'p') goto yy280;
yy458:
YYDEBUG(458, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy459;
- if (yych != 'm') goto yy282;
+ if (yych == 'I') goto yy459;
+ if (yych != 'i') goto yy280;
yy459:
YYDEBUG(459, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy460;
- if (yych != 'p') goto yy282;
+ if (yych == 'L') goto yy460;
+ if (yych != 'l') goto yy280;
yy460:
YYDEBUG(460, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy461;
- if (yych != 'i') goto yy282;
+ if (yych == 'E') goto yy461;
+ if (yych != 'e') goto yy280;
yy461:
YYDEBUG(461, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy462;
- if (yych != 'l') goto yy282;
+ if (yych == 'R') goto yy462;
+ if (yych != 'r') goto yy280;
yy462:
YYDEBUG(462, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy463;
- if (yych != 'e') goto yy282;
-yy463:
- YYDEBUG(463, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy464;
- if (yych != 'r') goto yy282;
-yy464:
- YYDEBUG(464, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(465, *YYCURSOR);
+ YYDEBUG(463, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1204 "Zend/zend_language_scanner.l"
+#line 1200 "Zend/zend_language_scanner.l"
{
return T_HALT_COMPILER;
}
-#line 5350 "Zend/zend_language_scanner.c"
-yy466:
- YYDEBUG(466, *YYCURSOR);
+#line 5340 "Zend/zend_language_scanner.c"
+yy464:
+ YYDEBUG(464, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy470;
- if (yych == 's') goto yy470;
- goto yy282;
-yy467:
- YYDEBUG(467, *YYCURSOR);
+ if (yych == 'S') goto yy468;
+ if (yych == 's') goto yy468;
+ goto yy280;
+yy465:
+ YYDEBUG(465, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy468;
- if (yych != 'e') goto yy282;
-yy468:
- YYDEBUG(468, *YYCURSOR);
+ if (yych == 'E') goto yy466;
+ if (yych != 'e') goto yy280;
+yy466:
+ YYDEBUG(466, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(469, *YYCURSOR);
+ YYDEBUG(467, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1188 "Zend/zend_language_scanner.l"
+#line 1184 "Zend/zend_language_scanner.l"
{
return T_USE;
}
-#line 5374 "Zend/zend_language_scanner.c"
-yy470:
- YYDEBUG(470, *YYCURSOR);
+#line 5364 "Zend/zend_language_scanner.c"
+yy468:
+ YYDEBUG(468, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy471;
- if (yych != 'e') goto yy282;
-yy471:
- YYDEBUG(471, *YYCURSOR);
+ if (yych == 'E') goto yy469;
+ if (yych != 'e') goto yy280;
+yy469:
+ YYDEBUG(469, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy472;
- if (yych != 't') goto yy282;
-yy472:
- YYDEBUG(472, *YYCURSOR);
+ if (yych == 'T') goto yy470;
+ if (yych != 't') goto yy280;
+yy470:
+ YYDEBUG(470, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(473, *YYCURSOR);
+ YYDEBUG(471, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1232 "Zend/zend_language_scanner.l"
+#line 1228 "Zend/zend_language_scanner.l"
{
return T_UNSET;
}
-#line 5397 "Zend/zend_language_scanner.c"
-yy474:
- YYDEBUG(474, *YYCURSOR);
+#line 5387 "Zend/zend_language_scanner.c"
+yy472:
+ YYDEBUG(472, *YYCURSOR);
++YYCURSOR;
YYFILL(7);
yych = *YYCURSOR;
-yy475:
- YYDEBUG(475, *YYCURSOR);
+yy473:
+ YYDEBUG(473, *YYCURSOR);
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy474;
- if (yych <= 0x1F) goto yy272;
- goto yy474;
+ if (yych == '\t') goto yy472;
+ if (yych <= 0x1F) goto yy270;
+ goto yy472;
} else {
if (yych <= 'A') {
- if (yych <= '@') goto yy272;
- goto yy479;
+ if (yych <= '@') goto yy270;
+ goto yy477;
} else {
- if (yych <= 'B') goto yy477;
- if (yych <= 'C') goto yy272;
- goto yy482;
+ if (yych <= 'B') goto yy475;
+ if (yych <= 'C') goto yy270;
+ goto yy480;
}
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy483;
- if (yych <= 'H') goto yy272;
- goto yy484;
+ if (yych == 'F') goto yy481;
+ if (yych <= 'H') goto yy270;
+ goto yy482;
} else {
if (yych <= 'O') {
- if (yych <= 'N') goto yy272;
- goto yy478;
+ if (yych <= 'N') goto yy270;
+ goto yy476;
} else {
- if (yych <= 'Q') goto yy272;
- if (yych <= 'R') goto yy481;
- goto yy480;
+ if (yych <= 'Q') goto yy270;
+ if (yych <= 'R') goto yy479;
+ goto yy478;
}
}
}
} else {
if (yych <= 'f') {
if (yych <= 'a') {
- if (yych == 'U') goto yy476;
- if (yych <= '`') goto yy272;
- goto yy479;
+ if (yych == 'U') goto yy474;
+ if (yych <= '`') goto yy270;
+ goto yy477;
} else {
if (yych <= 'c') {
- if (yych <= 'b') goto yy477;
- goto yy272;
+ if (yych <= 'b') goto yy475;
+ goto yy270;
} else {
- if (yych <= 'd') goto yy482;
- if (yych <= 'e') goto yy272;
- goto yy483;
+ if (yych <= 'd') goto yy480;
+ if (yych <= 'e') goto yy270;
+ goto yy481;
}
}
} else {
if (yych <= 'q') {
if (yych <= 'i') {
- if (yych <= 'h') goto yy272;
- goto yy484;
+ if (yych <= 'h') goto yy270;
+ goto yy482;
} else {
- if (yych == 'o') goto yy478;
- goto yy272;
+ if (yych == 'o') goto yy476;
+ goto yy270;
}
} else {
if (yych <= 's') {
- if (yych <= 'r') goto yy481;
- goto yy480;
+ if (yych <= 'r') goto yy479;
+ goto yy478;
} else {
- if (yych != 'u') goto yy272;
+ if (yych != 'u') goto yy270;
}
}
}
}
-yy476:
- YYDEBUG(476, *YYCURSOR);
+yy474:
+ YYDEBUG(474, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy547;
- if (yych == 'n') goto yy547;
- goto yy272;
-yy477:
- YYDEBUG(477, *YYCURSOR);
+ if (yych == 'N') goto yy545;
+ if (yych == 'n') goto yy545;
+ goto yy270;
+yy475:
+ YYDEBUG(475, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy530;
- if (yych <= 'N') goto yy272;
- goto yy531;
+ if (yych == 'I') goto yy528;
+ if (yych <= 'N') goto yy270;
+ goto yy529;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy272;
- goto yy530;
+ if (yych <= 'h') goto yy270;
+ goto yy528;
} else {
- if (yych == 'o') goto yy531;
- goto yy272;
+ if (yych == 'o') goto yy529;
+ goto yy270;
}
}
+yy476:
+ YYDEBUG(476, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy520;
+ if (yych == 'b') goto yy520;
+ goto yy270;
+yy477:
+ YYDEBUG(477, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy513;
+ if (yych == 'r') goto yy513;
+ goto yy270;
yy478:
YYDEBUG(478, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy522;
- if (yych == 'b') goto yy522;
- goto yy272;
+ if (yych == 'T') goto yy505;
+ if (yych == 't') goto yy505;
+ goto yy270;
yy479:
YYDEBUG(479, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy515;
- if (yych == 'r') goto yy515;
- goto yy272;
+ if (yych == 'E') goto yy503;
+ if (yych == 'e') goto yy503;
+ goto yy270;
yy480:
YYDEBUG(480, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy507;
- if (yych == 't') goto yy507;
- goto yy272;
+ if (yych == 'O') goto yy499;
+ if (yych == 'o') goto yy499;
+ goto yy270;
yy481:
YYDEBUG(481, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy505;
- if (yych == 'e') goto yy505;
- goto yy272;
+ if (yych == 'L') goto yy492;
+ if (yych == 'l') goto yy492;
+ goto yy270;
yy482:
YYDEBUG(482, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy501;
- if (yych == 'o') goto yy501;
- goto yy272;
+ if (yych == 'N') goto yy483;
+ if (yych != 'n') goto yy270;
yy483:
YYDEBUG(483, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy494;
- if (yych == 'l') goto yy494;
- goto yy272;
+ if (yych == 'T') goto yy484;
+ if (yych != 't') goto yy270;
yy484:
YYDEBUG(484, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy485;
- if (yych != 'n') goto yy272;
+ if (yych == 'E') goto yy485;
+ if (yych != 'e') goto yy487;
yy485:
YYDEBUG(485, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy486;
- if (yych != 't') goto yy272;
+ if (yych == 'G') goto yy490;
+ if (yych == 'g') goto yy490;
+ goto yy270;
yy486:
YYDEBUG(486, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy487;
- if (yych != 'e') goto yy489;
-yy487:
- YYDEBUG(487, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'G') goto yy492;
- if (yych == 'g') goto yy492;
- goto yy272;
-yy488:
- YYDEBUG(488, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy489:
- YYDEBUG(489, *YYCURSOR);
+yy487:
+ YYDEBUG(487, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy488;
- goto yy272;
+ if (yych == '\t') goto yy486;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy488;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy486;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(490, *YYCURSOR);
+ YYDEBUG(488, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(491, *YYCURSOR);
+ YYDEBUG(489, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1132 "Zend/zend_language_scanner.l"
+#line 1128 "Zend/zend_language_scanner.l"
{
return T_INT_CAST;
}
-#line 5573 "Zend/zend_language_scanner.c"
+#line 5563 "Zend/zend_language_scanner.c"
+yy490:
+ YYDEBUG(490, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy491;
+ if (yych != 'e') goto yy270;
+yy491:
+ YYDEBUG(491, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy486;
+ if (yych == 'r') goto yy486;
+ goto yy270;
yy492:
YYDEBUG(492, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy493;
- if (yych != 'e') goto yy272;
+ if (yych == 'O') goto yy493;
+ if (yych != 'o') goto yy270;
yy493:
YYDEBUG(493, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy488;
- if (yych == 'r') goto yy488;
- goto yy272;
+ if (yych == 'A') goto yy494;
+ if (yych != 'a') goto yy270;
yy494:
YYDEBUG(494, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy495;
- if (yych != 'o') goto yy272;
+ if (yych == 'T') goto yy495;
+ if (yych != 't') goto yy270;
yy495:
YYDEBUG(495, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy496;
- if (yych != 'a') goto yy272;
-yy496:
- YYDEBUG(496, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy497;
- if (yych != 't') goto yy272;
-yy497:
- YYDEBUG(497, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(498, *YYCURSOR);
+ YYDEBUG(496, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy497;
- goto yy272;
+ if (yych == '\t') goto yy495;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy497;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy495;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(499, *YYCURSOR);
+ YYDEBUG(497, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(500, *YYCURSOR);
+ YYDEBUG(498, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1136 "Zend/zend_language_scanner.l"
+#line 1132 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_CAST;
}
-#line 5621 "Zend/zend_language_scanner.c"
+#line 5611 "Zend/zend_language_scanner.c"
+yy499:
+ YYDEBUG(499, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy500;
+ if (yych != 'u') goto yy270;
+yy500:
+ YYDEBUG(500, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy501;
+ if (yych != 'b') goto yy270;
yy501:
YYDEBUG(501, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy502;
- if (yych != 'u') goto yy272;
+ if (yych == 'L') goto yy502;
+ if (yych != 'l') goto yy270;
yy502:
YYDEBUG(502, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy503;
- if (yych != 'b') goto yy272;
+ if (yych == 'E') goto yy495;
+ if (yych == 'e') goto yy495;
+ goto yy270;
yy503:
YYDEBUG(503, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy504;
- if (yych != 'l') goto yy272;
+ if (yych == 'A') goto yy504;
+ if (yych != 'a') goto yy270;
yy504:
YYDEBUG(504, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy497;
- if (yych == 'e') goto yy497;
- goto yy272;
+ if (yych == 'L') goto yy495;
+ if (yych == 'l') goto yy495;
+ goto yy270;
yy505:
YYDEBUG(505, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy506;
- if (yych != 'a') goto yy272;
+ if (yych == 'R') goto yy506;
+ if (yych != 'r') goto yy270;
yy506:
YYDEBUG(506, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy497;
- if (yych == 'l') goto yy497;
- goto yy272;
+ if (yych == 'I') goto yy507;
+ if (yych != 'i') goto yy270;
yy507:
YYDEBUG(507, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy508;
- if (yych != 'r') goto yy272;
+ if (yych == 'N') goto yy508;
+ if (yych != 'n') goto yy270;
yy508:
YYDEBUG(508, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy509;
- if (yych != 'i') goto yy272;
+ if (yych == 'G') goto yy509;
+ if (yych != 'g') goto yy270;
yy509:
YYDEBUG(509, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'N') goto yy510;
- if (yych != 'n') goto yy272;
-yy510:
- YYDEBUG(510, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'G') goto yy511;
- if (yych != 'g') goto yy272;
-yy511:
- YYDEBUG(511, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(512, *YYCURSOR);
+ YYDEBUG(510, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy511;
- goto yy272;
+ if (yych == '\t') goto yy509;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy511;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy509;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(513, *YYCURSOR);
+ YYDEBUG(511, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(514, *YYCURSOR);
+ YYDEBUG(512, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1140 "Zend/zend_language_scanner.l"
+#line 1136 "Zend/zend_language_scanner.l"
{
return T_STRING_CAST;
}
-#line 5695 "Zend/zend_language_scanner.c"
+#line 5685 "Zend/zend_language_scanner.c"
+yy513:
+ YYDEBUG(513, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy514;
+ if (yych != 'r') goto yy270;
+yy514:
+ YYDEBUG(514, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy515;
+ if (yych != 'a') goto yy270;
yy515:
YYDEBUG(515, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy516;
- if (yych != 'r') goto yy272;
+ if (yych == 'Y') goto yy516;
+ if (yych != 'y') goto yy270;
yy516:
YYDEBUG(516, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy517;
- if (yych != 'a') goto yy272;
-yy517:
- YYDEBUG(517, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy518;
- if (yych != 'y') goto yy272;
-yy518:
- YYDEBUG(518, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(519, *YYCURSOR);
+ YYDEBUG(517, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy518;
- goto yy272;
+ if (yych == '\t') goto yy516;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy518;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy516;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(520, *YYCURSOR);
+ YYDEBUG(518, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(521, *YYCURSOR);
+ YYDEBUG(519, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1148 "Zend/zend_language_scanner.l"
+#line 1144 "Zend/zend_language_scanner.l"
{
return T_ARRAY_CAST;
}
-#line 5732 "Zend/zend_language_scanner.c"
+#line 5722 "Zend/zend_language_scanner.c"
+yy520:
+ YYDEBUG(520, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'J') goto yy521;
+ if (yych != 'j') goto yy270;
+yy521:
+ YYDEBUG(521, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy522;
+ if (yych != 'e') goto yy270;
yy522:
YYDEBUG(522, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'J') goto yy523;
- if (yych != 'j') goto yy272;
+ if (yych == 'C') goto yy523;
+ if (yych != 'c') goto yy270;
yy523:
YYDEBUG(523, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy524;
- if (yych != 'e') goto yy272;
+ if (yych == 'T') goto yy524;
+ if (yych != 't') goto yy270;
yy524:
YYDEBUG(524, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy525;
- if (yych != 'c') goto yy272;
-yy525:
- YYDEBUG(525, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy526;
- if (yych != 't') goto yy272;
-yy526:
- YYDEBUG(526, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(527, *YYCURSOR);
+ YYDEBUG(525, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy526;
- goto yy272;
+ if (yych == '\t') goto yy524;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy526;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy524;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(528, *YYCURSOR);
+ YYDEBUG(526, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(529, *YYCURSOR);
+ YYDEBUG(527, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1152 "Zend/zend_language_scanner.l"
+#line 1148 "Zend/zend_language_scanner.l"
{
return T_OBJECT_CAST;
}
-#line 5774 "Zend/zend_language_scanner.c"
+#line 5764 "Zend/zend_language_scanner.c"
+yy528:
+ YYDEBUG(528, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy538;
+ if (yych == 'n') goto yy538;
+ goto yy270;
+yy529:
+ YYDEBUG(529, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy530;
+ if (yych != 'o') goto yy270;
yy530:
YYDEBUG(530, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy540;
- if (yych == 'n') goto yy540;
- goto yy272;
+ if (yych == 'L') goto yy531;
+ if (yych != 'l') goto yy270;
yy531:
YYDEBUG(531, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy532;
- if (yych != 'o') goto yy272;
+ if (yych == 'E') goto yy536;
+ if (yych == 'e') goto yy536;
+ goto yy533;
yy532:
YYDEBUG(532, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy533;
- if (yych != 'l') goto yy272;
-yy533:
- YYDEBUG(533, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy538;
- if (yych == 'e') goto yy538;
- goto yy535;
-yy534:
- YYDEBUG(534, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy535:
- YYDEBUG(535, *YYCURSOR);
+yy533:
+ YYDEBUG(533, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy534;
- goto yy272;
+ if (yych == '\t') goto yy532;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy534;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy532;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(536, *YYCURSOR);
+ YYDEBUG(534, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(537, *YYCURSOR);
+ YYDEBUG(535, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1156 "Zend/zend_language_scanner.l"
+#line 1152 "Zend/zend_language_scanner.l"
{
return T_BOOL_CAST;
}
-#line 5819 "Zend/zend_language_scanner.c"
+#line 5809 "Zend/zend_language_scanner.c"
+yy536:
+ YYDEBUG(536, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy537;
+ if (yych != 'a') goto yy270;
+yy537:
+ YYDEBUG(537, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy532;
+ if (yych == 'n') goto yy532;
+ goto yy270;
yy538:
YYDEBUG(538, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == 'A') goto yy539;
- if (yych != 'a') goto yy272;
+ if (yych != 'a') goto yy270;
yy539:
YYDEBUG(539, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy534;
- if (yych == 'n') goto yy534;
- goto yy272;
+ if (yych == 'R') goto yy540;
+ if (yych != 'r') goto yy270;
yy540:
YYDEBUG(540, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy541;
- if (yych != 'a') goto yy272;
+ if (yych == 'Y') goto yy541;
+ if (yych != 'y') goto yy270;
yy541:
YYDEBUG(541, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy542;
- if (yych != 'r') goto yy272;
-yy542:
- YYDEBUG(542, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy543;
- if (yych != 'y') goto yy272;
-yy543:
- YYDEBUG(543, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(544, *YYCURSOR);
+ YYDEBUG(542, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy543;
- goto yy272;
+ if (yych == '\t') goto yy541;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy543;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy541;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(545, *YYCURSOR);
+ YYDEBUG(543, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(546, *YYCURSOR);
+ YYDEBUG(544, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1144 "Zend/zend_language_scanner.l"
+#line 1140 "Zend/zend_language_scanner.l"
{
return T_STRING_CAST;
}
-#line 5867 "Zend/zend_language_scanner.c"
+#line 5857 "Zend/zend_language_scanner.c"
+yy545:
+ YYDEBUG(545, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy546;
+ if (yych != 's') goto yy270;
+yy546:
+ YYDEBUG(546, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy547;
+ if (yych != 'e') goto yy270;
yy547:
YYDEBUG(547, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy548;
- if (yych != 's') goto yy272;
+ if (yych == 'T') goto yy548;
+ if (yych != 't') goto yy270;
yy548:
YYDEBUG(548, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy549;
- if (yych != 'e') goto yy272;
-yy549:
- YYDEBUG(549, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy550;
- if (yych != 't') goto yy272;
-yy550:
- YYDEBUG(550, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(551, *YYCURSOR);
+ YYDEBUG(549, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy550;
- goto yy272;
+ if (yych == '\t') goto yy548;
+ goto yy270;
} else {
- if (yych <= ' ') goto yy550;
- if (yych != ')') goto yy272;
+ if (yych <= ' ') goto yy548;
+ if (yych != ')') goto yy270;
}
- YYDEBUG(552, *YYCURSOR);
+ YYDEBUG(550, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(553, *YYCURSOR);
+ YYDEBUG(551, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1160 "Zend/zend_language_scanner.l"
+#line 1156 "Zend/zend_language_scanner.l"
{
return T_UNSET_CAST;
}
-#line 5904 "Zend/zend_language_scanner.c"
-yy554:
- YYDEBUG(554, *YYCURSOR);
+#line 5894 "Zend/zend_language_scanner.c"
+yy552:
+ YYDEBUG(552, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy555;
- if (yych != 'r') goto yy282;
-yy555:
- YYDEBUG(555, *YYCURSOR);
+ if (yych == 'R') goto yy553;
+ if (yych != 'r') goto yy280;
+yy553:
+ YYDEBUG(553, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(556, *YYCURSOR);
+ YYDEBUG(554, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1128 "Zend/zend_language_scanner.l"
+#line 1124 "Zend/zend_language_scanner.l"
{
return T_VAR;
}
-#line 5922 "Zend/zend_language_scanner.c"
-yy557:
- YYDEBUG(557, *YYCURSOR);
+#line 5912 "Zend/zend_language_scanner.c"
+yy555:
+ YYDEBUG(555, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy561;
- if (yych == 'm') goto yy561;
- goto yy282;
-yy558:
- YYDEBUG(558, *YYCURSOR);
+ if (yych == 'M') goto yy559;
+ if (yych == 'm') goto yy559;
+ goto yy280;
+yy556:
+ YYDEBUG(556, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy559;
- if (yych != 'w') goto yy282;
-yy559:
- YYDEBUG(559, *YYCURSOR);
+ if (yych == 'W') goto yy557;
+ if (yych != 'w') goto yy280;
+yy557:
+ YYDEBUG(557, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(560, *YYCURSOR);
+ YYDEBUG(558, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1120 "Zend/zend_language_scanner.l"
+#line 1116 "Zend/zend_language_scanner.l"
{
return T_NEW;
}
-#line 5946 "Zend/zend_language_scanner.c"
+#line 5936 "Zend/zend_language_scanner.c"
+yy559:
+ YYDEBUG(559, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy560;
+ if (yych != 'e') goto yy280;
+yy560:
+ YYDEBUG(560, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy561;
+ if (yych != 's') goto yy280;
yy561:
YYDEBUG(561, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy562;
- if (yych != 'e') goto yy282;
+ if (yych == 'P') goto yy562;
+ if (yych != 'p') goto yy280;
yy562:
YYDEBUG(562, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy563;
- if (yych != 's') goto yy282;
+ if (yych == 'A') goto yy563;
+ if (yych != 'a') goto yy280;
yy563:
YYDEBUG(563, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy564;
- if (yych != 'p') goto yy282;
+ if (yych == 'C') goto yy564;
+ if (yych != 'c') goto yy280;
yy564:
YYDEBUG(564, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy565;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy565;
+ if (yych != 'e') goto yy280;
yy565:
YYDEBUG(565, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy566;
- if (yych != 'c') goto yy282;
-yy566:
- YYDEBUG(566, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy567;
- if (yych != 'e') goto yy282;
-yy567:
- YYDEBUG(567, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(568, *YYCURSOR);
+ YYDEBUG(566, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1184 "Zend/zend_language_scanner.l"
+#line 1180 "Zend/zend_language_scanner.l"
{
return T_NAMESPACE;
}
-#line 5989 "Zend/zend_language_scanner.c"
-yy569:
- YYDEBUG(569, *YYCURSOR);
+#line 5979 "Zend/zend_language_scanner.c"
+yy567:
+ YYDEBUG(567, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(570, *YYCURSOR);
+ YYDEBUG(568, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1112 "Zend/zend_language_scanner.l"
{
return T_PAAMAYIM_NEKUDOTAYIM;
}
-#line 5999 "Zend/zend_language_scanner.c"
-yy571:
- YYDEBUG(571, *YYCURSOR);
+#line 5989 "Zend/zend_language_scanner.c"
+yy569:
+ YYDEBUG(569, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy572:
- YYDEBUG(572, *YYCURSOR);
+yy570:
+ YYDEBUG(570, *YYCURSOR);
if (yych <= '\f') {
if (yych <= 0x08) goto yy221;
- if (yych <= '\n') goto yy571;
+ if (yych <= '\n') goto yy569;
goto yy221;
} else {
- if (yych <= '\r') goto yy571;
- if (yych == ' ') goto yy571;
+ if (yych <= '\r') goto yy569;
+ if (yych == ' ') goto yy569;
goto yy221;
}
+yy571:
+ YYDEBUG(571, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(572, *YYCURSOR);
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1280 "Zend/zend_language_scanner.l"
+ {
+ return T_MINUS_EQUAL;
+}
+#line 6015 "Zend/zend_language_scanner.c"
yy573:
YYDEBUG(573, *YYCURSOR);
++YYCURSOR;
YYDEBUG(574, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1284 "Zend/zend_language_scanner.l"
+#line 1248 "Zend/zend_language_scanner.l"
{
- return T_MINUS_EQUAL;
+ return T_DEC;
}
#line 6025 "Zend/zend_language_scanner.c"
yy575:
@@ -6027,1796 +6027,1786 @@ yy575:
++YYCURSOR;
YYDEBUG(576, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1252 "Zend/zend_language_scanner.l"
- {
- return T_DEC;
-}
-#line 6035 "Zend/zend_language_scanner.c"
-yy577:
- YYDEBUG(577, *YYCURSOR);
- ++YYCURSOR;
- YYDEBUG(578, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
#line 1082 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
return T_OBJECT_OPERATOR;
}
-#line 6046 "Zend/zend_language_scanner.c"
-yy579:
- YYDEBUG(579, *YYCURSOR);
+#line 6036 "Zend/zend_language_scanner.c"
+yy577:
+ YYDEBUG(577, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy586;
- if (yych <= 'N') goto yy282;
- goto yy587;
+ if (yych == 'I') goto yy584;
+ if (yych <= 'N') goto yy280;
+ goto yy585;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy282;
- goto yy586;
+ if (yych <= 'h') goto yy280;
+ goto yy584;
} else {
- if (yych == 'o') goto yy587;
- goto yy282;
+ if (yych == 'o') goto yy585;
+ goto yy280;
}
}
+yy578:
+ YYDEBUG(578, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy579;
+ if (yych != 'b') goto yy280;
+yy579:
+ YYDEBUG(579, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy580;
+ if (yych != 'l') goto yy280;
yy580:
YYDEBUG(580, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy581;
- if (yych != 'b') goto yy282;
+ if (yych == 'I') goto yy581;
+ if (yych != 'i') goto yy280;
yy581:
YYDEBUG(581, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy582;
- if (yych != 'l') goto yy282;
+ if (yych == 'C') goto yy582;
+ if (yych != 'c') goto yy280;
yy582:
YYDEBUG(582, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'I') goto yy583;
- if (yych != 'i') goto yy282;
-yy583:
- YYDEBUG(583, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy584;
- if (yych != 'c') goto yy282;
-yy584:
- YYDEBUG(584, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(585, *YYCURSOR);
+ YYDEBUG(583, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1228 "Zend/zend_language_scanner.l"
+#line 1224 "Zend/zend_language_scanner.l"
{
return T_PUBLIC;
}
-#line 6095 "Zend/zend_language_scanner.c"
-yy586:
- YYDEBUG(586, *YYCURSOR);
+#line 6085 "Zend/zend_language_scanner.c"
+yy584:
+ YYDEBUG(584, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'V') {
- if (yych == 'N') goto yy595;
- if (yych <= 'U') goto yy282;
- goto yy596;
+ if (yych == 'N') goto yy593;
+ if (yych <= 'U') goto yy280;
+ goto yy594;
} else {
if (yych <= 'n') {
- if (yych <= 'm') goto yy282;
- goto yy595;
+ if (yych <= 'm') goto yy280;
+ goto yy593;
} else {
- if (yych == 'v') goto yy596;
- goto yy282;
+ if (yych == 'v') goto yy594;
+ goto yy280;
}
}
+yy585:
+ YYDEBUG(585, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy586;
+ if (yych != 't') goto yy280;
+yy586:
+ YYDEBUG(586, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy587;
+ if (yych != 'e') goto yy280;
yy587:
YYDEBUG(587, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy588;
- if (yych != 't') goto yy282;
+ if (yych == 'C') goto yy588;
+ if (yych != 'c') goto yy280;
yy588:
YYDEBUG(588, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy589;
- if (yych != 'e') goto yy282;
+ if (yych == 'T') goto yy589;
+ if (yych != 't') goto yy280;
yy589:
YYDEBUG(589, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy590;
- if (yych != 'c') goto yy282;
+ if (yych == 'E') goto yy590;
+ if (yych != 'e') goto yy280;
yy590:
YYDEBUG(590, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy591;
- if (yych != 't') goto yy282;
+ if (yych == 'D') goto yy591;
+ if (yych != 'd') goto yy280;
yy591:
YYDEBUG(591, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy592;
- if (yych != 'e') goto yy282;
-yy592:
- YYDEBUG(592, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy593;
- if (yych != 'd') goto yy282;
-yy593:
- YYDEBUG(593, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(594, *YYCURSOR);
+ YYDEBUG(592, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1224 "Zend/zend_language_scanner.l"
+#line 1220 "Zend/zend_language_scanner.l"
{
return T_PROTECTED;
}
-#line 6154 "Zend/zend_language_scanner.c"
+#line 6144 "Zend/zend_language_scanner.c"
+yy593:
+ YYDEBUG(593, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy599;
+ if (yych == 't') goto yy599;
+ goto yy280;
+yy594:
+ YYDEBUG(594, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy595;
+ if (yych != 'a') goto yy280;
yy595:
YYDEBUG(595, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy601;
- if (yych == 't') goto yy601;
- goto yy282;
+ if (yych == 'T') goto yy596;
+ if (yych != 't') goto yy280;
yy596:
YYDEBUG(596, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy597;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy597;
+ if (yych != 'e') goto yy280;
yy597:
YYDEBUG(597, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy598;
- if (yych != 't') goto yy282;
-yy598:
- YYDEBUG(598, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy599;
- if (yych != 'e') goto yy282;
-yy599:
- YYDEBUG(599, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(600, *YYCURSOR);
+ YYDEBUG(598, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1220 "Zend/zend_language_scanner.l"
+#line 1216 "Zend/zend_language_scanner.l"
{
return T_PRIVATE;
}
-#line 6188 "Zend/zend_language_scanner.c"
-yy601:
- YYDEBUG(601, *YYCURSOR);
+#line 6178 "Zend/zend_language_scanner.c"
+yy599:
+ YYDEBUG(599, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(602, *YYCURSOR);
+ YYDEBUG(600, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1062 "Zend/zend_language_scanner.l"
{
return T_PRINT;
}
-#line 6201 "Zend/zend_language_scanner.c"
+#line 6191 "Zend/zend_language_scanner.c"
+yy601:
+ YYDEBUG(601, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy606;
+ if (yych == 'o') goto yy606;
+ goto yy280;
+yy602:
+ YYDEBUG(602, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy603;
+ if (yych != 't') goto yy280;
yy603:
YYDEBUG(603, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy608;
- if (yych == 'o') goto yy608;
- goto yy282;
+ if (yych == 'O') goto yy604;
+ if (yych != 'o') goto yy280;
yy604:
YYDEBUG(604, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy605;
- if (yych != 't') goto yy282;
-yy605:
- YYDEBUG(605, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy606;
- if (yych != 'o') goto yy282;
-yy606:
- YYDEBUG(606, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(607, *YYCURSOR);
+ YYDEBUG(605, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1054 "Zend/zend_language_scanner.l"
{
return T_GOTO;
}
-#line 6230 "Zend/zend_language_scanner.c"
+#line 6220 "Zend/zend_language_scanner.c"
+yy606:
+ YYDEBUG(606, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy607;
+ if (yych != 'b') goto yy280;
+yy607:
+ YYDEBUG(607, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy608;
+ if (yych != 'a') goto yy280;
yy608:
YYDEBUG(608, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy609;
- if (yych != 'b') goto yy282;
+ if (yych == 'L') goto yy609;
+ if (yych != 'l') goto yy280;
yy609:
YYDEBUG(609, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy610;
- if (yych != 'a') goto yy282;
-yy610:
- YYDEBUG(610, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy611;
- if (yych != 'l') goto yy282;
-yy611:
- YYDEBUG(611, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(612, *YYCURSOR);
+ YYDEBUG(610, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1192 "Zend/zend_language_scanner.l"
+#line 1188 "Zend/zend_language_scanner.l"
{
return T_GLOBAL;
}
-#line 6258 "Zend/zend_language_scanner.c"
+#line 6248 "Zend/zend_language_scanner.c"
+yy611:
+ YYDEBUG(611, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy618;
+ goto yy270;
+yy612:
+ YYDEBUG(612, *YYCURSOR);
+ yyaccept = 3;
+ yych = *(YYMARKER = ++YYCURSOR);
+ goto yy272;
yy613:
YYDEBUG(613, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy620;
- goto yy272;
+ if (yych == 'E') goto yy614;
+ if (yych != 'e') goto yy280;
yy614:
YYDEBUG(614, *YYCURSOR);
- yyaccept = 3;
- yych = *(YYMARKER = ++YYCURSOR);
- goto yy274;
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy615;
+ if (yych != 'a') goto yy280;
yy615:
YYDEBUG(615, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy616;
- if (yych != 'e') goto yy282;
+ if (yych == 'K') goto yy616;
+ if (yych != 'k') goto yy280;
yy616:
YYDEBUG(616, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy617;
- if (yych != 'a') goto yy282;
-yy617:
- YYDEBUG(617, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'K') goto yy618;
- if (yych != 'k') goto yy282;
-yy618:
- YYDEBUG(618, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(619, *YYCURSOR);
+ YYDEBUG(617, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1046 "Zend/zend_language_scanner.l"
{
return T_BREAK;
}
-#line 6296 "Zend/zend_language_scanner.c"
+#line 6286 "Zend/zend_language_scanner.c"
+yy618:
+ YYDEBUG(618, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy359;
+ goto yy270;
+yy619:
+ YYDEBUG(619, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy626;
+ if (yych == 'a') goto yy626;
+ goto yy280;
yy620:
YYDEBUG(620, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy361;
- goto yy272;
+ if (yych == 'I') goto yy621;
+ if (yych != 'i') goto yy280;
yy621:
YYDEBUG(621, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy628;
- if (yych == 'a') goto yy628;
- goto yy282;
+ if (yych == 'T') goto yy622;
+ if (yych != 't') goto yy280;
yy622:
YYDEBUG(622, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy623;
- if (yych != 'i') goto yy282;
+ if (yych == 'C') goto yy623;
+ if (yych != 'c') goto yy280;
yy623:
YYDEBUG(623, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy624;
- if (yych != 't') goto yy282;
+ if (yych == 'H') goto yy624;
+ if (yych != 'h') goto yy280;
yy624:
YYDEBUG(624, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy625;
- if (yych != 'c') goto yy282;
-yy625:
- YYDEBUG(625, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy626;
- if (yych != 'h') goto yy282;
-yy626:
- YYDEBUG(626, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(627, *YYCURSOR);
+ YYDEBUG(625, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1030 "Zend/zend_language_scanner.l"
{
return T_SWITCH;
}
-#line 6340 "Zend/zend_language_scanner.c"
+#line 6330 "Zend/zend_language_scanner.c"
+yy626:
+ YYDEBUG(626, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy627;
+ if (yych != 't') goto yy280;
+yy627:
+ YYDEBUG(627, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy628;
+ if (yych != 'i') goto yy280;
yy628:
YYDEBUG(628, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy629;
- if (yych != 't') goto yy282;
+ if (yych == 'C') goto yy629;
+ if (yych != 'c') goto yy280;
yy629:
YYDEBUG(629, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'I') goto yy630;
- if (yych != 'i') goto yy282;
-yy630:
- YYDEBUG(630, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy631;
- if (yych != 'c') goto yy282;
-yy631:
- YYDEBUG(631, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(632, *YYCURSOR);
+ YYDEBUG(630, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1208 "Zend/zend_language_scanner.l"
+#line 1204 "Zend/zend_language_scanner.l"
{
return T_STATIC;
}
-#line 6368 "Zend/zend_language_scanner.c"
+#line 6358 "Zend/zend_language_scanner.c"
+yy631:
+ YYDEBUG(631, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy642;
+ if (yych == 's') goto yy642;
+ goto yy280;
+yy632:
+ YYDEBUG(632, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'D') goto yy640;
+ if (yych == 'd') goto yy640;
+ goto yy280;
yy633:
YYDEBUG(633, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy644;
- if (yych == 's') goto yy644;
- goto yy282;
+ if (yych == 'R') goto yy636;
+ if (yych == 'r') goto yy636;
+ goto yy280;
yy634:
YYDEBUG(634, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy642;
- if (yych == 'd') goto yy642;
- goto yy282;
-yy635:
- YYDEBUG(635, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy638;
- if (yych == 'r') goto yy638;
- goto yy282;
-yy636:
- YYDEBUG(636, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(637, *YYCURSOR);
+ YYDEBUG(635, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1026 "Zend/zend_language_scanner.l"
{
return T_AS;
}
-#line 6399 "Zend/zend_language_scanner.c"
-yy638:
- YYDEBUG(638, *YYCURSOR);
+#line 6389 "Zend/zend_language_scanner.c"
+yy636:
+ YYDEBUG(636, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy639;
- if (yych != 'a') goto yy282;
-yy639:
- YYDEBUG(639, *YYCURSOR);
+ if (yych == 'A') goto yy637;
+ if (yych != 'a') goto yy280;
+yy637:
+ YYDEBUG(637, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy640;
- if (yych != 'y') goto yy282;
-yy640:
- YYDEBUG(640, *YYCURSOR);
+ if (yych == 'Y') goto yy638;
+ if (yych != 'y') goto yy280;
+yy638:
+ YYDEBUG(638, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(641, *YYCURSOR);
+ YYDEBUG(639, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1244 "Zend/zend_language_scanner.l"
+#line 1240 "Zend/zend_language_scanner.l"
{
return T_ARRAY;
}
-#line 6422 "Zend/zend_language_scanner.c"
-yy642:
- YYDEBUG(642, *YYCURSOR);
+#line 6412 "Zend/zend_language_scanner.c"
+yy640:
+ YYDEBUG(640, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(643, *YYCURSOR);
+ YYDEBUG(641, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1336 "Zend/zend_language_scanner.l"
+#line 1332 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_AND;
}
-#line 6435 "Zend/zend_language_scanner.c"
+#line 6425 "Zend/zend_language_scanner.c"
+yy642:
+ YYDEBUG(642, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy643;
+ if (yych != 't') goto yy280;
+yy643:
+ YYDEBUG(643, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy644;
+ if (yych != 'r') goto yy280;
yy644:
YYDEBUG(644, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy645;
- if (yych != 't') goto yy282;
+ if (yych == 'A') goto yy645;
+ if (yych != 'a') goto yy280;
yy645:
YYDEBUG(645, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy646;
- if (yych != 'r') goto yy282;
+ if (yych == 'C') goto yy646;
+ if (yych != 'c') goto yy280;
yy646:
YYDEBUG(646, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy647;
- if (yych != 'a') goto yy282;
+ if (yych == 'T') goto yy647;
+ if (yych != 't') goto yy280;
yy647:
YYDEBUG(647, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy648;
- if (yych != 'c') goto yy282;
-yy648:
- YYDEBUG(648, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy649;
- if (yych != 't') goto yy282;
-yy649:
- YYDEBUG(649, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(650, *YYCURSOR);
+ YYDEBUG(648, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1212 "Zend/zend_language_scanner.l"
+#line 1208 "Zend/zend_language_scanner.l"
{
return T_ABSTRACT;
}
-#line 6473 "Zend/zend_language_scanner.c"
+#line 6463 "Zend/zend_language_scanner.c"
+yy649:
+ YYDEBUG(649, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy650;
+ if (yych != 'i') goto yy280;
+yy650:
+ YYDEBUG(650, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy651;
+ if (yych != 'l') goto yy280;
yy651:
YYDEBUG(651, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy652;
- if (yych != 'i') goto yy282;
+ if (yych == 'E') goto yy652;
+ if (yych != 'e') goto yy280;
yy652:
YYDEBUG(652, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy653;
- if (yych != 'l') goto yy282;
-yy653:
- YYDEBUG(653, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy654;
- if (yych != 'e') goto yy282;
-yy654:
- YYDEBUG(654, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(655, *YYCURSOR);
+ YYDEBUG(653, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 986 "Zend/zend_language_scanner.l"
{
return T_WHILE;
}
-#line 6501 "Zend/zend_language_scanner.c"
-yy656:
- YYDEBUG(656, *YYCURSOR);
+#line 6491 "Zend/zend_language_scanner.c"
+yy654:
+ YYDEBUG(654, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(657, *YYCURSOR);
+ YYDEBUG(655, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 970 "Zend/zend_language_scanner.l"
{
return T_IF;
}
-#line 6514 "Zend/zend_language_scanner.c"
-yy658:
- YYDEBUG(658, *YYCURSOR);
+#line 6504 "Zend/zend_language_scanner.c"
+yy656:
+ YYDEBUG(656, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy694;
- if (yych == 'p') goto yy694;
- goto yy282;
-yy659:
- YYDEBUG(659, *YYCURSOR);
+ if (yych == 'P') goto yy692;
+ if (yych == 'p') goto yy692;
+ goto yy280;
+yy657:
+ YYDEBUG(657, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'C') {
- if (yych <= 'B') goto yy282;
- goto yy667;
+ if (yych <= 'B') goto yy280;
+ goto yy665;
} else {
- if (yych <= 'R') goto yy282;
- if (yych <= 'S') goto yy665;
- goto yy666;
+ if (yych <= 'R') goto yy280;
+ if (yych <= 'S') goto yy663;
+ goto yy664;
}
} else {
if (yych <= 'r') {
- if (yych == 'c') goto yy667;
- goto yy282;
+ if (yych == 'c') goto yy665;
+ goto yy280;
} else {
- if (yych <= 's') goto yy665;
- if (yych <= 't') goto yy666;
- goto yy282;
+ if (yych <= 's') goto yy663;
+ if (yych <= 't') goto yy664;
+ goto yy280;
}
}
+yy658:
+ YYDEBUG(658, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy659;
+ if (yych != 's') goto yy280;
+yy659:
+ YYDEBUG(659, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy660;
+ if (yych != 'e') goto yy280;
yy660:
YYDEBUG(660, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy661;
- if (yych != 's') goto yy282;
+ if (yych == 'T') goto yy661;
+ if (yych != 't') goto yy280;
yy661:
YYDEBUG(661, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy662;
- if (yych != 'e') goto yy282;
-yy662:
- YYDEBUG(662, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy663;
- if (yych != 't') goto yy282;
-yy663:
- YYDEBUG(663, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(664, *YYCURSOR);
+ YYDEBUG(662, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1196 "Zend/zend_language_scanner.l"
+#line 1192 "Zend/zend_language_scanner.l"
{
return T_ISSET;
}
-#line 6570 "Zend/zend_language_scanner.c"
+#line 6560 "Zend/zend_language_scanner.c"
+yy663:
+ YYDEBUG(663, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy684;
+ if (yych == 't') goto yy684;
+ goto yy280;
+yy664:
+ YYDEBUG(664, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy677;
+ if (yych == 'e') goto yy677;
+ goto yy280;
yy665:
YYDEBUG(665, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy686;
- if (yych == 't') goto yy686;
- goto yy282;
+ if (yych == 'L') goto yy666;
+ if (yych != 'l') goto yy280;
yy666:
YYDEBUG(666, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy679;
- if (yych == 'e') goto yy679;
- goto yy282;
+ if (yych == 'U') goto yy667;
+ if (yych != 'u') goto yy280;
yy667:
YYDEBUG(667, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy668;
- if (yych != 'l') goto yy282;
+ if (yych == 'D') goto yy668;
+ if (yych != 'd') goto yy280;
yy668:
YYDEBUG(668, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy669;
- if (yych != 'u') goto yy282;
+ if (yych == 'E') goto yy669;
+ if (yych != 'e') goto yy280;
yy669:
YYDEBUG(669, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy670;
- if (yych != 'd') goto yy282;
-yy670:
- YYDEBUG(670, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy671;
- if (yych != 'e') goto yy282;
-yy671:
- YYDEBUG(671, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy281;
+ if (yych >= '0') goto yy279;
} else {
- if (yych <= '@') goto yy672;
- if (yych <= 'Z') goto yy281;
+ if (yych <= '@') goto yy670;
+ if (yych <= 'Z') goto yy279;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy673;
+ if (yych <= '_') goto yy671;
} else {
- if (yych <= 'z') goto yy281;
- if (yych >= 0x7F) goto yy281;
+ if (yych <= 'z') goto yy279;
+ if (yych >= 0x7F) goto yy279;
}
}
-yy672:
- YYDEBUG(672, *YYCURSOR);
+yy670:
+ YYDEBUG(670, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1168 "Zend/zend_language_scanner.l"
+#line 1164 "Zend/zend_language_scanner.l"
{
return T_INCLUDE;
}
-#line 6628 "Zend/zend_language_scanner.c"
+#line 6618 "Zend/zend_language_scanner.c"
+yy671:
+ YYDEBUG(671, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy672;
+ if (yych != 'o') goto yy280;
+yy672:
+ YYDEBUG(672, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy673;
+ if (yych != 'n') goto yy280;
yy673:
YYDEBUG(673, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy674;
- if (yych != 'o') goto yy282;
+ if (yych == 'C') goto yy674;
+ if (yych != 'c') goto yy280;
yy674:
YYDEBUG(674, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy675;
- if (yych != 'n') goto yy282;
+ if (yych == 'E') goto yy675;
+ if (yych != 'e') goto yy280;
yy675:
YYDEBUG(675, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy676;
- if (yych != 'c') goto yy282;
-yy676:
- YYDEBUG(676, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy677;
- if (yych != 'e') goto yy282;
-yy677:
- YYDEBUG(677, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(678, *YYCURSOR);
+ YYDEBUG(676, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1172 "Zend/zend_language_scanner.l"
+#line 1168 "Zend/zend_language_scanner.l"
{
return T_INCLUDE_ONCE;
}
-#line 6661 "Zend/zend_language_scanner.c"
+#line 6651 "Zend/zend_language_scanner.c"
+yy677:
+ YYDEBUG(677, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy678;
+ if (yych != 'r') goto yy280;
+yy678:
+ YYDEBUG(678, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy679;
+ if (yych != 'f') goto yy280;
yy679:
YYDEBUG(679, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy680;
- if (yych != 'r') goto yy282;
+ if (yych == 'A') goto yy680;
+ if (yych != 'a') goto yy280;
yy680:
YYDEBUG(680, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy681;
- if (yych != 'f') goto yy282;
+ if (yych == 'C') goto yy681;
+ if (yych != 'c') goto yy280;
yy681:
YYDEBUG(681, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy682;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy682;
+ if (yych != 'e') goto yy280;
yy682:
YYDEBUG(682, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy683;
- if (yych != 'c') goto yy282;
-yy683:
- YYDEBUG(683, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy684;
- if (yych != 'e') goto yy282;
-yy684:
- YYDEBUG(684, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(685, *YYCURSOR);
+ YYDEBUG(683, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1070 "Zend/zend_language_scanner.l"
{
return T_INTERFACE;
}
-#line 6699 "Zend/zend_language_scanner.c"
+#line 6689 "Zend/zend_language_scanner.c"
+yy684:
+ YYDEBUG(684, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy685;
+ if (yych != 'a') goto yy280;
+yy685:
+ YYDEBUG(685, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy686;
+ if (yych != 'n') goto yy280;
yy686:
YYDEBUG(686, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy687;
- if (yych != 'a') goto yy282;
+ if (yych == 'C') goto yy687;
+ if (yych != 'c') goto yy280;
yy687:
YYDEBUG(687, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy688;
- if (yych != 'n') goto yy282;
+ if (yych == 'E') goto yy688;
+ if (yych != 'e') goto yy280;
yy688:
YYDEBUG(688, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy689;
- if (yych != 'c') goto yy282;
+ if (yych == 'O') goto yy689;
+ if (yych != 'o') goto yy280;
yy689:
YYDEBUG(689, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy690;
- if (yych != 'e') goto yy282;
+ if (yych == 'F') goto yy690;
+ if (yych != 'f') goto yy280;
yy690:
YYDEBUG(690, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy691;
- if (yych != 'o') goto yy282;
-yy691:
- YYDEBUG(691, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy692;
- if (yych != 'f') goto yy282;
-yy692:
- YYDEBUG(692, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(693, *YYCURSOR);
+ YYDEBUG(691, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1022 "Zend/zend_language_scanner.l"
{
return T_INSTANCEOF;
}
-#line 6742 "Zend/zend_language_scanner.c"
+#line 6732 "Zend/zend_language_scanner.c"
+yy692:
+ YYDEBUG(692, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy693;
+ if (yych != 'l') goto yy280;
+yy693:
+ YYDEBUG(693, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy694;
+ if (yych != 'e') goto yy280;
yy694:
YYDEBUG(694, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy695;
- if (yych != 'l') goto yy282;
+ if (yych == 'M') goto yy695;
+ if (yych != 'm') goto yy280;
yy695:
YYDEBUG(695, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == 'E') goto yy696;
- if (yych != 'e') goto yy282;
+ if (yych != 'e') goto yy280;
yy696:
YYDEBUG(696, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy697;
- if (yych != 'm') goto yy282;
+ if (yych == 'N') goto yy697;
+ if (yych != 'n') goto yy280;
yy697:
YYDEBUG(697, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy698;
- if (yych != 'e') goto yy282;
+ if (yych == 'T') goto yy698;
+ if (yych != 't') goto yy280;
yy698:
YYDEBUG(698, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy699;
- if (yych != 'n') goto yy282;
+ if (yych == 'S') goto yy699;
+ if (yych != 's') goto yy280;
yy699:
YYDEBUG(699, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy700;
- if (yych != 't') goto yy282;
-yy700:
- YYDEBUG(700, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy701;
- if (yych != 's') goto yy282;
-yy701:
- YYDEBUG(701, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(702, *YYCURSOR);
+ YYDEBUG(700, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1078 "Zend/zend_language_scanner.l"
{
return T_IMPLEMENTS;
}
-#line 6790 "Zend/zend_language_scanner.c"
-yy703:
- YYDEBUG(703, *YYCURSOR);
+#line 6780 "Zend/zend_language_scanner.c"
+yy701:
+ YYDEBUG(701, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy707;
- if (yych == 'r') goto yy707;
- goto yy282;
-yy704:
- YYDEBUG(704, *YYCURSOR);
+ if (yych == 'R') goto yy705;
+ if (yych == 'r') goto yy705;
+ goto yy280;
+yy702:
+ YYDEBUG(702, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy705;
- if (yych != 'y') goto yy282;
-yy705:
- YYDEBUG(705, *YYCURSOR);
+ if (yych == 'Y') goto yy703;
+ if (yych != 'y') goto yy280;
+yy703:
+ YYDEBUG(703, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(706, *YYCURSOR);
+ YYDEBUG(704, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 958 "Zend/zend_language_scanner.l"
{
return T_TRY;
}
-#line 6814 "Zend/zend_language_scanner.c"
-yy707:
- YYDEBUG(707, *YYCURSOR);
+#line 6804 "Zend/zend_language_scanner.c"
+yy705:
+ YYDEBUG(705, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy708;
- if (yych != 'o') goto yy282;
-yy708:
- YYDEBUG(708, *YYCURSOR);
+ if (yych == 'O') goto yy706;
+ if (yych != 'o') goto yy280;
+yy706:
+ YYDEBUG(706, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy709;
- if (yych != 'w') goto yy282;
-yy709:
- YYDEBUG(709, *YYCURSOR);
+ if (yych == 'W') goto yy707;
+ if (yych != 'w') goto yy280;
+yy707:
+ YYDEBUG(707, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(710, *YYCURSOR);
+ YYDEBUG(708, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 966 "Zend/zend_language_scanner.l"
{
return T_THROW;
}
-#line 6837 "Zend/zend_language_scanner.c"
-yy711:
- YYDEBUG(711, *YYCURSOR);
+#line 6827 "Zend/zend_language_scanner.c"
+yy709:
+ YYDEBUG(709, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'Q') goto yy713;
- if (yych <= 'S') goto yy282;
+ if (yych == 'Q') goto yy711;
+ if (yych <= 'S') goto yy280;
} else {
if (yych <= 'q') {
- if (yych <= 'p') goto yy282;
- goto yy713;
+ if (yych <= 'p') goto yy280;
+ goto yy711;
} else {
- if (yych != 't') goto yy282;
+ if (yych != 't') goto yy280;
}
}
+ YYDEBUG(710, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy723;
+ if (yych == 'u') goto yy723;
+ goto yy280;
+yy711:
+ YYDEBUG(711, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy712;
+ if (yych != 'u') goto yy280;
+yy712:
YYDEBUG(712, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy725;
- if (yych == 'u') goto yy725;
- goto yy282;
+ if (yych == 'I') goto yy713;
+ if (yych != 'i') goto yy280;
yy713:
YYDEBUG(713, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy714;
- if (yych != 'u') goto yy282;
+ if (yych == 'R') goto yy714;
+ if (yych != 'r') goto yy280;
yy714:
YYDEBUG(714, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy715;
- if (yych != 'i') goto yy282;
+ if (yych == 'E') goto yy715;
+ if (yych != 'e') goto yy280;
yy715:
YYDEBUG(715, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy716;
- if (yych != 'r') goto yy282;
-yy716:
- YYDEBUG(716, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy717;
- if (yych != 'e') goto yy282;
-yy717:
- YYDEBUG(717, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy281;
+ if (yych >= '0') goto yy279;
} else {
- if (yych <= '@') goto yy718;
- if (yych <= 'Z') goto yy281;
+ if (yych <= '@') goto yy716;
+ if (yych <= 'Z') goto yy279;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy719;
+ if (yych <= '_') goto yy717;
} else {
- if (yych <= 'z') goto yy281;
- if (yych >= 0x7F) goto yy281;
+ if (yych <= 'z') goto yy279;
+ if (yych >= 0x7F) goto yy279;
}
}
-yy718:
- YYDEBUG(718, *YYCURSOR);
+yy716:
+ YYDEBUG(716, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1176 "Zend/zend_language_scanner.l"
+#line 1172 "Zend/zend_language_scanner.l"
{
return T_REQUIRE;
}
-#line 6902 "Zend/zend_language_scanner.c"
+#line 6892 "Zend/zend_language_scanner.c"
+yy717:
+ YYDEBUG(717, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy718;
+ if (yych != 'o') goto yy280;
+yy718:
+ YYDEBUG(718, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy719;
+ if (yych != 'n') goto yy280;
yy719:
YYDEBUG(719, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy720;
- if (yych != 'o') goto yy282;
+ if (yych == 'C') goto yy720;
+ if (yych != 'c') goto yy280;
yy720:
YYDEBUG(720, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy721;
- if (yych != 'n') goto yy282;
+ if (yych == 'E') goto yy721;
+ if (yych != 'e') goto yy280;
yy721:
YYDEBUG(721, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy722;
- if (yych != 'c') goto yy282;
-yy722:
- YYDEBUG(722, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy723;
- if (yych != 'e') goto yy282;
-yy723:
- YYDEBUG(723, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(724, *YYCURSOR);
+ YYDEBUG(722, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1180 "Zend/zend_language_scanner.l"
+#line 1176 "Zend/zend_language_scanner.l"
{
return T_REQUIRE_ONCE;
}
-#line 6935 "Zend/zend_language_scanner.c"
-yy725:
- YYDEBUG(725, *YYCURSOR);
+#line 6925 "Zend/zend_language_scanner.c"
+yy723:
+ YYDEBUG(723, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy726;
- if (yych != 'r') goto yy282;
-yy726:
- YYDEBUG(726, *YYCURSOR);
+ if (yych == 'R') goto yy724;
+ if (yych != 'r') goto yy280;
+yy724:
+ YYDEBUG(724, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy727;
- if (yych != 'n') goto yy282;
-yy727:
- YYDEBUG(727, *YYCURSOR);
+ if (yych == 'N') goto yy725;
+ if (yych != 'n') goto yy280;
+yy725:
+ YYDEBUG(725, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(728, *YYCURSOR);
+ YYDEBUG(726, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 954 "Zend/zend_language_scanner.l"
{
return T_RETURN;
}
-#line 6958 "Zend/zend_language_scanner.c"
-yy729:
- YYDEBUG(729, *YYCURSOR);
+#line 6948 "Zend/zend_language_scanner.c"
+yy727:
+ YYDEBUG(727, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych <= 'R') goto yy282;
- if (yych <= 'S') goto yy751;
- goto yy750;
+ if (yych <= 'R') goto yy280;
+ if (yych <= 'S') goto yy749;
+ goto yy748;
} else {
- if (yych <= 'r') goto yy282;
- if (yych <= 's') goto yy751;
- if (yych <= 't') goto yy750;
- goto yy282;
+ if (yych <= 'r') goto yy280;
+ if (yych <= 's') goto yy749;
+ if (yych <= 't') goto yy748;
+ goto yy280;
}
-yy730:
- YYDEBUG(730, *YYCURSOR);
+yy728:
+ YYDEBUG(728, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'A') goto yy742;
- if (yych <= 'N') goto yy282;
- goto yy743;
+ if (yych == 'A') goto yy740;
+ if (yych <= 'N') goto yy280;
+ goto yy741;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy282;
- goto yy742;
+ if (yych <= '`') goto yy280;
+ goto yy740;
} else {
- if (yych == 'o') goto yy743;
- goto yy282;
+ if (yych == 'o') goto yy741;
+ goto yy280;
}
}
+yy729:
+ YYDEBUG(729, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy730;
+ if (yych != 'n') goto yy280;
+yy730:
+ YYDEBUG(730, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= 'T') {
+ if (yych <= 'R') goto yy280;
+ if (yych >= 'T') goto yy732;
+ } else {
+ if (yych <= 'r') goto yy280;
+ if (yych <= 's') goto yy731;
+ if (yych <= 't') goto yy732;
+ goto yy280;
+ }
yy731:
YYDEBUG(731, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy732;
- if (yych != 'n') goto yy282;
+ if (yych == 'T') goto yy738;
+ if (yych == 't') goto yy738;
+ goto yy280;
yy732:
YYDEBUG(732, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= 'T') {
- if (yych <= 'R') goto yy282;
- if (yych >= 'T') goto yy734;
- } else {
- if (yych <= 'r') goto yy282;
- if (yych <= 's') goto yy733;
- if (yych <= 't') goto yy734;
- goto yy282;
- }
+ if (yych == 'I') goto yy733;
+ if (yych != 'i') goto yy280;
yy733:
YYDEBUG(733, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy740;
- if (yych == 't') goto yy740;
- goto yy282;
+ if (yych == 'N') goto yy734;
+ if (yych != 'n') goto yy280;
yy734:
YYDEBUG(734, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy735;
- if (yych != 'i') goto yy282;
+ if (yych == 'U') goto yy735;
+ if (yych != 'u') goto yy280;
yy735:
YYDEBUG(735, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy736;
- if (yych != 'n') goto yy282;
+ if (yych == 'E') goto yy736;
+ if (yych != 'e') goto yy280;
yy736:
YYDEBUG(736, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'U') goto yy737;
- if (yych != 'u') goto yy282;
-yy737:
- YYDEBUG(737, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy738;
- if (yych != 'e') goto yy282;
-yy738:
- YYDEBUG(738, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(739, *YYCURSOR);
+ YYDEBUG(737, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1050 "Zend/zend_language_scanner.l"
{
return T_CONTINUE;
}
-#line 7043 "Zend/zend_language_scanner.c"
-yy740:
- YYDEBUG(740, *YYCURSOR);
+#line 7033 "Zend/zend_language_scanner.c"
+yy738:
+ YYDEBUG(738, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(741, *YYCURSOR);
+ YYDEBUG(739, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 950 "Zend/zend_language_scanner.l"
{
return T_CONST;
}
-#line 7056 "Zend/zend_language_scanner.c"
+#line 7046 "Zend/zend_language_scanner.c"
+yy740:
+ YYDEBUG(740, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy745;
+ if (yych == 's') goto yy745;
+ goto yy280;
+yy741:
+ YYDEBUG(741, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy742;
+ if (yych != 'n') goto yy280;
yy742:
YYDEBUG(742, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy747;
- if (yych == 's') goto yy747;
- goto yy282;
+ if (yych == 'E') goto yy743;
+ if (yych != 'e') goto yy280;
yy743:
YYDEBUG(743, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'N') goto yy744;
- if (yych != 'n') goto yy282;
-yy744:
- YYDEBUG(744, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy745;
- if (yych != 'e') goto yy282;
-yy745:
- YYDEBUG(745, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(746, *YYCURSOR);
+ YYDEBUG(744, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1124 "Zend/zend_language_scanner.l"
+#line 1120 "Zend/zend_language_scanner.l"
{
return T_CLONE;
}
-#line 7085 "Zend/zend_language_scanner.c"
-yy747:
- YYDEBUG(747, *YYCURSOR);
+#line 7075 "Zend/zend_language_scanner.c"
+yy745:
+ YYDEBUG(745, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy748;
- if (yych != 's') goto yy282;
-yy748:
- YYDEBUG(748, *YYCURSOR);
+ if (yych == 'S') goto yy746;
+ if (yych != 's') goto yy280;
+yy746:
+ YYDEBUG(746, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(749, *YYCURSOR);
+ YYDEBUG(747, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1066 "Zend/zend_language_scanner.l"
{
return T_CLASS;
}
-#line 7103 "Zend/zend_language_scanner.c"
-yy750:
- YYDEBUG(750, *YYCURSOR);
+#line 7093 "Zend/zend_language_scanner.c"
+yy748:
+ YYDEBUG(748, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy754;
- if (yych == 'c') goto yy754;
- goto yy282;
-yy751:
- YYDEBUG(751, *YYCURSOR);
+ if (yych == 'C') goto yy752;
+ if (yych == 'c') goto yy752;
+ goto yy280;
+yy749:
+ YYDEBUG(749, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy752;
- if (yych != 'e') goto yy282;
-yy752:
- YYDEBUG(752, *YYCURSOR);
+ if (yych == 'E') goto yy750;
+ if (yych != 'e') goto yy280;
+yy750:
+ YYDEBUG(750, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(753, *YYCURSOR);
+ YYDEBUG(751, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1038 "Zend/zend_language_scanner.l"
{
return T_CASE;
}
-#line 7127 "Zend/zend_language_scanner.c"
-yy754:
- YYDEBUG(754, *YYCURSOR);
+#line 7117 "Zend/zend_language_scanner.c"
+yy752:
+ YYDEBUG(752, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy755;
- if (yych != 'h') goto yy282;
-yy755:
- YYDEBUG(755, *YYCURSOR);
+ if (yych == 'H') goto yy753;
+ if (yych != 'h') goto yy280;
+yy753:
+ YYDEBUG(753, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(756, *YYCURSOR);
+ YYDEBUG(754, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 962 "Zend/zend_language_scanner.l"
{
return T_CATCH;
}
-#line 7145 "Zend/zend_language_scanner.c"
+#line 7135 "Zend/zend_language_scanner.c"
+yy755:
+ YYDEBUG(755, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy772;
+ if (yych == 'n') goto yy772;
+ goto yy280;
+yy756:
+ YYDEBUG(756, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy765;
+ if (yych == 'r') goto yy765;
+ goto yy280;
yy757:
YYDEBUG(757, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy774;
- if (yych == 'n') goto yy774;
- goto yy282;
+ if (yych == 'N') goto yy758;
+ if (yych != 'n') goto yy280;
yy758:
YYDEBUG(758, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy767;
- if (yych == 'r') goto yy767;
- goto yy282;
+ if (yych == 'C') goto yy759;
+ if (yych != 'c') goto yy280;
yy759:
YYDEBUG(759, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy760;
- if (yych != 'n') goto yy282;
+ if (yych == 'T') goto yy760;
+ if (yych != 't') goto yy280;
yy760:
YYDEBUG(760, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy761;
- if (yych != 'c') goto yy282;
+ if (yych == 'I') goto yy761;
+ if (yych != 'i') goto yy280;
yy761:
YYDEBUG(761, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy762;
- if (yych != 't') goto yy282;
+ if (yych == 'O') goto yy762;
+ if (yych != 'o') goto yy280;
yy762:
YYDEBUG(762, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy763;
- if (yych != 'i') goto yy282;
+ if (yych == 'N') goto yy763;
+ if (yych != 'n') goto yy280;
yy763:
YYDEBUG(763, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy764;
- if (yych != 'o') goto yy282;
-yy764:
- YYDEBUG(764, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'N') goto yy765;
- if (yych != 'n') goto yy282;
-yy765:
- YYDEBUG(765, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(766, *YYCURSOR);
+ YYDEBUG(764, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 946 "Zend/zend_language_scanner.l"
{
return T_FUNCTION;
}
-#line 7200 "Zend/zend_language_scanner.c"
-yy767:
- YYDEBUG(767, *YYCURSOR);
+#line 7190 "Zend/zend_language_scanner.c"
+yy765:
+ YYDEBUG(765, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy768;
- if (yych <= '9') goto yy281;
+ if (yych <= '/') goto yy766;
+ if (yych <= '9') goto yy279;
} else {
- if (yych == 'E') goto yy769;
- if (yych <= 'Z') goto yy281;
+ if (yych == 'E') goto yy767;
+ if (yych <= 'Z') goto yy279;
}
} else {
if (yych <= 'd') {
- if (yych != '`') goto yy281;
+ if (yych != '`') goto yy279;
} else {
- if (yych <= 'e') goto yy769;
- if (yych <= 'z') goto yy281;
- if (yych >= 0x7F) goto yy281;
+ if (yych <= 'e') goto yy767;
+ if (yych <= 'z') goto yy279;
+ if (yych >= 0x7F) goto yy279;
}
}
-yy768:
- YYDEBUG(768, *YYCURSOR);
+yy766:
+ YYDEBUG(766, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 998 "Zend/zend_language_scanner.l"
{
return T_FOR;
}
-#line 7228 "Zend/zend_language_scanner.c"
+#line 7218 "Zend/zend_language_scanner.c"
+yy767:
+ YYDEBUG(767, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy768;
+ if (yych != 'a') goto yy280;
+yy768:
+ YYDEBUG(768, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy769;
+ if (yych != 'c') goto yy280;
yy769:
YYDEBUG(769, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy770;
- if (yych != 'a') goto yy282;
+ if (yych == 'H') goto yy770;
+ if (yych != 'h') goto yy280;
yy770:
YYDEBUG(770, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy771;
- if (yych != 'c') goto yy282;
-yy771:
- YYDEBUG(771, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy772;
- if (yych != 'h') goto yy282;
-yy772:
- YYDEBUG(772, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(773, *YYCURSOR);
+ YYDEBUG(771, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1006 "Zend/zend_language_scanner.l"
{
return T_FOREACH;
}
-#line 7256 "Zend/zend_language_scanner.c"
-yy774:
- YYDEBUG(774, *YYCURSOR);
+#line 7246 "Zend/zend_language_scanner.c"
+yy772:
+ YYDEBUG(772, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy775;
- if (yych != 'a') goto yy282;
-yy775:
- YYDEBUG(775, *YYCURSOR);
+ if (yych == 'A') goto yy773;
+ if (yych != 'a') goto yy280;
+yy773:
+ YYDEBUG(773, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy776;
- if (yych != 'l') goto yy282;
-yy776:
- YYDEBUG(776, *YYCURSOR);
+ if (yych == 'L') goto yy774;
+ if (yych != 'l') goto yy280;
+yy774:
+ YYDEBUG(774, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(777, *YYCURSOR);
+ YYDEBUG(775, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1216 "Zend/zend_language_scanner.l"
+#line 1212 "Zend/zend_language_scanner.l"
{
return T_FINAL;
}
-#line 7279 "Zend/zend_language_scanner.c"
-yy778:
- YYDEBUG(778, *YYCURSOR);
+#line 7269 "Zend/zend_language_scanner.c"
+yy776:
+ YYDEBUG(776, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'F') {
- if (yych == 'C') goto yy784;
- if (yych <= 'E') goto yy282;
- goto yy785;
+ if (yych == 'C') goto yy782;
+ if (yych <= 'E') goto yy280;
+ goto yy783;
} else {
if (yych <= 'c') {
- if (yych <= 'b') goto yy282;
- goto yy784;
+ if (yych <= 'b') goto yy280;
+ goto yy782;
} else {
- if (yych == 'f') goto yy785;
- goto yy282;
+ if (yych == 'f') goto yy783;
+ goto yy280;
}
}
-yy779:
- YYDEBUG(779, *YYCURSOR);
+yy777:
+ YYDEBUG(777, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy782;
- if (yych == 'e') goto yy782;
- goto yy282;
-yy780:
- YYDEBUG(780, *YYCURSOR);
+ if (yych == 'E') goto yy780;
+ if (yych == 'e') goto yy780;
+ goto yy280;
+yy778:
+ YYDEBUG(778, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(781, *YYCURSOR);
+ YYDEBUG(779, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 994 "Zend/zend_language_scanner.l"
{
return T_DO;
}
-#line 7314 "Zend/zend_language_scanner.c"
-yy782:
- YYDEBUG(782, *YYCURSOR);
+#line 7304 "Zend/zend_language_scanner.c"
+yy780:
+ YYDEBUG(780, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(783, *YYCURSOR);
+ YYDEBUG(781, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 942 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 7327 "Zend/zend_language_scanner.c"
+#line 7317 "Zend/zend_language_scanner.c"
+yy782:
+ YYDEBUG(782, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy789;
+ if (yych == 'l') goto yy789;
+ goto yy280;
+yy783:
+ YYDEBUG(783, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy784;
+ if (yych != 'a') goto yy280;
yy784:
YYDEBUG(784, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy791;
- if (yych == 'l') goto yy791;
- goto yy282;
+ if (yych == 'U') goto yy785;
+ if (yych != 'u') goto yy280;
yy785:
YYDEBUG(785, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy786;
- if (yych != 'a') goto yy282;
+ if (yych == 'L') goto yy786;
+ if (yych != 'l') goto yy280;
yy786:
YYDEBUG(786, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy787;
- if (yych != 'u') goto yy282;
+ if (yych == 'T') goto yy787;
+ if (yych != 't') goto yy280;
yy787:
YYDEBUG(787, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy788;
- if (yych != 'l') goto yy282;
-yy788:
- YYDEBUG(788, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy789;
- if (yych != 't') goto yy282;
-yy789:
- YYDEBUG(789, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(790, *YYCURSOR);
+ YYDEBUG(788, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1042 "Zend/zend_language_scanner.l"
{
return T_DEFAULT;
}
-#line 7366 "Zend/zend_language_scanner.c"
+#line 7356 "Zend/zend_language_scanner.c"
+yy789:
+ YYDEBUG(789, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy790;
+ if (yych != 'a') goto yy280;
+yy790:
+ YYDEBUG(790, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy791;
+ if (yych != 'r') goto yy280;
yy791:
YYDEBUG(791, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy792;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy792;
+ if (yych != 'e') goto yy280;
yy792:
YYDEBUG(792, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy793;
- if (yych != 'r') goto yy282;
-yy793:
- YYDEBUG(793, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy794;
- if (yych != 'e') goto yy282;
-yy794:
- YYDEBUG(794, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(795, *YYCURSOR);
+ YYDEBUG(793, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1014 "Zend/zend_language_scanner.l"
{
return T_DECLARE;
}
-#line 7394 "Zend/zend_language_scanner.c"
+#line 7384 "Zend/zend_language_scanner.c"
+yy794:
+ YYDEBUG(794, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy856;
+ if (yych == 'h') goto yy856;
+ goto yy280;
+yy795:
+ YYDEBUG(795, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy850;
+ if (yych == 's') goto yy850;
+ goto yy280;
yy796:
YYDEBUG(796, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy858;
- if (yych == 'h') goto yy858;
- goto yy282;
+ if (yych == 'P') goto yy846;
+ if (yych == 'p') goto yy846;
+ goto yy280;
yy797:
YYDEBUG(797, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy852;
- if (yych == 's') goto yy852;
- goto yy282;
+ if (yych == 'D') goto yy812;
+ if (yych == 'd') goto yy812;
+ goto yy280;
yy798:
YYDEBUG(798, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy848;
- if (yych == 'p') goto yy848;
- goto yy282;
+ if (yych == 'A') goto yy809;
+ if (yych == 'a') goto yy809;
+ goto yy280;
yy799:
YYDEBUG(799, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy814;
- if (yych == 'd') goto yy814;
- goto yy282;
-yy800:
- YYDEBUG(800, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy811;
- if (yych == 'a') goto yy811;
- goto yy282;
-yy801:
- YYDEBUG(801, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'I') goto yy802;
- if (yych <= 'S') goto yy282;
- goto yy803;
+ if (yych == 'I') goto yy800;
+ if (yych <= 'S') goto yy280;
+ goto yy801;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy282;
+ if (yych <= 'h') goto yy280;
} else {
- if (yych == 't') goto yy803;
- goto yy282;
+ if (yych == 't') goto yy801;
+ goto yy280;
}
}
+yy800:
+ YYDEBUG(800, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy807;
+ if (yych == 't') goto yy807;
+ goto yy280;
+yy801:
+ YYDEBUG(801, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy802;
+ if (yych != 'e') goto yy280;
yy802:
YYDEBUG(802, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy809;
- if (yych == 't') goto yy809;
- goto yy282;
+ if (yych == 'N') goto yy803;
+ if (yych != 'n') goto yy280;
yy803:
YYDEBUG(803, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy804;
- if (yych != 'e') goto yy282;
+ if (yych == 'D') goto yy804;
+ if (yych != 'd') goto yy280;
yy804:
YYDEBUG(804, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy805;
- if (yych != 'n') goto yy282;
+ if (yych == 'S') goto yy805;
+ if (yych != 's') goto yy280;
yy805:
YYDEBUG(805, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy806;
- if (yych != 'd') goto yy282;
-yy806:
- YYDEBUG(806, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy807;
- if (yych != 's') goto yy282;
-yy807:
- YYDEBUG(807, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(808, *YYCURSOR);
+ YYDEBUG(806, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1074 "Zend/zend_language_scanner.l"
{
return T_EXTENDS;
}
-#line 7478 "Zend/zend_language_scanner.c"
-yy809:
- YYDEBUG(809, *YYCURSOR);
+#line 7468 "Zend/zend_language_scanner.c"
+yy807:
+ YYDEBUG(807, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(810, *YYCURSOR);
+ YYDEBUG(808, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 938 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 7491 "Zend/zend_language_scanner.c"
-yy811:
- YYDEBUG(811, *YYCURSOR);
+#line 7481 "Zend/zend_language_scanner.c"
+yy809:
+ YYDEBUG(809, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy812;
- if (yych != 'l') goto yy282;
-yy812:
- YYDEBUG(812, *YYCURSOR);
+ if (yych == 'L') goto yy810;
+ if (yych != 'l') goto yy280;
+yy810:
+ YYDEBUG(810, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(813, *YYCURSOR);
+ YYDEBUG(811, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1164 "Zend/zend_language_scanner.l"
+#line 1160 "Zend/zend_language_scanner.l"
{
return T_EVAL;
}
-#line 7509 "Zend/zend_language_scanner.c"
-yy814:
- YYDEBUG(814, *YYCURSOR);
+#line 7499 "Zend/zend_language_scanner.c"
+yy812:
+ YYDEBUG(812, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'D':
- case 'd': goto yy815;
+ case 'd': goto yy813;
case 'F':
- case 'f': goto yy816;
+ case 'f': goto yy814;
case 'I':
- case 'i': goto yy817;
+ case 'i': goto yy815;
case 'S':
- case 's': goto yy818;
+ case 's': goto yy816;
case 'W':
- case 'w': goto yy819;
- default: goto yy282;
+ case 'w': goto yy817;
+ default: goto yy280;
}
+yy813:
+ YYDEBUG(813, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy839;
+ if (yych == 'e') goto yy839;
+ goto yy280;
+yy814:
+ YYDEBUG(814, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy831;
+ if (yych == 'o') goto yy831;
+ goto yy280;
yy815:
YYDEBUG(815, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy841;
- if (yych == 'e') goto yy841;
- goto yy282;
+ if (yych == 'F') goto yy829;
+ if (yych == 'f') goto yy829;
+ goto yy280;
yy816:
YYDEBUG(816, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy833;
- if (yych == 'o') goto yy833;
- goto yy282;
+ if (yych == 'W') goto yy823;
+ if (yych == 'w') goto yy823;
+ goto yy280;
yy817:
YYDEBUG(817, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy831;
- if (yych == 'f') goto yy831;
- goto yy282;
+ if (yych == 'H') goto yy818;
+ if (yych != 'h') goto yy280;
yy818:
YYDEBUG(818, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy825;
- if (yych == 'w') goto yy825;
- goto yy282;
+ if (yych == 'I') goto yy819;
+ if (yych != 'i') goto yy280;
yy819:
YYDEBUG(819, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy820;
- if (yych != 'h') goto yy282;
+ if (yych == 'L') goto yy820;
+ if (yych != 'l') goto yy280;
yy820:
YYDEBUG(820, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy821;
- if (yych != 'i') goto yy282;
+ if (yych == 'E') goto yy821;
+ if (yych != 'e') goto yy280;
yy821:
YYDEBUG(821, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy822;
- if (yych != 'l') goto yy282;
-yy822:
- YYDEBUG(822, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy823;
- if (yych != 'e') goto yy282;
-yy823:
- YYDEBUG(823, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(824, *YYCURSOR);
+ YYDEBUG(822, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 990 "Zend/zend_language_scanner.l"
{
return T_ENDWHILE;
}
-#line 7583 "Zend/zend_language_scanner.c"
+#line 7573 "Zend/zend_language_scanner.c"
+yy823:
+ YYDEBUG(823, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy824;
+ if (yych != 'i') goto yy280;
+yy824:
+ YYDEBUG(824, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy825;
+ if (yych != 't') goto yy280;
yy825:
YYDEBUG(825, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy826;
- if (yych != 'i') goto yy282;
+ if (yych == 'C') goto yy826;
+ if (yych != 'c') goto yy280;
yy826:
YYDEBUG(826, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy827;
- if (yych != 't') goto yy282;
+ if (yych == 'H') goto yy827;
+ if (yych != 'h') goto yy280;
yy827:
YYDEBUG(827, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy828;
- if (yych != 'c') goto yy282;
-yy828:
- YYDEBUG(828, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy829;
- if (yych != 'h') goto yy282;
-yy829:
- YYDEBUG(829, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(830, *YYCURSOR);
+ YYDEBUG(828, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1034 "Zend/zend_language_scanner.l"
{
return T_ENDSWITCH;
}
-#line 7616 "Zend/zend_language_scanner.c"
-yy831:
- YYDEBUG(831, *YYCURSOR);
+#line 7606 "Zend/zend_language_scanner.c"
+yy829:
+ YYDEBUG(829, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(832, *YYCURSOR);
+ YYDEBUG(830, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 978 "Zend/zend_language_scanner.l"
{
return T_ENDIF;
}
-#line 7629 "Zend/zend_language_scanner.c"
-yy833:
- YYDEBUG(833, *YYCURSOR);
+#line 7619 "Zend/zend_language_scanner.c"
+yy831:
+ YYDEBUG(831, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy834;
- if (yych != 'r') goto yy282;
-yy834:
- YYDEBUG(834, *YYCURSOR);
+ if (yych == 'R') goto yy832;
+ if (yych != 'r') goto yy280;
+yy832:
+ YYDEBUG(832, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy835;
- if (yych <= '9') goto yy281;
+ if (yych <= '/') goto yy833;
+ if (yych <= '9') goto yy279;
} else {
- if (yych == 'E') goto yy836;
- if (yych <= 'Z') goto yy281;
+ if (yych == 'E') goto yy834;
+ if (yych <= 'Z') goto yy279;
}
} else {
if (yych <= 'd') {
- if (yych != '`') goto yy281;
+ if (yych != '`') goto yy279;
} else {
- if (yych <= 'e') goto yy836;
- if (yych <= 'z') goto yy281;
- if (yych >= 0x7F) goto yy281;
+ if (yych <= 'e') goto yy834;
+ if (yych <= 'z') goto yy279;
+ if (yych >= 0x7F) goto yy279;
}
}
-yy835:
- YYDEBUG(835, *YYCURSOR);
+yy833:
+ YYDEBUG(833, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1002 "Zend/zend_language_scanner.l"
{
return T_ENDFOR;
}
-#line 7662 "Zend/zend_language_scanner.c"
+#line 7652 "Zend/zend_language_scanner.c"
+yy834:
+ YYDEBUG(834, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy835;
+ if (yych != 'a') goto yy280;
+yy835:
+ YYDEBUG(835, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy836;
+ if (yych != 'c') goto yy280;
yy836:
YYDEBUG(836, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy837;
- if (yych != 'a') goto yy282;
+ if (yych == 'H') goto yy837;
+ if (yych != 'h') goto yy280;
yy837:
YYDEBUG(837, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy838;
- if (yych != 'c') goto yy282;
-yy838:
- YYDEBUG(838, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy839;
- if (yych != 'h') goto yy282;
-yy839:
- YYDEBUG(839, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(840, *YYCURSOR);
+ YYDEBUG(838, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1010 "Zend/zend_language_scanner.l"
{
return T_ENDFOREACH;
}
-#line 7690 "Zend/zend_language_scanner.c"
+#line 7680 "Zend/zend_language_scanner.c"
+yy839:
+ YYDEBUG(839, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy840;
+ if (yych != 'c') goto yy280;
+yy840:
+ YYDEBUG(840, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy841;
+ if (yych != 'l') goto yy280;
yy841:
YYDEBUG(841, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy842;
- if (yych != 'c') goto yy282;
+ if (yych == 'A') goto yy842;
+ if (yych != 'a') goto yy280;
yy842:
YYDEBUG(842, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy843;
- if (yych != 'l') goto yy282;
+ if (yych == 'R') goto yy843;
+ if (yych != 'r') goto yy280;
yy843:
YYDEBUG(843, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy844;
- if (yych != 'a') goto yy282;
+ if (yych == 'E') goto yy844;
+ if (yych != 'e') goto yy280;
yy844:
YYDEBUG(844, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy845;
- if (yych != 'r') goto yy282;
-yy845:
- YYDEBUG(845, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy846;
- if (yych != 'e') goto yy282;
-yy846:
- YYDEBUG(846, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(847, *YYCURSOR);
+ YYDEBUG(845, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1018 "Zend/zend_language_scanner.l"
{
return T_ENDDECLARE;
}
-#line 7728 "Zend/zend_language_scanner.c"
-yy848:
- YYDEBUG(848, *YYCURSOR);
+#line 7718 "Zend/zend_language_scanner.c"
+yy846:
+ YYDEBUG(846, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy849;
- if (yych != 't') goto yy282;
-yy849:
- YYDEBUG(849, *YYCURSOR);
+ if (yych == 'T') goto yy847;
+ if (yych != 't') goto yy280;
+yy847:
+ YYDEBUG(847, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy850;
- if (yych != 'y') goto yy282;
-yy850:
- YYDEBUG(850, *YYCURSOR);
+ if (yych == 'Y') goto yy848;
+ if (yych != 'y') goto yy280;
+yy848:
+ YYDEBUG(848, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(851, *YYCURSOR);
+ YYDEBUG(849, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1200 "Zend/zend_language_scanner.l"
+#line 1196 "Zend/zend_language_scanner.l"
{
return T_EMPTY;
}
-#line 7751 "Zend/zend_language_scanner.c"
-yy852:
- YYDEBUG(852, *YYCURSOR);
+#line 7741 "Zend/zend_language_scanner.c"
+yy850:
+ YYDEBUG(850, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy853;
- if (yych != 'e') goto yy282;
-yy853:
- YYDEBUG(853, *YYCURSOR);
+ if (yych == 'E') goto yy851;
+ if (yych != 'e') goto yy280;
+yy851:
+ YYDEBUG(851, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy854;
- if (yych <= '9') goto yy281;
+ if (yych <= '/') goto yy852;
+ if (yych <= '9') goto yy279;
} else {
- if (yych == 'I') goto yy855;
- if (yych <= 'Z') goto yy281;
+ if (yych == 'I') goto yy853;
+ if (yych <= 'Z') goto yy279;
}
} else {
if (yych <= 'h') {
- if (yych != '`') goto yy281;
+ if (yych != '`') goto yy279;
} else {
- if (yych <= 'i') goto yy855;
- if (yych <= 'z') goto yy281;
- if (yych >= 0x7F) goto yy281;
+ if (yych <= 'i') goto yy853;
+ if (yych <= 'z') goto yy279;
+ if (yych >= 0x7F) goto yy279;
}
}
-yy854:
- YYDEBUG(854, *YYCURSOR);
+yy852:
+ YYDEBUG(852, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 982 "Zend/zend_language_scanner.l"
{
return T_ELSE;
}
-#line 7784 "Zend/zend_language_scanner.c"
-yy855:
- YYDEBUG(855, *YYCURSOR);
+#line 7774 "Zend/zend_language_scanner.c"
+yy853:
+ YYDEBUG(853, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy856;
- if (yych != 'f') goto yy282;
-yy856:
- YYDEBUG(856, *YYCURSOR);
+ if (yych == 'F') goto yy854;
+ if (yych != 'f') goto yy280;
+yy854:
+ YYDEBUG(854, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(857, *YYCURSOR);
+ YYDEBUG(855, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 974 "Zend/zend_language_scanner.l"
{
return T_ELSEIF;
}
-#line 7802 "Zend/zend_language_scanner.c"
-yy858:
- YYDEBUG(858, *YYCURSOR);
+#line 7792 "Zend/zend_language_scanner.c"
+yy856:
+ YYDEBUG(856, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy859;
- if (yych != 'o') goto yy282;
-yy859:
- YYDEBUG(859, *YYCURSOR);
+ if (yych == 'O') goto yy857;
+ if (yych != 'o') goto yy280;
+yy857:
+ YYDEBUG(857, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy281;
+ goto yy279;
}
- YYDEBUG(860, *YYCURSOR);
+ YYDEBUG(858, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1058 "Zend/zend_language_scanner.l"
{
return T_ECHO;
}
-#line 7820 "Zend/zend_language_scanner.c"
+#line 7810 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_LOOKING_FOR_PROPERTY:
@@ -7855,39 +7845,39 @@ yyc_ST_LOOKING_FOR_PROPERTY:
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
};
- YYDEBUG(861, *YYCURSOR);
+ YYDEBUG(859, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '-') {
if (yych <= '\r') {
- if (yych <= 0x08) goto yy869;
- if (yych <= '\n') goto yy863;
- if (yych <= '\f') goto yy869;
+ if (yych <= 0x08) goto yy867;
+ if (yych <= '\n') goto yy861;
+ if (yych <= '\f') goto yy867;
} else {
- if (yych == ' ') goto yy863;
- if (yych <= ',') goto yy869;
- goto yy865;
+ if (yych == ' ') goto yy861;
+ if (yych <= ',') goto yy867;
+ goto yy863;
}
} else {
if (yych <= '_') {
- if (yych <= '@') goto yy869;
- if (yych <= 'Z') goto yy867;
- if (yych <= '^') goto yy869;
- goto yy867;
+ if (yych <= '@') goto yy867;
+ if (yych <= 'Z') goto yy865;
+ if (yych <= '^') goto yy867;
+ goto yy865;
} else {
- if (yych <= '`') goto yy869;
- if (yych <= 'z') goto yy867;
- if (yych <= '~') goto yy869;
- goto yy867;
+ if (yych <= '`') goto yy867;
+ if (yych <= 'z') goto yy865;
+ if (yych <= '~') goto yy867;
+ goto yy865;
}
}
-yy863:
- YYDEBUG(863, *YYCURSOR);
+yy861:
+ YYDEBUG(861, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy875;
-yy864:
- YYDEBUG(864, *YYCURSOR);
+ goto yy873;
+yy862:
+ YYDEBUG(862, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1087 "Zend/zend_language_scanner.l"
{
@@ -7897,13 +7887,13 @@ yy864:
HANDLE_NEWLINES(yytext, yyleng);
return T_WHITESPACE;
}
-#line 7901 "Zend/zend_language_scanner.c"
-yy865:
- YYDEBUG(865, *YYCURSOR);
+#line 7891 "Zend/zend_language_scanner.c"
+yy863:
+ YYDEBUG(863, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy872;
-yy866:
- YYDEBUG(866, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '>') goto yy870;
+yy864:
+ YYDEBUG(864, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1106 "Zend/zend_language_scanner.l"
{
@@ -7911,14 +7901,14 @@ yy866:
yy_pop_state(TSRMLS_C);
goto restart;
}
-#line 7915 "Zend/zend_language_scanner.c"
-yy867:
- YYDEBUG(867, *YYCURSOR);
+#line 7905 "Zend/zend_language_scanner.c"
+yy865:
+ YYDEBUG(865, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy871;
-yy868:
- YYDEBUG(868, *YYCURSOR);
+ goto yy869;
+yy866:
+ YYDEBUG(866, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1099 "Zend/zend_language_scanner.l"
{
@@ -7927,43 +7917,43 @@ yy868:
zendlval->type = IS_STRING;
return T_STRING;
}
-#line 7931 "Zend/zend_language_scanner.c"
-yy869:
- YYDEBUG(869, *YYCURSOR);
+#line 7921 "Zend/zend_language_scanner.c"
+yy867:
+ YYDEBUG(867, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy866;
-yy870:
- YYDEBUG(870, *YYCURSOR);
+ goto yy864;
+yy868:
+ YYDEBUG(868, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy871:
- YYDEBUG(871, *YYCURSOR);
+yy869:
+ YYDEBUG(869, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy870;
+ goto yy868;
}
- goto yy868;
-yy872:
- YYDEBUG(872, *YYCURSOR);
+ goto yy866;
+yy870:
+ YYDEBUG(870, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(873, *YYCURSOR);
+ YYDEBUG(871, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
#line 1095 "Zend/zend_language_scanner.l"
{
return T_OBJECT_OPERATOR;
}
-#line 7956 "Zend/zend_language_scanner.c"
-yy874:
- YYDEBUG(874, *YYCURSOR);
+#line 7946 "Zend/zend_language_scanner.c"
+yy872:
+ YYDEBUG(872, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy875:
- YYDEBUG(875, *YYCURSOR);
+yy873:
+ YYDEBUG(873, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy874;
+ goto yy872;
}
- goto yy864;
+ goto yy862;
}
/* *********************************** */
yyc_ST_LOOKING_FOR_VARNAME:
@@ -8002,27 +7992,27 @@ yyc_ST_LOOKING_FOR_VARNAME:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(876, *YYCURSOR);
+ YYDEBUG(874, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy880;
- if (yych <= 'Z') goto yy878;
- if (yych <= '^') goto yy880;
+ if (yych <= '@') goto yy878;
+ if (yych <= 'Z') goto yy876;
+ if (yych <= '^') goto yy878;
} else {
- if (yych <= '`') goto yy880;
- if (yych <= 'z') goto yy878;
- if (yych <= '~') goto yy880;
+ if (yych <= '`') goto yy878;
+ if (yych <= 'z') goto yy876;
+ if (yych <= '~') goto yy878;
}
-yy878:
- YYDEBUG(878, *YYCURSOR);
+yy876:
+ YYDEBUG(876, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy883;
-yy879:
- YYDEBUG(879, *YYCURSOR);
+ goto yy881;
+yy877:
+ YYDEBUG(877, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1378 "Zend/zend_language_scanner.l"
+#line 1374 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
@@ -8030,31 +8020,31 @@ yy879:
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
return T_STRING_VARNAME;
}
-#line 8034 "Zend/zend_language_scanner.c"
-yy880:
- YYDEBUG(880, *YYCURSOR);
+#line 8024 "Zend/zend_language_scanner.c"
+yy878:
+ YYDEBUG(878, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(881, *YYCURSOR);
+ YYDEBUG(879, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1387 "Zend/zend_language_scanner.l"
+#line 1383 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state(TSRMLS_C);
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
goto restart;
}
-#line 8047 "Zend/zend_language_scanner.c"
-yy882:
- YYDEBUG(882, *YYCURSOR);
+#line 8037 "Zend/zend_language_scanner.c"
+yy880:
+ YYDEBUG(880, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy883:
- YYDEBUG(883, *YYCURSOR);
+yy881:
+ YYDEBUG(881, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy882;
+ goto yy880;
}
- goto yy879;
+ goto yy877;
}
/* *********************************** */
yyc_ST_NOWDOC:
@@ -8093,106 +8083,106 @@ yyc_ST_NOWDOC:
144, 144, 144, 144, 144, 144, 144, 144,
144, 144, 144, 144, 144, 144, 144, 144,
};
- YYDEBUG(884, *YYCURSOR);
+ YYDEBUG(882, *YYCURSOR);
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy886;
+ goto yy884;
}
- if (yych <= '\f') goto yy888;
- goto yy890;
-yy886:
- YYDEBUG(886, *YYCURSOR);
+ if (yych <= '\f') goto yy886;
+ goto yy888;
+yy884:
+ YYDEBUG(884, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(887, *YYCURSOR);
+ YYDEBUG(885, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy886;
+ goto yy884;
}
- if (yych <= '\f') goto yy897;
- goto yy899;
-yy888:
- YYDEBUG(888, *YYCURSOR);
+ if (yych <= '\f') goto yy895;
+ goto yy897;
+yy886:
+ YYDEBUG(886, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(889, *YYCURSOR);
+ YYDEBUG(887, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy888;
+ goto yy886;
}
if (yych <= '^') {
if (yych <= '\r') {
- if (yych <= '\f') goto yy886;
+ if (yych <= '\f') goto yy884;
} else {
- if (yych <= '@') goto yy886;
- if (yych <= 'Z') goto yy892;
- goto yy886;
+ if (yych <= '@') goto yy884;
+ if (yych <= 'Z') goto yy890;
+ goto yy884;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy892;
- goto yy886;
+ if (yych <= '_') goto yy890;
+ goto yy884;
} else {
- if (yych <= 'z') goto yy892;
- if (yych <= '~') goto yy886;
- goto yy892;
+ if (yych <= 'z') goto yy890;
+ if (yych <= '~') goto yy884;
+ goto yy890;
}
}
-yy890:
- YYDEBUG(890, *YYCURSOR);
+yy888:
+ YYDEBUG(888, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(891, *YYCURSOR);
+ YYDEBUG(889, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy888;
+ goto yy886;
}
if (yych <= '^') {
if (yych <= '\r') {
- if (yych <= '\f') goto yy886;
- goto yy890;
+ if (yych <= '\f') goto yy884;
+ goto yy888;
} else {
- if (yych <= '@') goto yy886;
- if (yych >= '[') goto yy886;
+ if (yych <= '@') goto yy884;
+ if (yych >= '[') goto yy884;
}
} else {
if (yych <= '`') {
- if (yych >= '`') goto yy886;
+ if (yych >= '`') goto yy884;
} else {
- if (yych <= 'z') goto yy892;
- if (yych <= '~') goto yy886;
+ if (yych <= 'z') goto yy890;
+ if (yych <= '~') goto yy884;
}
}
-yy892:
- YYDEBUG(892, *YYCURSOR);
+yy890:
+ YYDEBUG(890, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(893, *YYCURSOR);
+ YYDEBUG(891, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy892;
+ goto yy890;
}
if (yych <= '\f') {
- if (yych == '\n') goto yy895;
- goto yy886;
+ if (yych == '\n') goto yy893;
+ goto yy884;
} else {
- if (yych <= '\r') goto yy895;
- if (yych != ';') goto yy886;
+ if (yych <= '\r') goto yy893;
+ if (yych != ';') goto yy884;
}
- YYDEBUG(894, *YYCURSOR);
+ YYDEBUG(892, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy886;
+ goto yy884;
}
-yy895:
- YYDEBUG(895, *YYCURSOR);
+yy893:
+ YYDEBUG(893, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(896, *YYCURSOR);
+ YYDEBUG(894, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2077 "Zend/zend_language_scanner.l"
+#line 2073 "Zend/zend_language_scanner.l"
{
char *end = yytext + yyleng - 1;
@@ -8232,55 +8222,55 @@ yy895:
yymore();
}
}
-#line 8236 "Zend/zend_language_scanner.c"
-yy897:
- YYDEBUG(897, *YYCURSOR);
+#line 8226 "Zend/zend_language_scanner.c"
+yy895:
+ YYDEBUG(895, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(898, *YYCURSOR);
+ YYDEBUG(896, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '\f') {
- if (yych == '\n') goto yy897;
- goto yy886;
+ if (yych == '\n') goto yy895;
+ goto yy884;
} else {
- if (yych <= '\r') goto yy899;
- if (yych <= '@') goto yy886;
- goto yy892;
+ if (yych <= '\r') goto yy897;
+ if (yych <= '@') goto yy884;
+ goto yy890;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy892;
- goto yy886;
+ if (yych == '_') goto yy890;
+ goto yy884;
} else {
- if (yych <= 'z') goto yy892;
- if (yych <= '~') goto yy886;
- goto yy892;
+ if (yych <= 'z') goto yy890;
+ if (yych <= '~') goto yy884;
+ goto yy890;
}
}
-yy899:
- YYDEBUG(899, *YYCURSOR);
+yy897:
+ YYDEBUG(897, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(900, *YYCURSOR);
+ YYDEBUG(898, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '\f') {
- if (yych == '\n') goto yy897;
- goto yy886;
+ if (yych == '\n') goto yy895;
+ goto yy884;
} else {
- if (yych <= '\r') goto yy899;
- if (yych <= '@') goto yy886;
- goto yy892;
+ if (yych <= '\r') goto yy897;
+ if (yych <= '@') goto yy884;
+ goto yy890;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy892;
- goto yy886;
+ if (yych == '_') goto yy890;
+ goto yy884;
} else {
- if (yych <= 'z') goto yy892;
- if (yych <= '~') goto yy886;
- goto yy892;
+ if (yych <= 'z') goto yy890;
+ if (yych <= '~') goto yy884;
+ goto yy890;
}
}
}
@@ -8321,52 +8311,52 @@ yyc_ST_ONE_LINE_COMMENT:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(901, *YYCURSOR);
+ YYDEBUG(899, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy907;
+ goto yy905;
}
- if (yych <= '\f') goto yy910;
- if (yych <= '\r') goto yy911;
- if (yych <= '=') goto yy903;
- if (yych <= '>') goto yy905;
- goto yy906;
-yy903:
- YYDEBUG(903, *YYCURSOR);
+ if (yych <= '\f') goto yy908;
+ if (yych <= '\r') goto yy909;
+ if (yych <= '=') goto yy901;
+ if (yych <= '>') goto yy903;
+ goto yy904;
+yy901:
+ YYDEBUG(901, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy915;
-yy904:
- YYDEBUG(904, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '>') goto yy913;
+yy902:
+ YYDEBUG(902, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1745 "Zend/zend_language_scanner.l"
+#line 1741 "Zend/zend_language_scanner.l"
{
yymore();
}
-#line 8347 "Zend/zend_language_scanner.c"
-yy905:
- YYDEBUG(905, *YYCURSOR);
+#line 8337 "Zend/zend_language_scanner.c"
+yy903:
+ YYDEBUG(903, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy904;
-yy906:
- YYDEBUG(906, *YYCURSOR);
+ goto yy902;
+yy904:
+ YYDEBUG(904, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '>') goto yy915;
- goto yy904;
-yy907:
- YYDEBUG(907, *YYCURSOR);
+ if (yych == '>') goto yy913;
+ goto yy902;
+yy905:
+ YYDEBUG(905, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(908, *YYCURSOR);
+ YYDEBUG(906, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy907;
+ goto yy905;
}
- goto yy914;
-yy909:
- YYDEBUG(909, *YYCURSOR);
+ goto yy912;
+yy907:
+ YYDEBUG(907, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1749 "Zend/zend_language_scanner.l"
+#line 1745 "Zend/zend_language_scanner.l"
{
switch (yytext[yyleng-1]) {
case '?': case '%': case '>':
@@ -8384,20 +8374,20 @@ yy909:
return T_COMMENT;
}
}
-#line 8388 "Zend/zend_language_scanner.c"
-yy910:
- YYDEBUG(910, *YYCURSOR);
+#line 8378 "Zend/zend_language_scanner.c"
+yy908:
+ YYDEBUG(908, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy909;
-yy911:
- YYDEBUG(911, *YYCURSOR);
+ goto yy907;
+yy909:
+ YYDEBUG(909, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '\n') goto yy909;
- YYDEBUG(912, *YYCURSOR);
+ if (yych != '\n') goto yy907;
+ YYDEBUG(910, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(913, *YYCURSOR);
+ YYDEBUG(911, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1767 "Zend/zend_language_scanner.l"
+#line 1763 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -8406,17 +8396,17 @@ yy911:
CG(zend_lineno)++;
return T_COMMENT;
}
-#line 8410 "Zend/zend_language_scanner.c"
-yy914:
- YYDEBUG(914, *YYCURSOR);
+#line 8400 "Zend/zend_language_scanner.c"
+yy912:
+ YYDEBUG(912, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy909;
-yy915:
- YYDEBUG(915, *YYCURSOR);
+ goto yy907;
+yy913:
+ YYDEBUG(913, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(916, *YYCURSOR);
+ YYDEBUG(914, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1776 "Zend/zend_language_scanner.l"
+#line 1772 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags) || yytext[yyleng-2] != '%') { /* asp comment? */
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -8429,7 +8419,7 @@ yy915:
yymore();
}
}
-#line 8433 "Zend/zend_language_scanner.c"
+#line 8423 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_VAR_OFFSET:
@@ -8468,69 +8458,69 @@ yyc_ST_VAR_OFFSET:
32, 32, 32, 32, 32, 32, 32, 32,
32, 32, 32, 32, 32, 32, 32, 32,
};
- YYDEBUG(917, *YYCURSOR);
+ YYDEBUG(915, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= '/') {
if (yych <= ' ') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy931;
- if (yych <= '\n') goto yy927;
- goto yy931;
+ if (yych <= 0x08) goto yy929;
+ if (yych <= '\n') goto yy925;
+ goto yy929;
} else {
- if (yych <= '\r') goto yy927;
- if (yych <= 0x1F) goto yy931;
- goto yy927;
+ if (yych <= '\r') goto yy925;
+ if (yych <= 0x1F) goto yy929;
+ goto yy925;
}
} else {
if (yych <= '$') {
- if (yych <= '"') goto yy926;
- if (yych <= '#') goto yy927;
- goto yy922;
+ if (yych <= '"') goto yy924;
+ if (yych <= '#') goto yy925;
+ goto yy920;
} else {
- if (yych == '\'') goto yy927;
- goto yy926;
+ if (yych == '\'') goto yy925;
+ goto yy924;
}
}
} else {
if (yych <= '\\') {
if (yych <= '@') {
- if (yych <= '0') goto yy919;
- if (yych <= '9') goto yy921;
- goto yy926;
+ if (yych <= '0') goto yy917;
+ if (yych <= '9') goto yy919;
+ goto yy924;
} else {
- if (yych <= 'Z') goto yy929;
- if (yych <= '[') goto yy926;
- goto yy927;
+ if (yych <= 'Z') goto yy927;
+ if (yych <= '[') goto yy924;
+ goto yy925;
}
} else {
if (yych <= '_') {
- if (yych <= ']') goto yy924;
- if (yych <= '^') goto yy926;
- goto yy929;
+ if (yych <= ']') goto yy922;
+ if (yych <= '^') goto yy924;
+ goto yy927;
} else {
- if (yych <= '`') goto yy926;
- if (yych <= 'z') goto yy929;
- if (yych <= '~') goto yy926;
- goto yy929;
+ if (yych <= '`') goto yy924;
+ if (yych <= 'z') goto yy927;
+ if (yych <= '~') goto yy924;
+ goto yy927;
}
}
}
-yy919:
- YYDEBUG(919, *YYCURSOR);
+yy917:
+ YYDEBUG(917, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'W') {
- if (yych <= '/') goto yy920;
- if (yych <= '9') goto yy942;
+ if (yych <= '/') goto yy918;
+ if (yych <= '9') goto yy940;
} else {
- if (yych <= 'X') goto yy940;
- if (yych == 'x') goto yy940;
+ if (yych <= 'X') goto yy938;
+ if (yych == 'x') goto yy938;
}
-yy920:
- YYDEBUG(920, *YYCURSOR);
+yy918:
+ YYDEBUG(918, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1437 "Zend/zend_language_scanner.l"
+#line 1433 "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)) {
zendlval->value.lval = strtol(yytext, NULL, 10);
@@ -8542,53 +8532,53 @@ yy920:
}
return T_NUM_STRING;
}
-#line 8546 "Zend/zend_language_scanner.c"
-yy921:
- YYDEBUG(921, *YYCURSOR);
+#line 8536 "Zend/zend_language_scanner.c"
+yy919:
+ YYDEBUG(919, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy939;
-yy922:
- YYDEBUG(922, *YYCURSOR);
+ goto yy937;
+yy920:
+ YYDEBUG(920, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy923;
- if (yych <= 'Z') goto yy935;
- if (yych >= '_') goto yy935;
+ if (yych <= '@') goto yy921;
+ if (yych <= 'Z') goto yy933;
+ if (yych >= '_') goto yy933;
} else {
- if (yych <= '`') goto yy923;
- if (yych <= 'z') goto yy935;
- if (yych >= 0x7F) goto yy935;
+ if (yych <= '`') goto yy921;
+ if (yych <= 'z') goto yy933;
+ if (yych >= 0x7F) goto yy933;
}
-yy923:
- YYDEBUG(923, *YYCURSOR);
+yy921:
+ YYDEBUG(921, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1720 "Zend/zend_language_scanner.l"
+#line 1716 "Zend/zend_language_scanner.l"
{
/* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
return yytext[0];
}
-#line 8571 "Zend/zend_language_scanner.c"
-yy924:
- YYDEBUG(924, *YYCURSOR);
+#line 8561 "Zend/zend_language_scanner.c"
+yy922:
+ YYDEBUG(922, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(925, *YYCURSOR);
+ YYDEBUG(923, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1715 "Zend/zend_language_scanner.l"
+#line 1711 "Zend/zend_language_scanner.l"
{
yy_pop_state(TSRMLS_C);
return ']';
}
-#line 8582 "Zend/zend_language_scanner.c"
-yy926:
- YYDEBUG(926, *YYCURSOR);
+#line 8572 "Zend/zend_language_scanner.c"
+yy924:
+ YYDEBUG(924, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy923;
-yy927:
- YYDEBUG(927, *YYCURSOR);
+ goto yy921;
+yy925:
+ YYDEBUG(925, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(928, *YYCURSOR);
+ YYDEBUG(926, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1725 "Zend/zend_language_scanner.l"
+#line 1721 "Zend/zend_language_scanner.l"
{
/* Invalid rule to return a more explicit parse error with proper line number */
yyless(0);
@@ -8596,126 +8586,126 @@ yy927:
ZVAL_EMPTY_STRING(zendlval); /* Empty since it won't be used */
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 8600 "Zend/zend_language_scanner.c"
-yy929:
- YYDEBUG(929, *YYCURSOR);
+#line 8590 "Zend/zend_language_scanner.c"
+yy927:
+ YYDEBUG(927, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy934;
-yy930:
- YYDEBUG(930, *YYCURSOR);
+ goto yy932;
+yy928:
+ YYDEBUG(928, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1733 "Zend/zend_language_scanner.l"
+#line 1729 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
return T_STRING;
}
-#line 8615 "Zend/zend_language_scanner.c"
-yy931:
- YYDEBUG(931, *YYCURSOR);
+#line 8605 "Zend/zend_language_scanner.c"
+yy929:
+ YYDEBUG(929, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(932, *YYCURSOR);
+ YYDEBUG(930, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2130 "Zend/zend_language_scanner.l"
+#line 2126 "Zend/zend_language_scanner.l"
{
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 8626 "Zend/zend_language_scanner.c"
-yy933:
- YYDEBUG(933, *YYCURSOR);
+#line 8616 "Zend/zend_language_scanner.c"
+yy931:
+ YYDEBUG(931, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy934:
- YYDEBUG(934, *YYCURSOR);
+yy932:
+ YYDEBUG(932, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy933;
+ goto yy931;
}
- goto yy930;
-yy935:
- YYDEBUG(935, *YYCURSOR);
+ goto yy928;
+yy933:
+ YYDEBUG(933, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(936, *YYCURSOR);
+ YYDEBUG(934, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy935;
+ if (yych >= '0') goto yy933;
} else {
- if (yych <= '@') goto yy937;
- if (yych <= 'Z') goto yy935;
+ if (yych <= '@') goto yy935;
+ if (yych <= 'Z') goto yy933;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy935;
+ if (yych <= '_') goto yy933;
} else {
- if (yych <= 'z') goto yy935;
- if (yych >= 0x7F) goto yy935;
+ if (yych <= 'z') goto yy933;
+ if (yych >= 0x7F) goto yy933;
}
}
-yy937:
- YYDEBUG(937, *YYCURSOR);
+yy935:
+ YYDEBUG(935, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1709 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 8668 "Zend/zend_language_scanner.c"
-yy938:
- YYDEBUG(938, *YYCURSOR);
+#line 8658 "Zend/zend_language_scanner.c"
+yy936:
+ YYDEBUG(936, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy939:
- YYDEBUG(939, *YYCURSOR);
+yy937:
+ YYDEBUG(937, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy938;
+ goto yy936;
}
- goto yy920;
-yy940:
- YYDEBUG(940, *YYCURSOR);
+ goto yy918;
+yy938:
+ YYDEBUG(938, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy945;
+ goto yy943;
}
- YYDEBUG(941, *YYCURSOR);
+ YYDEBUG(939, *YYCURSOR);
YYCURSOR = YYMARKER;
- goto yy920;
-yy942:
- YYDEBUG(942, *YYCURSOR);
+ goto yy918;
+yy940:
+ YYDEBUG(940, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(943, *YYCURSOR);
- if (yych <= '/') goto yy944;
- if (yych <= '9') goto yy942;
-yy944:
- YYDEBUG(944, *YYCURSOR);
+ YYDEBUG(941, *YYCURSOR);
+ if (yych <= '/') goto yy942;
+ if (yych <= '9') goto yy940;
+yy942:
+ YYDEBUG(942, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1449 "Zend/zend_language_scanner.l"
+#line 1445 "Zend/zend_language_scanner.l"
{ /* Offset must be treated as a string */
zendlval->value.str.val = (char *)estrndup(yytext, yyleng);
zendlval->value.str.len = yyleng;
zendlval->type = IS_STRING;
return T_NUM_STRING;
}
-#line 8707 "Zend/zend_language_scanner.c"
-yy945:
- YYDEBUG(945, *YYCURSOR);
+#line 8697 "Zend/zend_language_scanner.c"
+yy943:
+ YYDEBUG(943, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(946, *YYCURSOR);
+ YYDEBUG(944, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy945;
+ goto yy943;
}
- goto yy944;
+ goto yy942;
}
}
-#line 2135 "Zend/zend_language_scanner.l"
+#line 2131 "Zend/zend_language_scanner.l"
}
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index cd7d2ba530..8952b8ee46 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -1113,10 +1113,6 @@ NOWDOC_CHARS ([^\n\r]|{NEWLINE}+([^a-zA-Z_\x7f-\xff\n\r]|({LABEL}([^a-zA-
return T_PAAMAYIM_NEKUDOTAYIM;
}
-<ST_IN_SCRIPTING>"\\" {
- return T_NS_SEPARATOR;
-}
-
<ST_IN_SCRIPTING>"new" {
return T_NEW;
}
diff --git a/Zend/zend_language_scanner_defs.h b/Zend/zend_language_scanner_defs.h
index 3b2d270fd0..175315884a 100644
--- a/Zend/zend_language_scanner_defs.h
+++ b/Zend/zend_language_scanner_defs.h
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.6.dev on Tue Nov 4 01:40:34 2008 */
+/* Generated by re2c 0.13.5 on Tue Aug 12 20:38:47 2008 */
#line 3 "Zend/zend_language_scanner_defs.h"
enum YYCONDTYPE {
diff --git a/Zend/zend_list.h b/Zend/zend_list.h
index 4472b1a4e4..ffd54cb14d 100644
--- a/Zend/zend_list.h
+++ b/Zend/zend_list.h
@@ -95,16 +95,10 @@ extern ZEND_API int le_index_ptr; /* list entry type for index pointers */
#define ZEND_FETCH_RESOURCE(rsrc, rsrc_type, passed_id, default_id, resource_type_name, resource_type) \
rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 1, resource_type); \
ZEND_VERIFY_RESOURCE(rsrc);
-
-#define ZEND_FETCH_RESOURCE_NO_RETURN(rsrc, rsrc_type, passed_id, default_id, resource_type_name, resource_type) \
- (rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 1, resource_type))
#define ZEND_FETCH_RESOURCE2(rsrc, rsrc_type, passed_id, default_id, resource_type_name, resource_type1, resource_type2) \
rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 2, resource_type1, resource_type2); \
ZEND_VERIFY_RESOURCE(rsrc);
-
-#define ZEND_FETCH_RESOURCE2_NO_RETURN(rsrc, rsrc_type, passed_id, default_id, resource_type_name, resource_type1, resource_type2) \
- (rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 2, resource_type1, resource_type2))
#define ZEND_REGISTER_RESOURCE(rsrc_result, rsrc_pointer, rsrc_type) \
zend_register_resource(rsrc_result, rsrc_pointer, rsrc_type);
diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c
index 0c0a4522a9..49dbf5ceb1 100644
--- a/Zend/zend_object_handlers.c
+++ b/Zend/zend_object_handlers.c
@@ -345,7 +345,6 @@ zval *zend_std_read_property(zval *object, zval *member, int type TSRMLS_DC) /*
zend_get_property_guard(zobj, property_info, member, &guard) == SUCCESS &&
!guard->in_get) {
/* have getter - try with it! */
- Z_ADDREF_P(object);
guard->in_get = 1; /* prevent circular getting */
rv = zend_std_call_getter(object, member TSRMLS_CC);
guard->in_get = 0;
@@ -370,7 +369,6 @@ zval *zend_std_read_property(zval *object, zval *member, int type TSRMLS_DC) /*
} else {
retval = &EG(uninitialized_zval_ptr);
}
- zval_ptr_dtor(&object);
} else {
if (!silent) {
zend_error(E_NOTICE,"Undefined property: %s::$%s", zobj->ce->name, Z_STRVAL_P(member));
@@ -441,14 +439,12 @@ static void zend_std_write_property(zval *object, zval *member, zval *value TSRM
if (zobj->ce->__set &&
zend_get_property_guard(zobj, property_info, member, &guard) == SUCCESS &&
!guard->in_set) {
- Z_ADDREF_P(object);
guard->in_set = 1; /* prevent circular setting */
if (zend_std_call_setter(object, member, value TSRMLS_CC) != SUCCESS) {
/* for now, just ignore it - __set should take care of warnings, etc. */
}
setter_done = 1;
guard->in_set = 0;
- zval_ptr_dtor(&object);
}
if (!setter_done && property_info) {
zval **foo;
@@ -624,11 +620,9 @@ static void zend_std_unset_property(zval *object, zval *member TSRMLS_DC) /* {{{
zend_get_property_guard(zobj, property_info, member, &guard) == SUCCESS &&
!guard->in_unset) {
/* have unseter - try with it! */
- Z_ADDREF_P(object);
guard->in_unset = 1; /* prevent circular unsetting */
zend_std_call_unsetter(object, member TSRMLS_CC);
guard->in_unset = 0;
- zval_ptr_dtor(&object);
}
}
@@ -1123,7 +1117,6 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists
zval *rv;
/* have issetter - try with it! */
- Z_ADDREF_P(object);
guard->in_isset = 1; /* prevent circular getting */
rv = zend_std_call_issetter(object, member TSRMLS_CC);
if (rv) {
@@ -1147,7 +1140,6 @@ static int zend_std_has_property(zval *object, zval *member, int has_set_exists
}
}
guard->in_isset = 0;
- zval_ptr_dtor(&object);
}
} else {
switch (has_set_exists) {
@@ -1270,7 +1262,7 @@ ZEND_API int zend_std_cast_object_tostring(zval *readobj, zval *writeobj, int ty
}
/* }}} */
-int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC) /* {{{ */
+int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr TSRMLS_DC) /* {{{ */
{
zend_class_entry *ce;
if (Z_TYPE_P(obj) != IS_OBJECT) {
@@ -1288,10 +1280,16 @@ int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **f
if (zobj_ptr) {
*zobj_ptr = NULL;
}
+ if (zobj_ptr_ptr) {
+ *zobj_ptr_ptr = NULL;
+ }
} else {
if (zobj_ptr) {
*zobj_ptr = obj;
}
+ if (zobj_ptr_ptr) {
+ *zobj_ptr_ptr = NULL;
+ }
}
return SUCCESS;
}
diff --git a/Zend/zend_object_handlers.h b/Zend/zend_object_handlers.h
index ed8c750345..0d8a46b1bf 100644
--- a/Zend/zend_object_handlers.h
+++ b/Zend/zend_object_handlers.h
@@ -108,7 +108,7 @@ typedef int (*zend_object_cast_t)(zval *readobj, zval *retval, int type TSRMLS_D
* Returns FAILURE if the object does not have any sense of overloaded dimensions */
typedef int (*zend_object_count_elements_t)(zval *object, long *count TSRMLS_DC);
-typedef int (*zend_object_get_closure_t)(zval *obj, zend_class_entry **ce_ptr, union _zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC);
+typedef int (*zend_object_get_closure_t)(zval *obj, zend_class_entry **ce_ptr, union _zend_function **fptr_ptr, zval **zobj_ptr, zval ***zobj_ptr_ptr TSRMLS_DC);
struct _zend_object_handlers {
/* general object functions */
diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c
index db60de5229..b050a8d94d 100644
--- a/Zend/zend_operators.c
+++ b/Zend/zend_operators.c
@@ -30,7 +30,6 @@
#include "zend_multiply.h"
#include "zend_strtod.h"
#include "zend_exceptions.h"
-#include "zend_float.h"
#define LONG_SIGN_MASK (1L << (8*sizeof(long)-1))
@@ -776,7 +775,6 @@ ZEND_API void multi_convert_to_string_ex(int argc, ...)
ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
{
- ZEND_FLOAT_DECLARE
zval op1_copy, op2_copy;
int converted = 0;
@@ -789,9 +787,7 @@ ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
if ((Z_LVAL_P(op1) & LONG_SIGN_MASK) == (Z_LVAL_P(op2) & LONG_SIGN_MASK)
&& (Z_LVAL_P(op1) & LONG_SIGN_MASK) != (lval & LONG_SIGN_MASK)) {
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2));
- ZEND_FLOAT_RESTORE();
} else {
ZVAL_LONG(result, lval);
}
@@ -799,21 +795,15 @@ ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
}
case TYPE_PAIR(IS_LONG, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, ((double)Z_LVAL_P(op1)) + Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_LONG):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) + ((double)Z_LVAL_P(op2)));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_ARRAY, IS_ARRAY): {
@@ -847,7 +837,6 @@ ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
{
- ZEND_FLOAT_DECLARE
zval op1_copy, op2_copy;
int converted = 0;
@@ -860,9 +849,7 @@ ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
if ((Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(op2) & LONG_SIGN_MASK)
&& (Z_LVAL_P(op1) & LONG_SIGN_MASK) != (lval & LONG_SIGN_MASK)) {
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2));
- ZEND_FLOAT_RESTORE();
} else {
ZVAL_LONG(result, lval);
}
@@ -870,21 +857,15 @@ ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
}
case TYPE_PAIR(IS_LONG, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, ((double)Z_LVAL_P(op1)) - Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_LONG):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) - ((double)Z_LVAL_P(op2)));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
default:
@@ -903,7 +884,6 @@ ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
{
- ZEND_FLOAT_DECLARE
zval op1_copy, op2_copy;
int converted = 0;
@@ -912,29 +892,21 @@ ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
case TYPE_PAIR(IS_LONG, IS_LONG): {
long overflow;
- ZEND_FLOAT_ENSURE();
ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1),Z_LVAL_P(op2), Z_LVAL_P(result),Z_DVAL_P(result),overflow);
- ZEND_FLOAT_RESTORE();
Z_TYPE_P(result) = overflow ? IS_DOUBLE : IS_LONG;
return SUCCESS;
}
case TYPE_PAIR(IS_LONG, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, ((double)Z_LVAL_P(op1)) * Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_LONG):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) * ((double)Z_LVAL_P(op2)));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
default:
@@ -952,7 +924,6 @@ ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
{
- ZEND_FLOAT_DECLARE
zval op1_copy, op2_copy;
int converted = 0;
@@ -965,17 +936,13 @@ ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
return FAILURE; /* division by zero */
} else if (Z_LVAL_P(op2) == -1 && Z_LVAL_P(op1) == LONG_MIN) {
/* Prevent overflow error/crash */
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, (double) LONG_MIN / -1);
- ZEND_FLOAT_RESTORE();
return SUCCESS;
}
if (Z_LVAL_P(op1) % Z_LVAL_P(op2) == 0) { /* integer */
ZVAL_LONG(result, Z_LVAL_P(op1) / Z_LVAL_P(op2));
} else {
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, ((double) Z_LVAL_P(op1)) / Z_LVAL_P(op2));
- ZEND_FLOAT_RESTORE();
}
return SUCCESS;
@@ -985,9 +952,7 @@ ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZVAL_BOOL(result, 0);
return FAILURE; /* division by zero */
}
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) / (double)Z_LVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_LONG, IS_DOUBLE):
@@ -996,9 +961,7 @@ ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZVAL_BOOL(result, 0);
return FAILURE; /* division by zero */
}
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, (double)Z_LVAL_P(op1) / Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
case TYPE_PAIR(IS_DOUBLE, IS_DOUBLE):
@@ -1007,9 +970,7 @@ ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC)
ZVAL_BOOL(result, 0);
return FAILURE; /* division by zero */
}
- ZEND_FLOAT_ENSURE();
ZVAL_DOUBLE(result, Z_DVAL_P(op1) / Z_DVAL_P(op2));
- ZEND_FLOAT_RESTORE();
return SUCCESS;
default:
diff --git a/Zend/zend_stream.c b/Zend/zend_stream.c
index a67fcdab1f..068b30ed87 100644
--- a/Zend/zend_stream.c
+++ b/Zend/zend_stream.c
@@ -49,11 +49,6 @@ static size_t zend_stream_stdio_fsizer(void *handle TSRMLS_DC) /* {{{ */
{
struct stat buf;
if (handle && fstat(fileno((FILE*)handle), &buf) == 0) {
-#ifdef S_ISREG
- if (!S_ISREG(buf.st_mode)) {
- return 0;
- }
-#endif
return buf.st_size;
}
return 0;
@@ -98,11 +93,6 @@ static size_t zend_stream_fsize(zend_file_handle *file_handle TSRMLS_DC) /* {{{
return file_handle->handle.stream.fsizer(file_handle->handle.stream.handle TSRMLS_CC);
}
if (file_handle->handle.fp && fstat(fileno(file_handle->handle.fp), &buf) == 0) {
-#ifdef S_ISREG
- if (!S_ISREG(buf.st_mode)) {
- return 0;
- }
-#endif
return buf.st_size;
}
diff --git a/Zend/zend_strtod.c b/Zend/zend_strtod.c
index 4a3e976d25..a65b738b53 100644
--- a/Zend/zend_strtod.c
+++ b/Zend/zend_strtod.c
@@ -93,7 +93,6 @@
#include <zend_operators.h>
#include <zend_strtod.h>
-#include <zend_float.h>
#ifdef ZTS
#include <TSRM.h>
@@ -1721,7 +1720,14 @@ ZEND_API char * zend_dtoa(double _d, int mode, int ndigits, int *decpt, int *sig
if (value(d) > 0.5 + value(eps))
goto bump_up;
else if (value(d) < 0.5 - value(eps)) {
- while(*--s == '0');
+ /* cut ALL traling zeros only if the number of chars is greater than precision
+ * otherwise cut only extra zeros
+ */
+ if (k < ndigits) {
+ while(*--s == '0' && (s - s0) > k);
+ } else {
+ while(*--s == '0');
+ }
s++;
goto ret1;
}
@@ -2033,7 +2039,6 @@ ret1:
ZEND_API double zend_strtod (CONST char *s00, char **se)
{
- ZEND_FLOAT_DECLARE
int bb2, bb5, bbe, bd2, bd5, bbbits, bs2, c, dsign,
e, e1, esign, i, j, k, nd, nd0, nf, nz, nz0, sign;
CONST char *s, *s0, *s1;
@@ -2046,8 +2051,6 @@ ZEND_API double zend_strtod (CONST char *s00, char **se)
CONST char decimal_point = '.';
- ZEND_FLOAT_ENSURE();
-
sign = nz0 = nz = 0;
value(rv) = 0.;
@@ -2578,7 +2581,7 @@ ret:
}
_THREAD_PRIVATE_MUTEX_UNLOCK(pow5mult_mutex);
- ZEND_FLOAT_RETURN(result);
+ return result;
}
ZEND_API double zend_hex_strtod(const char *str, char **endptr)
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index d8387fcb4f..a86a79b8c8 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -1957,9 +1957,16 @@ ZEND_VM_HANDLER(113, ZEND_INIT_STATIC_METHOD_CALL, CONST|VAR, CONST|TMP|VAR|UNUS
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -1976,7 +1983,7 @@ ZEND_VM_HANDLER(113, ZEND_INIT_STATIC_METHOD_CALL, CONST|VAR, CONST|TMP|VAR|UNUS
}
}
if(OP2_TYPE != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
zend_free_op free_op2;
@@ -1994,7 +2001,7 @@ ZEND_VM_HANDLER(113, ZEND_INIT_STATIC_METHOD_CALL, CONST|VAR, CONST|TMP|VAR|UNUS
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -2067,7 +2074,7 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV)
if (Z_TYPE_P(function_name) == IS_OBJECT &&
Z_OBJ_HANDLER_P(function_name, get_closure) &&
- Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) == SUCCESS) {
+ Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL TSRMLS_CC) == SUCCESS) {
if (EX(object)) {
Z_ADDREF_P(EX(object));
}
@@ -2080,10 +2087,11 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV)
}
function_name_strval = Z_STRVAL_P(function_name);
function_name_strlen = Z_STRLEN_P(function_name);
- if (function_name_strval[0] == '\\') {
+ if (function_name_strval[0] == ':' &&
+ function_name_strval[1] == ':') {
- function_name_strlen -= 1;
- lcname = zend_str_tolower_dup(function_name_strval + 1, function_name_strlen);
+ function_name_strlen -= 2;
+ lcname = zend_str_tolower_dup(function_name_strval + 2, function_name_strlen);
} else {
lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen);
}
@@ -2108,8 +2116,8 @@ ZEND_VM_HANDLER(69, ZEND_INIT_NS_FCALL_BY_NAME, ANY, CONST)
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (zend_hash_quick_find(EG(function_table), Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant)+1, opline->extended_value, (void **) &EX(fbc))==FAILURE) {
- char *short_name = Z_STRVAL(opline->op1.u.constant)+Z_LVAL(op_data->op1.u.constant);
- if (zend_hash_quick_find(EG(function_table), short_name, Z_STRLEN(opline->op1.u.constant)-Z_LVAL(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==FAILURE) {
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==FAILURE ||
+ EX(fbc)->type != ZEND_INTERNAL_FUNCTION) {
zend_error_noreturn(E_ERROR, "Call to undefined function %s()", Z_STRVAL(opline->op2.u.constant));
}
}
@@ -2270,6 +2278,7 @@ ZEND_VM_HELPER(zend_do_fcall_common_helper, ANY, ANY)
EX(function_state).arguments = zend_vm_stack_push_args(opline->extended_value TSRMLS_CC);
if (EX(function_state).function->type == ZEND_INTERNAL_FUNCTION) {
+ zend_error_handling error_handling;
ALLOC_INIT_ZVAL(EX_T(opline->result.u.var).var.ptr);
EX_T(opline->result.u.var).var.ptr_ptr = &EX_T(opline->result.u.var).var.ptr;
EX_T(opline->result.u.var).var.fcall_returned_reference = EX(function_state).function->common.return_reference;
@@ -2284,12 +2293,14 @@ ZEND_VM_HELPER(zend_do_fcall_common_helper, ANY, ANY)
arg_count--;
}
}
+ zend_save_error_handling(&error_handling TSRMLS_CC);
if (!zend_execute_internal) {
/* saves one function call if zend_execute_internal is not used */
((zend_internal_function *) EX(function_state).function)->handler(opline->extended_value, EX_T(opline->result.u.var).var.ptr, EX(function_state).function->common.return_reference?&EX_T(opline->result.u.var).var.ptr:NULL, EX(object), RETURN_VALUE_USED(opline) TSRMLS_CC);
} else {
zend_execute_internal(EXECUTE_DATA, RETURN_VALUE_USED(opline) TSRMLS_CC);
}
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
if (!RETURN_VALUE_USED(opline)) {
zval_ptr_dtor(&EX_T(opline->result.u.var).var.ptr);
@@ -2337,7 +2348,10 @@ ZEND_VM_HELPER(zend_do_fcall_common_helper, ANY, ANY)
/* Not sure what should be done here if it's a static method */
if (EX(object)) {
+ zend_error_handling error_handling;
+ zend_save_error_handling(&error_handling TSRMLS_CC);
Z_OBJ_HT_P(EX(object))->call_method(EX(function_state).function->common.function_name, opline->extended_value, EX_T(opline->result.u.var).var.ptr, &EX_T(opline->result.u.var).var.ptr, EX(object), RETURN_VALUE_USED(opline) TSRMLS_CC);
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
} else {
zend_error_noreturn(E_ERROR, "Cannot call overloaded function for non-object");
}
@@ -2966,31 +2980,46 @@ ZEND_VM_HANDLER(99, ZEND_FETCH_CONSTANT, VAR|CONST|UNUSED, CONST)
zend_op *opline = EX(opline);
if (OP1_TYPE == IS_UNUSED) {
- /* namespaced constant */
- if (!zend_get_constant_ex(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var, NULL, opline->extended_value TSRMLS_CC)) {
- if ((opline->extended_value & IS_CONSTANT_UNQUALIFIED) != 0) {
- char *actual = (char *)zend_memrchr(Z_STRVAL(opline->op2.u.constant), '\\', Z_STRLEN(opline->op2.u.constant));
- if(!actual) {
- actual = Z_STRVAL(opline->op2.u.constant);
- } else {
- actual++;
- }
- /* non-qualified constant - allow text substitution */
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", actual, actual);
- ZVAL_STRINGL(&EX_T(opline->result.u.var).tmp_var, actual, Z_STRLEN(opline->op2.u.constant)-(actual - Z_STRVAL(opline->op2.u.constant)), 1);
- } else {
- zend_error_noreturn(E_ERROR, "Undefined constant '%s'",
- Z_STRVAL(opline->op2.u.constant), Z_STRVAL(opline->op2.u.constant));
+ if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s'", Z_STRVAL(opline->op2.u.constant));
}
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
}
ZEND_VM_NEXT_OPCODE();
} else {
- /* class constant */
zend_class_entry *ce;
zval **value;
if (OP1_TYPE == IS_CONST) {
+ zend_op *op_data = opline + 1;
+ zend_constant *c;
+
+ ZEND_VM_INC_OPCODE();
+
+ /* try a constant in namespace */
+ if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &c)==SUCCESS) {
+ EX_T(opline->result.u.var).tmp_var = c->value;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ ZEND_VM_NEXT_OPCODE();
+ } else if ((opline->extended_value & IS_CONSTANT_RT_NS_CHECK) != 0) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s::%s'", Z_STRVAL(opline->op1.u.constant), Z_STRVAL(opline->op2.u.constant));
+ } else if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ }
+ ZEND_VM_NEXT_OPCODE();
+ }
+ /* no constant found. try a constant in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL(opline->op2.u.constant));
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index abcd410a3e..6f4ef773f5 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -294,6 +294,7 @@ static int ZEND_FASTCALL zend_do_fcall_common_helper_SPEC(ZEND_OPCODE_HANDLER_AR
EX(function_state).arguments = zend_vm_stack_push_args(opline->extended_value TSRMLS_CC);
if (EX(function_state).function->type == ZEND_INTERNAL_FUNCTION) {
+ zend_error_handling error_handling;
ALLOC_INIT_ZVAL(EX_T(opline->result.u.var).var.ptr);
EX_T(opline->result.u.var).var.ptr_ptr = &EX_T(opline->result.u.var).var.ptr;
EX_T(opline->result.u.var).var.fcall_returned_reference = EX(function_state).function->common.return_reference;
@@ -308,12 +309,14 @@ static int ZEND_FASTCALL zend_do_fcall_common_helper_SPEC(ZEND_OPCODE_HANDLER_AR
arg_count--;
}
}
+ zend_save_error_handling(&error_handling TSRMLS_CC);
if (!zend_execute_internal) {
/* saves one function call if zend_execute_internal is not used */
((zend_internal_function *) EX(function_state).function)->handler(opline->extended_value, EX_T(opline->result.u.var).var.ptr, EX(function_state).function->common.return_reference?&EX_T(opline->result.u.var).var.ptr:NULL, EX(object), RETURN_VALUE_USED(opline) TSRMLS_CC);
} else {
zend_execute_internal(execute_data, RETURN_VALUE_USED(opline) TSRMLS_CC);
}
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
if (!RETURN_VALUE_USED(opline)) {
zval_ptr_dtor(&EX_T(opline->result.u.var).var.ptr);
@@ -361,7 +364,10 @@ static int ZEND_FASTCALL zend_do_fcall_common_helper_SPEC(ZEND_OPCODE_HANDLER_AR
/* Not sure what should be done here if it's a static method */
if (EX(object)) {
+ zend_error_handling error_handling;
+ zend_save_error_handling(&error_handling TSRMLS_CC);
Z_OBJ_HT_P(EX(object))->call_method(EX(function_state).function->common.function_name, opline->extended_value, EX_T(opline->result.u.var).var.ptr, &EX_T(opline->result.u.var).var.ptr, EX(object), RETURN_VALUE_USED(opline) TSRMLS_CC);
+ zend_restore_error_handling(&error_handling TSRMLS_CC);
} else {
zend_error_noreturn(E_ERROR, "Cannot call overloaded function for non-object");
}
@@ -749,7 +755,7 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
if (Z_TYPE_P(function_name) == IS_OBJECT &&
Z_OBJ_HANDLER_P(function_name, get_closure) &&
- Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) == SUCCESS) {
+ Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL TSRMLS_CC) == SUCCESS) {
if (EX(object)) {
Z_ADDREF_P(EX(object));
}
@@ -762,10 +768,11 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
}
function_name_strval = Z_STRVAL_P(function_name);
function_name_strlen = Z_STRLEN_P(function_name);
- if (function_name_strval[0] == '\\') {
+ if (function_name_strval[0] == ':' &&
+ function_name_strval[1] == ':') {
- function_name_strlen -= 1;
- lcname = zend_str_tolower_dup(function_name_strval + 1, function_name_strlen);
+ function_name_strlen -= 2;
+ lcname = zend_str_tolower_dup(function_name_strval + 2, function_name_strlen);
} else {
lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen);
}
@@ -790,8 +797,8 @@ static int ZEND_FASTCALL ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPC
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (zend_hash_quick_find(EG(function_table), Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant)+1, opline->extended_value, (void **) &EX(fbc))==FAILURE) {
- char *short_name = Z_STRVAL(opline->op1.u.constant)+Z_LVAL(op_data->op1.u.constant);
- if (zend_hash_quick_find(EG(function_table), short_name, Z_STRLEN(opline->op1.u.constant)-Z_LVAL(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==FAILURE) {
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==FAILURE ||
+ EX(fbc)->type != ZEND_INTERNAL_FUNCTION) {
zend_error_noreturn(E_ERROR, "Call to undefined function %s()", Z_STRVAL(opline->op2.u.constant));
}
}
@@ -946,7 +953,7 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
if (Z_TYPE_P(function_name) == IS_OBJECT &&
Z_OBJ_HANDLER_P(function_name, get_closure) &&
- Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) == SUCCESS) {
+ Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL TSRMLS_CC) == SUCCESS) {
if (EX(object)) {
Z_ADDREF_P(EX(object));
}
@@ -959,10 +966,11 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
}
function_name_strval = Z_STRVAL_P(function_name);
function_name_strlen = Z_STRLEN_P(function_name);
- if (function_name_strval[0] == '\\') {
+ if (function_name_strval[0] == ':' &&
+ function_name_strval[1] == ':') {
- function_name_strlen -= 1;
- lcname = zend_str_tolower_dup(function_name_strval + 1, function_name_strlen);
+ function_name_strlen -= 2;
+ lcname = zend_str_tolower_dup(function_name_strval + 2, function_name_strlen);
} else {
lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen);
}
@@ -1051,7 +1059,7 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
if (Z_TYPE_P(function_name) == IS_OBJECT &&
Z_OBJ_HANDLER_P(function_name, get_closure) &&
- Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) == SUCCESS) {
+ Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL TSRMLS_CC) == SUCCESS) {
if (EX(object)) {
Z_ADDREF_P(EX(object));
}
@@ -1064,10 +1072,11 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
}
function_name_strval = Z_STRVAL_P(function_name);
function_name_strlen = Z_STRLEN_P(function_name);
- if (function_name_strval[0] == '\\') {
+ if (function_name_strval[0] == ':' &&
+ function_name_strval[1] == ':') {
- function_name_strlen -= 1;
- lcname = zend_str_tolower_dup(function_name_strval + 1, function_name_strlen);
+ function_name_strlen -= 2;
+ lcname = zend_str_tolower_dup(function_name_strval + 2, function_name_strlen);
} else {
lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen);
}
@@ -1184,7 +1193,7 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
if (Z_TYPE_P(function_name) == IS_OBJECT &&
Z_OBJ_HANDLER_P(function_name, get_closure) &&
- Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object) TSRMLS_CC) == SUCCESS) {
+ Z_OBJ_HANDLER_P(function_name, get_closure)(function_name, &EX(called_scope), &EX(fbc), &EX(object), NULL TSRMLS_CC) == SUCCESS) {
if (EX(object)) {
Z_ADDREF_P(EX(object));
}
@@ -1197,10 +1206,11 @@ static int ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
}
function_name_strval = Z_STRVAL_P(function_name);
function_name_strlen = Z_STRLEN_P(function_name);
- if (function_name_strval[0] == '\\') {
+ if (function_name_strval[0] == ':' &&
+ function_name_strval[1] == ':') {
- function_name_strlen -= 1;
- lcname = zend_str_tolower_dup(function_name_strval + 1, function_name_strlen);
+ function_name_strlen -= 2;
+ lcname = zend_str_tolower_dup(function_name_strval + 2, function_name_strlen);
} else {
lcname = zend_str_tolower_dup(function_name_strval, function_name_strlen);
}
@@ -2594,9 +2604,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER(
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_CONST == IS_CONST && IS_CONST == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -2613,7 +2630,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER(
}
}
if(IS_CONST != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -2631,7 +2648,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER(
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -2721,31 +2738,46 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_CONST_CONST_HANDLER(ZEND_OPCO
zend_op *opline = EX(opline);
if (IS_CONST == IS_UNUSED) {
- /* namespaced constant */
- if (!zend_get_constant_ex(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var, NULL, opline->extended_value TSRMLS_CC)) {
- if ((opline->extended_value & IS_CONSTANT_UNQUALIFIED) != 0) {
- char *actual = (char *)zend_memrchr(Z_STRVAL(opline->op2.u.constant), '\\', Z_STRLEN(opline->op2.u.constant));
- if(!actual) {
- actual = Z_STRVAL(opline->op2.u.constant);
- } else {
- actual++;
- }
- /* non-qualified constant - allow text substitution */
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", actual, actual);
- ZVAL_STRINGL(&EX_T(opline->result.u.var).tmp_var, actual, Z_STRLEN(opline->op2.u.constant)-(actual - Z_STRVAL(opline->op2.u.constant)), 1);
- } else {
- zend_error_noreturn(E_ERROR, "Undefined constant '%s'",
- Z_STRVAL(opline->op2.u.constant), Z_STRVAL(opline->op2.u.constant));
- }
+ if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s'", Z_STRVAL(opline->op2.u.constant));
+ }
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
}
ZEND_VM_NEXT_OPCODE();
} else {
- /* class constant */
zend_class_entry *ce;
zval **value;
if (IS_CONST == IS_CONST) {
+ zend_op *op_data = opline + 1;
+ zend_constant *c;
+ ZEND_VM_INC_OPCODE();
+
+ /* try a constant in namespace */
+ if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &c)==SUCCESS) {
+ EX_T(opline->result.u.var).tmp_var = c->value;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ ZEND_VM_NEXT_OPCODE();
+ } else if ((opline->extended_value & IS_CONSTANT_RT_NS_CHECK) != 0) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s::%s'", Z_STRVAL(opline->op1.u.constant), Z_STRVAL(opline->op2.u.constant));
+ } else if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ }
+ ZEND_VM_NEXT_OPCODE();
+ }
+
+ /* no constant found. try a constant in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL(opline->op2.u.constant));
@@ -3168,9 +3200,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMP_HANDLER(ZE
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_CONST == IS_CONST && IS_TMP_VAR == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -3187,7 +3226,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMP_HANDLER(ZE
}
}
if(IS_TMP_VAR != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
zend_free_op free_op2;
@@ -3205,7 +3244,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMP_HANDLER(ZE
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -3637,9 +3676,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_VAR_HANDLER(ZE
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_CONST == IS_CONST && IS_VAR == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -3656,7 +3702,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_VAR_HANDLER(ZE
}
}
if(IS_VAR != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
zend_free_op free_op2;
@@ -3674,7 +3720,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_VAR_HANDLER(ZE
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -3862,9 +3908,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_CONST == IS_CONST && IS_UNUSED == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -3881,7 +3934,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER
}
}
if(IS_UNUSED != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -3899,7 +3952,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -4299,9 +4352,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEN
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_CONST == IS_CONST && IS_CV == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -4318,7 +4378,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEN
}
}
if(IS_CV != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -4336,7 +4396,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEN
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -10285,9 +10345,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZE
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_VAR == IS_CONST && IS_CONST == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -10304,7 +10371,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZE
}
}
if(IS_CONST != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -10322,7 +10389,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZE
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -10412,31 +10479,46 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE
zend_op *opline = EX(opline);
if (IS_VAR == IS_UNUSED) {
- /* namespaced constant */
- if (!zend_get_constant_ex(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var, NULL, opline->extended_value TSRMLS_CC)) {
- if ((opline->extended_value & IS_CONSTANT_UNQUALIFIED) != 0) {
- char *actual = (char *)zend_memrchr(Z_STRVAL(opline->op2.u.constant), '\\', Z_STRLEN(opline->op2.u.constant));
- if(!actual) {
- actual = Z_STRVAL(opline->op2.u.constant);
- } else {
- actual++;
- }
- /* non-qualified constant - allow text substitution */
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", actual, actual);
- ZVAL_STRINGL(&EX_T(opline->result.u.var).tmp_var, actual, Z_STRLEN(opline->op2.u.constant)-(actual - Z_STRVAL(opline->op2.u.constant)), 1);
- } else {
- zend_error_noreturn(E_ERROR, "Undefined constant '%s'",
- Z_STRVAL(opline->op2.u.constant), Z_STRVAL(opline->op2.u.constant));
- }
+ if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s'", Z_STRVAL(opline->op2.u.constant));
+ }
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
}
ZEND_VM_NEXT_OPCODE();
} else {
- /* class constant */
zend_class_entry *ce;
zval **value;
if (IS_VAR == IS_CONST) {
+ zend_op *op_data = opline + 1;
+ zend_constant *c;
+
+ ZEND_VM_INC_OPCODE();
+
+ /* try a constant in namespace */
+ if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &c)==SUCCESS) {
+ EX_T(opline->result.u.var).tmp_var = c->value;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ ZEND_VM_NEXT_OPCODE();
+ } else if ((opline->extended_value & IS_CONSTANT_RT_NS_CHECK) != 0) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s::%s'", Z_STRVAL(opline->op1.u.constant), Z_STRVAL(opline->op2.u.constant));
+ } else if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ }
+ ZEND_VM_NEXT_OPCODE();
+ }
+ /* no constant found. try a constant in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL(opline->op2.u.constant));
@@ -12117,9 +12199,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMP_HANDLER(ZEND
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_VAR == IS_CONST && IS_TMP_VAR == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -12136,7 +12225,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMP_HANDLER(ZEND
}
}
if(IS_TMP_VAR != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
zend_free_op free_op2;
@@ -12154,7 +12243,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMP_HANDLER(ZEND
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -13944,9 +14033,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_VAR_HANDLER(ZEND
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_VAR == IS_CONST && IS_VAR == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -13963,7 +14059,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_VAR_HANDLER(ZEND
}
}
if(IS_VAR != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
zend_free_op free_op2;
@@ -13981,7 +14077,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_VAR_HANDLER(ZEND
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -14864,9 +14960,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER(Z
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_VAR == IS_CONST && IS_UNUSED == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -14883,7 +14986,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER(Z
}
}
if(IS_UNUSED != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -14901,7 +15004,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER(Z
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -16378,9 +16481,16 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_
zend_ptr_stack_3_push(&EG(arg_types_stack), EX(fbc), EX(object), EX(called_scope));
if (IS_VAR == IS_CONST && IS_CV == IS_CONST) {
+ /* try a function in namespace */
+ zend_op *op_data = opline+1;
ZEND_VM_INC_OPCODE();
+ if (zend_hash_quick_find(EG(function_table), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &EX(fbc))==SUCCESS) {
+ EX(object) = NULL;
+ ZEND_VM_NEXT_OPCODE();
+ }
+
/* no function found. try a static method in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
@@ -16397,7 +16507,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_
}
}
if(IS_CV != IS_UNUSED) {
- char *function_name_strval = NULL;
+ char *function_name_strval;
int function_name_strlen = 0;
@@ -16415,7 +16525,7 @@ static int ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_
}
}
- if (function_name_strval) {
+ if (function_name_strlen) {
if (ce->get_static_method) {
EX(fbc) = ce->get_static_method(ce, function_name_strval, function_name_strlen TSRMLS_CC);
} else {
@@ -17740,31 +17850,46 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPC
zend_op *opline = EX(opline);
if (IS_UNUSED == IS_UNUSED) {
- /* namespaced constant */
- if (!zend_get_constant_ex(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var, NULL, opline->extended_value TSRMLS_CC)) {
- if ((opline->extended_value & IS_CONSTANT_UNQUALIFIED) != 0) {
- char *actual = (char *)zend_memrchr(Z_STRVAL(opline->op2.u.constant), '\\', Z_STRLEN(opline->op2.u.constant));
- if(!actual) {
- actual = Z_STRVAL(opline->op2.u.constant);
- } else {
- actual++;
- }
- /* non-qualified constant - allow text substitution */
- zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'", actual, actual);
- ZVAL_STRINGL(&EX_T(opline->result.u.var).tmp_var, actual, Z_STRLEN(opline->op2.u.constant)-(actual - Z_STRVAL(opline->op2.u.constant)), 1);
- } else {
- zend_error_noreturn(E_ERROR, "Undefined constant '%s'",
- Z_STRVAL(opline->op2.u.constant), Z_STRVAL(opline->op2.u.constant));
- }
+ if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s'", Z_STRVAL(opline->op2.u.constant));
+ }
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
}
ZEND_VM_NEXT_OPCODE();
} else {
- /* class constant */
zend_class_entry *ce;
zval **value;
if (IS_UNUSED == IS_CONST) {
+ zend_op *op_data = opline + 1;
+ zend_constant *c;
+
+ ZEND_VM_INC_OPCODE();
+
+ /* try a constant in namespace */
+ if (zend_hash_quick_find(EG(zend_constants), Z_STRVAL(op_data->op1.u.constant), Z_STRLEN(op_data->op1.u.constant)+1, op_data->extended_value, (void **) &c)==SUCCESS) {
+ EX_T(opline->result.u.var).tmp_var = c->value;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ ZEND_VM_NEXT_OPCODE();
+ } else if ((opline->extended_value & IS_CONSTANT_RT_NS_CHECK) != 0) {
+ if (opline->extended_value & ZEND_FETCH_CLASS_RT_NS_CHECK) {
+ zend_error_noreturn(E_ERROR, "Undefined constant '%s::%s'", Z_STRVAL(opline->op1.u.constant), Z_STRVAL(opline->op2.u.constant));
+ } else if (!zend_get_constant(Z_STRVAL(opline->op2.u.constant), Z_STRLEN(opline->op2.u.constant), &EX_T(opline->result.u.var).tmp_var TSRMLS_CC)) {
+ zend_error(E_NOTICE, "Use of undefined constant %s - assumed '%s'",
+ Z_STRVAL(opline->op2.u.constant),
+ Z_STRVAL(opline->op2.u.constant));
+ EX_T(opline->result.u.var).tmp_var = opline->op2.u.constant;
+ zval_copy_ctor(&EX_T(opline->result.u.var).tmp_var);
+ }
+ ZEND_VM_NEXT_OPCODE();
+ }
+ /* no constant found. try a constant in class */
ce = zend_fetch_class(Z_STRVAL(opline->op1.u.constant), Z_STRLEN(opline->op1.u.constant), opline->extended_value TSRMLS_CC);
if (!ce) {
zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL(opline->op2.u.constant));