bwoebi
4c0bb6d76e
Fixed bug #65911 ($this not usable as static property)
...
In context of static accesses like classname::$this, the string
"$this" should not be handled like a $this variable, but as an
identifier for a static variable.
2013-10-16 18:33:14 +02:00
Igor Wiedler
602fef0e52
Clarify type of use in error messages
2013-10-14 23:32:11 +02:00
Igor Wiedler
e23ad4eeb2
Add "Done" output to distinguish hard from soft failures
2013-10-14 23:21:06 +02:00
Nikita Popov
cbf0683c6f
Merge branch 'PHP-5.5'
2013-09-29 20:19:40 +02:00
Nikita Popov
6b68f44e6b
Fix bug #64979 : Wrong behavior of static variables in closure generators
2013-09-29 20:18:12 +02:00
Nikita Popov
9529b8f5c4
Merge branch 'PHP-5.5'
2013-09-29 18:01:42 +02:00
Nikita Popov
1d1fb69c8b
Merge branch 'PHP-5.4' into PHP-5.5
2013-09-29 18:01:18 +02:00
Nikita Popov
f0c926564c
Fix bug #65322 : compile time errors won't trigger auto loading
...
Also fixes duplicate bugs #54054 and #42098 .
Furthermore this fixes incorrect error messages thrown from code
running inside an error handler when a compilation is in progress.
The error file and line are now correctly associated with the
file/line of the executor, rather than the compiler.
2013-09-29 17:58:25 +02:00
Nikita Popov
0d7a638866
Implement variadic function syntax
...
As per RFC: https://wiki.php.net/rfc/variadics
2013-09-26 18:39:17 +02:00
Xinchen Hui
825c1f239b
Merge branch 'PHP-5.5'
2013-09-02 16:16:15 +08:00
Xinchen Hui
b2ee1b629e
Merge branch 'PHP-5.4' into PHP-5.5
2013-09-02 16:16:07 +08:00
Xinchen Hui
6c48c6bc78
Typo....
2013-09-02 16:15:52 +08:00
Xinchen Hui
f33bdf68b1
Merge branch 'PHP-5.5'
2013-09-02 16:03:10 +08:00
Xinchen Hui
dd1cbd140b
Merge branch 'PHP-5.4' into PHP-5.5
2013-09-02 16:02:59 +08:00
Xinchen Hui
ed038d2ee3
Add a XFAIL test for #64896
2013-09-02 16:02:24 +08:00
Gustavo André dos Santos Lopes
d515455589
Implement phase 1 of rfc/incompat_ctx
...
Just changing the error level of the message from E_STRICT to
E_DEPRECATED. This comes one version later than the timeline
mentioned in the RFC.
Oddly, there were no tests for this ‘feature’. I added a simple
one.
2013-09-02 01:53:06 +02:00
Anthony Ferrara
d7e3aca9c9
Fix issue with global fallback when not in global space
2013-08-30 11:53:57 -04:00
Xinchen Hui
a607a08e09
Merge branch 'PHP-5.5'
2013-08-30 11:23:24 +08:00
Xinchen Hui
e4fe53e200
Merge branch 'PHP-5.4' into PHP-5.5
2013-08-30 11:20:46 +08:00
Xinchen Hui
7da6498342
Fixed bug #60598 (cli/apache sapi segfault on objects manipulation)
2013-08-30 11:20:24 +08:00
Igor Wiedler
e14a769c56
Add test for conditional function declaration
2013-08-29 17:16:18 +02:00
Xinchen Hui
0ea00936be
Merge branch 'PHP-5.5'
2013-08-29 14:02:53 +08:00
Xinchen Hui
f0cb67402f
Merge branch 'PHP-5.4' into PHP-5.5
2013-08-29 14:01:54 +08:00
Adam Harvey
72027cd084
Fix bug #65579 (Using traits with get_class_methods causes segfault).
...
Specifically, this checks if there are trait aliases defined in the class scope
before attempting to dereference the first trait alias. This handles the case
where a trait alias was used in a child trait but no aliases exist in the
concrete class.
2013-08-28 20:33:42 -07:00
Igor Wiedler
6263f221ff
Handle case sensivity of constants (nikic)
2013-08-25 16:21:51 +02:00
Igor Wiedler
84c8aa3691
self and parent are valid function and const names (nikic)
2013-08-25 15:08:26 +02:00
Igor Wiedler
bc473228c8
Adjust some test names, remove obsolete and duplicate tests (nikic)
2013-08-25 14:03:07 +02:00
Igor Wiedler
85d4cfb00d
Disallow using functions/consts defined in the same file
...
* Keep track of defined function and const filenames
* Prohibit use function foo if function foo exists
* Prohibit use const foo if const foo exists
2013-08-25 00:02:46 +02:00
Igor Wiedler
5b18530e8c
Add test cases for conflicting use and definition in same ns (stas)
2013-08-23 23:31:17 +02:00
Igor Wiedler
31d77053a1
More test cases for conflicting aliases
2013-08-22 15:51:26 +02:00
Igor Wiedler
2dbbb8ae4b
Add test case for conflicting use and use function alias (stas)
2013-08-22 15:51:26 +02:00
Igor Wiedler
4adf49eeaf
Import namespaced constants via new 'use const' sequence
2013-08-22 15:51:26 +02:00
Igor Wiedler
e1125a6a89
Correctly distinguish between functions and constants
...
So far 'use function' applied to both constants and functions. This
patch correctly separates the two.
2013-08-22 15:51:26 +02:00
Igor Wiedler
5dd41627be
Add new 'use function' sequence for importing namespaced functions
...
This is specified as the use_function RFC:
* https://wiki.php.net/rfc/use_function
2013-08-22 15:51:25 +02:00
Stanislav Malyshev
42214b6474
Merge branch 'PHP-5.5'
...
* PHP-5.5:
Use in preg_replace_callback() using variables by reference and test for bug #64979
https://bugs.php.net/bug.php?id=64979
2013-08-18 15:19:27 -07:00
Marcel Araujo
265224778b
Use in preg_replace_callback() using variables by reference and test for bug #64979
2013-08-18 15:18:30 -07:00
Marcel Araujo
47678c06c6
https://bugs.php.net/bug.php?id=64979
2013-08-18 15:09:43 -07:00
Stanislav Malyshev
68e8326e0e
Merge branch 'PHP-5.5'
...
* PHP-5.5:
non living code related typo fixes
2013-08-04 16:07:13 -07:00
Stanislav Malyshev
c793a65690
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
non living code related typo fixes
Conflicts:
Zend/zend_compile.c
2013-08-04 16:06:24 -07:00
Veres Lajos
8d86597d73
non living code related typo fixes
2013-08-04 16:05:36 -07:00
Rasmus Lerdorf
0fce1b4f72
Merge commit '5753b74'
...
* commit '5753b74':
Make sure test.php isn't coming in from the include_path
2013-08-02 11:48:07 -04:00
Rasmus Lerdorf
a85e71e655
Merge commit '5753b74' into PHP-5.5
...
* commit '5753b74':
Make sure test.php isn't coming in from the include_path
2013-08-02 11:47:52 -04:00
Rasmus Lerdorf
5753b74fab
Make sure test.php isn't coming in from the include_path
2013-08-02 11:47:12 -04:00
Xinchen Hui
78673d1bad
Merge branch 'PHP-5.5'
2013-08-02 18:39:58 +08:00
Xinchen Hui
1e942dde24
Merge branch 'PHP-5.4' into PHP-5.5
2013-08-02 18:39:18 +08:00
Xinchen Hui
ce9169e360
Fixed bug Bug #65372 (Segfault in gc_zval_possible_root when return reference fails)
2013-08-02 18:37:15 +08:00
Xinchen Hui
25eb44fcc1
Merge branch 'PHP-5.5'
2013-07-21 16:20:00 +08:00
Xinchen Hui
629965abe2
Merge branch 'PHP-5.4' into PHP-5.5
2013-07-21 16:19:13 +08:00
Arpad Ray
b963249456
Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
...
Also fix and test for get_defined_constants(true)
2013-07-20 11:05:13 +01:00
Arpad Ray
a015fa83a7
Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
2013-07-19 19:19:48 +01:00
Veres Lajos
e9a95d78ef
typo fixes
2013-07-15 00:23:03 -07:00
Veres Lajos
1b06e0be96
typo fixes
2013-07-15 00:19:49 -07:00
Veres Lajos
72085b0e5f
typo fixes
2013-07-15 00:18:57 -07:00
Xinchen Hui
75808151e3
Merge branch 'PHP-5.5'
...
Conflicts:
Zend/zend_vm_execute.h
2013-07-14 12:01:50 +08:00
Xinchen Hui
2c4f823437
Merge branch 'PHP-5.4' into PHP-5.5
...
Conflicts:
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
2013-07-14 11:53:56 +08:00
Xinchen Hui
ebad5178c4
Fixed bug #65254 (Exception not catchable when exception thrown in autoload with a namespace).
2013-07-14 11:47:06 +08:00
Nikita Popov
4d606cf01e
Merge branch 'PHP-5.5'
2013-06-29 21:57:36 +02:00
Nikita Popov
0f36224beb
Don't try to clean up generator stack on unclean shutdown
...
This fixes bugs #65035 and #65161 . In one of the bugs the issue is
that function_state.arguments is NULL, but the arg count is pushed
to the stack and the code tries to free it. In the other bug the
stack of the generator is freed twice, once in generator_close and
later during shutdown.
It's rather hard (if at all possible) to do a proper stack cleanup
on an unclean shutdown, so I'm just disabling it in this case.
2013-06-29 21:51:54 +02:00
Xinchen Hui
83673eaf1d
Merge branch 'PHP-5.5'
2013-06-24 23:53:54 +08:00
Xinchen Hui
a6a3aa5d49
Merge branch 'PHP-5.4' into PHP-5.5
...
Conflicts:
Zend/zend_API.c
2013-06-24 23:49:30 +08:00
Xinchen Hui
9cf3e65391
Fixed bug (is_callable() triggers Fatal Error)
...
This bug is also exists in 5.4, and previous fix by dsp is not complete
for __callStatic stituation, see test script
2013-06-24 23:45:08 +08:00
Nikita Popov
42729c1baf
Merge branch 'PHP-5.5'
2013-06-17 23:49:08 +02:00
Nikita Popov
86434be946
Fix bug #65051 : count() off by one inside unset()
...
nNumOfElements was incremented after the pDestructor code, so any
code in the dtor would get a wrong number of elements.
Right now the bucket deletion code is replicated in four places,
it should probably be moved off into one function (or rather,
zend_hash_apply_deleter should be used everywhere). The codes are
subtly different though in that the HANDLE_UNBLOCK_INTERRUPTIONS()
happens in different places. In particular it seems odd that in
some cases interruptions stay blocked during the destructor call.
2013-06-17 23:44:13 +02:00
Stanislav Malyshev
8ac131503d
Merge branch 'PHP-5.5'
...
* PHP-5.5:
Merge branch 'pull-request/341'
Merge branch 'pull-request/341'
2013-06-10 14:31:57 -07:00
Stanislav Malyshev
4427d1dcfd
Merge branch 'pull-request/341'
...
* pull-request/341: (23 commits)
typofixes
2013-06-10 14:30:59 -07:00
Stanislav Malyshev
02e4d7a290
Merge branch 'pull-request/341'
...
* pull-request/341: (23 commits)
typofixes
2013-06-10 14:30:59 -07:00
Stanislav Malyshev
ac40c0b562
Merge branch 'pull-request/341'
...
* pull-request/341: (23 commits)
typofixes
2013-06-10 14:20:18 -07:00
Xinchen Hui
1689a7fe98
Merge branch 'PHP-5.5'
2013-06-10 21:33:47 +08:00
Xinchen Hui
a9d005c04e
Merge branch 'PHP-5.4' into PHP-5.5
...
Conflicts:
Zend/zend_compile.c
2013-06-10 21:31:25 +08:00
Xinchen Hui
d8792d87cf
Fixed bug #64988 (Class loading order affects E_STRICT warning)
2013-06-10 21:26:11 +08:00
Dmitry Stogov
56c9a2f4f6
Merge branch 'PHP-5.5'
...
* PHP-5.5:
Fixed test script
2013-06-10 12:56:33 +04:00
Dmitry Stogov
ef20fdb338
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed test script
2013-06-10 12:55:51 +04:00
Dmitry Stogov
f68b8a5e74
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
Fixed test script
2013-06-10 12:54:54 +04:00
Dmitry Stogov
f5f6404260
Fixed test script
2013-06-10 12:53:19 +04:00
Xinchen Hui
4600578830
Merge branch 'PHP-5.5'
2013-06-09 13:50:06 +08:00
Xinchen Hui
f372e00332
Merge branch 'PHP-5.4' into PHP-5.5
...
Conflicts:
Zend/zend_vm_def.h
2013-06-09 13:49:26 +08:00
Xinchen Hui
ab22fda7e5
Merge branch 'PHP-5.3' into PHP-5.4
2013-06-09 13:35:45 +08:00
Xinchen Hui
e8f004d542
Fixed bug #64966 (segfault in zend_do_fcall_common_helper_SPEC)
2013-06-09 13:20:40 +08:00
Xinchen Hui
ecfc3599a7
Merge branch 'PHP-5.5'
2013-06-05 17:32:09 +08:00
Xinchen Hui
e89537f2a3
Merge branch 'PHP-5.4' into PHP-5.5
2013-06-05 17:30:09 +08:00
Xinchen Hui
f597f5561e
Merge branch 'PHP-5.3' into PHP-5.4
2013-06-05 17:26:10 +08:00
Xinchen Hui
3c87945c95
Fixed bug #64960 (Segfault in gc_zval_possible_root)
2013-06-05 17:25:00 +08:00
Dmitry Stogov
bf146ad5b5
Merge branch 'PHP-5.5'
...
* PHP-5.5:
Fixed bug #64720 (SegFault on zend_deactivate)
Conflicts:
NEWS
2013-05-21 10:33:57 +04:00
Dmitry Stogov
a2d6d27458
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #64720 (SegFault on zend_deactivate)
Conflicts:
NEWS
2013-05-21 10:15:37 +04:00
Dmitry Stogov
77fffff157
Fixed bug #64720 (SegFault on zend_deactivate)
2013-05-21 09:58:11 +04:00
Stanislav Malyshev
3ce366b7cd
Merge branch 'PHP-5.5'
...
* PHP-5.5:
fix bug #64660 - yyparse can return 2, not only 1
2013-05-20 00:58:12 -07:00
Stanislav Malyshev
ac0aa5737e
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
fix bug #64660 - yyparse can return 2, not only 1
Conflicts:
Zend/zend_language_scanner.c
2013-05-20 00:57:34 -07:00
Stanislav Malyshev
fb58e69a84
fix bug #64660 - yyparse can return 2, not only 1
2013-05-20 00:52:38 -07:00
Anatol Belski
1477471f6c
Merge branch 'PHP-5.5'
...
* PHP-5.5:
updated NEWS
updated NEWS
Fixed bug #64821 Custom Exceptions crash when internal properties overridden
2013-05-12 14:10:24 +02:00
Anatol Belski
2d8ce75f39
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
updated NEWS
Fixed bug #64821 Custom Exceptions crash when internal properties overridden
2013-05-12 14:09:16 +02:00
Anatol Belski
dd188e9538
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
Fixed bug #64821 Custom Exceptions crash when internal properties overridden
2013-05-12 14:06:59 +02:00
Anatol Belski
d6505acbf5
Fixed bug #64821 Custom Exceptions crash when internal properties overridden
...
If user inherits Exception and overrides the properties to arbitrary data types,
or simply doesn't run parent::__construct(), here we go. Just convert everything
to the appropriate data type, like Exception::__toString() does.
2013-05-12 14:00:32 +02:00
Xinchen Hui
2bcbe8fab9
Merge branch 'PHP-5.5'
2013-04-20 15:24:48 +08:00
Xinchen Hui
6ed16753c1
Fixed bug #64677 (execution operator `` stealing surrounding arguments)
2013-04-20 15:23:49 +08:00
Dmitry Stogov
5cdc71ae07
Optimizer may hide some repeating error messages
2013-04-18 11:54:27 +04:00
Dmitry Stogov
26c761915b
Optimizer may hide some repeating error messages
2013-04-18 11:53:44 +04:00
Xinchen Hui
d1643bd582
Merge branch 'PHP-5.5'
2013-04-10 13:48:38 +08:00
Michael Moravec
70668fd88a
Fixed typo - inconsistent notice for undefined property (introduced by fix for #49348 )
2013-04-10 13:36:47 +08:00
Xinchen Hui
4788a961f1
Merge branch 'PHP-5.5'
2013-04-04 14:56:10 +08:00
Xinchen Hui
aac43c9ee8
Merge branch 'PHP-5.4' into PHP-5.5
2013-04-04 14:56:00 +08:00
Xinchen Hui
4f2acd8cde
Update test script to make sure the error occurred
2013-04-04 14:55:17 +08:00
Xinchen Hui
cf0ee2d332
Merge branch 'PHP-5.5'
2013-04-04 14:49:58 +08:00
Xinchen Hui
65e368debd
Merge branch 'PHP-5.4' into PHP-5.5
2013-04-04 14:48:53 +08:00
Xinchen Hui
82ac3106e0
Use 5.4 specifical warnnig & Update NEWs
2013-04-04 14:47:49 +08:00
Xinchen Hui
f4f8b5a94b
Merge branch 'PHP-5.3' into PHP-5.4
2013-04-04 14:44:28 +08:00
Xinchen Hui
c96a5bc6be
Fixed bug #64578 (debug_backtrace in set_error_handler corrupts zend heap: segfault)
2013-04-04 14:34:11 +08:00
Nikita Popov
d1ee0349d6
Merge branch 'PHP-5.5'
2013-04-03 20:30:31 +02:00
Nikita Popov
1f34ccbe34
Fix bug #64555 : foreach no longer copies keys if they are interned
2013-04-03 20:29:19 +02:00
Xinchen Hui
8333dcce68
Merge branch 'PHP-5.5'
2013-04-03 19:52:56 +08:00
Xinchen Hui
42f94aa978
Fix test due to opcache
2013-04-03 19:52:09 +08:00
Xinchen Hui
e15a97f924
Merge branch 'PHP-5.5'
2013-04-03 18:51:44 +08:00
Xinchen Hui
bbb4a44f98
Merge branch 'PHP-5.4' into PHP-5.5
2013-04-03 18:51:19 +08:00
ptarjan
e8d80b770b
Fix #64572 : Clean up after the test
...
Lets not leave stuff lying around.
2013-04-03 18:50:18 +08:00
Keyur Govande
415d077e08
Merge branch 'PHP-5.5'
...
* PHP-5.5: (276 commits)
Patch for Bug #64544 . The process title change module keeps track of the locally allocated environ, so it doesn't need to worry about when environ changes underneath it, for example by putenv()/setenv()
Fix "passing NULL to non-pointer argument" warnings in intl
Remove support for cloning generators
Removed deprecated check
Fix whitespace issue in the SOAP test
Fix SOAP test
Forgot to fix the test on 5.4
Exclude Travis build for 5.3 and 5.4
Fix tests after addition of ^ (xor) operator to ini
Fix Bug #64545 : PHP Error in ef93a93ee2
Attempt to fix SKIP
This will PHP 5.3.25
Typo fix (greater then => greater than)
don't optimize script if it's not going to be cached
Reimplemented OPcache restart trigger. Now, if memory or hash are full the restart is scheduled only in case the amount of wasted memory is above opcache.max_wasted_percentage. Otherwise OPcahce continue serving the following requests using already cached files, but doesn't try to add new files (the cache is full anyway).
With pkgconfig < 0.28 output is a single space With pkgconfig = 0.28 output is an empty string, This breaks the test on the 2 vars
Fixed issue #78 (incorrect file path validation)
Fix test on Mac (\D shows up)
Add test for #64529
will be 5.4.15
...
2013-03-29 14:44:35 +00:00
Nikita Popov
8345abcabb
Remove support for cloning generators
2013-03-29 11:42:10 +01:00
Xinchen Hui
ed31582301
Fixed bug #64515 (Memoryleak when using the same variablename 2times in function declaration)
2013-03-26 12:02:48 +08:00
Xinchen Hui
1182a3356c
Update test script
2013-03-26 11:50:47 +08:00
Xinchen Hui
5e9377ebd5
Fixed bug #64515 (Memoryleak when using the same variablename 2times in function declaration)
2013-03-26 11:44:57 +08:00
Xinchen Hui
79925094c4
Merge branch 'PHP-5.4' into PHP-5.5
2013-03-21 21:10:32 +08:00
Xinchen Hui
7dce0194c8
Fixed bug #64239 (Debug backtrace changed behavior since 5.4.10 or 5.4.11)
2013-03-21 21:09:30 +08:00
Dmitry Stogov
4837bdb910
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #63976 (Parent class incorrectly using child constant in class property)
Conflicts:
NEWS
2013-03-19 17:04:35 +04:00
Dmitry Stogov
7b0993bfb4
Fixed bug #63976 (Parent class incorrectly using child constant in class property)
2013-03-19 16:59:01 +04:00
Dmitry Stogov
960d5be528
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Partial fix for bug #64239
2013-03-19 15:47:43 +04:00
Dmitry Stogov
984561cfa8
Partial fix for bug #64239
2013-03-19 15:45:48 +04:00
Dmitry Stogov
74e11fb14c
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #62343 (Show class_alias In get_declared_classes())
Conflicts:
NEWS
2013-03-19 15:00:24 +04:00
Dmitry Stogov
84630a1109
Merge branch 'PHP-5.3' into PHP-5.4
...
* PHP-5.3:
Fixed bug #62343 (Show class_alias In get_declared_classes())
2013-03-19 14:59:08 +04:00
Dmitry Stogov
4a6291508d
Fixed bug #62343 (Show class_alias In get_declared_classes())
2013-03-19 14:56:53 +04:00
Dmitry Stogov
ef8c8eaa95
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #64417 (ArrayAccess::&offsetGet() in a trait causes fatal error)
Conflicts:
NEWS
Zend/zend_compile.c
2013-03-19 13:07:32 +04:00
Dmitry Stogov
e62bb03257
Fixed bug #64417 (ArrayAccess::&offsetGet() in a trait causes fatal error)
2013-03-19 12:48:23 +04:00
Dmitry Stogov
e9641141aa
Made test compatible with O+
2013-03-16 16:11:00 +04:00
Nikita Popov
fcc6611de9
Add support for non-scalar Iterator keys in foreach
...
RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys
2013-03-12 17:27:31 +01:00
Nikita Popov
9490118fdb
Fix tests after laruence unserialize change
2013-03-09 20:21:33 +01:00
Xinchen Hui
1be745ce1b
Merge branch 'PHP-5.4' into PHP-5.5
...
Conflicts:
ext/standard/var_unserializer.c
2013-03-09 23:10:48 +08:00
Xinchen Hui
7197f0ffcc
Fixed confused exception message while user threw exception
2013-03-09 23:08:14 +08:00
Xinchen Hui
01049ca7ae
Fixed bug #61025 (__invoke() visibility not honored)
2013-03-08 10:34:17 +08:00
Gustavo Lopes
46adc1603c
Merge branch 'PHP-5.5'
...
* PHP-5.5:
NEWS for 8718755
Remove trailing whitespace; break long lines
Fix rounding of zend_dval_to_lval
Fix zend_dval_to_lval outside 64bit integers range
2013-02-23 18:07:22 +01:00
Gustavo Lopes
a86fcfbc1d
Fix rounding of zend_dval_to_lval
...
Now rounding is always towards zero; the rounding can be though as if
occurring on the original double. Only relevant for the 32-bit long
variant.
2013-02-23 16:55:50 +00:00
Gustavo Lopes
77566edbaf
Fix zend_dval_to_lval outside 64bit integers range
...
PHP should preserve the least significant bits when casting from double
to long. Zend.m4 contains this:
AC_DEFINE([ZEND_DVAL_TO_LVAL_CAST_OK], 1, [Define if double cast to long preserves least significant bits])
If ZEND_DVAL_TO_LVAL_CAST_OK is not defined, zend_operators.h had an
inline implementation of zend_dval_to_lval() that would do a cast to an
int64_t (when sizeof(long) == 4), then a cast to unsigned long and
finally the cast to long.
While this works well for doubles inside the range of values of the type
used in the first cast (int64_t in the 32-bit version and unsigned long
in the 64-bit version), if outside the range, it is undefined behavior
that WILL give varying and not particularly useful results.
This commit uses fmod() to first put the double in a range that can
safely be cast to unsigned long and then casts this unsigned long to
long. This last cast is implementation defined, but it's very likely
that this gives the expected result (i.e. the internal 2's complement
representation is unchanged) on all platforms that PHP supports. In any
case, the previous implementationa already had this assumption.
This alternative code path is indeed significantly slower than simply
casting the double (almost an order of magnitude), but that should not
matter because casting doubles with a very high absolute value is a
rare event.
2013-02-23 17:23:49 +01:00
Xinchen Hui
6a05c6be41
Merge branch 'PHP-5.5'
2013-02-21 18:21:19 +08:00
Xinchen Hui
f39d12c821
Merge branch 'PHP-5.4' into PHP-5.5
2013-02-21 18:20:48 +08:00
Xinchen Hui
9a44a9806c
Fixed bug #64235 (Insteadof not work for class method in 5.4.11)
...
As we discussed with stefan, we think previous of allowing use with
classes is a bug, should be forbided, anyway, the error message should
be improved.
2013-02-21 18:18:41 +08:00
Stanislav Malyshev
4c293bfe91
Merge branch 'PHP-5.5'
...
* PHP-5.5:
news for bug #49348
fix tests
fix bug #49348 - issue notice on get_property_ptr_ptr when used for read
2013-02-21 00:57:52 -08:00
Stanislav Malyshev
d39554ac08
Merge branch 'bug49348' into PHP-5.5
...
* bug49348:
fix tests
fix bug #49348 - issue notice on get_property_ptr_ptr when used for read
2013-02-21 00:52:46 -08:00
Stanislav Malyshev
dc6f073ce9
fix tests
2013-02-18 23:01:42 -08:00
Dmitry Stogov
d7cbc01188
Merge branch 'PHP-5.5'
...
* PHP-5.5:
Fixed bug #64070 (Inheritance with Traits failed with error)
2013-02-18 16:36:25 +04:00
Dmitry Stogov
d77eb411ea
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed bug #64070 (Inheritance with Traits failed with error)
Conflicts:
NEWS
Zend/zend_compile.c
2013-02-18 16:20:49 +04:00
Dmitry Stogov
42437dd870
Fixed bug #64070 (Inheritance with Traits failed with error)
2013-02-18 16:07:51 +04:00
Xinchen Hui
92046b7ef1
Merge branch 'PHP-5.5'
2013-02-16 22:25:37 +08:00
Xinchen Hui
75742d57eb
Exceptions triggered by undefined variable should be handled before FATAL error
...
this is a enhancement of the fix for bug #64135
2013-02-16 22:22:22 +08:00
Xinchen Hui
5fcae352ed
Merge branch 'PHP-5.5'
2013-02-07 23:50:35 +08:00