Josh Berdine
55cb61dbda
Warn of unused open statements
...
Summary: public
Reviewed By: jeremydubreil
Differential Revision: D2938325
fb-gh-sync-id: d12d34b
shipit-source-id: d12d34b
9 years ago
Josh Berdine
b155168083
Open Utils implicitly
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938316
fb-gh-sync-id: c6aa6c9
shipit-source-id: c6aa6c9
9 years ago
Josh Berdine
8a9f221119
Use Utils in jTransExn and jTransStaticField
...
Summary: public
Reviewed By: jeremydubreil
Differential Revision: D2938303
fb-gh-sync-id: c8c8ef6
shipit-source-id: c8c8ef6
9 years ago
Josh Berdine
7f231b8aa0
Move pi and sigma types from Dom to Prop
...
Summary: public
Reviewed By: jeremydubreil
Differential Revision: D2941587
fb-gh-sync-id: 7188027
shipit-source-id: 7188027
9 years ago
Josh Berdine
2fa5c5b4e9
Warn of unused types
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938296
fb-gh-sync-id: 2d1fe0c
shipit-source-id: 2d1fe0c
9 years ago
Josh Berdine
89338c86e9
Warn of unused constructors
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938283
fb-gh-sync-id: e2db32a
shipit-source-id: e2db32a
9 years ago
Josh Berdine
2e4f4a0c5f
Warn of label omitted in function application
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938346
fb-gh-sync-id: 50d5c73
shipit-source-id: 50d5c73
9 years ago
Josh Berdine
2f47142b94
Warn of unused loop index variables
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938287
fb-gh-sync-id: b244528
shipit-source-id: b244528
9 years ago
Josh Berdine
bd8284443c
Warn of unused extension (exception) constructors
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938275
fb-gh-sync-id: b784531
shipit-source-id: b784531
9 years ago
Josh Berdine
7e7d524e29
Enable -short-paths for better error messages
...
Summary: public
Reviewed By: jvillard
Differential Revision: D2938268
fb-gh-sync-id: 4fd06af
shipit-source-id: 4fd06af
9 years ago
Josh Berdine
4f4b00fffa
Enable -strict-sequence
...
Summary:public
Reject code that sequentially composes values of non-unit type, which is
probably unintentionally partially applied.
Reviewed By: jvillard
Differential Revision: D2938259
fb-gh-sync-id: ce0d168
shipit-source-id: ce0d168
9 years ago
Josh Berdine
675cfeb56c
Enable -strict-formats
...
Summary:public
Rejects malformed format strings.
Reviewed By: jvillard
Differential Revision: D2938247
fb-gh-sync-id: bc731b3
shipit-source-id: bc731b3
9 years ago
Josh Berdine
9bdd1a9d0f
Enable -principal to check ambiguous code
...
Summary:public
Type-based resolution of fields, constructors, etc. can be ambiguous if
types are not principal. Compile with -principal and enable warnings 18
and 19 to check these cases.
Reviewed By: jvillard
Differential Revision: D2938237
fb-gh-sync-id: bb4237b
shipit-source-id: bb4237b
9 years ago
Sam Blackshear
5833835289
dynamic dispatch for virtual calls in Java
...
Reviewed By: jeremydubreil
Differential Revision: D2893718
fb-gh-sync-id: 560e267
shipit-source-id: 560e267
9 years ago
Josh Berdine
fb96eaabcd
Make ocamlbuild obey make --silent
...
Reviewed By: jvillard
Differential Revision: D2938167
fb-gh-sync-id: 86c1436
shipit-source-id: 86c1436
9 years ago
Josh Berdine
264038f3ee
Make clean target obey --silent
...
Reviewed By: jvillard
Differential Revision: D2938190
fb-gh-sync-id: f9edc13
shipit-source-id: f9edc13
9 years ago
Sam Blackshear
bb793770b9
remove --no-cache option, which does nothing
...
Reviewed By: jeremydubreil
Differential Revision: D2935683
fb-gh-sync-id: f81aec8
shipit-source-id: f81aec8
9 years ago
Jules Villard
07822ff16e
output infer source locations on --debug-exceptions
...
Reviewed By: martinoluca
Differential Revision: D2937568
fb-gh-sync-id: f651926
shipit-source-id: f651926
9 years ago
Dino Distefano
e0fe2af712
Added a two new attributes: observer/unsubscribed_observer
...
Reviewed By: dulmarod
Differential Revision: D2932088
fb-gh-sync-id: 4c998cb
shipit-source-id: 4c998cb
9 years ago
Andrzej Kotulski
3320043217
Fix further problems with forward declarations in C/C++
...
Reviewed By: dulmarod
Differential Revision: D2927389
fb-gh-sync-id: 6c59895
shipit-source-id: 6c59895
9 years ago
Andrzej Kotulski
32a5cae175
Fix infinite loop in type expansion
...
Reviewed By: jvillard
Differential Revision: D2932218
fb-gh-sync-id: b656a8f
shipit-source-id: b656a8f
9 years ago
Andrzej Kotulski
3db68bcb4c
Create .start file when infer starts
...
Reviewed By: jberdine, cristianoc
Differential Revision: D2926803
fb-gh-sync-id: 5992487
shipit-source-id: 5992487
9 years ago
Dulma Rodriguez
5db8fa4539
Remove tvars from the tenv
...
Reviewed By: cristianoc
Differential Revision: D2932529
fb-gh-sync-id: 8fd279f
shipit-source-id: 8fd279f
9 years ago
Sam Blackshear
556b9c121d
improving error message from fragment retains View checker
...
Reviewed By: mburman
Differential Revision: D2928721
fb-gh-sync-id: b5a10b4
shipit-source-id: b5a10b4
9 years ago
Dulma Rodriguez
bf90a64fb5
Fix the typing implication in the bi-abduction for non Java types
...
Reviewed By: jvillard
Differential Revision: D2927341
fb-gh-sync-id: abe1140
shipit-source-id: abe1140
9 years ago
jrm
8eb73bf39d
Turn on ondemand for the tracing mode
...
Reviewed By: cristianoc
Differential Revision: D2895107
fb-gh-sync-id: cc27d4f
shipit-source-id: cc27d4f
9 years ago
Cristiano Calcagno
2a926d8294
Remove uses of assert false to get original ml location.
...
Reviewed By: jvillard, jberdine
Differential Revision: D2922516
fb-gh-sync-id: 153a2dd
shipit-source-id: 153a2dd
9 years ago
jrm
38cb5b48ec
Remove no longer useful model for java.lang.Thread
...
Summary:
public
This model does not seem to bring anything anymore. Useless because ...
Reviewed By: cristianoc
Differential Revision: D2920118
fb-gh-sync-id: 7f708d7
shipit-source-id: 7f708d7
9 years ago
Andrzej Kotulski
8c832142b4
Don't add process type redeclaration unless it has definition
...
Summary:
public
Avoid problems of overwriting good type information with incomplete information
when type declaration happens after its complete definition.
The solution is that we will only time we *update* type information is
when struct declaration has definition as well (which should happen once)
Reviewed By: cristianoc, sblackshear
Differential Revision: D2921811
fb-gh-sync-id: 16baba3
shipit-source-id: 16baba3
9 years ago
Sam Blackshear
7af27e07d5
deleting unused type_prop.ml
...
Reviewed By: dulmarod
Differential Revision: D2902664
fb-gh-sync-id: 96050e7
shipit-source-id: 96050e7
9 years ago
Dino Distefano
c41cba92ea
Fixed test for taint analysis
...
Reviewed By: cristianoc
Differential Revision: D2917167
fb-gh-sync-id: e124533
shipit-source-id: e124533
9 years ago
Sam Blackshear
5e9a21573b
preventing Bad_footprint when passing struct value by reference
...
Reviewed By: jberdine
Differential Revision: D2912475
fb-gh-sync-id: 1dd5442
shipit-source-id: 1dd5442
9 years ago
jrm
36cc1b0d2e
Remove dead code. Feature now implemented in .inferconfig
...
Reviewed By: sblackshear
Differential Revision: D2915828
fb-gh-sync-id: b0b6ec0
shipit-source-id: b0b6ec0
9 years ago
jrm
904151888c
fix treatment of linked list in Java
...
Summary:
public
The inductive list predicate was not firing during abstraction because of a type mismatch between C and Java. In Java, the second parameter of the `Sil.Sizeof` constructor is always `Sil.Subtype.exact` in C but is `Sil.Subtype.subtypes` in Java. This diff fixes the confution by comparing the `Sil` types only instead of the type expressions.
Reviewed By: jberdine
Differential Revision: D2912493
fb-gh-sync-id: 3f712a8
shipit-source-id: 3f712a8
9 years ago
Dulma Rodriguez
ac7959f2df
Adding subtyping to ObjC
...
Reviewed By: cristianoc
Differential Revision: D2891269
fb-gh-sync-id: 794a616
shipit-source-id: 794a616
9 years ago
Jeremy Dubreil
208021fc7e
Fix the buck integration for the analysis of Buck itself
...
Summary:
public
The analysis of the Buck project was failing because this script converts the aliases into their expanded target names. It turns out that for Buck, the name of the command is `buck` and the name of the alias is also `buck`, which led to conflicts. This is now fixed by only replacing the targets in the part of the command line that is after `build` in `buck build ...`
Reviewed By: sblackshear
Differential Revision: D2914446
fb-gh-sync-id: ddce4ed
shipit-source-id: ddce4ed
9 years ago
Cristiano Calcagno
047eec5a6f
Refactor callbacks for Eradicate and Checkers.
...
Reviewed By: sblackshear
Differential Revision: D2911784
fb-gh-sync-id: cc01b4a
shipit-source-id: cc01b4a
9 years ago
Dino Distefano
c65947439f
Implementing translation of CXXForRangeStmt
...
Reviewed By: akotulski
Differential Revision: D2905693
fb-gh-sync-id: 8268df4
shipit-source-id: 8268df4
9 years ago
Jeremy Dubreil
6389cb9bd0
revert on-demand for the checkers now that the hash for long filename is fixed
...
Reviewed By: sblackshear
Differential Revision: D2912240
fb-gh-sync-id: 7f27d83
shipit-source-id: 7f27d83
9 years ago
Sam Blackshear
d0cd8fca47
removed unused param footprint_part
...
Reviewed By: cristianoc
Differential Revision: D2911857
fb-gh-sync-id: a1db72e
shipit-source-id: a1db72e
9 years ago
Cristiano Calcagno
88e1d137ba
Refactor State module and make OnDemand restore it after calls.
...
Reviewed By: jeremydubreil
Differential Revision: D2911764
fb-gh-sync-id: 87d2ee0
shipit-source-id: 87d2ee0
9 years ago
Sam Blackshear
0fbd333cab
Checker that complains when Fragments don't nullify their Views
...
Reviewed By: jeremydubreil
Differential Revision: D2905842
fb-gh-sync-id: 08b8b58
9 years ago
Cristiano Calcagno
d31b041fba
Replace CRC module with Digest.
...
Reviewed By: jberdine
Differential Revision: D2906134
fb-gh-sync-id: 08dd19f
9 years ago
jrm
3ece750c15
disable on-demand for the checkers while we fix the filename too long issue
...
Reviewed By: cristianoc
Differential Revision: D2910702
fb-gh-sync-id: e081b3c
9 years ago
Cristiano Calcagno
6be7266f1f
Restore intraprocedural mode for Eradicate and Checkers
...
Reviewed By: jeremydubreil
Differential Revision: D2906910
fb-gh-sync-id: 62bf4c1
9 years ago
Cristiano Calcagno
34b62fc51c
Inline Java synthetic methods systematically before writing the cfg to disk.
...
Summary:
public
Java synthetic methods used to be inlined when a procedure was being analyzed.
This was done almost everywhere. A missing case was when a cfg is loaded during an existing analysis because on-demand needs access to a procedure.
Intead of trying to maintain an invariant in all access paths, we now inline them systematically before saving the cfg to disk.
A secondary consequence of this is that in debug mode the cfg dotty file will show the inlined cfg, so there's no difference between that view and what happens during analysis.
Reviewed By: jeremydubreil
Differential Revision: D2903366
fb-gh-sync-id: 252604c
9 years ago
Cristiano Calcagno
987471d938
Remove unused code for cyclomatic complexity.
...
Reviewed By: jeremydubreil
Differential Revision: D2901642
fb-gh-sync-id: 027e572
9 years ago
Sam Blackshear
526e155046
move resolve_method inside method_invocation
...
Reviewed By: jeremydubreil
Differential Revision: D2897269
fb-gh-sync-id: bb1de80
9 years ago
Cristiano Calcagno
41de08924b
Indentation of command-line agruments.
...
Reviewed By: sblackshear
Differential Revision: D2902022
fb-gh-sync-id: 5807e37
9 years ago
jrm
dba7e7124f
revive the @PerforamanceCritical checker when using Buck
...
Summary:
public
The PerformanceCritical Checker was not running on Buck project due to a conflict between the incremental mode and the ondemand mode.
Reviewed By: cristianoc
Differential Revision: D2891649
fb-gh-sync-id: 0a503d8
9 years ago