Matt Brown
5f01ea788a
Fix #4544 - improve handling of get_class in match
2021-01-29 11:46:10 +01:00
Matt Brown
5219932408
Fix #4545 - allow intersections in more places
2021-01-29 11:46:10 +01:00
Matt Brown
63bf00513b
Split out trait template tests
2021-01-29 11:46:09 +01:00
Matt Brown
8392fb429c
Fix #4540 - use correct method when simulating property setting
2021-01-29 11:46:09 +01:00
Matt Brown
e1d65ff797
Move mutation checks to more appropriate place
2021-01-29 11:46:09 +01:00
Matt Brown
b276f2597c
Prevent the same interface, repopulated, from confusing matters
2021-01-29 11:46:09 +01:00
Matt Brown
fa6cb8b84b
Fix build
2021-01-29 11:46:09 +01:00
Matt Brown
e8c755c7c0
Fix #4537 - use more rigorous inerhitance for return and param types
2021-01-29 11:46:09 +01:00
Matt Brown
5d24b351dc
Use the same docblock as the source params, if possible
2021-01-29 11:46:09 +01:00
Matt Brown
bd20313a14
Use better way to determine which signture to use
...
Fixes #4524
2021-01-29 11:46:09 +01:00
Matt Brown
fb5ee1e46d
Bind lower bounds to upper bounds as well when no upper bound can be inferred
...
Ref #4485
2021-01-29 11:46:08 +01:00
Matt Brown
e624f972dd
Fix #4524 - do better template param inheritance
2021-01-29 11:46:08 +01:00
Matt Brown
f3b6846c70
Fix #4527 - improve interpolated string types
2021-01-29 11:46:08 +01:00
Matt Brown
f83b6bb178
Increase nesting
2021-01-29 11:46:08 +01:00
Matt Brown
3731a9ca35
Fix style
2021-01-29 11:46:08 +01:00
Matt Brown
e34171c375
Fix coalesce operation tainting
2021-01-29 11:46:08 +01:00
Matt Brown
9fbde82d84
Experiment with refactor
2021-01-29 11:46:08 +01:00
Matt Brown
627817cdf7
Add debug stuff for code complexity
2021-01-29 11:46:08 +01:00
Matt Brown
b55c6bde46
Clone to prevent incorrect references
2021-01-29 11:46:08 +01:00
Matt Brown
682ffa96df
Reduce size of data flow graph when analysing array assignments
2021-01-29 11:46:07 +01:00
Adrien LUCAS
9ab0ab9472
Add a proxy
capability to the flow annotation ( #4495 )
...
* Add a `passthru` capability to the flow annotation
* Fix passthru-calls type
* Fix types and rename to proxy
* Allow to proxy a method
Co-authored-by: Matthew Brown <github@muglug.com>
2021-01-29 11:46:07 +01:00
Matt Brown
d07a8bb4a5
Add descendant variables for closure uses
...
Fixes #4522
2021-01-29 11:46:07 +01:00
Matt Brown
1ad65fb899
Fix #4517 - track type contradiction issues in match expressions
2021-01-29 11:46:07 +01:00
Matt Brown
9fd4a24c55
Fix #4516 - treat exit() as the empty type
2021-01-29 11:46:07 +01:00
Matt Brown
ec9d8e6700
Fix #4519 - prevent crash with empty match
2021-01-29 11:46:07 +01:00
Matt Brown
e2eee4cb46
Break apart complex method
2021-01-29 11:46:07 +01:00
Matt Brown
05aaf63dbb
Ignore ReflectionUnionType
2021-01-29 11:46:06 +01:00
Matt Brown
fbafb9e97f
Fix #4509 - treat expression-derived constants as mixed
2021-01-29 11:46:06 +01:00
Matthew Brown
51abbc9074
Update MixedOperand.md
2021-01-29 11:46:06 +01:00
Matt Brown
b4a271931d
Add slashes
2021-01-29 11:46:06 +01:00
Matt Brown
9cc5f48636
Fix/ignore reflection bugs
2021-01-29 11:46:06 +01:00
Wouter J
bd7233a73b
Add support for PHP 8 union types ( #4505 )
2021-01-29 11:46:06 +01:00
Matt Brown
0b32cb93a7
Add ReflectionUnionType stub
2021-01-29 11:46:06 +01:00
orklah
88a075456d
Add undocumented properties in SoapFault ( #4510 )
2021-01-29 11:46:06 +01:00
Matt Brown
8c86cf1e4f
Add a comment to show workings
2021-01-29 11:46:05 +01:00
Matt Brown
3df218148d
Remove unused imports
2021-01-29 11:46:05 +01:00
Matt Brown
4e609917ee
Separate out good from the bad
2021-01-29 11:46:05 +01:00
Matt Brown
36af6d70d2
Fix tests
2021-01-29 11:46:05 +01:00
Matt Brown
b68995582e
Preserve reconciled taints for all but non-string scalar types
2021-01-29 11:46:05 +01:00
Matt Brown
6095800fc5
Fix redundant thing
2021-01-29 11:46:05 +01:00
Matt Brown
fb5e30850a
Fix #4503 - don’t ignore assertions on possibly-null mixed
2021-01-29 11:46:05 +01:00
Matt Brown
36a89c49bf
Consolidate similar functionality
2021-01-29 11:46:05 +01:00
Matt Brown
a79b7eeca3
Add more info to mic drop code
2021-01-29 11:46:04 +01:00
Matt Brown
d72e612223
Break apart IfElseAnalyzer
2021-01-29 11:46:04 +01:00
Matt Brown
3a9498658c
Rename IfAnalyzer
2021-01-29 11:46:04 +01:00
Matt Brown
64ade75d13
Get rid of version test, which is dumb
2021-01-29 11:46:04 +01:00
Matthew Brown
39ad587c3e
Update to more specific example
2021-01-29 11:46:04 +01:00
Matthew Brown
5d1dd3ca65
Add @weirdan's fix
2021-01-29 11:46:04 +01:00
Axel H
2f10ad0c24
Fix type inference when unpacking typed iterables ( #4487 )
...
* Add test for unpacking typed iterables
* Fix type inference when unpacking typed iterables into arrays
* Fix possibly undefined array offset
2021-01-29 11:46:04 +01:00
Matt Brown
578e65820a
Ensure we flush out re-assigned vars also referenced
...
Fixes #4488
2021-01-29 11:46:04 +01:00