Matt Brown
|
72da8f655a
|
Don’t stop analysis after mixed method call
|
2017-12-18 11:05:53 -05:00 |
|
Matt Brown
|
597ed0ed12
|
Fix #401 - don’t panic when checking generator against other types
|
2017-12-18 10:58:46 -05:00 |
|
Matthew Brown
|
4b0cee6142
|
Only complain about redundant conditions if there’s one negated clause
|
2017-12-18 00:47:36 -05:00 |
|
Matthew Brown
|
4ff26cdd8f
|
Fix RedundantCondition complaint when examining CNF queries
|
2017-12-18 00:39:00 -05:00 |
|
Matthew Brown
|
2ec09b26d2
|
Clone all types on assignment
|
2017-12-17 23:22:26 -05:00 |
|
Matthew Brown
|
3b7c84f484
|
Detect instances where loop invariants are invalidated
Fixes #389
|
2017-12-17 10:58:03 -05:00 |
|
Matthew Brown
|
c1ce543e81
|
Make sure to clear previously inferred types when rechecking trait statements
Fixes #399
|
2017-12-17 01:06:12 -05:00 |
|
Matthew Brown
|
ad67256be0
|
Remove more methods never called
|
2017-12-16 10:59:04 -05:00 |
|
Matthew Brown
|
2011b8fb8f
|
Remove dead code
|
2017-12-16 10:51:04 -05:00 |
|
Matt Brown
|
8ca5fbefea
|
Invalidate clauses when assigning root vars
|
2017-12-15 17:34:21 -05:00 |
|
Matt Brown
|
3b4a7a97bc
|
Don’t treat callmap scalar types as any sort of filtering mechanism
Fixes #393 and fixes #394
|
2017-12-15 16:48:06 -05:00 |
|
Tyson Andre
|
136d48f77c
|
Support @property-read and @property-write as new tags. (#317)
In combination with `@psalm-seal-properties`, this can be used to
have in-depth checking of magic properties.
|
2017-12-14 14:22:27 -05:00 |
|
Matt Brown
|
52c414f1d2
|
Fix return {expr} checks for void functions
|
2017-12-14 12:50:02 -05:00 |
|
Matt Brown
|
d440e4bbb1
|
Keep going after seeing a type coercion
|
2017-12-14 11:33:18 -05:00 |
|
Matt Brown
|
b319f54ff6
|
Fix issue with equality of scalar types not from docblock
|
2017-12-14 11:23:20 -05:00 |
|
Matthew Brown
|
dc65c14bc4
|
Fix properties fetches with self
|
2017-12-13 22:29:38 -05:00 |
|
Matthew Brown
|
34c133d5d0
|
Add for post conditions to assignment map analysis
|
2017-12-13 22:04:37 -05:00 |
|
Matthew Brown
|
298ee214e9
|
Only allow variables greater than a number to be non-null
|
2017-12-13 20:48:01 -05:00 |
|
Matthew Brown
|
e63441af1e
|
Make sure $a > 0 removes null from $a
Fixes #186
|
2017-12-13 20:06:19 -05:00 |
|
Matthew Brown
|
e55fe2f158
|
Don’t complain about possibly undefined vars when calling unset
Fixes #139
|
2017-12-13 19:46:58 -05:00 |
|
Matt Brown
|
dd11a792fd
|
Add trailing commas
|
2017-12-13 15:57:10 -05:00 |
|
Matt Brown
|
4b8c242f5d
|
Create fake get_class/gettype statements where necessary
|
2017-12-13 15:56:05 -05:00 |
|
Matt Brown
|
51a2f12bbf
|
Only update inner loop vars that have changed given preconditions
|
2017-12-11 12:03:50 -05:00 |
|
Matt Brown
|
301e393e37
|
Remove resource and callable from falsy checks
|
2017-12-11 11:32:14 -05:00 |
|
Matthew Brown
|
146cb12277
|
Refine function arguments if they match non-docblock equivalents
|
2017-12-10 21:14:30 -05:00 |
|
Matthew Brown
|
46feaaf1c6
|
Don’t run try/catch analysis twice
|
2017-12-10 20:21:21 -05:00 |
|
Matthew Brown
|
a2d5bc59ad
|
Get rid of undefined variable issues
|
2017-12-10 18:34:22 -05:00 |
|
Matthew Brown
|
db72ef29d8
|
Fix type reassignment in catches
|
2017-12-10 18:09:38 -05:00 |
|
Matthew Brown
|
f8207fe490
|
Improve handling of try/catch blocks, suppressing RedundantCondition where necessary
Fixes #355
|
2017-12-10 17:36:33 -05:00 |
|
Matthew Brown
|
a413e0496a
|
Fix #361 by terminating analysis if loop statements have issues
|
2017-12-10 16:22:45 -05:00 |
|
Matthew Brown
|
31ce716647
|
Widen empty array checks
|
2017-12-10 16:17:27 -05:00 |
|
Matthew Brown
|
c95af0bb57
|
Fix issue with assigning empty type
|
2017-12-10 14:56:51 -05:00 |
|
Matthew Brown
|
a345ec49a1
|
Fix is_bool checks on true vars
|
2017-12-09 16:05:31 -05:00 |
|
Matthew Brown
|
42dcd136ca
|
Improve treatment of true and fix #369
|
2017-12-09 15:51:38 -05:00 |
|
Matthew Brown
|
13f290038a
|
Improve RedundantCondition checks and add true type
Fixes #383
|
2017-12-09 14:53:39 -05:00 |
|
Matt Brown
|
bfccdb417f
|
Pass through ignore_nullable_issues flag when verifying return statements
|
2017-12-07 16:08:09 -05:00 |
|
Matt Brown
|
eca7351472
|
Add return-level issues as well as function-level ones
Fixes #379
|
2017-12-07 15:50:25 -05:00 |
|
Matthew Brown
|
2a7b48ce5f
|
Add support for infinite loops
Fixes #381
|
2017-12-06 23:46:41 -05:00 |
|
Matt Brown
|
6c84fecce9
|
Always update the parent context from the loop context
Fixes #377
|
2017-12-06 19:20:24 -05:00 |
|
Matthew Brown
|
e08b11b144
|
Improve TemplateChecker
|
2017-12-06 01:05:51 -05:00 |
|
Matthew Brown
|
0eedad4f6a
|
Add UndefinedGlobalVariable issue and asssociated Possibly... one
|
2017-12-06 00:56:00 -05:00 |
|
Matthew Brown
|
a87a1f0dc9
|
Make sure undeclared array offset vars have type mixed
Fixes #360
|
2017-12-06 00:35:41 -05:00 |
|
Matthew Brown
|
df90d72ad1
|
Emit return type errors at the function itself, not its parent
Fixes #363
|
2017-12-06 00:11:05 -05:00 |
|
Matthew Brown
|
59b50bdcdd
|
Add proper types for magic constants
Fixes #362
|
2017-12-06 00:05:01 -05:00 |
|
Matthew Brown
|
52fc81e4ab
|
Remove need for a __toString return type
Fixes #364
|
2017-12-05 23:47:50 -05:00 |
|
Matt Brown
|
d10898b853
|
Remove code that only caused pain
|
2017-12-05 16:54:24 -05:00 |
|
Matt Brown
|
e2b1b24dbf
|
Fix empty checks, make them more like isset checks
Fixes #372
|
2017-12-05 12:14:10 -05:00 |
|
Matt Brown
|
98085b2267
|
Fix #371 - improve handling of do statements broken in loop refactor
|
2017-12-05 11:05:10 -05:00 |
|
Matthew Brown
|
a8a1489a8f
|
Fix closure naming convention so it doesn’t confuse method id checks
|
2017-12-05 01:47:49 -05:00 |
|
Matt Brown
|
1f57881310
|
Break out PossiblyNullArrayOffset and NullArrayOffset from InvalidArrayOffset
|
2017-12-04 11:20:31 -05:00 |
|