Andrea Faulds
3f468cd1c7
Removed unused variable
2014-08-17 20:21:12 +01:00
Andrea Faulds
6d187d53ae
Fixed and cleaned up implementaton of Closure::call() for phpng
2014-08-17 20:20:23 +01:00
Anatol Belski
f2182ab845
some more pure naming replacements
2014-08-17 21:16:27 +02:00
Anatol Belski
025a7c304e
fix THIS_HASHVAL
2014-08-17 21:04:52 +02:00
Nikita Popov
1bab755a35
Fix GC when opcache is in use
2014-08-17 19:15:54 +02:00
Andrea Faulds
e35c8ae13e
Merge branch 'master' into Closure_apply
...
Conflicts:
Zend/zend_closures.c
Zend/zend_closures.h
Zend/zend_execute_API.c
Zend/zend_vm_def.h
2014-08-17 17:20:02 +01:00
Anatol Belski
90d6f60bc1
mostly fixes to spl, but also some other
2014-08-17 13:31:39 +02:00
Nikita Popov
84e757d22d
Drop znode extended attribute and unused union members
2014-08-17 00:37:45 +02:00
Nikita Popov
904a83a137
Merge remote-tracking branch 'php-src/master' into ast
...
Conflicts:
ext/opcache/Optimizer/optimize_func_calls.c
2014-08-16 22:31:13 +02:00
Nikita Popov
ee3d28ed33
Fix compile_args semantics
2014-08-16 22:29:15 +02:00
Nikita Popov
ef5f3390e7
Implement a[0] syntax from merge
2014-08-16 22:13:33 +02:00
Nikita Popov
38a173916c
Fix merge
2014-08-16 22:08:02 +02:00
Nikita Popov
71675a4bf8
Merge remote-tracking branch 'php-src/phpng' into ast
...
Conflicts:
Zend/zend_ast.c
Zend/zend_compile.c
Zend/zend_language_parser.y
Incomplete merge!
2014-08-16 21:55:08 +02:00
Anatol Belski
864172d9a4
further fixes to ext/standard and zend
2014-08-16 17:31:40 +02:00
Anatol Belski
5bb25776a0
further fixes on core
2014-08-16 15:34:04 +02:00
Anatol Belski
1169de3e61
fix some cases with fast zpp
2014-08-16 14:00:02 +02:00
Anatol Belski
b7e7a89541
several fixes -
...
- param parsing Z_PARAM_STR vs Z_PARAM_STRING
- some functions for new params
- etc
2014-08-16 12:55:13 +02:00
Anatol Belski
cb25136f4e
fix macros in the 5 basic extensions
2014-08-16 11:37:14 +02:00
Anatol Belski
8ee2a4a9b5
first shot on merging the core fro the int64 branch
2014-08-16 11:16:11 +02:00
Nikita Popov
9cfbf333b0
Fix list() = string refcounting
2014-08-15 22:36:22 +02:00
Nikita Popov
919cb32f72
Fix memory usage test
...
Can't use peak memory usage because memory usage during compilation
is now larger
2014-08-15 17:44:15 +02:00
Nikita Popov
471f13b75e
Fix s&r mistake
2014-08-15 17:27:57 +02:00
Nikita Popov
c4460dd162
Restore old evaluation order
...
${a()}[b()][c()] = d() will now evaluate in order a, b, c, d.
2014-08-15 17:10:06 +02:00
Dmitry Stogov
b01b971ec0
Parameters with duplicate names are not allowed anymore in PHP7.
2014-08-15 11:46:04 +04:00
Dmitry Stogov
0d57a7bf34
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Update Version Number :)
Fixed initializing
Unused variable
Conflicts:
main/php_version.h
2014-08-15 11:13:42 +04:00
Dmitry Stogov
d9f3eac12f
Bump version to 7.0.0-dev
2014-08-15 11:10:41 +04:00
Xinchen Hui
d7f12b9b9c
Fixed initializing
2014-08-15 13:52:52 +08:00
Dmitry Stogov
6463bc5b55
Fixed mode
2014-08-14 23:54:32 +04:00
Dmitry Stogov
c78a1734c2
Fixed compilation warnings
2014-08-14 23:53:27 +04:00
Dmitry Stogov
773d80c6df
Fixed support for references
2014-08-14 22:44:25 +04:00
Dmitry Stogov
e7ffdb2654
Fixed support for references
2014-08-14 21:54:57 +04:00
Dmitry Stogov
05ca575bbb
Fixed reference support (references to references are not allowed)
2014-08-14 17:00:01 +04:00
Dmitry Stogov
e430948581
Fixed reference handling
2014-08-14 15:07:39 +04:00
Dmitry Stogov
2ece977c80
Fixed conversion of empty packed array into hash
2014-08-14 13:44:37 +04:00
Dmitry Stogov
25bda5ae3c
Fixed assignment of reference to itself
2014-08-14 12:01:28 +04:00
Xinchen Hui
c749fe2067
cleanup
2014-08-14 12:15:24 +08:00
Dmitry Stogov
8013a27ad9
Implemented ext/com_dotnet support for phpng
2014-08-11 18:37:26 +04:00
Dmitry Stogov
0ae305e62d
Fixed compilation warnings about unused labels
2014-08-11 10:17:06 +04:00
krakjoe
1d01e2334c
fix incorrect cast of comparison function and signature of function
2014-08-11 06:47:09 +01:00
krakjoe
dc70139d85
update zend_make_printable_zval to take TSRM context
2014-08-11 06:09:46 +01:00
krakjoe
4513475a41
fix ZTS build
2014-08-10 09:31:02 +01:00
Dmitry Stogov
4a3e501fb3
cleanup
2014-08-08 13:47:34 +04:00
Dmitry Stogov
50a76860bd
Fixed GC for inner-loops (ext/standard/tests/array/compact_variation1.phpt).
...
Fixed bug #63734 .
2014-08-07 18:50:03 +04:00
Dmitry Stogov
414762fc12
Fixed GC (Zend/tests/bug63635.phpt)
2014-08-06 15:31:07 +04:00
Dmitry Stogov
e677e8cc87
Fixed ext/wddx/tests/bug48562.phpt
2014-08-05 23:48:27 +04:00
Dmitry Stogov
ce1af1e47b
Fixed bug #67725 (now we create immutable arrays only in SHM)
2014-08-05 15:38:43 +04:00
Dmitry Stogov
7301994c28
Merge branch 'master' into phpng
...
* master: (46 commits)
PHP_INT_MIN and _MAX tests
NEWS and UPGRADING
Added PHP_INT_MIN
Fix wrong lenght size
Bug #51096 - Remove unnecessary ? for first/last day of
Moved streams related functions to xp_ssl.c
Remove duplicate NEWS
Update NEWS
Update NEWS
Update NEWS
BFN
BFN
Fixed bug #67715 (php-milter does not build and crashes randomly).
We need to turn off any strict mode here for this warning to show up
Disable restrictions regarding arrays in constants at run-time. For the discussion around it, see the thread on the mailing list: http://www.mail-archive.com/internals@lists.php.net/msg68245.html
Revert "Fix bug #67064 in a BC safe way"
Updated NEWS for #67693
Updated NEWS for #67693
Fixed bug #67693 - incorrect push to the empty array
add missing entry to NEWS
...
Conflicts:
Zend/tests/errmsg_040.phpt
Zend/tests/ns_059.phpt
Zend/zend_language_parser.y
Zend/zend_vm_def.h
ext/openssl/openssl.c
ext/reflection/php_reflection.c
ext/session/session.c
ext/spl/spl_directory.c
ext/spl/spl_iterators.c
ext/sqlite3/sqlite3.c
ext/standard/array.c
2014-08-04 13:56:27 +04:00
Andrea Faulds
668d0683cd
Fixed closure::bindTo bad args test
2014-08-03 14:48:14 +01:00
Andrea Faulds
a748f454a8
Merge branch 'master' into Closure_apply
2014-08-01 17:02:11 +01:00
Dmitry Stogov
c201ba8fff
execute_data->return_value should be initialized when call internal constructors
2014-07-31 10:51:49 +04:00
Dmitry Stogov
f693cf8e66
EA must be initialized
2014-07-31 10:50:27 +04:00
Nikita Popov
6cf89612db
Support doc comments for propreties
2014-07-30 19:12:48 +02:00
Nikita Popov
8e9a840a53
Mark some small functions as inline
2014-07-30 18:27:41 +02:00
Bob Weinand
3c0adf2dcd
Merge branch 'PHP-5.6'
2014-07-30 18:07:01 +02:00
Bob Weinand
d5ddd2dbb2
Disable restrictions regarding arrays in constants at run-time.
...
For the discussion around it, see the thread on the mailing list:
http://www.mail-archive.com/internals@lists.php.net/msg68245.html
2014-07-30 17:57:07 +02:00
Nikita Popov
ad5677e4cd
Use ZVAL_COPY until proven wrong
2014-07-30 17:46:00 +02:00
Nikita Popov
0cd9cffb51
Rename _tmp_compile_const_expr
...
Also remove recursive immutization of arrays there, because this
is already handled when the array is created.
2014-07-30 17:44:43 +02:00
Nikita Popov
044e48d0b1
Weaker recursion during pre-evaluation
2014-07-30 17:29:59 +02:00
Nikita Popov
3630f03f8f
Immutable arrays for the recursive case as well
2014-07-30 13:43:04 +02:00
Andrea Faulds
85bf8b4ff1
Fixed unbound scoped closure edge cases and added tests for them
2014-07-30 03:21:44 +01:00
Andrea Faulds
f65bdda469
Rename ::apply to ::call for the sake of JS consistency
2014-07-30 01:26:53 +01:00
Nikita Popov
8cab06f09b
Immutablize constant leaf arrays
...
Still haven't entirely figured out how to elegantly handle the
recursive variant.
2014-07-29 23:31:49 +02:00
Nikita Popov
6a13a22f9d
Fix segfault when class name evaluates to IS_CONST
2014-07-29 23:17:54 +02:00
Nikita Popov
763eb13d6e
Formatting
2014-07-29 21:00:19 +02:00
Andrea Faulds
d67ec70a4c
Added test for unbound_scoped
2014-07-29 19:08:21 +01:00
Nikita Popov
438b1e3d42
build_runtime_definition_key returns zend_string*
2014-07-29 20:01:11 +02:00
Andrea Faulds
ded5b3fda4
Added optional bool param $unbound_scoped to Closure::bind and ::bindTo
2014-07-29 18:59:36 +01:00
Dmitry Stogov
70fb0e7519
Fixed incinsitency in passing arguments by reference to call_user_func()
2014-07-29 20:27:48 +04:00
Dmitry Stogov
507e3b9193
fixed support for references
2014-07-29 15:29:22 +04:00
Dmitry Stogov
cad6408a3f
Fixed Zend/tests/bug54265.phpt
2014-07-29 14:34:43 +04:00
Dmitry Stogov
046db57049
Fixed incorrect destruction (it might lead to crash)
2014-07-29 12:13:47 +04:00
Dmitry Stogov
21dec5f511
ext/interbase support (incomplete)
2014-07-29 10:15:01 +04:00
Andrea Faulds
167128d854
Implemented Closure::apply
2014-07-29 02:36:17 +01:00
Nikita Popov
18f0680779
Change current_namespace to a zend_string*
2014-07-28 22:38:26 +02:00
Nikita Popov
047a994830
For filenames a pointer comparison is sufficient
2014-07-28 22:30:24 +02:00
Nikita Popov
e9fb72c8ea
Rename to zend_str_equals_literal and turn into a macro
...
So we can make of sizeof rather than strlen
2014-07-28 22:20:43 +02:00
Nikita Popov
c8d3b5909e
zend_str_equals_str(_ci)
2014-07-28 22:16:24 +02:00
Nikita Popov
8c724c205d
Use zend_str_equals more often
2014-07-28 22:07:11 +02:00
Nikita Popov
7889050685
Add zend_ prefix for emit_op(_tmp)
2014-07-28 22:03:16 +02:00
Nikita Popov
cf7f0c412d
zend_ast_create determined child count automatically
2014-07-28 18:18:47 +02:00
Nikita Popov
39d480e471
Remove zend_ast_create_unary etc
2014-07-28 17:59:12 +02:00
Nikita Popov
e403b27a40
Remove old macro/function
2014-07-28 15:55:30 +02:00
Nikita Popov
4c05bec536
Remove some unused compiler globals
2014-07-28 15:52:18 +02:00
Nikita Popov
31a886c346
More dead code
2014-07-28 15:43:39 +02:00
Nikita Popov
55f53e29a0
zend_get_class_fetch_type works on zend_string
2014-07-28 15:39:43 +02:00
Nikita Popov
50aefcf075
Remove duplicate code
2014-07-28 15:29:56 +02:00
Nikita Popov
2306655214
We don't pay per newline...
2014-07-28 15:26:30 +02:00
Nikita Popov
38c4125c2e
Cleanup dead/duplicate code
2014-07-28 15:23:00 +02:00
Nikita Popov
a2925df653
Use zend_ast_get_str where possible
2014-07-28 15:16:35 +02:00
Nikita Popov
1d79fb308b
Add zend_ast_list* variant to parser stack element
2014-07-28 15:10:58 +02:00
Nikita Popov
f29b84ab46
Minor cleanups in AST code
2014-07-28 14:51:08 +02:00
Nikita Popov
187ff135f2
zend_do_op_data -> zend_emit_op_data
2014-07-28 12:55:37 +02:00
Nikita Popov
d3cb239305
Use separate node type for lists
...
This saves storing the children count for normal ast nodes.
2014-07-28 12:06:57 +02:00
Nikita Popov
21eb6807c9
Store lineno for zval ast nodes more efficiently
2014-07-27 13:25:32 +02:00
Nikita Popov
d0943edf49
Remove last EA usages
...
Still retaining the EA field in znode as it is used by opcache
2014-07-27 12:49:26 +02:00
Nikita Popov
bea85f58bb
Use more specific parser stack nodes
2014-07-27 12:46:54 +02:00
Nikita Popov
a74515e240
Separate class type and start lineno
2014-07-27 12:37:28 +02:00
Nikita Popov
0b86b1c8e5
Store doc comments in separate stack entry from start lineno
2014-07-27 12:31:17 +02:00
Nikita Popov
1ea9a2d934
Cleanup member modifier code
2014-07-27 12:19:01 +02:00
Nikita Popov
df42793cd2
Create namespace_name via AST
2014-07-26 21:53:50 +02:00
Nikita Popov
c07907121e
zend_do_return -> zend_emit_final_return
2014-07-26 21:32:48 +02:00
Nikita Popov
4ca4b423be
Make lexer return AST nodes
2014-07-26 21:22:54 +02:00
Nikita Popov
8c8839c2a1
Remove DUMMY_STRINGL
...
What is that for?
2014-07-26 19:03:36 +02:00
Nikita Popov
a51e00a8cd
Add functions for create str/long ast directly
2014-07-26 19:01:14 +02:00
Nikita Popov
9344a95ac9
Remove dead code
2014-07-26 18:51:28 +02:00
Nikita Popov
17234d7895
Replicate old linenos for class binding
2014-07-26 18:36:57 +02:00
Nikita Popov
1bdc433259
Fix bugs
2014-07-26 18:23:46 +02:00
Nikita Popov
edd9fcab1e
Fix leaks
...
Must find a good way to handle constant expressions...
2014-07-26 18:08:31 +02:00
Nikita Popov
d46f67a3a7
Use arena allocator (currently leaky!)
2014-07-26 17:45:45 +02:00
Nikita Popov
1644bf01da
Resolve futher interning issues
...
Not sure if this is the right way to do it ...
2014-07-24 21:35:57 +02:00
Nikita Popov
c777427c08
Fix interning bug
2014-07-24 21:07:37 +02:00
Nikita Popov
689891c2b2
Expose ast via CG(ast)
2014-07-24 20:51:01 +02:00
Nikita Popov
24ca6bb928
Add call_user_func optimization
2014-07-24 20:35:18 +02:00
Nikita Popov
cec747234d
Implement call_user_func_array optimization
2014-07-24 19:22:46 +02:00
Dmitry Stogov
466816d4ef
Fixed string destruction (class_name might be reused and stored somewhere in __autoload()).
2014-07-24 14:11:21 +04:00
Dmitry Stogov
7c6477ce37
Merge branch 'master' into phpng
...
* master:
Removed second zval_copy_ctor()
Fixed crash on self-referencing constant expression (part of a constant AST)
Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set)
Conflicts:
Zend/zend_ast.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/reflection/php_reflection.c
2014-07-24 01:54:21 +04:00
Dmitry Stogov
8fb7c4dc08
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Removed second zval_copy_ctor()
2014-07-24 01:16:28 +04:00
Dmitry Stogov
ea1d5dcacb
Removed second zval_copy_ctor()
2014-07-24 01:16:00 +04:00
Dmitry Stogov
39740a33e5
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Fixed crash on self-referencing constant expression (part of a constant AST)
2014-07-24 00:59:42 +04:00
Dmitry Stogov
d909b6330e
Fixed crash on self-referencing constant expression (part of a constant AST)
2014-07-24 00:37:15 +04:00
Dmitry Stogov
4c37e69957
Merge branch 'PHP-5.6'
...
* PHP-5.6:
Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set)
2014-07-23 22:49:46 +04:00
Dmitry Stogov
c49a06168e
Fixed support for constant arrays in context of "const" statement (Zend/tests/constant_expressions_arrays.phpt failed when opcache.protect_memort was set)
2014-07-23 22:47:58 +04:00
Nikita Popov
0356e07a05
Implement ZEND_DEFINED optimization
2014-07-22 23:30:57 +02:00
Nikita Popov
7892b89465
Implement ZEND_TYPE_CHECK optimization
2014-07-22 23:15:47 +02:00
Nikita Popov
2ee490ba3a
Implement ZEND_STRLEN optimization
2014-07-22 22:57:38 +02:00
Nikita Popov
f21d8bc23b
CT bind args before unpack
2014-07-22 20:41:45 +02:00
Nikita Popov
1859674061
Port ZEND_BIND_GLOBAL optimization
2014-07-22 20:24:47 +02:00
Nikita Popov
d4d4b69e72
Merge branch 'phpng' into ast
...
Conflicts:
Zend/zend_compile.c
Zend/zend_compile.h
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
Some of dmitry's optimizations are not merged in yet!
2014-07-22 18:24:58 +02:00
Dmitry Stogov
f163f625e8
fixed "isset($array[true]);"
2014-07-22 18:40:29 +04:00
Dmitry Stogov
f81956cb3e
Fixed GC bug
2014-07-22 18:39:58 +04:00
Nikita Popov
43b2973ee7
Remove declare_stack
2014-07-22 16:18:13 +02:00
Nikita Popov
a7fc995fa2
Dead code
2014-07-22 16:11:54 +02:00
Nikita Popov
b9be66ebf2
Implement declare()
2014-07-22 16:11:19 +02:00
Nikita Popov
2653b8b5dc
Handle __halt_compiler()
2014-07-22 15:50:23 +02:00
Nikita Popov
3becdb3376
__halt_compiler() without haling compiler
2014-07-22 14:25:19 +02:00
Nikita Popov
de2f132f33
Add NS error checks
...
Those can probably be implemented in a better way now...
2014-07-22 14:08:52 +02:00
Nikita Popov
776800b0a0
Discard NS doc comments
2014-07-22 13:54:54 +02:00
Dmitry Stogov
f2a2fccece
Merge branch 'master' into phpng
...
* master:
fix nmake snap when ext name is different in target dll
force atoll macro usage on windows
Enable $ replacement in exif, ldap, pdo_pgsql and tidy
See bug #67635
NEWS
NEWS
improve previous, add message during configure
Fixed bug #67635 php links to systemd libraries without using pkg-config
Improve fix for #66608
Fixed segfault with empty break
New added opcodes don't need to be resloved
Update NEWS
Update NEWS
Update NEWS
Fixed bug #66827 Session raises E_NOTICE when session name variable is array
implemented copy libs of core exts in phpize mode
fix copy the ext dll into the prefix path in phpize mode
fix default prefix in phpize mode
fix file with zero size usage in phpize mode
Conflicts:
Zend/zend_opcode.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/session/session.c
2014-07-22 15:42:17 +04:00
Nikita Popov
130b6340d2
Code cleanup
2014-07-22 13:30:26 +02:00
Nikita Popov
cc0bef6636
Fix namespace\, maybe
2014-07-22 13:25:47 +02:00
Nikita Popov
9c69c41a64
Port top level stmt
...
Problem: namespace\foo no longer works :/
2014-07-22 13:02:51 +02:00
Nikita Popov
8a2ff6b53d
Partial NS port (semicolon, no errors)
2014-07-22 12:45:44 +02:00
Nikita Popov
b6c9eb21d4
Port constant declaration
2014-07-22 11:55:07 +02:00
Dmitry Stogov
821b8bbb39
Fixed support for executor override
2014-07-22 11:24:16 +04:00
Dmitry Stogov
ea17b018d8
Fixed dtrace support
2014-07-22 11:12:49 +04:00
Nikita Popov
64151ec37a
Port function/const use
2014-07-21 23:41:11 +02:00
Nikita Popov
573d25b5e7
Drop dead code
2014-07-21 22:58:38 +02:00
Nikita Popov
37ac1b96ed
Port use statement
2014-07-21 22:49:31 +02:00
Nikita Popov
c60cd3e8ef
Remove __clone test (not reason it should error)
2014-07-21 18:47:03 +02:00
Nikita Popov
94d5d7d01b
Remove one usage of implementing_class
2014-07-21 18:25:46 +02:00