Andrea Faulds
753ae9b7db
Test ReflectionType support of iterable
2017-04-29 14:37:35 +01:00
Nikita Popov
d5c6fcc3ba
Don't leak internal flags in reflection
...
If someone complains, we may re-expose specific flags while also
adding corresponding class constants for them.
2017-04-22 16:44:20 +02:00
Nikita Popov
0710eee043
Fix reflection test after flag removal
...
Reflection is leaking internal flags...
2017-04-22 16:31:28 +02:00
Julien Pauli
ed4216c955
ReflectionGenerator now sends ReflectionException as expected
2017-02-07 17:47:08 +01:00
Nikita Popov
162aa1a5fc
Deprecate __autoload()
2017-02-03 18:52:57 +01:00
Nikita Popov
6303dd1ea4
Merge branch 'PHP-7.1'
2017-02-03 18:30:40 +01:00
Nikita Popov
57817eb72f
Merge branch 'PHP-7.0' into PHP-7.1
2017-02-03 18:30:32 +01:00
andrewnester
9ffc6ca62f
Fixed bug #74035
2017-02-03 18:29:39 +01:00
Nikita Popov
fb008bf60e
Remove obsolete version checks from tests
2017-02-02 00:58:04 +01:00
Nikita Popov
a8d901a80c
Remove zend_version() checks from tests
2017-01-30 22:50:25 +01:00
Joe Watkins
7c17936c70
Merge branch 'PHP-7.1'
...
* PHP-7.1:
Fix ce comparison
2017-01-18 05:06:59 +00:00
Joe Watkins
43612e9593
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fix ce comparison
2017-01-18 05:06:07 +00:00
Thomas Punt
a22f181736
Fix ce comparison
2017-01-18 05:05:53 +00:00
Dmitry Stogov
141d1ba980
Introduced "zend_type" - an abstraction for type-hinting representation.
2017-01-13 11:37:46 +03:00
Nikita Popov
a1145c0c40
Fix memory error in reflection export
...
Also simplify code while at it ... no point in going through a
smart_str for a single printf.
2017-01-12 21:50:53 +01:00
Sammy Kaye Powers
dac6c639bb
Update copyright headers to 2017
2017-01-04 11:23:42 -06:00
Sammy Kaye Powers
478f119ab9
Update copyright headers to 2017
2017-01-04 11:14:55 -06:00
Sammy Kaye Powers
9e29f841ce
Update copyright headers to 2017
2017-01-02 09:30:12 -06:00
Nikita Popov
f3f594a47d
Switch reflection to use smart_str
...
Instead of yet-another-smart-string-implementation.
Expand the smart_str API by:
* smart_str_extract() which gets a finalized zend_string* from a
smart_str, including insertion of the zero byte and handling of
the empty string case. This should be preferred over using
smart_str_0() in conjunction with str.s.
* smart_str_get_len() which gets the length of the smart_str with
handling of the empty string case.
2017-01-01 21:28:21 +01:00
Barbu Paul - Gheorghe
e52d2b88e4
Reduce redundant storage of required number of parameters to required flag
...
The required field, until now, stored how many required parameters
the function, it belongs to, has. I think this is rather problematic
because it's a feature of the function to know how many required
parameters it has, not of the parameter itself. The parameter should
only say if it's required or optional (among other unrelated things).
Also storing the function's number of required parameters in every
parameter was redundant since the _zend_function structure already
has that information. And storing the same value (number of required
parameters) across multiple variables is inefficient and could lead
to inconsistencies.
2016-12-26 10:39:19 -08:00
Nikita Popov
509f26c4bb
Drop some dead code in ext/reflection
2016-12-21 21:19:19 +01:00
Nikita Popov
ca682952e7
Merge branch 'PHP-7.1'
2016-12-18 17:11:01 +01:00
Nikita Popov
4ef4e34c2e
Merge branch 'PHP-7.0' into PHP-7.1
2016-12-18 17:10:54 +01:00
Nikita Popov
c1af9f282f
Fix bug #46103
2016-12-18 17:10:19 +01:00
Nikita Popov
5af586bec5
Remove more PHP 6 leftovers from tests
2016-11-24 22:39:39 +01:00
Nikita Popov
45f7b2bcc8
Fix CRLF line-endings in tests
...
Also fix a single instance of CRLF in ibase_query.c.
2016-11-20 22:31:24 +01:00
Andrea Faulds
a0502b89a6
Convert numeric keys in object/array casts
...
RFC: https://wiki.php.net/rfc/convert_numeric_keys_in_object_array_casts
This converts key types as appropriate in object to array and array to object
casts, as well as in get_object_vars().
2016-11-14 18:20:45 +00:00
Dmitry Stogov
bdc1ba3e3a
Intriduced ZEND_ACC_INHERITED class flag.
...
It's going to be helpful for static optimisations, when "parent" is not known yet.
2016-11-01 22:56:25 +03:00
Nikita Popov
02ba9d71ab
Unwrap reference returns in cufa etc
2016-09-30 22:10:01 +02:00
Nikita Popov
f70fb05138
Don't mark ReflectionType::__toString() as deprecated for now
2016-09-28 19:21:53 +02:00
Nikita Popov
bf907b9961
Revert ReflectionType::__toString() behavior + deprecate
2016-09-28 19:21:51 +02:00
Andrea Faulds
fc5497cb92
Merge branch 'PHP-7.0' into PHP-7.1
2016-09-11 22:46:20 +01:00
Andrea Faulds
d690014bf3
Remove zpp fallback code (always use Fast ZPP)
...
Squashed commit of the following:
commit 3e27fbb3d2
Author: Andrea Faulds <ajf@ajf.me>
Date: Sun Sep 11 19:14:37 2016 +0100
Keep dummy FAST_ZPP macro for compatibility
commit 8a7cfd00de
Author: Andrea Faulds <ajf@ajf.me>
Date: Mon Sep 5 22:36:03 2016 +0100
Remove FAST_ZPP macro and plain zpp fallback code
2016-09-11 22:44:46 +01:00
Davey Shafik
12ee17d5e0
Implement \ArgumentCountError exception
2016-08-30 19:35:56 -07:00
Levi Morrison
f4e68a3968
Revert "Do not prepend ? on nullables in ReflectionType::__toString()"
...
This reverts commit 8855a2ce76
.
2016-08-23 09:43:31 -06:00
Nikita Popov
906456c410
call_user_func(_array): Don't abort on reference warning
...
Change zend_call_function() to not abort the call if a non-reference
is passed to a reference argument. The usual warning will still be
thrown, but the call will proceed as usual.
2016-08-23 10:29:15 +03:00
Aaron Piotrowski
8855a2ce76
Do not prepend ? on nullables in ReflectionType::__toString()
...
Better BC with 7.0.
2016-08-21 00:12:47 -05:00
Aaron Piotrowski
c9ee0cb202
Revert "Append \ to class name returned from ReflectionType::__toString()"
...
This reverts commit 20fdd47921
.
2016-08-20 23:26:01 -05:00
Nikita Popov
dfed09afca
Fix off-by-one in ReflectionType::__toString()
...
Review mistake...
2016-08-20 19:00:03 +02:00
Aaron Piotrowski
20fdd47921
Append \ to class name returned from ReflectionType::__toString()
2016-08-16 11:28:33 -05:00
Xinchen Hui
60de74ebda
Fixed bug #72846 (getConstant for a array constant with constant values returns NULL/NFC/UKNOWN)
2016-08-15 23:22:55 +08:00
Aaron Piotrowski
622d2f41d1
ReflectionType improvements
...
Added ReflectionNamedType and updated ReflectionType::__toString()
2016-08-11 12:19:33 +02:00
Christoph M. Becker
f706897f33
Implement #38992 : invoke() and invokeArgs() static method calls should match
...
We don't want ReflectionMethod::invoke() to simply ignore its first argument,
if the method to invoke is a static method. Instead we match its ZPP with
that of ReflectionMethod::invokeArgs(). Furthermore, we apply the DRY
principle by factoring out the code to a common helper function to prevent
inadvertent future divergence of the implementations of both methods.
As can be seen from the necessity to adapt some test cases, this causes a
BC break for some pathological cases. Therefore we apply this patch to PHP
7.1 only, which is still in beta phase.
2016-08-08 01:43:03 +02:00
Xinchen Hui
a3a797dbd5
Fixed bug #72661 (ReflectionType::__toString crashes with iterable)
2016-07-24 11:01:19 +08:00
Nikita Popov
981b94e0cf
Merge branch 'PHP-7.0'
2016-07-13 21:52:40 +02:00
Nikita Popov
57c9983619
Merge branch 'PHP-5.6' into PHP-7.0
...
Conflicts:
ext/reflection/php_reflection.c
2016-07-13 21:48:05 +02:00
nikita2206
eb190b4e91
fix: bug72222 for PHP-5.6 reflection export of array consts
2016-07-13 21:39:55 +02:00
Aaron Piotrowski
24237027bc
Merge branch 'throw-error-in-extensions'
2016-07-05 02:08:39 -05:00
Aaron Piotrowski
e4b1bfc075
Add missed return replacing bail out
2016-06-29 09:56:25 -05:00
Dmitry Stogov
0cfb47651c
Fixed compilation warnings
2016-06-28 11:37:51 +03:00