1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-16 19:36:59 +01:00
Commit Graph

853 Commits

Author SHA1 Message Date
Matthew Brown
c4fd6aa18d Allow break/continue inside do 2018-07-05 21:03:44 -04:00
Matt Brown
af14d6982f Fix #863 - MixedTypeCoercion is more appropriate in many cases 2018-07-05 10:11:04 -04:00
Matthew Brown
7d747be5d5 Fix checks for possibly null right part of binary op 2018-07-03 19:52:40 -04:00
Matt Brown
b8636eb326 Improve memoisation of chained calls 2018-07-03 12:45:29 -04:00
Matt Brown
534876085d Fix #857 - improve handling of hard-to-reconcile while conditionals 2018-07-03 12:27:14 -04:00
Matthew Brown
5623aa1c19 Don’t memoise assertions - it messes with trait analysis 2018-07-03 00:51:57 -04:00
Matthew Brown
5860fcf59d We can reason about ORed conditions in while loops now 2018-07-02 23:46:51 -04:00
Matt Brown
6287f52dd5 Fix loop analysis for byref vars, likely performance hit 2018-07-02 16:44:32 -04:00
Matthew Brown
16e270f0ee Improve loading of stub file and autoload file information
Ref #849
2018-06-30 15:29:37 -04:00
Matthew Brown
bca3b1797c Fix #852 - improve handling of variables updated in do conditional 2018-06-30 12:56:42 -04:00
Matthew Brown
5ed062257b Allow dead code detection to capture last do checks 2018-06-30 11:08:51 -04:00
Matthew Brown
b5c89084fc Fix #851 - prevent null being removed in simplifyUnionType 2018-06-30 10:38:37 -04:00
Matt Brown
2fc816a6e1 Fix repeated use of spread operator 2018-06-28 17:05:50 -04:00
Matt Brown
72b110af3f Analyse RHS of instanceof expressions if expression 2018-06-27 10:07:40 -04:00
Matthew Brown
685ae67435 Fix #839 - check args for __call methods 2018-06-26 23:11:16 -04:00
Matthew Brown
5867ef45ff Check method args even if the methods themselves cannot be checked 2018-06-25 19:38:15 -04:00
Matt Brown
ffda44c3ba Fix #838 - check assertions, even outside conditionals 2018-06-25 18:02:05 -04:00
Matthew Brown
e3ae1bf26f Fix #15 - check for uncaught throws if config flag is set 2018-06-22 01:13:49 -04:00
Matt Brown
740279352e Fix #830 - unpack template param args appropriately 2018-06-20 10:40:50 -04:00
Matt Brown
e10b2c0fd4 Fix #805 - allow dead code detection from methods just called internally 2018-06-19 16:14:51 -04:00
Matt Brown
11240eb193 Fix #826 allow better template replacements 2018-06-19 13:19:41 -04:00
Matt Brown
2be0f68d87 Add better checks on increment/decrement operators 2018-06-18 13:16:51 -04:00
Matt Brown
75e2be8aec Fix #825 - ignore falsable issues on builtin *methods* 2018-06-18 10:07:05 -04:00
Matthew Brown
d4107f9e5e Fix issue erasing nullability of boolean 2018-06-17 13:47:31 -04:00
Matthew Brown
2c245b0a08 Fix #823 - trigger redundant condition on impossible assertions 2018-06-17 13:20:37 -04:00
Matthew Brown
5ddd74e7d2 Catch unused foreach key when it’s already in scope 2018-06-17 00:52:32 -04:00
Matthew Brown
805bfa6f2d Improve handling of switch statement assignments 2018-06-17 00:12:26 -04:00
Matthew Brown
89affb6c2c Fix #822 - improve dead code detection on assignop expressions 2018-06-16 23:40:25 -04:00
Matthew Brown
fa51c39902 Improve dead code analysis of switch statements 2018-06-16 21:54:44 -04:00
Matthew Brown
f38da967dd Fix a few issues with dead code detection 2018-06-16 21:14:19 -04:00
Matthew Brown
3670f066bb Improve dead code detection 2018-06-16 20:01:41 -04:00
Matt Brown
3afd6053fd Fix #819 - only add is_a assertion if static::class known 2018-06-15 10:51:30 -04:00
Matthew Brown
82715a03ea Improve test coverage of PropertyAssignmentChecker 2018-06-10 10:02:46 -04:00
Matthew Brown
04cc920101 Fix #378 - improve handling of InvalidScope 2018-06-09 11:50:17 -04:00
Matthew Brown
eae563e9e4 Fix space after function 2018-06-09 10:51:02 -04:00
Matthew Brown
7a02d300d6 Fix closure return type 2018-06-09 10:23:04 -04:00
Matthew Brown
6d4d0cf825 Fix #794 - use template types to restrict input 2018-06-09 10:14:18 -04:00
Matthew Brown
3a3c10d044 Improve handling of ? before type 2018-06-08 23:54:07 -04:00
Matthew Brown
a2b1838e23 Fix #803 - trait methods are evaluated correctly now 2018-06-08 20:06:05 -04:00
Matt Brown
29a971d40e Fix #793 - make sure in_array informs literal types 2018-06-08 13:53:42 -04:00
Matt Brown
091fa53c72 Fix #798 - update magic property handling so it corresponds to PHP behaviour 2018-06-08 11:08:57 -04:00
Matt Brown
6873e60847 Optimise flow of if evaluation 2018-06-07 15:04:22 -04:00
Matt Brown
5819ba2b67 Fix #801 - bust assertions on assignment in || op 2018-06-07 15:04:22 -04:00
Matthew Brown
ea4dc9f2b8 Improve simplexml function inference 2018-06-05 23:42:02 -04:00
Matthew Brown
a20bdaef45 Fix issue evaluating negated assertion 2018-06-03 20:24:23 -04:00
Matthew Brown
b5cb2b34a2 Fix #380 - don’t complain about legitimate (if archaic) self calls 2018-06-03 19:11:07 -04:00
Matt Brown
9bbe437f22 Fix issue with initially undefined variable in isset 2018-06-01 10:52:26 -04:00
Matthew Brown
ccc0c3f7d8 Fix negation of @psalm-assert-if-true/false 2018-05-31 22:46:22 -04:00
Matthew Brown
4ab15067de Speed up unnecessary else checks 2018-05-31 22:20:38 -04:00
Matthew Brown
ee9fef050a Add support for function checking plugins 2018-05-31 22:00:11 -04:00