Matt Brown
|
c9e47450a7
|
Fix #4266 - prevent OOM when analysing closure unioned with invokable class
|
2020-10-02 00:47:42 -04:00 |
|
Matt Brown
|
fc001cdf65
|
Treat func_get_args as using function params
|
2020-09-30 13:08:01 -04:00 |
|
Matt Brown
|
14efde286f
|
4.x - refactor unused variable detection
This turns unused variable detection into an explicit control-flow problem, where before we had a more simplistic mark-and-sweep algorithm
|
2020-09-30 12:28:13 -04:00 |
|
Brown
|
19f88a2e31
|
Add improvements from unused variable checks
|
2020-09-28 00:45:02 -04:00 |
|
Brown
|
da65a4327f
|
Move taint graph functionality into its own object
|
2020-09-25 00:37:40 -04:00 |
|
orklah
|
83ca918824
|
preg_split can't take null in limit (#4236)
* preg_split can't take null in limit
* fix wrong type in preg_split
|
2020-09-22 13:46:37 -04:00 |
|
orklah
|
37a2f8a33d
|
unused use statements (#4228)
|
2020-09-22 01:10:46 -04:00 |
|
orklah
|
250fa8e42d
|
misc changes (#4227)
* misc changes
* misc changes
|
2020-09-22 00:44:31 -04:00 |
|
Brown
|
56cddd16bf
|
Rename TaintGraph to ControlFlowGraph because it’s about to do more
|
2020-09-20 23:59:52 -04:00 |
|
Brown
|
0f6a271858
|
Improve file-based suppression of taints
|
2020-09-20 19:37:25 -04:00 |
|
Brown
|
5c23a3d7b3
|
Localise taint analysis better
|
2020-09-20 19:26:49 -04:00 |
|
Brown
|
2968b3b065
|
Add to StatementsAnalyzer taint object instead of Context
|
2020-09-20 18:42:21 -04:00 |
|
Brown
|
abb9502921
|
Rename Taint object to TaintGraph
|
2020-09-20 18:27:02 -04:00 |
|
orklah
|
de16308f2e
|
useless comparison (#4223)
* remove unused code
* fix wrong fix
|
2020-09-20 13:01:27 -04:00 |
|
orklah
|
24a38f21ce
|
Use array destructuring when possible (#4221)
* list usage
* fix inversion
|
2020-09-20 12:55:38 -04:00 |
|
orklah
|
1a1b88bb5e
|
add visibilities to constants (#4219)
|
2020-09-20 12:54:46 -04:00 |
|
Brown
|
ef3cf67f50
|
Fix #4198 - make analysis of class-string property assignments more robust
|
2020-09-20 09:18:35 -04:00 |
|
orklah
|
a9a364e363
|
Misc improvements (#4216)
* misc changes
* fix CI
|
2020-09-20 08:55:28 -04:00 |
|
orklah
|
b19f0a7034
|
Remove empty() and use strict comparison when safe (#4211)
* replace empty usage with stricter checks
* use strict comparison when safe
* replace is_null with === null for consistency
|
2020-09-19 18:26:51 -04:00 |
|
Brown
|
0ae436d335
|
Fix a couple of false-positive redundant conditions
|
2020-09-19 18:12:14 -04:00 |
|
orklah
|
191495328a
|
Fix errors in return types (#4189)
* FunctionLikeAnalyzer::verifyReturnType returns void
* ArrayFunctionArgumentsAnalyzer::checkArgumentsMatch returns void
* AssertionFinder::scrapeAssertions can't return null
|
2020-09-16 17:35:55 -04:00 |
|
Brown
|
dda013dc2e
|
Only refine for matching closure union members
Ref #4136
|
2020-09-15 09:40:27 -04:00 |
|
Brown
|
77e84b3817
|
Fix a few more things
|
2020-09-13 23:28:31 -04:00 |
|
Brown
|
249903e18a
|
Fix style issues
|
2020-09-13 21:45:07 -04:00 |
|
Brown
|
56bae3b587
|
Add check for strpos dictionaries
Ref #4070
|
2020-09-13 21:42:44 -04:00 |
|
orklah
|
da47588f91
|
replace return; by return null; in every non-void method, add return null; when mising, add return types, remove redundant phpdoc (#4176)
|
2020-09-13 16:39:06 -04:00 |
|
ygottschalk
|
5b0c9b1a28
|
added array-size max constraint to greater check (#4175)
added a few unit tests
|
2020-09-12 16:13:13 -04:00 |
|
Brown
|
09d22cb05c
|
Fix #4169 - add appropriate bounds check
|
2020-09-12 11:33:26 -04:00 |
|
Toshiyuki Goto
|
ad437c5265
|
Workaround to PhpScoper group use bug in Box (#4174)
|
2020-09-12 11:24:40 -04:00 |
|
orklah
|
ead107fa9e
|
More return types (#4173)
* add native return types
* redundant phpdoc
|
2020-09-12 11:24:05 -04:00 |
|
Brown
|
6ffe471525
|
Make new InvalidLiteralArgument issue for strpos refs
Ref #4070
|
2020-09-10 22:54:32 -04:00 |
|
Brown
|
eda426a594
|
Improve unique issue solution
|
2020-09-10 22:54:30 -04:00 |
|
Brown
|
aaede393d4
|
Fix #4070 - prevent literal strpos argument
|
2020-09-10 18:28:34 -04:00 |
|
Brown
|
fe4af8ff1a
|
Minor fixes
|
2020-09-07 17:22:43 -04:00 |
|
Brown
|
8737abf3b8
|
Fix real projects bug
|
2020-09-07 15:14:14 -04:00 |
|
Brown
|
88e0811cdd
|
Fix #4136 - allow union type properly
|
2020-09-07 14:08:56 -04:00 |
|
Brown
|
d174fc6f3f
|
Improve fix
|
2020-09-07 13:19:37 -04:00 |
|
Brown
|
afce416bfb
|
Fix #4136 - allow inference of callabe type param in union of callables
|
2020-09-07 12:56:47 -04:00 |
|
Brown
|
f78fbbe4c9
|
Fix #4146 - allow null checks on Iterator::current output
|
2020-09-07 11:40:36 -04:00 |
|
orklah
|
8c7423505a
|
add native param types (#4137)
* add native param types
* redundant phpdoc
* add more param types and adds "?" to nullable types
* remove redundant phpdoc
* add more param types and remove redundant phpdoc
* add more param types and remove redundant phpdoc
|
2020-09-06 19:36:47 -04:00 |
|
Matthew Brown
|
422271b2cf
|
Prevent variables named "haystack" from receiving literal strings
cc @staabm
|
2020-09-05 00:35:48 -04:00 |
|
Matthew Brown
|
3605eeee04
|
Support analysing preg_match_all args in reverse to infer matches type
|
2020-09-04 20:33:02 -04:00 |
|
Brown
|
4d82d3ddad
|
Fix #4128 - improve understanding of preg_match_all
|
2020-09-04 18:10:14 -04:00 |
|
Brown
|
22fe7458d8
|
Break up large method
|
2020-09-04 17:45:22 -04:00 |
|
Brown
|
f4c2edf40b
|
Fix #4132 - ignore purity of $this when checking for initialisation
|
2020-09-04 16:46:20 -04:00 |
|
orklah
|
f66d57f19d
|
add native return types (#4116)
* add native return types
* remove redundant phpdoc
|
2020-09-04 16:26:33 -04:00 |
|
Brown
|
68ebef2a2e
|
Clean up immutable fix
|
2020-09-03 15:32:14 -04:00 |
|
Brown
|
8505ca2a23
|
Allow passing mutable object into immutable class to store reference
|
2020-09-03 15:28:09 -04:00 |
|
Brown
|
bd27e8b17b
|
Fix #4109 - detect duplicate match condition
|
2020-09-02 20:08:09 -04:00 |
|
orklah
|
73f6fcde48
|
Short list syntax (#4102)
* Short list syntax
* revert unrelated CS
|
2020-09-02 00:17:41 -04:00 |
|