860 Commits (9c7d3da190ea87fb2ef7040cbbb057503f6dc953)

Author SHA1 Message Date
Josh Berdine a2930b7007 Core.Std.Int
8 years ago
Andrzej Kotulski 56f8757337 [SourceFile] Move DB.SourceFile into separate file
8 years ago
Andrzej Kotulski 69b39dacb0 [DB] Create module for SourceFile
8 years ago
Dino Distefano bd216f3205 Fixed problem with evaluation of sizeof which would give false positive
8 years ago
Andrzej Kotulski bd0f0cc7fc [DB] Don't fail hard when realpath fails
8 years ago
Josh Berdine 731ffa0ae1 Initialize Builtins also in single-core mode
8 years ago
Andrzej Kotulski bd843b277e [DB] Remove source_file_from_string, source_file_to_string no longer returns real path
8 years ago
Andrzej Kotulski b8908282f8 [DB] Remove many callsites of DB.source_file_to_string
8 years ago
Cristiano Calcagno 827d7c3d9c [backend][perf] Address top performance bottleneck from profiling the backend.
8 years ago
Sam Blackshear 226791b631 [ondemand] simplify API by removing need to pass type environment
8 years ago
Josh Berdine 198bc00df7 Remove Utils compare and equal functions
8 years ago
Josh Berdine 9fb2258284 ppx_compare Dom
8 years ago
Josh Berdine 81d3e7085a ppx_compare Dotty
8 years ago
Josh Berdine 6e322d96e8 ppx_compare Prover
8 years ago
Josh Berdine 47368b8ae6 ppx_compare Specs
8 years ago
Josh Berdine fe7a0c2483 ppx_compare State
8 years ago
Josh Berdine 97639ba236 ppx_compare Paths
8 years ago
Josh Berdine b94b5f1c58 ppx_compare Procdesc
8 years ago
Josh Berdine 344e724a85 ppx_compare Prop
8 years ago
Josh Berdine aa5998a9d1 ppx_compare Sil
8 years ago
Josh Berdine 6298d043e6 ppx_compare PredSymb
8 years ago
Josh Berdine 952855288d ppx_compare StructTyp
8 years ago
Josh Berdine cbec3453a3 ppx_compare Typ
8 years ago
Josh Berdine 0cf71c74ef Sort nodes when printing cfg to dot file
8 years ago
Josh Berdine 27da735427 ppx_compare InferPrint
8 years ago
Josh Berdine a1e223d36d ppx_compare Ident
8 years ago
Josh Berdine 1ca67fbfa6 ppx_compare DB
8 years ago
Jeremy Dubreil e269f2a3fd [infer][java] basic support to run Infer using Buck genrules
8 years ago
Andrzej Kotulski d4c634e50f [DB] Cleanup code related to --changed-files-index
8 years ago
Andrzej Kotulski 6192cb98b4 [DB] Use realpath when calling source_file_from_abs_path
8 years ago
Dulma Churchill 8415b6c38b [backend] do not log analysis_stops in debug_exceptions mode
8 years ago
Andrzej Kotulski a8b0871660 [reactive capture] Pass compilation db files to InferAnalyze, use absolute fnames
8 years ago
Jeremy Dubreil afd29e71de [infer][backend] Simplify the code doing the case analysis for execturing the cast instruction
8 years ago
Andrzej Kotulski 7a0a89e567 [DB.source_file] Explicitly specify what path is relative to, keep cpp model paths relative
8 years ago
Cristiano Calcagno 31e6f19ab2 [debug] Don't keep a copy of source files in the results directory
8 years ago
Andrzej Kotulski cd6e9e8b21 [InferPrint] Kill --source-file-copy option
8 years ago
Andrzej Kotulski b2cef3e0b2 [DB] Alawys use DB.source_file_to_abs_path to do actual filesystem operations
8 years ago
Sam Blackshear a6121a9fb0 [guarded-by] support `Classname.fieldname` syntax
8 years ago
Jules Villard 86cb2f4938 [toplevel] fix various things
8 years ago
Josh Berdine 1bbbf658de [report] Fix report script and inherit std file descriptors when invoking
8 years ago
Sam Blackshear 708c0bf1f8 [backend] eliminate phantom spaces in printing of types
8 years ago
Josh Berdine d808baba1a [driver] Make analysis of non-java and buck cdb build modes python-clean
8 years ago
Josh Berdine cb412826c3 [driver] Make `infer -- analyze` almost python-clean
8 years ago
Peter O'Hearn 733646ba09 [GuardedBy] Fix Subclassing False positive
8 years ago
Jules Villard 15d80e04df [tests] record summary of bug traces
8 years ago
Andrzej Kotulski 4512fcd8ef [tests] Create integration tests for clang translation logic
8 years ago
Peter O'Hearn 7a04ed32f5 [threadsafety] interprocedural
8 years ago
Jules Villard 281d5b49fe [tests] sort bugs in InferPrint
8 years ago
Peter O'Hearn 171d1d6d43 [threadsafety] run thread safety checker on its own
8 years ago
Dulma Churchill b792d04fbd [clang] Integration with xcpretty and compilation database
8 years ago
Jeremy Dubreil 21a568aba8 [infer][java] Fix spurious class cast excpetion reports when casting arrays of primitive types
8 years ago
Jules Villard caf9537305 [refactoring] add make_trace_element to Errlog
8 years ago
Cristiano Calcagno c5159bae1c [IR] Move Procdesc module to a separate file.
8 years ago
Sam Blackshear 8784b9b946 [backend] fix cursor leak FPs
8 years ago
Jules Villard 54c3ac41f2 [inferprint] do not print all specs when passed individual specs files
8 years ago
Josh Berdine 16010adab4 [refactor] InferAnalyze init code to InferAnalyzeExe
8 years ago
Josh Berdine b2680d72d0 [config] Make Config.analyzer non-optional, with None = Some Infer
8 years ago
Josh Berdine f22d03903a [logging] Delay creation of log files until they are used
8 years ago
Josh Berdine 426f29fb3c [make] Silence expected warnings and other spew from tests
8 years ago
Cristiano Calcagno 7e4710004e [perf] Use load average limit only during buck analysis
8 years ago
Andrzej Kotulski 459ec32081 kill Location.nLOC
8 years ago
Sam Blackshear f35a969def [context leaks] don't report context leak if reachable context type is null
8 years ago
Cristiano Calcagno 1b07f78e32 [backend] Fix back-end issue where summaries are modified before saving to disk, but not in the table in memory.
8 years ago
Jules Villard d5e7ee0d82 [tests] run tests using report.json and record all bugs + exceptions
8 years ago
Dulma Churchill bf14034289 [clang] Do compilation database capture in OCaml directly
8 years ago
Jules Villard e757d92e72 [print] print tests results from result.json, not the specs
8 years ago
Jules Villard 2cd0151e30 [python] restore project_root option and use it to find source files
8 years ago
Jules Villard 2f5d132734 [config] normalize all paths options
8 years ago
Jeremy Dubreil 15ddf8b921 [infer][backend] More functions from the Specs module taking a summary as parameter
8 years ago
Cristiano Calcagno af54b5da4b [backend] Change path iteration to get shorter error traces.
8 years ago
Josh Berdine 3ae2b41241 [refactor] Call StatsAggregator from Infer instead of from python
8 years ago
Jeremy Dubreil 9baea70548 [infer][backend] More consistent API to check if a procedure is currently being analyzed
8 years ago
Andrzej Kotulski 80f25d17fd [tests] Create simple compilation database integration test
8 years ago
Cristiano Calcagno e933ee958a [IR] Rearrange the cfg module to make nodes, procd descs, and cfgs independent types.
8 years ago
Josh Berdine 7c4c40b6b0 [refactor] Move StatsAggregator from scripts to backend
8 years ago
Josh Berdine 9f42c047fe [refactor] InferAnalyze initialization code into separate Exe module
8 years ago
Josh Berdine e9654ca51d [refactor] Separate InferPrint initialization code into separate Exe module
8 years ago
Josh Berdine bf40ff99e7 [reporting] Create report files from InferPrint not Config
8 years ago
Josh Berdine 216812a615 [driver] Add skeleton capture and analysis driver to infer.ml
8 years ago
Josh Berdine 7fc5b4d55d [siof] Make siof reporting closer to other checkers
8 years ago
Josh Berdine ae7979b416 [multicore] Use Config.bin_dir to find InferAnalyze
8 years ago
Josh Berdine 6b0abe3b57 [config] Do not pass options to clusters via INFER_OPTIONS
8 years ago
Josh Berdine b7675dd2a2 [config] Remove unused --absolute-paths option
8 years ago
Josh Berdine 2ce94632d2 [config] Default project_root to initial working dir
8 years ago
Cristiano Calcagno a71902355f [debug][dotty] Fix issue in dotty output where overloaded functions were conflated
8 years ago
Cristiano Calcagno d1f8894a9a [debug][html] Distinguish debug html files for same node in different procedures
8 years ago
Peter O'Hearn 2d424b7779 skipping ReadWrite Locks
8 years ago
Cristiano Calcagno 73c5dfdfa4 [IR] Remove use of Cfg.Node.get_proc_desc
8 years ago
Peter O'Hearn e91742afea Support @SuppressLint("InvalidAccessToGuardedField")
8 years ago
Josh Berdine 4422893bbd [RFC] Remove CSV and JSON munging python code
8 years ago
Andrzej Kotulski 08d4465e1d [refactor] Refactor SymExec Sil.Call pattern match
8 years ago
Andrzej Kotulski 46592ffdd9 [backend] Split construction of builtin pnames and builtin registration
8 years ago
Sam Blackshear 7ae58d78c3 [infer] fix .class synchronization false-positive in guarded-by check
8 years ago
Jules Villard a9f3a70b93 [checkers] print checkers summary in InferPrint
8 years ago
Andrzej Kotulski ed29bfef52 [logging] Provide binary type to logging module
8 years ago
Cristiano Calcagno 3fb8801b6c [IR] Change cfg representation so the node number is per-procedure and not per-cfg
8 years ago
Ryan Rhee 5580be8dcc [componentkit] Initializer With Side-Effect Analyzer
8 years ago
Josh Berdine af2e9ae5c1 [config] Dynamic dispatch methods are mutually exclusive
8 years ago
Jeremy Dubreil 6ae0ebe489 [infer][java] Store the procedure descriptions in the summary to run the analyis with lazy dynamic dispatch across modules
8 years ago
Jules Villard 84af7c56f8 [SIOF] detect which variables need initialization
8 years ago
Cristiano Calcagno ecda199e9d [IR] Clean up unused parts of Cfg
8 years ago
Sam Blackshear 355ab92130 [backend] move expression pretty-printing into exp module
8 years ago
Cristiano Calcagno 47c623ff51 [Merge] Use multilink files to speed up merge with buck projects.
8 years ago
Josh Berdine a9192cffd6 [config] Eliminate ad hoc environment variables
8 years ago
Ryan Rhee c2a8dae26f [componentkit] Multiple factory methods
8 years ago
Josh Berdine a7c1105147 [config] Combine analyze_models into models_mode
8 years ago
Ryan Rhee e73350598a [componentkit] Unconventional superclass rule
8 years ago
Andrzej Kotulski 4aaec9b220 [python] Remove args that were not used in python code
8 years ago
Cristiano Calcagno 0572410ac0 [backend] Clean up the forward tabulation algorithm for the intraprocedural analysis.
8 years ago
Jules Villard c45afc9859 [clang] cleanup obsolete python code
8 years ago
Jules Villard 5fe40bae12 [siof] check origin of globals and complain if potential siof
8 years ago
Jules Villard 343556e0b2 [base] resolve links when guessing which executable we are running, move infer into bin/
8 years ago
Jeremy Dubreil 587d829a1a [infer][java] Add the possibility to choose a compiler jar that is different from the system Java compiler to generate the bytecode
8 years ago
Sam Blackshear 6918c117d2 [preanalysis] add option for sound dynamic dipatch handling
8 years ago
Andrzej Kotulski 0f9f44f16e [backend] Report ignored return value on skip functions
8 years ago
Josh Berdine dd8b8e6d2e [reason] reformat with new version of reason
8 years ago
Peter O'Hearn 07da8f36d1 don't warn on GuardedBy self reference
8 years ago
Sam Blackshear 727af5d660 [checkers] clean up abstract interpreter
8 years ago
Cristiano Calcagno 91d711c833 [backend] Perf fix: only load tenv and cfg files once per each file, instead of once per procedure.
8 years ago
Jules Villard c53bfe3159 [clang] rewrite plugin attachment logic in OCaml
8 years ago
Dulma Churchill caa7534a71 [cpp] Report issues in the cpp models as relative paths
8 years ago
Josh Berdine de56a302f3 [refactor] Remove unused prop reporting, and refactor
8 years ago
Sam Blackshear 95a82a6a04 [backend] don't run preanalysis twice
8 years ago
Josh Berdine d8336ea906 [backend] Keep common constraints in pure join
8 years ago
Jules Villard eb391d7875 [llvm] delete llvm frontend
8 years ago
Dulma Churchill a9f1d21dd2 [logging] Add visibility to the report json, so that we can filter the developer bugs in the tv links page
8 years ago
Jules Villard d9f83094b5 [clang] do not depend on Config.clang_lang and Config.source_file
8 years ago
Jules Villard 7d49e16d63 [clang] rewrite hijack_and_normalize_clang_command in OCaml
8 years ago
Dulma Churchill bd22999950 [clang] Disable the condition always true or false check for clang as it is too noisy.
8 years ago
Andrzej Kotulski 18f6190432 move code that depends on backend/ out from IR/Cfg.re
8 years ago
Andrzej Kotulski b93d6b5012 [ocaml] Create base/ directory for code shared across analyzer and frontends
8 years ago
Jeremy Dubreil ea72dadab3 [infer] Add the possibility to skip the analysis of some files based on their path
8 years ago
Dino Distefano 777378e7cc Do not crash unless in debug mode
8 years ago
Jules Villard f59c18cc44 [utils] return process exit status in with_process_{in,full} helpers
8 years ago
Josh Berdine 3ddc23d7e5 [IR] Do not use JBasics.java_lang_object in IR/backend
8 years ago
Ryan Rhee b635269fa8 [clang][frontend] Allow custom blacklist for checking objc descendant
8 years ago
Ryan Rhee 272c21ff70 [componentkit] Factory functions analyzer
8 years ago
Dulma Churchill befab1007b [clang] Migrating clang logging to the Logging module
8 years ago
Josh Berdine 67a883e1a2 [models] Use return type for ObjC models
8 years ago
Josh Berdine c094a38d56 [IR] Simplify to single return id, with type
8 years ago
Josh Berdine ae632e281a [IR] Refactor Typ.struct_typ into separate module
8 years ago
Josh Berdine 44e2c32524 [IR] Refactor annotation types into separate module
8 years ago
Josh Berdine 74c8198826 [IR] Remove redundant struct_typ.name field
8 years ago
Josh Berdine af51599e0f [backend] Remove AttributesTable.get_tenv
8 years ago
Jeremy Dubreil 168c613ac9 [infer][java] Separate the builtins from the other models for a better modularity
8 years ago
Dulma Churchill a2ee69975a [clang] Remove support for logging lint issues in procdescs
8 years ago
Dulma Churchill 8554c1e342 [Parallelization][Linters] Wait for processes based on the map of processes, to make sure that we waited for all the children.
8 years ago
Cristiano Calcagno 4cee6907ec [backend] Remove the global reference DB.current_source and clean up the flow of information about the current source file.
8 years ago
Dulma Churchill 526cf6da6a [Config] Adding a default for the option load
8 years ago
Cristiano Calcagno bd0215a826 [IR] Add notion of file captured to procedure attributes.
8 years ago