lhchavez
216f991b0c
Normalize stringified type names ( #2239 )
...
This change makes stringified types more normalized. Concretely it sorts
all union types, reconciled types, and sorts the keys within object-like
types.
2019-10-17 01:14:33 -04:00
Brown
3658771bff
Fix #2221 - variadic args are lists
2019-10-10 17:46:20 -04:00
Brown
b75720c32b
Add more list types
2019-10-09 10:04:34 -04:00
Matthew Brown
6a07757b9a
Fix tests
2019-10-08 22:41:23 -04:00
Brown
16c33d1565
Add support for list type
...
Fixes #2209
2019-10-08 18:44:46 -04:00
Brown
648dda67ed
Fix Psalm issues
2019-09-25 13:12:29 -04:00
Brown
1a48be8e9c
Fix #2165 - coerce null array offset to zero
2019-09-25 12:17:37 -04:00
Brown
be4894c8e0
Fix #2155 - coerce false to 0, true to 1 in array offset
2019-09-20 15:21:38 -04:00
Matthew Brown
d27935d109
Improve accuracy around array addition
2019-09-08 10:23:12 -04:00
Brown
095ea1a554
Properly clone array when changing value
2019-08-27 17:00:00 -04:00
Brown
3b865f6509
Fix #2048 - allow mixed array to be assigned specific string keys
2019-08-27 10:18:58 -04:00
Matthew Brown
5d94e340ee
Remove unused suppressions in tests
2019-08-18 15:34:32 -04:00
Matthew Brown
a553adb232
Fix test array spacing
2019-06-16 09:42:34 -04:00
Brown
56daa390fc
Allow array access on @template T as array
...
Ref #1607
2019-05-23 18:06:22 -04:00
Matthew Brown
fe0f352132
Fix #1628 - improve behaviour of unset in loops
2019-05-13 11:00:17 -04:00
Brown
0e4c8ce482
Split apart TypeCoercion issues, allowing more granular issue filtering
2019-04-25 18:02:19 -04:00
Matthew Brown
c772914910
Add some formatting
2019-03-23 14:27:54 -04:00
Matthew Brown
a0659a02f1
Fix #1418 - support templated union types
2019-03-16 11:15:25 -04:00
Matthew Brown
b73dd8ebe4
Fix #1447 - always inherit docs from parents
2019-03-16 00:31:17 -04:00
Bruce Weirdan
9bdc9f774f
More provider typing
2019-03-02 08:43:19 -05:00
Matthew Brown
b310cc07b5
Array access on objects should always be treated as method call
2019-02-26 21:24:30 -05:00
Brown
dca8bf9d36
Fix #1329 - improve handling arrays with string offsets
2019-02-15 14:42:17 -05:00
Matthew Brown
ed4ed957c8
Use more specific templated argument
2019-02-07 15:21:34 -05:00
Brown
2054e3753f
Fix #1260 - improve handling of ArrayAccess assignment
2019-01-31 12:45:47 -05:00
Matthew Brown
a89a201c71
Fix #1180 - array key maths was wrong
2019-01-08 09:56:54 -05:00
Matthew Brown
9d8c2792e2
Add array-key type and improve general type handling
...
Fixes #1144
2019-01-05 00:15:53 -05:00
Matthew Brown
602d8a5ade
Fix issue inheriting grandparent signature
2019-01-04 08:37:54 -05:00
Brown
72c50be4b0
Fix build
2018-12-19 20:01:27 -05:00
Brown
fb848d62e9
Add checks for if (count($a)) and if (count($a) [operator] [number])
2018-12-19 16:15:19 -05:00
Matthew Brown
ea89a6ba29
Revert "First pass"
...
This reverts commit 9ed047234f
.
2018-12-19 08:45:14 -05:00
Matthew Brown
9ed047234f
First pass
2018-12-19 01:59:14 -05:00
Matthew Brown
fd0ab47b80
Fix #1118 - detect possible issues with unions of mixed
2018-12-08 13:18:55 -05:00
Matthew Brown
4688b25fd9
Move internal classes to own namespace
2018-11-12 11:20:59 -05:00
Brown
b7099aaf3f
Make sure array changes are noticed
2018-11-09 11:19:44 -05:00
Matt Brown
dce8d14e1b
Fix syntax errors in tests
2018-09-17 12:15:45 -04:00
Matthew Brown
4ad3522448
Fix #918 - improve handling of associative array offsets
2018-08-21 00:28:39 -04:00
Matthew Brown
8814dff3c1
Fix #947 - interpret type hints of unpacked args
2018-08-20 22:11:01 -04:00
Matt Brown
af14d6982f
Fix #863 - MixedTypeCoercion is more appropriate in many cases
2018-07-05 10:11:04 -04:00
Matt Brown
c31d963918
Allow constants in array offsets to be reasoned about
2018-05-31 16:49:01 -04:00
Matthew Brown
1a4891c2e0
Fix #781 - prevent DuplicateArrayKey warning unnecessarily
2018-05-30 07:42:00 -04:00
Matthew Brown
b0733254bb
Use individual type objects for each string ( #757 )
...
* Experiment with individual types for each string
* Fix bunch of errors
* Fix a few more issues
* Fix a whole bunch of bugs
* Fix most remaining bugs
* Fix isset warnings
* Fix psalm errors in psalm
* Limit big string size
* Fix falsiness of ints
* Fix issue with type widening, allowing value set in nested if to be altered
* Don’t complain if type is mixed
* Add skipped-for-now test
* Add specific test to address issue
2018-05-18 11:02:50 -04:00
Matthew Brown
4fe5ac87b6
Fix #712 - rewrite switch statement fallthroughs to understand logic better
2018-05-12 12:55:24 -04:00
Matt Brown
6460d907f9
Improve array handling when offsets hard to define
2018-05-07 16:22:04 -04:00
Matthew Brown
0181fce46f
Fix #711 - concat ops contribute to loop map
2018-05-05 16:17:54 -04:00
Matthew Brown
7ccc17cd98
Fix #324 - improve undefined array handling
2018-05-02 20:10:08 -04:00
Matt Brown
5a2f6ff0e0
Fix #624 - change some innaccurate issue names
2018-04-17 14:07:02 -04:00
Matthew Brown
8dcb878af4
Fix #606 - fatal error when evaluating array_key_exists
2018-03-19 19:14:55 -04:00
Matthew Brown
b0b3c9287e
Fix array_key_exists calls on possibly undefined objectlike
2018-03-17 19:03:46 -04:00
Matthew Brown
4175d1a887
Add PossiblyUndefinedVariable warning when using possibly undefined array key
2018-03-17 17:35:36 -04:00
Matthew Brown
61af2a924c
Fix #575 - generated possibly-undefined keys when scanning objectlike return types
...
Ref #458
2018-03-17 16:53:11 -04:00