Matthew Brown
ea465852e1
Move TypeCombination logic into its own class
2018-05-19 19:44:03 -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
Tyson Andre
9a9f6d1856
Make the string concatenation of two known values into a known value ( #717 )
...
* Make the string concatenation of two known values into a known value
address review comments
* Add vim temporary files to .gitignore
2018-05-08 19:11:18 -04:00
Matt Brown
c0729a02cd
Fix remaining issues with logic checks
2018-05-07 14:52:45 -04:00
Matthew Brown
61aeea6375
Fix whole bunches of things
2018-05-07 01:26:06 -04:00
Matthew Brown
3b9b4a8a6f
Improve binary op function layout
2018-05-06 12:11:40 -04:00
Matthew Brown
c31f787f7c
Convert DNF conditions to CNF
2018-05-06 12:11:40 -04:00
Matthew Brown
85c69f1335
Make sure div operations return GMP too
2018-05-05 13:14:59 -04:00
Matthew Brown
3718bd5c61
Fix GMP arithmetic operations
2018-05-05 12:59:30 -04:00
Matthew Brown
7ccc17cd98
Fix #324 - improve undefined array handling
2018-05-02 20:10:08 -04:00
Matthew Brown
35725267f9
Fix #691 - Allow comparisons to float for integer results
2018-04-24 23:02:20 -04:00
Matt Brown
8d7c365e5f
Fix #679 - improve template param type checks
2018-04-20 10:52:23 -04:00
Matt Brown
b28cc19fd2
Fix bitwise operations on strings
2018-04-16 18:19:18 -04:00
Matt Brown
55153f9542
Fix #676 - bitwise operators didn’t have int return type
2018-04-16 16:36:06 -04:00
Matt Brown
60c6bb4021
Fix #650 - be more judicious about inserting mixed into places
2018-04-06 18:28:22 -04:00
Matthew Brown
80cf80dbda
Reduce number of InvalidOperand issues further
2018-03-18 16:58:54 -04:00
Matthew Brown
e0bdfeb625
Fix erroneous message for invalid right operands
2018-03-18 16:46:26 -04:00
Matthew Brown
d7a585160f
Add more granular error messages for invalid operands
2018-03-18 16:39:34 -04:00
Matthew Brown
33be97b1f8
Check for to-string casts in strict operands mode
2018-03-18 14:42:23 -04:00
Matt Brown
19ee843d6c
Emit InvalidOperand if both sides are not numeric
2018-03-08 14:30:40 -05:00
Matt Brown
56bdb924f5
Fix #563 - improve error message and ignore falsable issues for strtotime
2018-03-08 14:04:00 -05:00
Matthew Brown
a6b54a3607
Fix #513 - make sure numeric is treated like a number
2018-02-15 19:50:50 -05:00
Matt Brown
78cc1786c8
Don’t check newly-scoped vars in conditional
2018-02-08 14:46:06 -05:00
Matt Brown
1d46124bab
Fix issues found by detecting docblock type inconsistencies
2018-02-06 13:40:28 -05:00
Matthew Brown
8e0998e081
Break apart the Codebase class
2018-02-03 18:56:54 -05:00
Matthew Brown
fb300baa6d
Move a bunch of code into Codebase
2018-02-01 00:50:01 -05:00
Matt Brown
fc805a926e
Add code coverage message at the end of a scan
2018-01-31 16:08:52 -05:00
Matthew Brown
44b8b22995
Improve checks for unused variables and params
2018-01-28 17:28:34 -05:00
Matthew Brown
ea28ee709d
Improve unused variable detection slightly
2018-01-25 01:04:26 -05:00
Matthew Brown
e05a7c00cc
Break FileScanner out from FileChecker
2018-01-21 12:44:46 -05:00
Matthew Brown
bd6e4a09bd
Refactor to break up too-large-files
2018-01-14 12:09:40 -05:00