4806 Commits (fd29aff3a78320a6651c93a3843ffc171c7c51a6)

Author SHA1 Message Date
Jules Villard 5894258f43 [ownership] do not warn on returning ref to outer local
6 years ago
Daiva Naudziuniene 8e753c2b74 [deadstore] Do not report on __tmp
6 years ago
Josh Berdine 40ab73037e [ocamlformat] upgrade to ocamlformat 0.7
6 years ago
Mehdi Bouaziz 060924adff [inferbo] Get rid of condition trace for proof obligations in summary
6 years ago
Mehdi Bouaziz b4b54025bf Remove C++ mutex DOUBLE_LOCK checker
6 years ago
Jeremy Dubreil 066204fcf0 [eradicate] always allow to refine nullable types using repeated calls
6 years ago
Jeremy Dubreil 93e42a5a25 [eradicate] fix the Ambiguous or-pattern variables under guard warning
6 years ago
Sungkeun Cho 1bf8ed95b8 [inferbo] Simplify stack/heap memory domain
6 years ago
Ezgi Çiçek 49e582fa49 [Loop-hoisting] Add a new checker for hoisting invariant function calls
6 years ago
Jeremy Dubreil 66ef5f5c15 [eradicate] always check that non-nullable fields are initialized
6 years ago
Mehdi Bouaziz f8380f9480 Trying to fix comments on Localise.ml
6 years ago
Nikos Gorogiannis 14556f52b4 [starvation] whitelist @WorkerThread methods
6 years ago
Mehdi Bouaziz a06685c517 [inferbo] Add mli for proof obligations
6 years ago
Jeremy Dubreil 426ddb5e1c [nullable] make the Eradicate flag use_models to be the default mode
6 years ago
Sungkeun Cho 524ae3a7e2 [inferbo] Return unknown value on non-const function calls
6 years ago
Jules Villard a3d5f0283d [clang] only pass `--Xclang` args to driver commands
6 years ago
Sungkeun Cho 76bf31bc17 [inferbo] Add a test case of global constant
6 years ago
Jeremy Dubreil ed638de189 [eradicate] remove the check extension flag which was always false
6 years ago
Mehdi Bouaziz 277fd06782 [inferbo] Simplify condition trace
6 years ago
Mehdi Bouaziz 5817ff6adc [inferbo] Do not re-report issues if the precision hasn't improved
6 years ago
Jeremy Dubreil 735b28f359 [infer] remove the bug_class from the Infer report
6 years ago
Jeremy Dubreil 3cffdb9745 [infer] remove the field procedure_id in the analysis report
6 years ago
Mehdi Bouaziz 5a4d4f0882 [inferbo] Fail if trying to substitute non-symbolic conditions
6 years ago
Mehdi Bouaziz 6bb429ef63 Reporting cleanup 13: log_issue_external
6 years ago
Mehdi Bouaziz 9dad4c3648 Reporting cleanup 12: node_id_key -> node
6 years ago
Mehdi Bouaziz 3986a823f8 Reporting cleanup 11: node_id
6 years ago
Mehdi Bouaziz 1a75fa9ebd [inferbo] Propagate INFERBO_ALLOC_MAY_BE_ even when the bound is infinity
6 years ago
Mehdi Bouaziz 693089ab08 [inferbo] Alloc site in the trace for INFERBO_ALLOC_xx issues
6 years ago
Mehdi Bouaziz 364099530e [inferbo] Retrieve callee_pdesc and payload at the same time
6 years ago
Jeremy Dubreil 1938c4b758 [eradicate] remove TypeState extensions
6 years ago
Dino Distefano 370f33c8dc Added predicate for CXX11ConstantExpr
6 years ago
Nikos Gorogiannis af14da6a13 [starvation] stop considering View.get... as blocking.
6 years ago
Ezgi Çiçek 527fb90bbe [Cost] Add a Java model for functions to be considered invariant
6 years ago
Jeremy Dubreil 070f541226 [infer][nullsafe] cleanup of the Eradicate code 1
6 years ago
Jeremy Dubreil 98c596c546 [infer][biabduction] generate the Objective C and C++ models in single core mode
6 years ago
Mehdi Bouaziz 07f22daada [inferbo] Report calls without ()
6 years ago
Mehdi Bouaziz 34a6a487c5 Reporting cleanup 10: log_frontend_issue
6 years ago
Ezgi Çiçek cc18f9883d [Cost] Fix invariant variable analysis to be based on all reaching defns
6 years ago
Mehdi Bouaziz eb282797ab Reporting cleanup 9: move NodeKey to Procdesc
6 years ago
Jules Villard d9e12850b9 [biabd] do not try to bypass `Ondemand` to get proc desc of models
6 years ago
Martino Luca 55c2188615 [Perf] Emit costs to a separate file named costs-report.json
6 years ago
Mehdi Bouaziz 04af716fba Reporting cleanup 8: move errlog to summary
6 years ago
Mehdi Bouaziz ac5633bf58 Reporting cleanup 7: session
6 years ago
Mehdi Bouaziz fbe1e853f4 Reporting cleanup 6: mandatory loc for reporting errors
6 years ago
Mehdi Bouaziz 7024543dc9 Reporting cleanup 5: log_warning/error node_id_key
6 years ago
Mehdi Bouaziz 2ee4b5da18 Reporting cleanup 4: clang_method_kind
6 years ago
Martin Trojer 451f8f1efa Add --Xbuck-no-inline and --Xclang flags to enable jackalope/ios builds.
6 years ago
Mehdi Bouaziz 919d05b5ef Reporting cleanup 3: NodeKey
6 years ago
Julian Sutherland dd4ee55d5a fixed error in java expected test results
6 years ago
Mehdi Bouaziz 114c4e436d Reporting cleanup 2: Errlog.log_issue
6 years ago
Julian Sutherland b7c90c3fe0 Fixed incorrect reporting of tainted index in function call by quandary
6 years ago
Martino Luca 90a3315042 [InferPrint] Refactor common aspects to emit json reports
6 years ago
Mehdi Bouaziz f08ba1c016 Reporting cleanup 1: log_issue_deprecated
6 years ago
Mehdi Bouaziz e3e521afca Kill MinTree
6 years ago
Mehdi Bouaziz add478d97d Remove Errlog.equal
6 years ago
Jeremy Dubreil 54946ce08e [infer] use the procedure name to match Java methods instead of the procedure id
6 years ago
Jeremy Dubreil d000a27bd4 [infer] use a fully qualified name for the procedure field in the final report
6 years ago
Mehdi Bouaziz 6d134762b6 Remove dead print_key
6 years ago
Mehdi Bouaziz 35848a5284 Move 4 eradicate files
6 years ago
Mehdi Bouaziz 96d1f00687 Minor simplifications
6 years ago
Ezgi Çiçek bedf32bed5 [Cost, InferBo] generalize ArrayLists to Collections and Iterators
6 years ago
Ezgi Çiçek 9022228804 add support for hasNext() and iterator() for Java
6 years ago
Daiva Naudziuniene e8c5a84acd [Ownership] Add ownership to return param
6 years ago
Jules Villard 47fdee6000 add tips about debugging infer
6 years ago
Ezgi Çiçek 65491b79ff [Java] Do not generate the same intermediate variable in java translation
6 years ago
Mehdi Bouaziz ad986dffde Get rid of Declare_locals
6 years ago
Jules Villard 59f09ef697 [opam] upgrade atdgen to version 2
6 years ago
Ezgi Çiçek 832e0130cd [Inferbo] Fix the way pointers to arrays are handled in Java
6 years ago
Jeremy Dubreil df34917342 [infer] print all the severities in the debug html
6 years ago
Jeremy Dubreil 802d67ab64 [infer] fix the dependencies for the Buck javac_jar test
6 years ago
Jeremy Dubreil 59b7915177 [infer] rename the severity variants
6 years ago
Jules Villard b8c5dc84ba [absint] escape for xml when dumping info to html debug
6 years ago
Jules Villard e5a5d64760 [caml] do not use `let _ =`
6 years ago
Mehdi Bouaziz 12c0e245c6 [Inferbo] Simplify interval pretty-print
6 years ago
Sungkeun Cho fec87c8b95 [inferbo] Move functions constructing array values
6 years ago
Mehdi Bouaziz 427bb440d6 Inferbo: use Procdesc.get_locals rather than the Declare_locals instruction
6 years ago
Sungkeun Cho 65997b6a44 [inferbo] Remove sizeof function
6 years ago
Mehdi Bouaziz 66d37a496a Tabulation.log_call_trace: do nothing if footprint is false
6 years ago
Jeremy Dubreil 8a6aa4b1fd [infer] fix the internal confusion between the issue kind and the severity
6 years ago
Jeremy Dubreil 3767716c86 [infer][scheduler] simplify the callbacks API
6 years ago
Martino Luca 632cb0e513 [Perf] Emit ZERO_EXECUTION_TIME_CALL issue-type, when zero-costing functions are met
6 years ago
Dino Distefano 4065b76663 Fixed has_type for iterator type
6 years ago
Jules Villard 9ea6d4723f [toplevel] install infertop in infer/bin/ to get models and stuff
6 years ago
Jules Villard 69142ccad4 [biabd] do not get summary of pname to then get pname from summary
6 years ago
Jules Villard cc53c99ad4 [biabd] get rid of `Summary.get` in retain cycle detection
6 years ago
Jules Villard d3a36947bd [specs] do not expose specs cache
6 years ago
Sungkeun Cho c50b28480b [inferbo] Add trace on make_sym
6 years ago
Jeremy Dubreil bdbb8242cf [infer][java] no longer fail on Buck Java project using a custom javac_jar compiler
6 years ago
Jules Villard 987ef9ef67 [biabd] ondemand analysis for `pthread_create` builtin
6 years ago
Julian Sutherland 70ab21d33c Finished splitting itv.ml
6 years ago
Ezgi Çiçek 0a668c2161 [DEAD_STORE] Capture `constexpr`s in lambdas
6 years ago
Jeremy Dubreil 797eedba8b [infer][scheduler] remove one use of Summary.get
6 years ago
Jules Villard ae8632b0be [test determinator] clean up options help
6 years ago
Mehdi Bouaziz 96323b68e6 ProcnameDispatcher: allow matching to depend on a context
6 years ago
Jeremy Dubreil d5a5e7da10 [infer] remove ad hoc treatment of anonymous class renaming
6 years ago
Martino Luca 974e134061 [Perf] Count polynomials costs when computing differential
6 years ago
Sungkeun Cho df80ccda08 [inferbo] Use SymbolPath map in summary instead of entry memory
6 years ago
Daiva Naudziuniene ba4f33089e [stack variable address escape] Do not report on temporary variables
6 years ago
Sungkeun Cho b5ba9a74d1 [Inferbo] Fix trace print condition
6 years ago
Jules Villard f00d73b574 [taskbar] more informative non-interactive mode
6 years ago
Dino Distefano 1efc44c27f Fix has_type when used in the context of namespace
6 years ago
Nikos Gorogiannis 3870ebb747 [starvation] catch calls to Thread.sleep
6 years ago
Nikos Gorogiannis 332bd365e8 [starvation] fix report string when class is annotated @UIThread
6 years ago
Martin Trojer 562f9d1c7c Add guard against triggering static self logic when we have nested class calls
6 years ago
Sungkeun Cho 9eca72d405 [Inferbo] Add relational domains
6 years ago
Mehdi Bouaziz d90a87d743 [inferbo] Remove temporary fix for Java path
6 years ago
Julian Sutherland 66e737a3b4 refactoring itv, moved Ints and NonZeroInt module to seperate file
6 years ago
Jeremy Dubreil ad8c5d68a2 [infer][java] make sure the type definition of the class always exists in the type environment when translating one of its method
6 years ago
Ezgi Çiçek 396caca5d6 Fix array size for Java in `get_malloc_info`
6 years ago
Nikos Gorogiannis 4cc8563212 [starvation] catch Object.wait calls on main thread
6 years ago
Martin Trojer 4ba7218133 Added test to verify a NSArray nil insert case.
6 years ago
Jeremy Dubreil 3539388ea6 [infer][tests] fix the expected test output
6 years ago
Daiva Naudziuniene a8d80a590b [cfg] Add variant type for statement node
6 years ago
Nikos Gorogiannis 14aa1edbf5 [starvation] Avoid FPs in guava Futures
6 years ago
Martino Luca 9e048c11f8 [Perf] Emit cost polynomial and their degree as part of the report
6 years ago
Martino Luca c50b250576 [Perf] Compute the degree of polynomials
6 years ago
Martin Trojer 46e2c153f1 Add std::string as container-method for objc, and change string matching to regexes.
6 years ago
Jules Villard 6e44cae7cd [c] record complex sizeof() and leak from #86
6 years ago
Katie Ots d86737946c Validate buck linters used with compilation database
6 years ago
Ezgi Çiçek 2d889791e2 Fix Java's handling of pointer parameters in Inferbo
6 years ago
Ezgi Çiçek 9ed18e958a Add support for ArrayList.remove
6 years ago
Jules Villard 2761a62e94 [java] record HashMap get from `KeySet()` FP from #128
6 years ago
Jules Villard b23449a7d2 [c] record C lists FP from #120
6 years ago
Jules Villard 398e97183f [java] record Closeable example from #49
6 years ago
Ezgi Çiçek f540aa47a3 Add support for Java's ArrayList.set and ArrayList.get
6 years ago
Ezgi Çiçek 0c6eacc902 Add support for Java's ArrayLists.add*
6 years ago
Martino Luca cccef6261d Revert "[Perf] Add cost information to the hashing function"
6 years ago
Martino Luca ac64be761f [Perf] Add cost information to the hashing function
6 years ago
Nikos Gorogiannis 6b156f71fe [racerd] special-case for Litho's getThis
6 years ago
Martin Trojer ee7f07a1a9 Add missing case to block instruction converter
6 years ago
Jules Villard 83a4a8fa5b [dune] jbuilder -> dune
6 years ago
Jules Villard 0bf9666639 [taskbar] less flicker and garbage
6 years ago
Jules Villard 8977011737 [taskbar] display on-demand nesting
6 years ago
Daiva Naudziuniene 84cfd0a450 [frontend] Do not create exceptional successors for return nodes
6 years ago
Jules Villard c53f35fcf2 [taskbar] migrate compilation db jobs from `Parmap` to `Tasks`
6 years ago
Martin Trojer 4b69087ad5 Adding OBJCPP models to avoid SKIPs of models from .mm
6 years ago
Ezgi Çiçek 34c2899a69 Fix printing of fields in Java
6 years ago
Nikos Gorogiannis c2416defed Fix IntLit.to_int interface and uses.
6 years ago
Katie Ots 9670d3c700 [Lint] Remove misleading error when running linters only
6 years ago
Daiva Naudziuniene 4d1abb0eeb [ownership] Do not report on temporary variables.
6 years ago
Dino Distefano b215cdbff4 Fixed problem with expasion of %name% placeholder
6 years ago
Mehdi Bouaziz 36b581cecd Add cost.mli
6 years ago
Nikos Gorogiannis b0ba6b3e1e [racerd] don't replicate existing logic in `propagate_return`
6 years ago
Nikos Gorogiannis c5ad94d825 [starvation] Adjust blocking call severities to better reflect practice
6 years ago
Martino Luca ae9ee41f78 [TD] Change JSON format for test-determinator
6 years ago
Sungkeun Cho 06a04ca9f5 Revert "[Inferbo] Add relational domain"
6 years ago
Dulma Churchill 8ce394942b [clang] Do not crash on translating captured variables of lambda expressions
6 years ago
Sungkeun Cho 1f7a6e53fb [Inferbo] Add relational domain
6 years ago
Jules Villard 0d8c2dedd6 [cli] add the ability to rerun the analysis on some files with different options
6 years ago
Jules Villard f70f413c54 [sqlite] API to retrieve rows of more than one column
6 years ago
Jules Villard aebeca3388 [sqlite] do not wrap results into `Some _` needlessly
6 years ago
Jules Villard 0f79fd8d94 [minor] adjust some comments
6 years ago
Dulma Churchill eab20602a0 [biabduction] Do not log unamatched parameter errors to standard out
6 years ago
Jules Villard be855d3589 [explore] change filtering options to filter in OCaml rather than SQLite
6 years ago
Dulma Churchill 5653839540 [clang] Add the types of captured variables to the procname of blocks
6 years ago
Ezgi Çiçek 5cff9c91f9 Add Java support to ProcnameDispatcher
6 years ago
Martin Trojer a07877dcbb Add new Ident.create_fresh function to avoid clashes specialized objc blocks
6 years ago
Kai Yang 2d73494e87 Add is_static_local_var predicate
6 years ago
Nikos Gorogiannis d4a9c6f81a [racerd] gate stability
6 years ago
Jules Villard a6a7b7f467 [reactive] always delete specs dir
6 years ago
Jules Villard 86e79a7125 [attributes] always have a (single) translation unit
6 years ago
Jules Villard 6f3719f5f2 [siof] do not warn on simply taking reference of global
6 years ago
Jules Villard a5a106c83a [cli] create missing directory
6 years ago
Ezgi Çiçek 129cadb9b6 "Be more lazy in get_siblings"
6 years ago
Jules Villard 36f8d8f869 [lint] linter to force every file to `open! IStd`
7 years ago
Jules Villard 9cb36ab840 [minor] remove suspicious `with _ ->`
7 years ago
Jules Villard 2c8d7a2046 [clang] support `SubstNonTypeTemplateParmExpr`
7 years ago
Ezgi Çiçek 718f81ac77 Convert list to sequence in `Procdesc.get_siblings`
7 years ago
Jules Villard 2cb96c356a [clang] remove capture hack
7 years ago
Martin Trojer 63b3f5b99b Deal with anonymous objc blocks where non closure args could wrongly be considered duplicates.
7 years ago
Martin Trojer 510ce07698 Wrap all retaincycle dotty nodenames in quotes
7 years ago
Jules Villard 6611bee736 [prop] memory usage improvement
7 years ago
Martin Trojer d442937380 Add CFRunLoopObserverCreateWithHandler model and test
7 years ago
Dulma Churchill e667c32324 [biabduction] Log the status of using dynamic dispatch
7 years ago
Jeremy Dubreil 7d2b96b42f [infer][backend] removed the use of Summary.get_unsafe in the backend 2/2
7 years ago
Martin Trojer 1ee0390f3c Add test that exemplifies Missing_fld issue on objc
7 years ago
Ezgi Çiçek 60b74766d5 Fix expensive debugging in cost analysis
7 years ago
Jeremy Dubreil a055833eb3 [infer][ondemand] assert that the callbacks are set before retrieving the procedure description
7 years ago
Jeremy Dubreil 8f5504fe28 [infer][backend] removed the use of Summary.get_unsafe in the backend 1/2
7 years ago
Martin Trojer 8bdbf3aedc Fix false positive BAD_POINTER for objcpp
7 years ago
Jules Villard 3d63c34bd4 [clang] less verbose logging of translation errors
7 years ago
Dulma Churchill 90f8c73273 [biabduction] Enable dynamic disptach on Objective-C blocks
7 years ago
Mehdi Bouaziz e5de1b6663 Cost: simplify range of parameters
7 years ago
Mehdi Bouaziz bea71d9168 Inferbo/perf: path rather than symbols
7 years ago
Mehdi Bouaziz 3c240fc880 Inferbo: rewrote subst
7 years ago
Ezgi Çiçek 4624ff48d1 Fix control variable imprecision in do while loops
7 years ago
Martin Trojer a1cadfd88c Adding objcpp liveness test
7 years ago
Jules Villard 89040bee1c [backend] do not let caches grow too big
7 years ago
Daiva Naudziuniene 1e2e9b6d11 [clang frontent] Fix translation of binary operator
7 years ago
Mehdi Bouaziz a8e84d1657 Cost: improve NonNegativePolynomial.(<=)
7 years ago
Mehdi Bouaziz 0639ef82b7 Cost: also take into account arguments in range
7 years ago
Dulma Churchill 60cbc2c98e [biabduction] Enable dynamic dispatch for ObjC methods
7 years ago
Dulma Churchill 2cf0e7a1d2 [clang] Treat class method as a static self only as the first argument of an instance method call, not a class method
7 years ago
Nikos Gorogiannis 848ef3da21 [RacerD] Fix stability implementation
7 years ago
Jules Villard 19a6185a54 [taskbar] truncate output at terminal size
7 years ago
Jules Villard 0110ad9e14 [deadcode] remove dead code
7 years ago
Jules Villard b0427c9390 [taskbar] die when a child errors
7 years ago
Nikos Gorogiannis f28aa37cb6 [racerd] Do not record paths starting at variables not appearing in source
7 years ago
Dulma Churchill 93ffa826a7 [clang] Using dumped info from array and dict literals
7 years ago
Dulma Churchill 4c726692a9 [clang] Do not raise an exception when type pointer not found
7 years ago