Pavel Batečko
ecf85aef12
Add generic definition of DOMNamedNodeMap ( #2703 )
...
* Fix #2638 - propagate phantom classes to recursive calls to Scanner::queueClassLikeForScanning()
* Add generic definition of DOMNamedNodeMap
2020-01-29 08:39:07 -05:00
Matthew Brown
10221f474f
Fix test
2020-01-27 23:52:06 -05:00
Matthew Brown
82bb3b90f0
Add @return to test
2020-01-27 23:38:31 -05:00
Matthew Brown
ff01f41b44
Allow strings in assert annotation
2020-01-27 23:15:50 -05:00
Matthew Brown
5c3ec7a531
Fix #2696 - make sure static property references are prevented in pure functions
2020-01-27 22:55:20 -05:00
Brown
15808458cc
Better understand nesting loops and switches
...
Fixes #2700
2020-01-27 12:17:12 -05:00
Matthew Brown
8c89760ff3
Use more accurate type for large arraya
...
Fixes #2690
2020-01-25 10:38:23 -05:00
Brown
9f077f5aec
Fix formatting
2020-01-24 14:08:01 -05:00
Brown
53b0650c6c
Fix #2688 - foreach loop evaluation should allow changing loop var
2020-01-24 13:55:30 -05:00
Brown
faf6afdce8
Support call_user_func evaluation
...
Fixes #726
2020-01-24 13:34:50 -05:00
Brown
dbdf7473f4
Fix abstract trait method implementation errors when using self
2020-01-24 11:15:35 -05:00
Brown
34d73e7243
Fix #2685 - always evaluate $a++ in unknown call
2020-01-24 10:32:28 -05:00
Matthew Brown
c87b19eeb0
Fix #2681 - no error after empty check on literal value
2020-01-23 22:26:49 -05:00
Brown
0ffb833bf3
Fix #2677 - use better assertion for null coalesce
2020-01-23 14:52:35 -05:00
Brown
da43b8188f
Fix #2632 - detect invalid by-ref assignments in pure functions
2020-01-23 14:21:34 -05:00
Brown
0ac20e76c4
Fix #2631 - evaluate purity of uasort closure
2020-01-23 13:49:15 -05:00
Brown
e68ca6a20b
Fix #2661 - catch invalid array_push on property
2020-01-22 09:57:59 -05:00
Matthew Brown
d4ceabc174
Fix error baseline test
2020-01-21 21:22:38 -05:00
Matthew Brown
8202af957d
Index issues by file to reduce some lookups
2020-01-21 21:07:44 -05:00
Brown
0132b3789b
Fix #2665 - warn about abstract class interface inheritance issues
2020-01-21 11:46:51 -05:00
Brown
a2e1dfd64e
Fix #2667 - don’t check inherited signature return types for accuracy
2020-01-21 11:07:44 -05:00
Brown
36f5c51f01
Allow unpacking of list args with known elements
2020-01-21 10:13:37 -05:00
Matthew Brown
8ccd4860e3
fclose should treat resource as passed-by-reference
2020-01-17 13:12:00 -05:00
Matthew Brown
c9d88b6e62
Remove lines
2020-01-17 12:13:29 -05:00
Matthew Brown
1c8af2fdc7
Fix #2658 - catch exceptions thrown inside catch
2020-01-17 12:05:37 -05:00
Matthew Brown
7f093ca8ed
Fix #2626 - allow assertions on resource types
...
Also fixes #2266
2020-01-17 11:55:16 -05:00
Matthew Brown
2c48d42904
Allow destructuring of callable array
...
Fixes #2653
2020-01-17 10:02:58 -05:00
Matthew Brown
24e1d5446c
Fix #2642 - merging two explicit lists is still a list
2020-01-17 09:31:08 -05:00
Matthew Brown
adf230e873
Fix #2636 - allow non-empty-list in assert annotation
2020-01-17 09:06:34 -05:00
Alexander Wühr
f9560009ca
Allow false
as \PDO::fetch return type ( #2647 )
2020-01-17 08:48:08 -05:00
Matthew Brown
c50fa27025
Identify trait method access level violations as less serious
2020-01-17 00:28:08 -05:00
Matthew Brown
257ebfd205
Improve trait method mismatch failure rules
2020-01-16 22:36:30 -05:00
Bruce Weirdan
17857163fc
Modular config files ( #2635 )
...
This change introduces an option to have the configuration split across
several files using standard XInclude tags. This may be useful for more
complex configs, or to include auto-generated parts into a manually
written config file.
2020-01-16 15:57:52 -05:00
Brown
d434f7fb9d
Add list identification for late-resolved constants
...
Fixes #2624
2020-01-15 11:54:01 -05:00
Brown
1b551b805b
Fix #2627 - infer arrow function effects for array_filter
2020-01-15 11:40:49 -05:00
Matthew Brown
389af1bfc7
Fix #2618 setting list param from docblock
2020-01-14 22:46:19 -05:00
Matthew Brown
4a03c4aedd
Fix impossible isset checks
2020-01-14 21:54:02 -05:00
Matthew Brown
c3edbdbc19
Allow checking $_SESSION for null without altering type
2020-01-14 21:51:04 -05:00
Brown
0f6b61d62d
Clone isset type before contradicting
2020-01-14 18:28:32 -05:00
Brown
adc658901a
Improve inference of constant() calls
2020-01-14 16:56:09 -05:00
Brown
1ccababcb7
Track list-ness of constant arrays
...
Fixes #2621
2020-01-14 12:13:41 -05:00
Brown
c77f2cd7a2
Treat array key int literals same way we treat string literals
2020-01-14 10:40:16 -05:00
Matthew Brown
e1daf26202
Improve support for null coalesce checks
2020-01-14 00:53:38 -05:00
Matthew Brown
b0073d4558
Fix #2614 - prevent isset($string)
2020-01-13 21:27:09 -05:00
Matthew Brown
ef3c2d30c9
Fix #2613 - allow docblock-defined object-like as non-empty-array
2020-01-13 21:05:30 -05:00
Brown
eb7c3dcc11
Fix #2611 - fix combination of inferred closure return types
2020-01-13 10:23:58 -05:00
Тальгат Хайруллов
39a822759d
#2579 TooManyArguments was triggered if the variadic function declared at the autoloader file. Fixed. ( #2580 )
2020-01-12 11:33:38 -05:00
Pavel Batečko
87debfe954
Support suppressing all issues with @psalm-suppress all ( #2584 )
...
* Support suppressing all issues using @psalm-suppress all
* Document @psalm-suppress all
2020-01-12 10:38:32 -05:00
Matthew Brown
131fb97663
Fix #2594 - forbid isset check on null
2020-01-11 15:58:40 -05:00
Matthew Brown
bd846123ce
Fix #2560 - handle special case of array_filter on single-element array
2020-01-11 11:54:29 -05:00