Commit Graph

13731 Commits

Author SHA1 Message Date
Christoph M. Becker
6da3a1e3ce Revert "Implement #67331: Have parse_ini_file add empty entries"
This reverts commit 3f3e914df3.

The commit broke some tests on Windows, and generally needs more
though.
2018-09-15 17:08:58 +02:00
Christoph M. Becker
3f3e914df3 Implement #67331: Have parse_ini_file add empty entries
Some INI processors allow to specify empty values by just giving the
key without the equals sign, for instance MySQL and Python.  It appears
to be sensible to add this possibility to our INI parser, so that it
can be used for such INI files as well.  We choose NULL as the value of
empty values.

This syntactical enhancement is a (minor) BC break, though, as can be
seen by the necessary change to bug49692.ini.  The “comment” formerly
has been simply ignored, but now it would be parsed as key with an
empty value.

This PR is based on Adam's former patch.
2018-09-15 15:37:01 +02:00
Dmitry Stogov
7eb255e9db Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed bug #76800 (foreach inconsistent if array modified during loop)
2018-09-14 10:33:32 +03:00
Dmitry Stogov
17c7b71057 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fixed bug #76800 (foreach inconsistent if array modified during loop)
2018-09-14 10:32:31 +03:00
Dmitry Stogov
3bc4a63fc2 Fixed bug #76800 (foreach inconsistent if array modified during loop) 2018-09-14 10:28:31 +03:00
Dmitry Stogov
49b92446d7 Remove zend_check_private() 2018-09-13 13:47:06 +03:00
Dmitry Stogov
bc288c4723 Simplify __clone() visibility check (magic methods still don't respect ZEND_ACC_CHANGED). 2018-09-13 13:36:09 +03:00
Dmitry Stogov
72bf2def6b Make visibilty check in is_callable() to be consistent with zend_std_get_method() 2018-09-13 12:24:59 +03:00
Dmitry Stogov
a12cd1c5e0 Split error code into "cold" functions and cleanup. 2018-09-13 10:31:49 +03:00
Dmitry Stogov
e1ef054be5 Micro-optimization (condition reordering) 2018-09-13 09:31:38 +03:00
Dmitry Stogov
eb4148e02d typo 2018-09-13 08:49:21 +03:00
Dmitry Stogov
f79270d876 Micro-optimization 2018-09-13 01:41:19 +03:00
Dmitry Stogov
cdeebfd4af Avoid unnecesury iterations over parent classes, in case of no overriden private properties. 2018-09-12 23:47:52 +03:00
Dmitry Stogov
5293dd9d8b Optimize method/property visibility checks 2018-09-12 18:59:12 +03:00
Dmitry Stogov
3444c260a2 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed bug #76869 (Incorrect bypassing protected method accessibilty check).
2018-09-12 12:27:48 +03:00
Dmitry Stogov
655a99d131 Fixed bug #76869 (Incorrect bypassing protected method accessibilty check). 2018-09-12 12:16:50 +03:00
Dmitry Stogov
beb3594eb8 Better ZEND_ACC_CHANGED handling 2018-09-12 11:43:15 +03:00
Dmitry Stogov
aee4b145ef Optimisation: Check for private property in parent class makes sense only if we already found a property info. Check for property started with "\\0" makes sense only if we didn't find property info. 2018-09-12 09:57:36 +03:00
Dmitry Stogov
73efd1b651 Simplify method visibility checks 2018-09-12 08:31:01 +03:00
Dmitry Stogov
1cc0d78c9b This increment is not necessary anymore. 2018-09-11 22:56:31 +03:00
Dmitry Stogov
06f056a760 Additional fix for bug #76860. 2018-09-11 18:29:27 +03:00
Dmitry Stogov
0fbd2e6a16 Renumber ZEND_ACC_... flags 2018-09-11 17:21:17 +03:00
Dmitry Stogov
1570fe180f Removed weird test, trait can't be "static" or "final". 2018-09-11 17:07:06 +03:00
Nikita Popov
e1123e3e4e Drop unused variable 2018-09-11 15:16:11 +02:00
Dmitry Stogov
034b7ff091 Get rid of ZEND_ACC_IMPLICIT_PUBLIC 2018-09-11 12:26:26 +03:00
Dmitry Stogov
5c39b2c328 Added test for bug #76860 (Missed "Accessing static property as non static" warning).
It's already fixed by previous commit.
2018-09-11 12:10:14 +03:00
Dmitry Stogov
3a249e769b Squashed commit of the following:
commit 2d3cac9e00
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Sep 11 11:54:47 2018 +0300

    Fixed static property access

commit 31786ee272
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Sep 11 11:05:29 2018 +0300

    Avoid duplicate checks

commit 5ae502b979
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Sep 11 10:39:17 2018 +0300

    Optimization

commit 82c17f0e8a
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Sep 11 09:26:50 2018 +0300

    Removed unused zend_duplicate_property_info()

commit ba53d1d0dd
Merge: eacc11b8fd c4b14370cf
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Sep 11 09:24:13 2018 +0300

    Merge branch 'master' into shadow

    * master:
      7.0.33 next
      Sync NEWS [ci skip]
      add NEWS for 76582
      Enforce ordering of property compare in object comparisons
      Fixed wrong assertion
      Skip test on unsuitable env

commit eacc11b8fd
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Sep 10 13:12:39 2018 +0300

    Fixed failure of ext/spl/tests/array_017.phpt

commit 62d1871430
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Sep 10 11:55:07 2018 +0300

    Fixed issues

commit 1d37e3a40e
Merge: d6c3f098b6 1e550e6f7e
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Sep 10 10:21:20 2018 +0300

    Merge branch 'master' into shadow

    * master:
      Update NEWS
      Fix for bug #76582
      Fix ssl stream reneg limit test to print only after first renegotiation
      Make a copy unconditionally
      Fix memory leak in pcre cache
      Remove not needed checking for <errno.h>
      Remove HAVE_ASSERT_H
      Add test for bug #76850
      Fixed bug #76850 Exit code mangled by set locale/preg_match
      Remove empty PHP tags from test
      Fix #75273: php_zlib_inflate_filter() may not update bytes_consumed
      Fix PCRE2 exclusion and remove dead libs in Makefile.gcov
      Report mem leaks to stderr if no Win debugger is present
      Use combined assignment contanation operator
      Fixed bug #76796
      Support fixed address mmap without replacement

commit d6c3f098b6
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Fri Sep 7 13:56:30 2018 +0300

    Get rid of ZEND_ACC_SHADOW
2018-09-11 11:56:45 +03:00
Sara Golemon
7f56150ef2 Merge branch 'PHP-7.3'
* PHP-7.3:
  Enforce ordering of property compare in object comparisons
2018-09-10 08:56:19 -04:00
Sara Golemon
a26a107aae Enforce ordering of property compare in object comparisons 2018-09-10 08:47:50 -04:00
Nikita Popov
100733f86b Merge branch 'PHP-7.3' 2018-09-07 12:10:15 +02:00
David Carlier
f7b573b4e9 Support fixed address mmap without replacement
Reapply changes for Zend fixed mapping but only for FreeBSD.
Other BSD might expose some day a similar flag (private
for OpenBSD for the moment for example).
The Linux's part could be brought back but not before 7.4,
at this time, distributions with kernel > 4.17 will be
more widely available.
2018-09-07 12:10:05 +02:00
Peter Kokot
b1f65fb25b Remove netware header
Netware system is discontinued and support has been removed from PHP
source code.
2018-09-06 05:20:37 +02:00
Dmitry Stogov
25d43cab8c Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed support for commutative "user opcodes"
2018-09-05 22:11:36 +03:00
Dmitry Stogov
1d36c3361f Fixed support for commutative "user opcodes" 2018-09-05 22:11:10 +03:00
Dmitry Stogov
8939c4d96b Get rid of ZEND_ACC_CTOR, ZEND_ACC_DTOR and ZEND_ACC_IMPLEMENTED_ABSTRACT 2018-09-05 13:16:10 +03:00
Peter Kokot
6db3c105f2
Remove AC_FUNC_MEMCMP
Autoconf 2.59d (released in 2006) [1] started promoting several macros
as not relevant for newer systems anymore, including the `AC_FUNC_MEMCMP`.

On some old systems such as SunOS 4.1.3 (EOL in 2003) and NeXT x86
OpenStep (discontinued) the `memcmp` function wasn't present or it
didn't work properly. [2]

On current systems including at least Solaris 10+ this check is not
relevant anymore.

Refs:
[1] http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS
[2] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
2018-09-04 12:02:47 +02:00
Xinchen Hui
6078491720 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed bug #76825 (Undefined symbols ___cpuid_count)
2018-09-04 17:26:56 +08:00
Xinchen Hui
3497b75b73 Fixed bug #76825 (Undefined symbols ___cpuid_count) 2018-09-04 17:26:46 +08:00
Nikita Popov
ee33c943e7 Merge branch 'PHP-7.3' 2018-09-04 08:09:22 +02:00
Nikita Popov
d36230fcab Fix incorrect literal freeing if pass_two generates fatal error 2018-09-04 08:08:39 +02:00
Dmitry Stogov
437e91e194 Keep collision list ordered from higher to lower buckets. 2018-09-04 01:19:07 +03:00
Dmitry Stogov
887e126240 Fixed condition 2018-09-03 14:50:35 +03:00
Dmitry Stogov
a57ec0aeb5 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fixed reference-countingin ZTS build.
2018-09-03 10:21:55 +03:00
Dmitry Stogov
bc731f8e7a Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fixed reference-countingin ZTS build.
2018-09-03 10:21:42 +03:00
Dmitry Stogov
accf5ed621 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed reference-countingin ZTS build.
2018-09-03 10:21:32 +03:00
Dmitry Stogov
7fde2243a7 Fixed reference-countingin ZTS build. 2018-09-03 10:20:40 +03:00
Christoph M. Becker
df9e75cad7 Merge branch 'PHP-7.3'
* PHP-7.3:
  Fix #76820: Z_COPYABLE invalid definition
2018-08-30 18:01:29 +02:00
Christoph M. Becker
c5231ad394 Fix #76820: Z_COPYABLE invalid definition
We remove the extraneous parenthesis.
2018-08-30 18:00:51 +02:00
Remi Collet
2e4489fdf4 Merge branch 'PHP-7.3'
* PHP-7.3:
  fix double cast to int on 32-bit
2018-08-30 09:05:01 +02:00
Remi Collet
cf6c32545e Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  fix double cast to int on 32-bit
2018-08-30 09:04:43 +02:00