822 Commits (8776a31f7de4f65da206d20e09e0f49c5c89dddf)

Author SHA1 Message Date
Jules Villard 6d6ac1d368 [pulse] do not use access paths as they forget about &/*
6 years ago
Nikos Gorogiannis b0b8459c3a [racerd] detect ObjC "private" methods
6 years ago
Jeremy Dubreil bb5518b221 [infer] no need to store the procedure attributes for the Java methods
6 years ago
Nikos Gorogiannis 105b772cff [racerd] iOS first steps
6 years ago
Mehdi Bouaziz ecedb27d77 Add missing FB copyrights
6 years ago
Mehdi Bouaziz 2d4e58f57f Mangled.this/is_this
6 years ago
Sungkeun Cho cd1981a567 [inferbo] Change pp of BinaryOperationCondition
6 years ago
Jules Villard dd220a0fb4 [pulse] vector models
6 years ago
Sungkeun Cho fb4086c6f6 [inferbo] Add integer overflow issue type
6 years ago
Sungkeun Cho 1ae393dc76 [infer] Get widths of build-in integer types
6 years ago
Jules Villard 8360465284 [cfg] always store specialized proc desc CFGs
6 years ago
Mehdi Bouaziz d8ecfbfc4b Do not compare types of array elements in access paths and access expressions
6 years ago
Mehdi Bouaziz b3cef556b7 [debug] Print types in access paths/expressions in verbose mode
6 years ago
Mehdi Bouaziz a2230bca9d [debug] Print nodes using weak topological order
6 years ago
Mehdi Bouaziz 8ef9bf7641 Expose WTO in ProcCfg
6 years ago
Mehdi Bouaziz b324dbd8dd Use WTO to get loop heads
6 years ago
Mehdi Bouaziz 371e1267d9 [debug] Get rid of proof_cover/isproof
6 years ago
Josh Berdine e1d4aad487 [ocamlformat] upgrade ocamlformat to 0.8
6 years ago
Nikos Gorogiannis 9eecd1bb9b [racerd] reconcile java and clang report corellation code
6 years ago
Sungkeun Cho d94ba863c6 [infer] Add type in binary operator
6 years ago
Mehdi Bouaziz b90c2f3bfc [debug] Print proc attributes on the procedure page
6 years ago
Mehdi Bouaziz 15839539a7 Annot.Method: record rather than pair
6 years ago
Sungkeun Cho f4ee2a0234 [inferbo] Revise placement new model
6 years ago
Jules Villard 8c7bff0210 [proc-cfg][5/5] remove file-wide cfgs from the db
6 years ago
Jules Villard 2b30dec50a [proc-cfg][4/5] kill Cfg.load
6 years ago
Jules Villard 31e01a9aa0 [proc-cfg][3/5] stop caching whole-file cfgs in exe_env
6 years ago
Jules Villard 7615963bf4 [proc-cfg][2/5] fix duplicate symbols detection
6 years ago
Jules Villard 7e20c8d380 [proc-cfg][1/5] add per-procedure cfgs to the procedures table
6 years ago
Jules Villard b8240eadc1 [cfgs] only analyse *defined* procedures
6 years ago
Jules Villard 2a51bdabaf [cfgs] move specialize_* functions to another module to avoid circular dependencies
6 years ago
Jeremy Dubreil 78505af836 [infer] fix typo in the computation of the bug hash
6 years ago
Jules Villard e3efc0e465 [sql] batch write of attributes
6 years ago
Sungkeun Cho 96cbdb15c7 [inferbo] Use big_int in interval domain
6 years ago
Jules Villard cd49a0c72d [cfg] store the same version of the attributes as the attributes table
6 years ago
Julian Sutherland 949aae560b Added traces to QuandaryBO errors
7 years ago
Mehdi Bouaziz bd8d2eb941 ProcAttributes: simplify var_attribute
7 years ago
Mehdi Bouaziz d9fb7b3004 ProcAttributes: removed unused by_vals
7 years ago
Mehdi Bouaziz f57e7028a8 ProcAttributes: removed unused proc_flags
7 years ago
Mehdi Bouaziz ddbb7e05d3 Reporting cleanup 22: log_error/warning -> use IssueType rather than exception
7 years ago
Mehdi Bouaziz 051c9d5e1f [inferbo] Report Unreachable_code_after with Checkers exception
7 years ago
Jules Villard 4ddbc714ba [SIL] remove dead `Typ substitution
7 years ago
Julian Sutherland e715d48c12 QuandaryBO
7 years ago
Mehdi Bouaziz bc737851b1 Move biabduction config/state to its own module
7 years ago
Mehdi Bouaziz 247e785ae4 Reporting cleanup 21: do not keep in-re-execution issues
7 years ago
Mehdi Bouaziz 4c0e217410 Remove dead Config.pp_simple
7 years ago
Mehdi Bouaziz 7964dd76ca Reporting cleanup 19: use IssueType for CIssue.issue_desc
7 years ago
Julian Sutherland a3753885bb Reordered elements of severity array to make compare more meaningful. This will be helpful in merging inferBO and Quandary commits in QuandaryBO
7 years ago
Mehdi Bouaziz d331a7ad19 Start/Exit_node don't need the procname
7 years ago
Jeremy Dubreil 22157739b8 [infer] fix dead code
7 years ago
Mehdi Bouaziz 56612796e6 Node.pname_opt doesn't have to be an option
7 years ago
Mehdi Bouaziz 0cb31a8057 Reporting cleanup 18: move linters_def_file from reporting to issue type
7 years ago
Mehdi Bouaziz 249ef9d75b Reporting cleanup 17: move doc_url from reporting to issue type
7 years ago
Mehdi Bouaziz 911a2e1906 Reporting cleanup 16: UnknownNode -> no node key
7 years ago
Mehdi Bouaziz b8426be310 Dummy_exception: use IssueType.analysis_stops
7 years ago
Mehdi Bouaziz ec9f4c2c6a node_key: option type
7 years ago
Daiva Naudziuniene bfab195d08 [dead store] Do not report dead stores on constexpr
7 years ago
Jules Villard 5894258f43 [ownership] do not warn on returning ref to outer local
7 years ago
Josh Berdine 40ab73037e [ocamlformat] upgrade to ocamlformat 0.7
7 years ago
Mehdi Bouaziz b4b54025bf Remove C++ mutex DOUBLE_LOCK checker
7 years ago
Mehdi Bouaziz f8380f9480 Trying to fix comments on Localise.ml
7 years ago
Jeremy Dubreil 735b28f359 [infer] remove the bug_class from the Infer report
7 years ago
Mehdi Bouaziz 6bb429ef63 Reporting cleanup 13: log_issue_external
7 years ago
Mehdi Bouaziz 9dad4c3648 Reporting cleanup 12: node_id_key -> node
7 years ago
Mehdi Bouaziz 3986a823f8 Reporting cleanup 11: node_id
7 years ago
Ezgi Çiçek cc18f9883d [Cost] Fix invariant variable analysis to be based on all reaching defns
7 years ago
Mehdi Bouaziz eb282797ab Reporting cleanup 9: move NodeKey to Procdesc
7 years ago
Mehdi Bouaziz 04af716fba Reporting cleanup 8: move errlog to summary
7 years ago
Mehdi Bouaziz ac5633bf58 Reporting cleanup 7: session
7 years ago
Mehdi Bouaziz 2ee4b5da18 Reporting cleanup 4: clang_method_kind
7 years ago
Mehdi Bouaziz 919d05b5ef Reporting cleanup 3: NodeKey
7 years ago
Mehdi Bouaziz 114c4e436d Reporting cleanup 2: Errlog.log_issue
7 years ago
Mehdi Bouaziz add478d97d Remove Errlog.equal
7 years ago
Mehdi Bouaziz 6d134762b6 Remove dead print_key
7 years ago
Ezgi Çiçek bedf32bed5 [Cost, InferBo] generalize ArrayLists to Collections and Iterators
7 years ago
Daiva Naudziuniene e8c5a84acd [Ownership] Add ownership to return param
7 years ago
Mehdi Bouaziz ad986dffde Get rid of Declare_locals
7 years ago
Ezgi Çiçek 832e0130cd [Inferbo] Fix the way pointers to arrays are handled in Java
7 years ago
Jeremy Dubreil df34917342 [infer] print all the severities in the debug html
7 years ago
Jeremy Dubreil 59b7915177 [infer] rename the severity variants
7 years ago
Jeremy Dubreil 8a6aa4b1fd [infer] fix the internal confusion between the issue kind and the severity
7 years ago
Mehdi Bouaziz 96323b68e6 ProcnameDispatcher: allow matching to depend on a context
7 years ago
Daiva Naudziuniene a8d80a590b [cfg] Add variant type for statement node
7 years ago
Martino Luca 9e048c11f8 [Perf] Emit cost polynomial and their degree as part of the report
7 years ago
Ezgi Çiçek 2d889791e2 Fix Java's handling of pointer parameters in Inferbo
7 years ago
Ezgi Çiçek 0c6eacc902 Add support for Java's ArrayLists.add*
7 years ago
Martin Trojer ee7f07a1a9 Add missing case to block instruction converter
7 years ago
Jules Villard 83a4a8fa5b [dune] jbuilder -> dune
7 years ago
Martin Trojer 4b69087ad5 Adding OBJCPP models to avoid SKIPs of models from .mm
7 years ago
Nikos Gorogiannis c2416defed Fix IntLit.to_int interface and uses.
7 years ago
Jules Villard 0d8c2dedd6 [cli] add the ability to rerun the analysis on some files with different options
7 years ago
Jules Villard f70f413c54 [sqlite] API to retrieve rows of more than one column
7 years ago
Jules Villard aebeca3388 [sqlite] do not wrap results into `Some _` needlessly
7 years ago
Dulma Churchill eab20602a0 [biabduction] Do not log unamatched parameter errors to standard out
7 years ago
Jules Villard be855d3589 [explore] change filtering options to filter in OCaml rather than SQLite
7 years ago
Ezgi Çiçek 5cff9c91f9 Add Java support to ProcnameDispatcher
7 years ago
Martin Trojer a07877dcbb Add new Ident.create_fresh function to avoid clashes specialized objc blocks
7 years ago
Jules Villard 86e79a7125 [attributes] always have a (single) translation unit
7 years ago
Ezgi Çiçek 129cadb9b6 "Be more lazy in get_siblings"
7 years ago
Jules Villard 36f8d8f869 [lint] linter to force every file to `open! IStd`
7 years ago
Ezgi Çiçek 718f81ac77 Convert list to sequence in `Procdesc.get_siblings`
7 years ago
Ezgi Çiçek 4624ff48d1 Fix control variable imprecision in do while loops
7 years ago
Dulma Churchill 60cbc2c98e [biabduction] Enable dynamic dispatch for ObjC methods
7 years ago
Dulma Churchill 93ffa826a7 [clang] Using dumped info from array and dict literals
7 years ago
Jeremy Dubreil 055a8267e8 [eradicate] promote reports as errors for generated GraphQL source of nulls
7 years ago
Nikos Gorogiannis e5d8f501f4 [starvation] fix conversions of int literals which need 64 bit ints
7 years ago
Dulma Churchill a274cdf785 [IR] Add the flag is_variadic to the procedure attributes
7 years ago
Dulma Churchill 2f00ccb434 [IR] Unify the proc attribute translation_unit and source_captured
7 years ago
Mehdi Bouaziz 4eef0d90c8 Logging/Printer: better code
7 years ago
Dulma Churchill 91e0a7d1a3 [IR] Take parameters into account in to_filename method
7 years ago
Dulma Churchill 776e728b63 [biabduction] Rewrite the function resolve_java_pname in SymExec for all procnames
7 years ago
Ezgi Çiçek bbd6820ca1 Get rid of data dep analysis and localize it to single step
7 years ago
Dulma Churchill c1cd2f44cf [IR] Put the procnames for c functions and blocks in designated modules
7 years ago
Daiva Naudziuniene acc8712401 [HIL] Do not raise error for the case where array index is passed by ref
7 years ago
Dulma Churchill 79a8f8716c [clang] Adding parameters as part of the procname for C++/ObjC methods and ObjC blocks
7 years ago
Jules Villard 710dae8ee4 [doc] add `make doc` target for building html API doc
7 years ago
Dulma Churchill 7409e33ed2 [clang] Add parameters info to the procname of c functions
7 years ago
Ezgi Çiçek cb8e734bbb Get all the loop instructions
7 years ago
Dulma Churchill 30a3615fa3 [IR] Adding module for type of parameters to be added to procnames.
7 years ago
Daiva Naudziuniene 610ed0c885 [uninit] Filter out fields if they come from unions
7 years ago
Mehdi Bouaziz 69ead917c3 Instrs: Arrays and RevArrays only
7 years ago
Mehdi Bouaziz 41a6480139 Instrs.single -> singleton
7 years ago
Mehdi Bouaziz a5b8093c42 List.drop again
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Mehdi Bouaziz 4927e31c2f Abstract type for list of instructions in node
7 years ago
Mehdi Bouaziz 256b74b289 proc_inline_synthetic_methods: got rid of refs
7 years ago
Dulma Churchill 6ad971c875 [clang] Refactor building method signatures
7 years ago
Mehdi Bouaziz c841bf262a Preanal: append_instrs once per node
7 years ago
Mehdi Bouaziz c84bf5959b mk_find_duplicate_nodes: better code
7 years ago
Mehdi Bouaziz eaf4490670 Preanal: reduce garbage
7 years ago
Mehdi Bouaziz a4098f2499 Procdesc.fold_nodes: do not rev
7 years ago
Jules Villard fecabb3bf3 [siof] do not report on standard streams
7 years ago
Daiva Naudziuniene 8a6aa92fb1 [HIL] Fix type of array element
7 years ago
Mehdi Bouaziz 0ba993fb68 Procdesc.specialize_type_proc: fold -> filter_map
7 years ago
Mehdi Bouaziz 6b88176189 fold_slope_range, java_get_vararg_values: got rid of refs
7 years ago
Sam Blackshear 9ca945aa2f [ownership] warn when returning references to borrowed values
7 years ago
Daiva Naudziuniene 8ccf4897dd [uninit] Use access expressions
7 years ago
Jules Villard 92c129dc4e [cfg] rename `Cfg.is_proc_cfg_connected` to `Procdesc.is_connected`
7 years ago
Sam Blackshear 5ed2016899 [clang] basic support for exceptional control-flow
7 years ago
Daiva Naudziuniene 4e821129a4 [cfg] Log if the cfg is broken for a join node or not
7 years ago
Oliver Castillo fb4e7ee4a4 [infer][PR] Fix spelling errors
7 years ago
Jules Villard 766a16cd90 [clang] enforce that `instruction` always returns one SIL expression
7 years ago
Daiva Naudziuniene 63f1a341b5 [cfg] Filter out join*->destructor->exit nodes as being not broken
7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate
7 years ago
Daiva Naudziuniene 28b696881c [minor] Use List.is_empty instead of List.length equal to 0
7 years ago
Daiva Naudziuniene 5e6c859922 [cfg] Filter out more benign broken cfgs
7 years ago
Dulma Churchill c24ff02bb4 [biabduction] Add to the skip reason when the method comes from a protocol
7 years ago
Nikos Gorogiannis 538bcd9135 [starvation] store issues to issue-logs like linters do
7 years ago
Dulma Churchill 4a2174a322 Revert "[clang] Make the frontend with compilation database fail with compilation errors"
7 years ago
Dulma Churchill 96e5a976c4 [clang] Make the frontend with compilation database fail with compilation errors
7 years ago
Nikos Gorogiannis 9a2c494454 [infer] refactor LintIssues for general use.
7 years ago