Nikita Popov
6aa55a28b5
Fix intl build
...
class is a reserved keyword in C++...
2019-01-04 11:03:03 +01:00
Nikita Popov
290adc4132
Introduce separate ZEND_AST_CLASS_NAME AST node
...
Instead of representing this as a ZEND_AST_CLASS_CONST with a
"class" constant name.
Class constants and ::class are unrelated features that happen to
share syntax, so represent and handle them separately.
2019-01-04 10:49:23 +01:00
Nikita Popov
03094c7af3
Merge branch 'PHP-7.3'
2019-01-04 09:53:36 +01:00
Nikita Popov
1ed20669c5
Merge branch 'PHP-7.2' into PHP-7.3
2019-01-04 09:53:30 +01:00
Nikita Popov
41af1e6781
Fix self::class inside constant in global scope
...
Previously this triggered an assertion failure. The behavior is
not quite correct, in that self::class should generate an exception
if there is no self, but returns an empty string here. Fixing that
would be a bit too intrusive for the 7.2 branch.
2019-01-04 09:52:04 +01:00
Nikita Popov
beaea5c560
Merge branch 'PHP-7.3'
2019-01-03 10:26:17 +01:00
Nikita Popov
5a361c3a54
Possible fix for bug #77357
...
Don't invoke CPUID with feature levels above the supported maximum.
In this case CPUID will return the highest supported basic information
leaf, which will have unrelated bits in the relevant positions.
2019-01-03 10:24:48 +01:00
Nikita Popov
fe359cf1ff
Fix undefined function error message
...
This got fixed on 7.3, but the implementation is slightly different
on master and the new test was failing.
2019-01-02 15:41:38 +01:00
Nikita Popov
f9208e9bf8
Merge branch 'PHP-7.3'
2019-01-02 11:34:24 +01:00
Nikita Popov
613683580b
Merge branch 'PHP-7.2' into PHP-7.3
2019-01-02 11:34:15 +01:00
Nikita Popov
73596c56e7
Partial fix for bug #75426
...
This does not print the exact line of the comma, but rather the line
of the previous element. This should generally be "good enough", as
the line number is close (off by one) to the actual issue now.
Previously it would point to the start of the array, which may be
very far away.
2019-01-02 11:32:48 +01:00
Nikita Popov
636b1c3d26
Drop _ex from zend_compile_class_ref_ex
...
The non-ex version no longer exists.
2019-01-02 09:56:40 +01:00
Xinchen Hui
384b02d058
Fixed bug #77387 (Recursion detection broken when printing GLOBALS)
2019-01-02 16:42:21 +08:00
Xinchen Hui
54a58a7380
Fixed bug #77387 (Recursion detection broken when printing GLOBALS)
2019-01-02 16:42:05 +08:00
Xinchen Hui
1a0c325b89
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed bug #77376 ("undefined function" message no longer includes namespace)
2019-01-02 15:32:29 +08:00
Xinchen Hui
e01f08f679
Fixed bug #77376 ("undefined function" message no longer includes namespace)
2019-01-02 15:32:17 +08:00
Anatol Belski
e1ec033d1b
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Add memory check to the test
2018-12-29 16:23:54 +01:00
Anatol Belski
2567eba330
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Add memory check to the test
2018-12-29 16:23:24 +01:00
Anatol Belski
222fa032d2
Add memory check to the test
2018-12-29 16:22:31 +01:00
Dmitry Stogov
b8d6aac5ad
Micro optimization
2018-12-28 15:34:33 +03:00
Dmitry Stogov
617c90bcb9
Eliminate zend_string_destroy() wrapper in release build
2018-12-28 15:25:57 +03:00
Dmitry Stogov
76d8f3923e
Revert HASH_FLAG_INITIALIZED into HASH_FLAG_UNINITIALIZED.
2018-12-28 11:22:18 +03:00
Dmitry Stogov
675a8a64c3
Use HT_IS_INITIALIZED() and HT_INVALIDATE() macros instead of hackish HT_FLAGS assumtions.
2018-12-27 22:48:25 +03:00
Dmitry Stogov
e8daada82e
Tune ARRAY_KEY_EXISTS opcode handler for speed and code size
2018-12-27 02:34:52 +03:00
Dmitry Stogov
70fcbe3524
Fixed ext/spl/tests/bug61347.phpt failure introduced by ZEND_ARRAY_KEY_EXISTS opcode
2018-12-27 00:20:20 +03:00
Michael Moravec
f5044a12dd
Implement ZEND_ARRAY_KEY_EXISTS opcode to speed up array_key_exists()
2018-12-26 23:54:11 +03:00
Anatol Belski
f44d53bb4a
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed bug #77317 __DIR__, __FILE__, realpath() reveal physical path for subst virtual drive
2018-12-26 13:05:46 +01:00
Anatol Belski
199914b42d
Fixed bug #77317 __DIR__, __FILE__, realpath() reveal physical path for subst virtual drive
...
Keep compatibility with 7.2 and below which better comply with
realpath(3). This might have been fixable another way, say by checking
of QueryDosDevice or alike, sadly that comes with a huge performance
impact. The new internal realpath API is kept available so is
usable when bind or network mount or other OS specific realpath
variants are needed. If not used by default, a userspace function for
this specific case might be considered to be offered in next minor.
2018-12-26 12:59:00 +01:00
Dmitry Stogov
95d8e05554
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Respect EG(vm_stack_page_size)
2018-12-26 13:10:02 +03:00
Dmitry Stogov
b45774eed0
Respect EG(vm_stack_page_size)
2018-12-26 13:09:32 +03:00
Dmitry Stogov
d90a5d2e1a
Micro optimization
2018-12-26 12:30:30 +03:00
Dmitry Stogov
636b16402b
Fixed crashes introduced by 7e597f48e9
(only master was affected)
2018-12-25 23:30:59 +03:00
Dmitry Stogov
a111dfae0b
Removed dead condition
2018-12-25 19:23:40 +03:00
Dmitry Stogov
2954a309de
Avoid code duplication
2018-12-25 17:48:29 +03:00
Dmitry Stogov
5888fbde0d
Backport later interned strings destruction.
2018-12-24 13:45:02 +03:00
Dmitry Stogov
773ed62555
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed bug #77339 (__callStatic may get incorrect arguments)
2018-12-24 13:25:24 +03:00
Dmitry Stogov
ddfb44f2cf
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #77339 (__callStatic may get incorrect arguments)
2018-12-24 13:23:47 +03:00
Dmitry Stogov
7e597f48e9
Fixed bug #77339 (__callStatic may get incorrect arguments)
2018-12-24 13:22:43 +03:00
Dmitry Stogov
6ccdb904ae
Fixed ws
2018-12-21 19:03:28 +03:00
Dmitry Stogov
7155239669
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Removed /e modifirer and fixed ws.
2018-12-21 19:01:36 +03:00
Dmitry Stogov
95193c3872
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Removed /e modifirer and fixed ws.
2018-12-21 19:01:18 +03:00
Dmitry Stogov
8db63adb6d
Removed /e modifirer and fixed ws.
2018-12-21 18:58:50 +03:00
Dmitry Stogov
d6f4652255
Added specialized code for small arrays
2018-12-20 17:55:01 +03:00
Dmitry Stogov
dddf3c501e
Added specialized code for small arrays
2018-12-19 17:40:34 +03:00
Dmitry Stogov
493f830355
Reuse add_property_zval_ex() instead of code duplication
2018-12-19 17:24:56 +03:00
Dmitry Stogov
d356f6d72b
Removed add_get_assoc_*() and add_get_index_*() API functions
2018-12-19 16:47:48 +03:00
Dmitry Stogov
85e1df6fdc
Replace add_index_zval() and add_next_index_zval() functions by macros
2018-12-19 16:43:38 +03:00
Dmitry Stogov
cec091176c
Replace zend_hash_apply... with ZEND_HASH_FOREACH...
2018-12-19 02:49:56 +03:00
Dmitry Stogov
ae9e956ef9
Reorder conditions
2018-12-18 23:23:44 +03:00
Dmitry Stogov
868c1b7377
Reduce executor size
2018-12-18 17:34:18 +03:00