Nikos Gorogiannis
f4c6072a59
[racerd] bit less work
...
Reviewed By: mbouaziz
Differential Revision: D14384864
fbshipit-source-id: b7a07becc
6 years ago
Nikos Gorogiannis
817b1bdf31
[racerd] no need for quadratic check
...
Reviewed By: jeremydubreil
Differential Revision: D14367698
fbshipit-source-id: 60c9a4b19
6 years ago
Nikos Gorogiannis
d6fb8248b2
[racerd] process one summary at a time
...
Reviewed By: mbouaziz
Differential Revision: D14366051
fbshipit-source-id: 4a6be5588
6 years ago
Nikos Gorogiannis
2d0c9a6c47
[racerd] don't fail on no receiver
...
Reviewed By: ezgicicek
Differential Revision: D14279554
fbshipit-source-id: a39173f5e
6 years ago
Nikos Gorogiannis
b243fae86c
[starvation] template filters
...
Reviewed By: jvillard
Differential Revision: D14044735
fbshipit-source-id: 84acf3c1f
6 years ago
Calascibetta Romain
137e070ece
[infer][PR] Move to base64.3.0.0
...
Summary:
Move codebase to `base64.3.0.0` which is more safe (see [CHANGELOG](https://github.com/mirage/ocaml-base64/releases/tag/v3.0.0 ).
Pull Request resolved: https://github.com/facebook/infer/pull/1056
Reviewed By: mbouaziz
Differential Revision: D13986683
Pulled By: jvillard
fbshipit-source-id: a89b8cf89
6 years ago
Nikos Gorogiannis
764e9ee1be
[AI] empty is not (necessarily) bottom
...
Reviewed By: mbouaziz
Differential Revision: D13358254
fbshipit-source-id: 7f5d7e409
6 years ago
Nikos Gorogiannis
9463b25702
[classloads] move sources to more appropriate location
...
Reviewed By: mbouaziz
Differential Revision: D13838506
fbshipit-source-id: 249806ad2
6 years ago
Nikos Gorogiannis
2ee8ab2990
[class-loads] catch expressions
...
Reviewed By: ezgicicek
Differential Revision: D13832128
fbshipit-source-id: 1d3778763
6 years ago
Nikos Gorogiannis
b4a22a5bdd
[classloads] prune and multidimensional arrays
...
Reviewed By: ezgicicek
Differential Revision: D13818684
fbshipit-source-id: 8e5289f8f
6 years ago
Nikos Gorogiannis
3e55f8eb60
[classloads] class object expressions
...
Reviewed By: mbouaziz
Differential Revision: D13818059
fbshipit-source-id: 785d557e0
6 years ago
Nikos Gorogiannis
3f9eb37246
[classloads] casts and instanceof
...
Reviewed By: mbouaziz
Differential Revision: D13817582
fbshipit-source-id: c40be6bf8
6 years ago
Nikos Gorogiannis
c1a00b2358
[classloads] restrict loads via fields
...
Reviewed By: ezgicicek
Differential Revision: D13817232
fbshipit-source-id: 470d5ce11
6 years ago
Nikos Gorogiannis
f171d0496b
[classloads] array expressions
...
Reviewed By: mbouaziz
Differential Revision: D13786746
fbshipit-source-id: 9774da835
6 years ago
Nikos Gorogiannis
3fc4ccbc14
[classloads] load super classes recursively
...
Reviewed By: mbouaziz
Differential Revision: D13771265
fbshipit-source-id: da600f912
6 years ago
Nikos Gorogiannis
89e396571d
[classloads] treat loads and stores wrt to field derefs
...
Reviewed By: mbouaziz
Differential Revision: D13761363
fbshipit-source-id: bcaddd13b
6 years ago
Nikos Gorogiannis
5686d67072
[classloads] fix treatment of static initializers
...
Reviewed By: jvillard
Differential Revision: D13751141
fbshipit-source-id: f64af292b
6 years ago
Nikos Gorogiannis
00df708f98
[classloads] record at most one load for each class
...
Reviewed By: ezgicicek
Differential Revision: D13750609
fbshipit-source-id: cd55a3370
6 years ago
Nikos Gorogiannis
39b11619b8
[classloads] overhaul test infra & fix treatment of self-class loading in method calls
...
Reviewed By: ddino
Differential Revision: D13622717
fbshipit-source-id: 233cc5d74
6 years ago
Nikos Gorogiannis
9e91c9298b
[racerd] remove redundant ownership constructor/state
...
Reviewed By: jeremydubreil
Differential Revision: D13489018
fbshipit-source-id: b94c50664
6 years ago
Nikos Gorogiannis
e2bb049a5e
[racerd] fix bug in ownership transitivity 2
...
Reviewed By: ezgicicek
Differential Revision: D13488195
fbshipit-source-id: 3feed4322
6 years ago
Nikos Gorogiannis
7bbb7fc869
[clang][objcpp] register exported methods and treat them as private in RacerD
...
Summary:
In ObjC there are no access modifiers. The strongest alternative is to put methods in the implementation but omit them from the interface declaration.
Put exported ObjC methods in their own field in the class structure and use that in RacerD to decide whether to report on the method.
Reviewed By: mbouaziz
Differential Revision: D13597504
fbshipit-source-id: c4a3d2705
6 years ago
Nikos Gorogiannis
ddc15ad663
[racerd] move models and domain operations to respective source files
...
Reviewed By: mbouaziz
Differential Revision: D13537501
fbshipit-source-id: 88dbc022d
6 years ago
Nikos Gorogiannis
11373c8a6b
[racerd] strip down domain interface
...
Reviewed By: mbouaziz
Differential Revision: D13537494
fbshipit-source-id: 42d8bc89b
6 years ago
Nikos Gorogiannis
002e470137
[racerd] fix bug in ownership transitivity
...
Reviewed By: jvillard
Differential Revision: D13488078
fbshipit-source-id: 9d40d75bc
6 years ago
Nikos Gorogiannis
2d2d861686
[racerd] reduce size of IssueAuxData
...
Reviewed By: jvillard
Differential Revision: D13505031
fbshipit-source-id: 90f1974a7
6 years ago
Nikos Gorogiannis
19faf643dc
[racerd] optional arguments and missing actuals
...
Reviewed By: jeremydubreil
Differential Revision: D13488298
fbshipit-source-id: c4bb80769
6 years ago
Nikos Gorogiannis
a3f4bb01f4
[starvation] fix type bug occurring in class references
...
Reviewed By: jeremydubreil
Differential Revision: D13466456
fbshipit-source-id: 0b312d9c3
6 years ago
Nikos Gorogiannis
9d6a9f52ec
[starvation] improve 2-way deadlock reports
...
Reviewed By: mbouaziz
Differential Revision: D13450650
fbshipit-source-id: 0dbd349d1
6 years ago
Nikos Gorogiannis
101283f9d0
[starvation] fix trace description strings for taking locks
...
Reviewed By: mbouaziz
Differential Revision: D13416738
fbshipit-source-id: 02ebb6178
6 years ago
Jules Villard
26d4a2d14f
[HIL] simplify some functors around TransferFunctions
...
Summary:
A lot of functors that take a `Make{SIL,HIL}` can take a `{SIL,HIL}`
directly instead. This makes my head hurt a bit less.
Reviewed By: mbouaziz
Differential Revision: D13416967
fbshipit-source-id: eb0b33bc4
6 years ago
Nikos Gorogiannis
fc80179394
[starvation] use compare ppx
...
Reviewed By: ezgicicek
Differential Revision: D13415465
fbshipit-source-id: 54e9a302f
6 years ago
Nikos Gorogiannis
f8fc40cea9
[starvation] improve debugging output
...
Reviewed By: ezgicicek
Differential Revision: D13399324
fbshipit-source-id: 5f2eb124a
6 years ago
Nikos Gorogiannis
a47ec3611f
[starvation] tune logging and avoid dieing on non-struct locks
...
Reviewed By: mbouaziz
Differential Revision: D13398275
fbshipit-source-id: 83937ac59
6 years ago
Jules Villard
1ee5877aa2
[HIL][3/4] remove compatibility AccessExpression.ml
...
Summary:
`AccessExpression.t` and `HilExp.t` are about to become mutually
recursive, this will help distinguish the actual changes from the moving
of code around.
This deletes the file left around in the previous commit to preserve
callers of `AccessExpression`.
Reviewed By: mbouaziz
Differential Revision: D13377645
fbshipit-source-id: 71338d1f3
6 years ago
Nikos Gorogiannis
2701073b3e
[starvation] C++ deadlock FPs due to recursive and unknown mutexes
...
Reviewed By: jvillard
Differential Revision: D13376553
fbshipit-source-id: 79ad1a63a
6 years ago
Nikos Gorogiannis
9c240ed978
[starvation] skip analysis option should be used at top level too
...
Reviewed By: mbouaziz
Differential Revision: D13377043
fbshipit-source-id: 16e67ac86
6 years ago
Nikos Gorogiannis
27d8a65906
[starvation][concurrency] split guard lock treatment and add support for non-recursive locks (per language)
...
Reviewed By: jeremydubreil
Differential Revision: D13320542
fbshipit-source-id: feb5d58a8
6 years ago
Nikos Gorogiannis
abee2a5cb0
[AI] fix top interface
...
Reviewed By: jeremydubreil
Differential Revision: D13342552
fbshipit-source-id: 2839d62f9
6 years ago
Nikos Gorogiannis
53fc45d39e
[concurrency] remove bad lock model
...
Reviewed By: da319
Differential Revision: D13303840
fbshipit-source-id: 9a0e22806
6 years ago
Nikos Gorogiannis
31653ca6c3
[racerd] more precise trace expansion
...
Reviewed By: mbouaziz
Differential Revision: D13232424
fbshipit-source-id: 9489a319c
6 years ago
Jules Villard
f3411a2203
[HIL] Add `ExitScope` instruction
...
Summary:
It's useful for checkers to know when variables go out of scope to
perform garbage collection in their domains, especially for complex
domains with non-trivial joins. This makes the analyses more precise at
little cost.
This could have been added as a custom function call to a builtin, but I
decided against it because this instruction doesn't have the semantics
of any function call. It's better for each checker to explicitly not
deal with the custom instruction instead.
Reviewed By: jberdine
Differential Revision: D13102951
fbshipit-source-id: 33be22fab
6 years ago
Nikos Gorogiannis
6aba4b7ca2
[AI] kill astate type
...
Reviewed By: mbouaziz
Differential Revision: D10119192
fbshipit-source-id: 4868cbcb1
6 years ago
Nikos Gorogiannis
bbd26769c9
[starvation] c++/Obj C deadlocks
...
Reviewed By: da319
Differential Revision: D9042172
fbshipit-source-id: a7052e061
6 years ago
Nikos Gorogiannis
2c6a705116
[racerd] kill stability
...
Reviewed By: jvillard
Differential Revision: D13180369
fbshipit-source-id: 5684ed318
6 years ago
Nikos Gorogiannis
1121efbe59
[concurrency] refactor C++ models
...
Reviewed By: jberdine
Differential Revision: D13153721
fbshipit-source-id: 316f1922d
6 years ago
Nikos Gorogiannis
3b5262f185
[racerd] refactor method matching for all languages
...
Reviewed By: jeremydubreil
Differential Revision: D12907796
fbshipit-source-id: 764d2eef4
6 years ago
Mehdi Bouaziz
ed25b70ff2
RacerD: use concat_traces
...
Reviewed By: jvillard
Differential Revision: D13114226
fbshipit-source-id: 820837fb2
6 years ago
Nikos Gorogiannis
68a08a8a09
[starvation] stop reporting on AccountManager.setUserData
...
Reviewed By: da319
Differential Revision: D13097076
fbshipit-source-id: 748acbe2b
6 years ago
Nikos Gorogiannis
f3194e00c9
[starvation] silence some strict mode models
...
Reviewed By: mbouaziz
Differential Revision: D13082383
fbshipit-source-id: 7f16b94c5
6 years ago