Commit Graph

115 Commits

Author SHA1 Message Date
Anatol Belski
bc5811f361 further sync for vim mode lines 2017-07-04 18:12:45 +02:00
Pedro Magalhães
c6c1e75e6b Fix bug #74607: Don't check for bi-directional compatibility in traits 2017-06-03 00:24:43 +02:00
Pedro Magalhães
a5eb57c96e Allow overriding abstract methods
RFC: https://wiki.php.net/rfc/allow-abstract-function-override
2017-05-24 17:42:01 +02:00
Dmitry Stogov
dfffe6cb32 Type hint inheritance check optimization 2017-05-10 22:25:32 +03:00
Nikita Popov
d8aa99ed94 Drop unused variable 2017-05-01 14:16:26 +02:00
Pedro Magalhães
5324fb1f34 Fixed bug #61970: Allow a child class to restrict access to ctor 2017-05-01 14:15:57 +02:00
Pedro Magalhães
92124f9cdc Fixed bug #74269: Strict comparison of initial trait property values 2017-05-01 12:59:27 +02:00
Nikita Popov
b6a4aad820 Remove the ZEND_ACC_CLONE flag
This one is completely unused
2017-04-22 15:47:53 +02:00
Niklas Keller
2edc3cf8d2 Implement Parameter Type Widening RFC 2017-02-04 23:33:24 +01:00
Joe Watkins
c827124632
Merge branch 'PHP-7.1'
* PHP-7.1:
  Added tests demonstrating the same effect with abstracts
  Inheritance checks should not ignore parents if these implement an interface
2017-01-28 06:28:24 +00:00
Pedro Magalhães
b67eb3440b
Inheritance checks should not ignore parents if these implement an interface 2017-01-28 06:28:10 +00:00
Dmitry Stogov
141d1ba980 Introduced "zend_type" - an abstraction for type-hinting representation. 2017-01-13 11:37:46 +03:00
Sammy Kaye Powers
dac6c639bb Update copyright headers to 2017 2017-01-04 11:23:42 -06:00
Sammy Kaye Powers
9e29f841ce Update copyright headers to 2017 2017-01-02 09:30:12 -06:00
Nikita Popov
7cd2494bb8 Merge branch 'PHP-7.0' into PHP-7.1 2016-09-22 12:34:55 +02:00
John Boehr
8e313becf4 Fix bug #69579 2016-09-22 12:32:37 +02:00
Nikita Popov
2b46e3c710 Merge branch 'PHP-7.0' 2016-07-05 14:34:20 +02:00
Nikita Popov
8a555d7c66 Merge branch 'PHP-5.6' into PHP-7.0
Conflicts:
	Zend/zend_compile.c
2016-07-05 14:32:38 +02:00
Aaron Piotrowski
583386d59e Swap type check order 2016-06-29 09:36:33 -05:00
Aaron Piotrowski
277d89cde8 Limit covariance to array and Traversable 2016-06-05 22:06:17 -05:00
Aaron Piotrowski
cf0290c273 Fix abort too early 2016-06-05 02:01:01 -05:00
Aaron Piotrowski
4da3e77b4c Covariance on inheriting classes with iterable 2016-06-04 09:44:49 -05:00
Dmitry Stogov
0cdbabe558 Merge branch 'nullable_types' of github.com:morrisonlevi/php-src
* 'nullable_types' of github.com:morrisonlevi/php-src:
  Fix bug #71428
  Add nullable parameter types
  Implement nullable return types.
2016-05-23 10:14:26 +03:00
Dmitry Stogov
37c8711f49 Fixed typo 2016-05-06 10:47:58 +03:00
Dmitry Stogov
c19cb70dac Revert "Refactor zval cleanup into single function"
This reverts commit bac6fdb0c5.
2016-05-06 10:47:58 +03:00
Bob Weinand
bac6fdb0c5 Refactor zval cleanup into single function
Also use zval_ptr_dtor_nogc() everywhere in Zend in favor of zval_dtor()
2016-05-05 23:31:57 +02:00
Levi Morrison
56c3d75780 Fix bug #71428
This also affects bug #72119
2016-05-05 11:53:32 -06:00
Levi Morrison
9662259cb9 Add nullable parameter types
This works off of Dmitry's commit for nullable return types
2016-05-05 11:53:32 -06:00
Dmitry Stogov
49fe737e58 Implement nullable return types. 2016-05-05 09:34:16 -06:00
Dmitry Stogov
19c0335609 Revert "Fix bad merge into master"
This reverts commit 2c8e4ba8f1.
2016-04-29 11:15:26 +03:00
Bob Weinand
2c8e4ba8f1 Fix bad merge into master
This should only have been reverted in 7.0, but not for 7.1. (merge=ours??)
Added appropriate NEWS entry.
2016-04-28 19:32:14 +02:00
Dmitry Stogov
389f77b37c Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed BC break described by bug #72119. It was introduced after 7.0.5 release by attempt to fix bug #71428.
2016-04-28 19:57:59 +03:00
Dmitry Stogov
9e45ac53ce Fixed BC break described by bug #72119.
It was introduced after 7.0.5 release by attempt to fix bug #71428.
2016-04-28 19:56:10 +03:00
Dmitry Stogov
0f8d0df938 Merge branch 'PHP-7.0'
* PHP-7.0:
  Prevent usage in GC after free.
2016-04-19 01:37:45 +03:00
Dmitry Stogov
e46be0cd19 Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Prevent usage in GC after free.
2016-04-19 01:37:24 +03:00
Dmitry Stogov
3c305c14f6 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed build
2016-04-07 01:00:34 +03:00
Dmitry Stogov
088f55ae74 Fixed build 2016-04-07 00:59:21 +03:00
Kalle Sommer Nielsen
fdff901cad Fix the build 2016-04-06 22:25:05 +02:00
Dmitry Stogov
936f161402 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71978 (Existence of return type hint affects other compatibility rules)
2016-04-06 17:20:43 +03:00
Dmitry Stogov
e9d65160e8 Fixed bug #71978 (Existence of return type hint affects other compatibility rules) 2016-04-06 17:17:10 +03:00
Nikita Popov
32294a25c8 Fixed bug #62814 2016-03-29 19:08:17 +02:00
Joe Watkins
8ae3524a13 Merge branch 'PHP-7.0'
* PHP-7.0:
  remove unused param
2016-03-29 11:34:31 +01:00
Joe Watkins
d12ed0c7fa remove unused param 2016-03-29 11:34:18 +01:00
Joe Watkins
45035b1b8d Merge branch 'PHP-7.0'
* PHP-7.0:
  fix bug #71428: Validation type inheritance with = NULL
2016-03-29 09:58:06 +01:00
Joe Watkins
dd70c39556 fix bug #71428: Validation type inheritance with = NULL 2016-03-29 09:57:51 +01:00
Joe Watkins
bdd05e7483 Merge branch 'PHP-7.0'
* PHP-7.0:
  Bug #71428 work ... hopefully, fix drupal 8
2016-03-29 09:36:46 +01:00
Joe Watkins
3f56dfe866 Bug #71428 work ... hopefully, fix drupal 8 2016-03-29 09:36:08 +01:00
Joe Watkins
34d8fea1a8 Merge branch 'PHP-7.0'
* PHP-7.0:
  work on #71428
2016-03-28 11:55:03 +01:00
Joe Watkins
ee9a78a033 work on #71428 2016-03-28 11:54:25 +01:00
Xinchen Hui
9b61479166 We don't need to dup zend_class_constant here.
quote why the internal class is still using duplication:
```
for internal classes, the zend_class_constant is malloc-ed. we need to
free it.

if (const->ce == ce) {
zval_ptr_dtor(&const->value);
free(const)
}
so, if two classes share one const, and it(parent class) was freed
before, this read(in child class, const->ce) is invalid..

and destroy_zend_class is called via zend_hash_destroy(class_table).
which is not in reverse order... so, parent classes are dtor first.

if we want this work, we should change that order.
```
2016-01-22 11:22:37 +08:00