Brown
a2e7a65f3a
Add better types for microtime
2018-10-10 16:03:00 -04:00
Brown
8e73b34469
Fix #1009 - improve handling of print_r
2018-10-10 10:58:47 -04:00
Matt Brown
6e5a9bf076
Fix #986 - use better return type for array_slice
2018-09-07 10:53:56 -04:00
Matt Brown
5d6fb4efdf
Copy inferred type when suppressing errors
2018-09-04 13:57:05 -04:00
Matt Brown
e1bc9c65fc
Add ksort to list of no-op by ref functions (vis-a-vis their argument shape
2018-09-04 13:14:44 -04:00
Matt Brown
f844f86a6c
Improve type coercion checks in strict mode
2018-08-28 17:42:39 -04:00
Matt Brown
1037485a60
Convert InvalidScalarArgument to InvalidArgument when declare(strict_types=1) is set
2018-08-28 12:37:25 -04:00
Matt Brown
4ef2aafdd8
Fix #955 - always check third argument of array_splice
2018-08-24 16:12:07 -04:00
Matt Brown
366f625c83
Improve handling of coerced-to-array strings in array_splice
2018-08-14 11:51:17 -04:00
Matthew Brown
abc19d7136
Fix #915 - never care about falsable/nullable issues when matching functions from callmap
2018-08-08 23:28:30 -04:00
Matthew Brown
695ececc22
Add tests for 7c10a09
2018-08-08 22:44:02 -04:00
Matthew Brown
c9a2ca9321
Allow output of get_parent_class to be used in new without check
2018-08-02 13:43:13 -05:00
Matthew Brown
d3fc9a51e0
Improve callmap with PHPStan’s additions
...
cc @TysonAndre
2018-07-22 19:15:40 -04:00
Matthew Brown
1589b2a01e
Fix #269 - allow trigger_error to count as exit statement
2018-07-13 18:36:25 -04:00
SignpostMarv
3eb027d371
875 addendum ( #876 )
...
* testing port
* testing return values with port
* removing redundant assertions
* forgot to return ¬_¬
* Fix build
2018-07-10 00:08:53 -04:00
Matt Brown
166706a35d
Fix #875 - improve return types for parse_url
2018-07-09 14:37:14 -04:00
Matthew Brown
cd4bb75d80
Fix #871 - handle gettimeofday args
2018-07-07 20:35:24 -04:00
Matt Brown
7e09f59825
Fix #868 - improve return type of version_compare
2018-07-06 13:09:05 -04:00
Matt Brown
376c3c54c0
Add better checks for array_reduce
...
Fixes #846
2018-06-28 16:01:53 -04:00
Matt Brown
740279352e
Fix #830 - unpack template param args appropriately
2018-06-20 10:40:50 -04:00
Matthew Brown
4688cf7a92
Fix #831 - ignore falsable issues when getting callmap function params
2018-06-20 09:09:03 -04:00
Matt Brown
3afd6053fd
Fix #819 - only add is_a assertion if static::class known
2018-06-15 10:51:30 -04:00
Bruce Weirdan
6ecea35837
array_column return type inference ( #787 )
...
* Exception message typo fixed
* array_column return type inference
It takes a safe approach and only tries to be smart when array row type
is definite single shape
* cs fix
2018-05-31 21:14:06 -04:00
Matthew Brown
a3e2b98f7c
Fix #743 - put InvalidArgument messages before PossiblyFalseArgument
2018-05-20 13:14:31 -04:00
Matt Brown
f2a70fef85
Fix #745 - give iterator_to_array back its type info
2018-05-18 18:10:10 -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
c00fdd0fe3
Add better type inference for next and prev
...
Fixes #738
2018-05-13 19:20:05 -04:00
Matthew Brown
b36b50784d
Fix #703 - prevent undefined param offset
2018-04-30 22:18:41 -04:00
Matt Brown
6e67030925
Fix #702 - prevent bad array to iterable cast
2018-04-30 13:17:09 -04:00
Matt Brown
1f3837d972
Fix #686 - allow undefined class inside class_exists call
2018-04-19 12:16:00 -04:00
Matt Brown
3cc549384f
Type explode more accurately
2018-04-16 16:03:04 -04:00
Radosław Kowalewski
15c1a82d8c
Few fixes to make tests pass on windows
...
* changed / to DIRECTORY_SEPARATOR in expected messages
* cahnged most occurences PHP_EOL to "\n" in tests and src
* added output buffering in test to avoid marking test as risky
2018-04-12 22:41:13 -04:00
Matt Brown
fe46e4e63d
Make tests a bit more specific
2018-04-10 15:47:04 -04:00
Matt Brown
6eabdf326d
Fix display of closure objects
2018-04-09 16:45:54 -04:00
Matthew Brown
0b95f1017e
Fix issues with callmap callable types
2018-04-08 12:57:56 -04:00
Matthew Brown
3fe9a0606e
Fix #654 - warn about MixedArgument when inferredType property does not exist
...
And handle str_replace more leniently when args unknown
2018-04-07 15:16:46 -04:00
Matt Brown
4927dfd337
Fix issue with InvalidArrayOffset from falsable
2018-04-05 13:57:01 -04:00
Matthew Brown
78d5adb17d
Make key work with typed arrays
2018-04-05 00:21:14 -04:00
Matthew Brown
4ff7db09f9
Fix var_export return type
...
Fixes #636
2018-04-02 22:19:58 -04:00
Matthew Brown
c8c216edb2
Fix #610 - add slightly hacky check for multiple callmap options
2018-03-30 18:51:59 -04:00
Matthew Brown
3ef7073862
Add callmap updates from Phan
2018-03-27 01:05:37 -04:00
Matthew Brown
58115599a1
Add support for callable(...) syntax
...
Ref #580
2018-03-26 22:13:10 -04:00
Matthew Brown
0defe84e01
Allow use of $argv and $argc in function use statements
2018-03-18 17:11:14 -04:00
Matt Brown
d6e0708e88
Fix #577 - allow int in second param of strpos
2018-03-15 17:32:03 -04:00
Matt Brown
822d0a116e
Reflect all numeric types passed to abs
...
Fixes #576
2018-03-14 18:05:36 -04:00
Matt Brown
56bdb924f5
Fix #563 - improve error message and ignore falsable issues for strtotime
2018-03-08 14:04:00 -05:00
Matt Brown
d8825701f5
Fix #556 - closure params with defaults can still accept extra
2018-03-05 10:29:19 -05:00
Matthew Brown
67cad2063d
Fix #555 - fix function name mapping class
2018-03-05 09:01:24 -05:00
Matthew Brown
ee6a9b98fb
Allow arrays to be called (ugh)
2018-03-02 00:49:53 -05:00
Matthew Brown
54cbee1265
Add TooManyArguments for closure test
2018-03-02 00:12:41 -05:00