Xinchen Hui
b5b617674e
Micro optimaztion (yeah, I know compiler supposed to do that)
2014-12-22 00:10:46 -05:00
Xinchen Hui
c24125e2f9
Micro optimization
2014-12-21 23:16:25 -05:00
Xinchen Hui
201e1b8a8d
Micro optimizations
2014-12-21 22:35:25 -05:00
Andrea Faulds
e5eb9530ab
Use "float" and "integer" in typehint and zpp errors
2014-12-21 13:23:02 +00:00
Anatol Belski
a857f3a147
Merge remote-tracking branch 'origin/master' into native-tls
...
* origin/master:
Fix bug #67106 split main fpm config
split fpm config to two parts. PR#903
fix typo
Fix undefined behaviour in strnatcmp
Fix undefined behaviour in strnatcmp
Fixed memory leak introduced by 73458e8f
update NEWS
move the test to the right place
Fixed bug #68545 NULL pointer dereference in unserialize.c
2014-12-14 19:44:24 +01:00
Anatol Belski
bdeb220f48
first shot remove TSRMLS_* things
2014-12-13 23:06:14 +01:00
Andrea Faulds
8c99b65c4d
Fixed memory leak introduced by 73458e8f
2014-12-13 21:11:09 +00:00
Dmitry Stogov
2ea5f7aea4
Removed unused variables
2014-12-12 08:09:42 +03:00
Dmitry Stogov
73458e8f19
Replaced zendi_convert_to_long() with _zval_get_long_func()
2014-12-11 15:01:06 +03:00
Dmitry Stogov
27dc5986df
Moved zend_is_true() from zend_execute.h/zend_execute_API.c into zend_operators.h/zend_operators.c.
...
Splited the most expensive part of inline i_zend_is_true() into a separate zend_object_is_true().
Replaced zendi_convert_to_long() with cals to zend_is_true().
2014-12-11 13:18:40 +03:00
Dmitry Stogov
5ba4ae7f67
Move checks for references into slow paths of operator functions. Remove duplicate opcode handlers.
2014-12-06 02:14:45 +03:00
Anatol Belski
ac964fbe30
fix datatype mismatches
2014-10-27 16:38:41 +01:00
Xinchen Hui
c584798b05
Useless assignment
2014-10-22 17:30:19 +08:00
Dmitry Stogov
089f496799
Moved proxy object support in ASSIGN_ADD (and family) from VM to slow paths of corresponding operators
2014-10-21 03:24:20 +04:00
Anatol Belski
c1e92d9fed
fix C89 compat
2014-09-25 20:28:34 +02:00
krakjoe
eabad90acb
fix indentation
2014-09-25 16:31:39 +01:00
krakjoe
abdc8c3061
fix zts build
2014-09-25 16:15:02 +01:00
Dmitry Stogov
8b034ec69a
Optimized (PRE|POST)_(INC|DEC) handlers. Moved proxy object handling into helper function.
2014-09-25 13:42:46 +04:00
Xinchen Hui
e029042c36
It is not likely a string
2014-09-23 13:50:00 +08:00
Andrea Faulds
12b15e5ca4
Merge branch 'master' into integer_semantics
2014-09-21 00:29:48 +01:00
Nikita Popov
31e842472f
Make number printing functions less generic
...
Now that zend_ulong is 64bit on 64bit platforms, it should be
sufficient to always use it, rather than supporting multiple
types.
API changes:
* _zend_print_unsigned_to_buf and _zend_print_signed_to_buf
no longer exist.
* smart_str(ing)_print_long and smart_str(ing)_print_unsigned
no longer exist.
* Instead of all these, zend_print_ulong_to_buf and
zend_print_long_to_buf should be used.
* smart_str_append_generic_ex no longer exists.
* smart_str(ing)_append_off_t(_ex) no longer exists, use
smart_str(ing)_append_long(_ex) instead.
2014-09-19 23:39:07 +02:00
Dmitry Stogov
3bc8a958c5
Fixed useless or duplicated IS_INTERNED() checks
2014-09-19 15:41:01 +04:00
Dmitry Stogov
db6306dd0e
Split is_numeric_string_ex() into inline and non-inline parts
2014-09-18 22:19:51 +04:00
Andrea Faulds
db72160e5a
Merge branch 'master' into integer_semantics
...
Conflicts:
Zend/zend_operators.h
2014-09-16 13:45:06 +01:00
Andrea Faulds
be88d0e5d4
Use SIZEOF_ZEND_LONG instead of SIZEOF_LONG
2014-09-16 10:24:33 +01:00
Dmitry Stogov
d17487f827
We don't have to check for undefined CV if we fetch it for isset() operation
2014-09-16 09:15:47 +04:00
Nikita Popov
29397f8fd2
Fix $x .= $x
...
Also add a nice comment pointing out that concat runs on magic.
2014-09-06 12:26:41 +02:00
Nikita Popov
828fe35381
Fix string increment
2014-09-05 12:45:42 +02:00
Nikita Popov
08ca9e6d11
Fix overflow check for string concatenation
...
Also do the overflow check for both branches, not just the realloc
one.
And clean up the code a bit - move common parts outside of the
realloc/alloc branches.
2014-09-05 11:58:32 +02:00
Nikita Popov
f915b44070
Remove old zend_string_to_double function
2014-09-05 11:20:06 +02:00
Anatol Belski
d7700588a9
use portable strtol
2014-09-02 15:56:15 +02:00
Dmitry Stogov
b1f53ca415
Use efree_size() instead of efree() where posible
2014-08-27 20:49:56 +04:00
Nikita Popov
28e7beea66
Fix zend_longo_str
2014-08-25 22:47:04 +02:00
Anatol Belski
af59e92b24
master renames phase 7
2014-08-25 21:51:49 +02:00
Anatol Belski
455741fce3
master renames phase 4
2014-08-25 20:57:25 +02:00
Anatol Belski
4d997f63d9
master renames phase 3
2014-08-25 20:22:49 +02:00
Anatol Belski
6f9f0bf205
master renames phase 2
2014-08-25 19:28:33 +02:00
Anatol Belski
c3e3c98ec6
master renames phase 1
2014-08-25 19:24:55 +02:00
Anatol Belski
70de6180d5
fixes to %pd format usage
2014-08-24 02:35:34 +02:00
Andrea Faulds
b3ba0f6ab0
Prevent bit shift count wrapping quirkiness on some CPUs for left shift
2014-08-19 20:21:23 +01:00
Andrea Faulds
38bc0a05c0
Prevent bit shift count wrapping quirkiness on some CPUs for right shift
2014-08-19 20:21:23 +01:00
Andrea Faulds
6a94568f82
Return FALSE on bit shift by negative number
2014-08-19 20:21:22 +01:00
Anatol Belski
f2182ab845
some more pure naming replacements
2014-08-17 21:16:27 +02:00
Anatol Belski
864172d9a4
further fixes to ext/standard and zend
2014-08-16 17:31:40 +02:00
Anatol Belski
8ee2a4a9b5
first shot on merging the core fro the int64 branch
2014-08-16 11:16:11 +02: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
e430948581
Fixed reference handling
2014-08-14 15:07:39 +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
Dmitry Stogov
27f38798a1
Fast parameter parsing API
...
This API is experemental. It may be changed or removed.
It should be used only for really often used functions.
(Keep the original parsing code and wrap usage with #ifndef FAST_ZPP)
2014-07-11 16:32:20 +04:00
Dmitry Stogov
4e291fab81
Fixed usage after free()
2014-07-10 21:45:09 +04:00
Dmitry Stogov
9d6e45a0ee
Changed zend_make_printable_zval() to return "use_copy" instead of additional reference argument.
...
Improved branch prediction.
2014-07-09 16:05:55 +04:00
Dmitry Stogov
9af4b18b81
Reverted 387c491559
(it broke ext/standard/tests/file/bug44607.phpt)
2014-06-27 00:40:52 +04:00
Xinchen Hui
387c491559
op2 is null terminated string
2014-06-26 22:13:24 +08:00
Dmitry Stogov
2d29f2d8d9
Comparison optimization
2014-06-09 17:00:22 +04:00
Dmitry Stogov
1b8916886b
Speedup string equality check
2014-06-05 19:14:47 +04:00
Dmitry Stogov
0427ae08fb
cleanup
2014-06-03 00:36:31 +04:00
Dmitry Stogov
e34a6e9211
Use new zend_hash API
2014-05-27 00:38:58 +04:00
Nikita Popov
4ee14c6f8d
Fix ** operator with references
2014-05-26 18:17:55 +02:00
Nikita Popov
ec7b5e0b19
Fix incdec of ref object properties
...
This fixes a number of infinite loops in the Symfony testsuite. It
took an obscene amount of time to track this down :/
2014-05-26 18:00:15 +02:00
Dmitry Stogov
40256e0f9c
Use specialized functions instead of macros
2014-05-26 17:16:16 +04:00
Xinchen Hui
60e01e5d64
Added folder mark and codes style
2014-05-24 21:35:36 +08:00
Dmitry Stogov
9eb89dddb1
Use optimized zend_array_dup() function. convert zend_hash_num_elements() and zend_hash_next_free_element() into macros.
2014-05-23 20:37:53 +04:00
Nikita Popov
1d8c499b51
Optimize int to string conversion
...
Probably platform depedentant, but for me snprintf is terribly
slow.
The code for the long printing is taken from the smart string
API.
2014-05-23 13:10:50 +02:00
Nikita Popov
6f0f8511f2
Assert that EMPTY_SWITCH_DEFAULT_CASE() cannot be reached in debug
2014-05-22 19:00:25 +02:00
Anatol Belski
f089d63ddd
C89 compat
2014-05-13 14:04:53 +02:00
Xinchen Hui
88c550a799
Added vstrpprintf strpprintf to avoid duplicate string
...
(the function name maybe improvement)
2014-05-10 00:21:49 +08:00
Nikita Popov
9343f874cd
Fix identical comparison of arrays with references
...
Also commit a test I forgot.
2014-05-09 15:46:43 +02:00
Nikita Popov
42d4adabbd
Fix SXE->string cast for __toString in inheriting class
...
This issue was originally hacked around in zend_make_printable_zval.
I've now moved the overridden __toString() handling into the SXE
cast_object handler, so everything invoking that handler
(zend_make_printable_zval, convert_to_string, zval_get_string,
and various other more obscure usages) see the same behavior.
2014-05-03 11:29:08 +02:00
Nikita Popov
d820ea9f5e
Avoid superflous allocations in convert_to_string
...
Taken from zval_get_string.
2014-05-01 09:08:30 +02:00
Dmitry Stogov
17d027ed47
Split IS_BOOL into IS_FALSE and IS_TRUE
2014-04-30 18:32:42 +04:00
Nikita Popov
5db9312ec8
Add dst parameter to convert_object_to_type macro
...
Avoids a ZVAL_DUP in the zval_get_* functions.
Also improve object-to-array cast a bit by initializing the array
with correct number of elements and not doing a alloc-init-free
cycle when convert_object_to_type succeeds.
2014-04-25 23:21:05 +02:00
Nikita Popov
778946b3b6
Use convert_scalar_to_array only for arrays
2014-04-25 23:21:05 +02:00
Nikita Popov
93f9518a58
Align zval_get_long/double with zval_get_string
2014-04-25 23:21:04 +02:00
Dmitry Stogov
f9927a6c97
Merge mainstream 'master' branch into refactoring
...
During merge I had to revert:
Nikita's patch for php_splice() (it probably needs to be applyed again)
Bob Weinand's patches related to constant expression handling (we need to review them carefully)
I also reverted all our attempts to support sapi/phpdbg (we didn't test it anyway)
Conflicts:
Zend/zend.h
Zend/zend_API.c
Zend/zend_ast.c
Zend/zend_compile.c
Zend/zend_compile.h
Zend/zend_constants.c
Zend/zend_exceptions.c
Zend/zend_execute.c
Zend/zend_execute.h
Zend/zend_execute_API.c
Zend/zend_hash.c
Zend/zend_highlight.c
Zend/zend_language_parser.y
Zend/zend_language_scanner.c
Zend/zend_language_scanner_defs.h
Zend/zend_variables.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/date/php_date.c
ext/dom/documenttype.c
ext/hash/hash.c
ext/iconv/iconv.c
ext/mbstring/tests/zend_multibyte-10.phpt
ext/mbstring/tests/zend_multibyte-11.phpt
ext/mbstring/tests/zend_multibyte-12.phpt
ext/mysql/php_mysql.c
ext/mysqli/mysqli.c
ext/mysqlnd/mysqlnd_reverse_api.c
ext/mysqlnd/php_mysqlnd.c
ext/opcache/ZendAccelerator.c
ext/opcache/zend_accelerator_util_funcs.c
ext/opcache/zend_persist.c
ext/opcache/zend_persist_calc.c
ext/pcre/php_pcre.c
ext/pdo/pdo_dbh.c
ext/pdo/pdo_stmt.c
ext/pdo_pgsql/pgsql_driver.c
ext/pgsql/pgsql.c
ext/reflection/php_reflection.c
ext/session/session.c
ext/spl/spl_array.c
ext/spl/spl_observer.c
ext/standard/array.c
ext/standard/basic_functions.c
ext/standard/html.c
ext/standard/mail.c
ext/standard/php_array.h
ext/standard/proc_open.c
ext/standard/streamsfuncs.c
ext/standard/user_filters.c
ext/standard/var_unserializer.c
ext/standard/var_unserializer.re
main/php_variables.c
sapi/phpdbg/phpdbg.c
sapi/phpdbg/phpdbg_bp.c
sapi/phpdbg/phpdbg_frame.c
sapi/phpdbg/phpdbg_help.c
sapi/phpdbg/phpdbg_list.c
sapi/phpdbg/phpdbg_print.c
sapi/phpdbg/phpdbg_prompt.c
2014-04-26 00:32:51 +04:00
Dmitry Stogov
5864ce8a44
Fixed compilation warnings
2014-04-22 17:46:34 +04:00
Dmitry Stogov
fa588a5c82
Use shorter call chain
2014-04-22 02:34:34 +04:00
Dmitry Stogov
4ed452c1b5
Convert zval_get_string() into "fast path" macro and "slow path" function
2014-04-21 22:36:01 +04:00
Dmitry Stogov
8ad8254a16
Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2
2014-04-21 21:39:15 +04:00
Nikita Popov
0d43a277b8
Use zval_get_string in a few more places
2014-04-21 17:55:58 +02:00
Nikita Popov
5c8697184f
Bring zval_get_string implement in line with make_printable_zval
...
As make_printable_zval is the "main" string cast, match that one.
2014-04-21 17:55:58 +02:00
Dmitry Stogov
72c287bd23
Combine HashTable.flags and HashTable.nApplyCount into single 32-bit word
2014-04-21 18:25:34 +04:00
Nikita Popov
7a1a6092f6
Add functions for extracting long/double/string from zval
...
These function get the long / double / string value of a zval with
usual cast semantics, but without actually modifying the zval.
Didn't go on a killing spree for convert_to_* yet...
2014-04-15 20:32:47 +02:00
Dmitry Stogov
050d7e38ad
Cleanup (1-st round)
2014-04-15 15:40:40 +04:00
Xinchen Hui
a0690ff288
Fixed zend_object_get_t in simpleXML
2014-04-15 11:05:03 +08:00
Nikita Popov
20f2e5986e
Fix ZTS build
...
This only makes it compile, it doesn't actually work, presumably
because interned strings are assumed in some places.
2014-04-09 23:41:16 +02:00
Dmitry Stogov
76cc99fe60
Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), candidate for GC, etc)
2014-04-03 15:26:23 +04:00
Dmitry Stogov
d8099d0468
Changed data layout to allow more efficient operations
2014-04-02 14:34:44 +04:00
Dmitry Stogov
a25a1ba0ef
STR_DUP() doesn't duplicate interned strings anymore. In case new string is required STR_INIT() or STR_ALLOC() should be used.
2014-04-01 16:31:03 +04:00
Dmitry Stogov
54d559d893
Replaced (Z_TYPE(x) == IS_REFERENCE) with (Z_ISREF(x))
2014-03-27 11:50:45 +04:00
Dmitry Stogov
b7938ab1bd
Refactored GC (incomplete)
2014-03-19 17:00:28 +04:00
Dmitry Stogov
5f861768d6
Fixed reference conversion
2014-03-13 22:07:14 +04:00
Xinchen Hui
ecc0687398
Fixed IS_REFERENCE handling in sort()
2014-03-07 13:51:39 +08:00
Xinchen Hui
ef01b7937e
Fixed wrong hash value in ext/standard/tests/array/array_combine.php
2014-03-05 18:39:20 +08:00
Xinchen Hui
dc889b69ef
Fixed segfault (op2 maybe equal to result)
2014-03-05 15:43:57 +08:00
Dmitry Stogov
b965647e44
Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2
...
Conflicts:
Zend/zend_object_handlers.c
2014-02-25 15:23:06 +04:00
Xinchen Hui
f298ade89a
Fixed wrong hash_zval_identical_function
2014-02-25 18:20:35 +08:00
Dmitry Stogov
820184dd00
Fixed converting IS_REFERENCE to string
2014-02-25 13:21:03 +04:00
Xinchen Hui
d35a068aa6
Fixed array comparation
2014-02-25 12:31:35 +08:00
Dmitry Stogov
760fe72af6
Fixed comparison od references
2014-02-24 17:29:28 +04:00
Dmitry Stogov
1770ace249
Fixed object to string conversion
2014-02-24 13:49:53 +04:00
Dmitry Stogov
844887ed56
Fixed IS_RESOURCE handling
2014-02-24 13:12:53 +04:00
Xinchen Hui
91e2a91396
Missing handling of IS_REF in ext/standard/tests/strings/bug47842.php
2014-02-23 19:36:38 +08:00
Dmitry Stogov
6454684212
Use better data structures (incomplete)
2014-02-21 22:59:51 +04:00
Dmitry Stogov
52bd62eca8
Fixed assertions
2014-02-21 20:35:40 +04:00
Dmitry Stogov
8bae1daa0c
Use better data structures (incomplete)
2014-02-19 14:35:28 +04:00
Dmitry Stogov
557994d50d
Use better data structures (incomplete)
2014-02-19 01:12:05 +04:00
Dmitry Stogov
5de7115679
Use better data structures (incomplete; able to run bench.php)
2014-02-18 16:27:38 +04:00
Dmitry Stogov
2b9b9afa7a
Use better data structures (incomplete)
2014-02-17 17:59:18 +04:00
Dmitry Stogov
be82a07776
Use better data structures (incomplete)
2014-02-12 18:08:11 +04:00
Dmitry Stogov
f4cfaf36e2
Use better data structures (incomplete)
2014-02-10 10:04:30 +04:00
Bob Weinand
363ff60475
Fixed memory leak in pow operator
2014-02-06 21:31:40 +01:00
datibbaw
aff56f3c45
add T_POW (**) operator
...
Fixed recognition of the operator
Added opcode, still doing multiply instead of pow()
opcode now always returns int(42)
The right answer, but always a float
Yanked code from pow() implementation.
Should not handle negative long as exponent ourselves
Added test cases from pow()
Moved precedence higher than '~'
Added GMP operator overloading
Added ZEND_ASSIGN_POW (**=) operator.
Added pow() as a language construct.
Adjusted test cases for changed precedence.
Reduced pow() to shell function around ZEND_API pow_function()
Reduced test case to only contain edge cases
Added overloading test case
Moved unary minus above T_POW
Revert "Added pow() as a language construct."
Bad bad bad idea.
This reverts commit f60b98cf7a8371233d800a6faa286ddba4432d02.
Reverted unary minus behaviour due to previous revert.
Convert arrays to int(0)
Exponent with array as a base becomes int(0)
Rebase against master
Fixed tokenizer test case
2014-02-06 14:41:21 +01:00
Xinchen Hui
c081ce628f
Bump year
2014-01-03 11:08:10 +08:00
Nikita Popov
96b1c2145c
Provide more macros for handling of interned strings
...
* str_erealloc behaves like erealloc for normal strings, but will
use emalloc+memcpy for interned strings.
* str_estrndup behaves like estrndup for normal strings, but will
not copy interned strings.
* str_strndup behaves like zend_strndup for normal strings, but
will not copy interned strings.
* str_efree_rel behaves like efree_rel for normal strings, but
will not free interned strings.
* str_hash will return INTERNED_HASH for interned strings and
compute it using zend_hash_func for normal strings.
2013-09-13 19:42:10 +02:00
Xinchen Hui
72f80b2997
Merge branch 'PHP-5.5'
2013-08-27 15:45:27 +08:00
Xinchen Hui
0119bbba6b
Fixed compiler warnings
...
warning: 'local_dval' may be used uninitialized in this function
[-Wmaybe-uninitialized]
warning: 'dval2' may be used uninitialized in this function
[-Wmaybe-uninitialized]
2013-08-27 15:44:30 +08:00
Nikita Popov
3823321c5c
Implement internal operator overloading
...
As pre RFC https://wiki.php.net/rfc/operator_overloading_gmp
2013-06-17 17:48:13 +02:00
Stanislav Malyshev
02e4d7a290
Merge branch 'pull-request/341'
...
* pull-request/341: (23 commits)
typofixes
2013-06-10 14:30:59 -07:00
Adam Harvey
be1700d467
Fix compile failure introduced by the fix for bug #46408 .
2013-01-15 10:08:26 +08:00
Lars Strojny
92965b033a
Bug #46408 : Fix double formatting for PostgreSQL bound parameters
2013-01-14 21:23:52 +01:00
Xinchen Hui
a666285bc2
Happy New Year
2013-01-01 16:37:09 +08:00
Xinchen Hui
b5d2c3174f
Merge branch 'PHP-5.4'
2012-08-31 11:25:21 +08:00
Xinchen Hui
66fad45724
Merge branch 'PHP-5.3' into PHP-5.4
2012-08-31 11:24:10 +08:00
Xinchen Hui
5dc2cef370
Fixed bug #62976 (Notice: could not be converted to int when comparing some builtin classes)
2012-08-31 11:22:43 +08:00
Stanislav Malyshev
efdb7ce4b0
improve code in zend_operators
2012-07-14 21:06:40 -07:00
Stanislav Malyshev
582514d4c7
fix for bug#18556 - use simple tolower() function for internal things
2012-07-14 14:50:50 -07:00
Felipe Pena
60c5f9910f
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
- Optimize comparison between same HashTable pointer
- Fixed bug #62205 (php-fpm segfaults (null passed to strstr))
- fix missing include for unix sockets
- Comment unused function to avoid warnings
2012-06-03 18:20:26 -03:00
Felipe Pena
d57b278ad1
- Optimize comparison between same HashTable pointer
2012-06-03 18:16:57 -03:00
Gustavo André dos Santos Lopes
acd711685a
Fixed bug #62097
...
This fixes the fix for bug #54547 in 32-bit machines by accepting
float comparisons in 32-bit machines as long as the integer is
not larger than the mantissa.
2012-05-23 18:55:36 -05:00
Stanislav Malyshev
9344bf193c
fix bug #54547
2012-05-13 14:40:44 -07:00
Felipe Pena
e4ca0ed09f
- Year++
2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281
- Year++
2012-01-01 13:15:04 +00:00
Felipe Pena
895a10caf1
- Fixed ZTS build
2011-08-30 01:33:42 +00:00
Derick Rethans
56a87c2806
- Zend engine part for bug #55158 : Add SORT_NATURAL type to array_multisort
...
(patch by Arpad Ray).
2011-08-29 20:24:09 +00:00
Dmitry Stogov
c270347c0b
MFH: Arithmetic speedup. Inlined most probable code-paths for arithmetic operations directly into executor.
2011-05-31 12:05:25 +00:00
Felipe Pena
927bf09c29
- Year++
2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44
- Year++
2011-01-01 02:17:06 +00:00
Scott MacVicar
1e48c71b96
Fix a bug where two doubles are equal but the maths operation makes it appear false.
...
Best example with INF where equals and identical produce different results.
<?php
var_dump(INF==INF);
var_dump(INF===INF);
2010-08-22 08:01:34 +00:00
Felipe Pena
87c87daaf3
- Fixed bug #52193 (converting closure to array yields empty array)
2010-06-26 17:14:33 +00:00
Felipe Pena
9ea7a70e24
- Fixed bug #52193 (converting closure to array yields empty array)
2010-06-26 17:14:33 +00:00
Dmitry Stogov
f94a437d9d
Fixed a possible information leak because of interruption of XOR operator
2010-05-12 11:10:06 +00:00
Dmitry Stogov
4ae16d351c
Fixed a possible information leak because of interruption of XOR operator
2010-05-12 11:10:06 +00:00
Dmitry Stogov
dd5c478be6
Added concept of interned strings. All strings constants known at compile time are allocated in a single copy and never changed.
2010-04-20 11:05:54 +00:00
Sebastian Bergmann
d2281d1dff
sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.php
2010-01-05 20:46:53 +00:00
Ilia Alshanetsky
0ebe3a7690
Extend the previously added large string concatenation validation
2009-11-23 04:12:36 +00:00
Ilia Alshanetsky
63e4efe784
Fixed bug #50207 (segmentation fault when concatenating very large strings
...
on 64bit linux).
2009-11-19 14:04:34 +00:00
Matt Wilmas
b907aa4331
MFH:
...
Restored double->long conversion behavior to that of PHP 5.2 (on most platforms) and prior:
* Out-of-range numbers overflow/preserve least significant bits (no LONG_MAX/MIN limit)
* See bug #42868 (presumably-rare platform with different results in 5.2)
* On 32-bit platforms with 64-bit long type, a zend_long64 cast has been added,
otherwise it's the same as 5.2
* Use this conversion method everywhere instead of some plain (long) casts
Added 'L' parameter parsing specifier to ensure a LONG_MAX/MIN limit:
* Essentially what 5.3's new conversion was doing in most cases
* Functions with "limit" or "length" type params could be updated to use this,
and prevent confusing overflow behavior with huge numbers (*also* in 5.2)
- See bug #47854 , for example; or even #42868 again
# Test updates coming
2009-06-04 18:20:45 +00:00
Jani Taskinen
2a31dbbadf
MFH:- Removed unnecessary TSRMLS_FETCH() calls
2009-05-11 08:31:15 +00:00