2621 Commits (3576f2f7ccd4382c340100b120da2e21fa46f44c)

Author SHA1 Message Date
Jeremy Dubreil 7e12885f98 [infer][checkers] remove the quandary analyzer option and rely on the --quandary flag only
8 years ago
Jeremy Dubreil 6f85980e6e [infer][ondemand] try to load the summary when the procedure description cannot be found
8 years ago
Jeremy Dubreil be0cd4fa73 [infer][ondemand] use the attributes from the procedure description without filesystem lookup
8 years ago
Dino Distefano c6a29e5e8a Adding more builtin type to parser
8 years ago
Sam Blackshear 9157f42b7c [test] diagnose invalid source file issue
8 years ago
Sam Blackshear 6af6ef35ec [quandary] support sources that taint a pointer arg or arg passed by ref rather than the return value
8 years ago
Sam Blackshear 52ed886886 [quandary] log error to summary instead of pdesc
8 years ago
Jeremy Dubreil 7bc2d6de12 [infer][ondemand] confine the concept of currently analyzed method to the Ondemand module
8 years ago
Jeremy Dubreil 9e4cbc919b [infer][checkers] Using the same filtering mechanisim for the biabduction analysis for the main Infer analysis and when using the checkers framework
8 years ago
Sam Blackshear a0377fe8c9 [quandary] treat call to unknown operator= as assignment
8 years ago
Sam Blackshear 9dc7e3d66f [quandary] handle return value passed by reference in sources
8 years ago
Jules Villard 29f7967f26 [build] remove unused values
8 years ago
Mehdi Bouaziz 37896ff435 [inferbo] More errors on symbolic intervals
8 years ago
Mehdi Bouaziz 5a57be9003 [infer][checkers] remove the bufferoverrun analyzer option and rely on the --bufferoverrun flag only
8 years ago
Jeremy Dubreil 8064ac2614 [infer][checkers] remove the siof analyzer option and rely on the --siof flag only
8 years ago
Jeremy Dubreil 62be37f163 [infer] parse the classpath information from the javac command line
8 years ago
Sam Blackshear 6f33fa4089 [cli] parse classpath from argfiles
8 years ago
Jeremy Dubreil ef354e6e2b [infer][checkers] remove the threadsafey as analyzer option and rely on the --threadsafety flag only
8 years ago
Jeremy Dubreil d5e9b22e41 [infer][checkers] remove the code for the checkers that are not being run in prod
8 years ago
Sam Blackshear 4425f0908c [thread-safety] understand custom Buck locks
8 years ago
Mehdi Bouaziz 174c0091ae [inferbo] std::vector model for inferbo
8 years ago
Jeremy Dubreil 0097d8a5cb [infer] First step to the biabduction analysis using the checkers framework
8 years ago
Ryan Rhee 62e4364085 [componentkit] Whitelist CKComponentKey
8 years ago
Ryan Rhee 9f65b0d3fa [componentkit] Whitelist CKComponentContext
8 years ago
Sam Blackshear 6680126af9 [cleanup] replace Location.dummy with Location.none where acceptable
8 years ago
Sam Blackshear 19da59cf19 [hil] functor for easily creating HIL analyses
8 years ago
Dulma Churchill 1a141eddca [ObjC capture] Model functions related to dispatch sources
8 years ago
Dulma Churchill 6097c05d88 [clang] Add a preanalysis to compute nullability annotations
8 years ago
Mehdi Bouaziz 7b8dc59386 [inferbo] Always use strong update
8 years ago
Dino Distefano 5bb41cc18c Removing predicates _strict
8 years ago
Dino Distefano 3c6f53c896 Adding predicate to get return type of a method and start a new parser for types
8 years ago
Sam Blackshear a02b37a03c [quandary] allow custom sources/sinks in C++
8 years ago
Jeremy Dubreil 548a36d71f [infer][backend] some more non-functional cleanup
8 years ago
Sam Blackshear 3258bc2ec4 [quandary] delegate handling of call to HIL
8 years ago
Sam Blackshear 80030c8de7 [quandary] delegate handling of assignment to HIL
8 years ago
Andrzej Kotulski c1147710ba [C++] Store class template name without its template arguments
8 years ago
Jeremy Dubreil b3af2ad4b6 [infer][ondemand] The source parameter from the analysis callback was never used
8 years ago
Jeremy Dubreil 224c1fea86 [infer][backend] remove the unecessary parameter source when printing node data
8 years ago
Sam Blackshear d248780645 [quandary] delegate cast handling to HIL
8 years ago
Sam Blackshear 8f10cae4b3 [quandary] delegate id map management to HIL
8 years ago
Jeremy Dubreil 33f9a2f864 [infer][backend] remove the unsafe function Specs.get_specs
8 years ago
Jeremy Dubreil 250d9cb8b3 [infer] the function to pretty-print the call graph does not need to access the analysis summaries
8 years ago
Sam Blackshear 7b44236874 [thread-safety] remove hacky special case for Builder's
8 years ago
Sam Blackshear 728412ce07 [thread-safety] clean up code unused after HIL conversion
8 years ago
Sam Blackshear f7a8d50c33 [thread-safety] convert Call logic to HIL
8 years ago
Sam Blackshear 6ff77fedda [thread-safety] convert Write logic to HIL
8 years ago
Sam Blackshear 135ac8be7c [integration] make it possible to run Inferbo/Quandary/Siof/Threadsafety on Clang buck projects
8 years ago
Andrzej Kotulski 7a0c4d9031 add more quals to SIL
8 years ago
Jeremy Dubreil 2e50022eb1 [infer][backend] remove unecessary check for analyzer kind
8 years ago
Jeremy Dubreil 8bbaf12500 [infer][backend] remove the function Specs.get_specs_formals
8 years ago
Sam Blackshear aadb26ada0 [hil] add Unbind operation for removing a temporary binding
8 years ago
Jeremy Dubreil b790ac8c14 [infer][java] load the global type environment at most once per process
8 years ago
Sam Blackshear 78a7865f2a [CLI] parse argfile contents into Config vars
8 years ago
Andrzej Kotulski 462220ce3e [typ] Print type qualifiers in Typ.pp_full
8 years ago
Andrzej Kotulski aefbbe8680 [clang] Translate type qualifiers into Sil
8 years ago
Jules Villard 1b0ee6fbc3 [clang] add sizeof static value to translation
8 years ago
Sam Blackshear 1c23876a4e [absint] BottomLiftedDomain should satisfy WithBottom signature
8 years ago
Sam Blackshear 863d90272f [cleanup] replace type_has_supertype with supertype_exists
8 years ago
Peter O'Hearn 3db1f9e94c [threadsafety] Treat clone() as aquiring ownership
8 years ago
Mehdi Bouaziz eb477b771e [inferbo] Replace some Bottom by Top
8 years ago
Mehdi Bouaziz 2dbde13335 [inferbo] Use Logging for logging
8 years ago
Mehdi Bouaziz 7d70310691 [inferbo] Yack manucuring
8 years ago
Andrzej Kotulski db3c07a631 [clang frontend] Pass type qualifiers through frontend
8 years ago
Martino Luca 233d6a53c0 [Infer] Emit potential exception lines into qualifier's message
8 years ago
Jeremy Dubreil c0c813c657 [infer][java] only report one annotation reachability issue per end of call stack
8 years ago
Sam Blackshear 3c0cf115b3 [quandary] add option for parsing endpoints from inferconfig
8 years ago
Andrzej Kotulski 029499cd9d [IR] add type qualifiers to Typ.t
8 years ago
Sam Blackshear 5de8161f89 [thread-safety] convert Prune logic to HIL
8 years ago
Dulma Churchill 69afe434a9 [clang] Add a flag to get around missing files in the buck integration
8 years ago
Sam Blackshear 8dbd91b5ba [java frontend] fix infinite loop
8 years ago
Jeremy Dubreil 06b0b94626 [infer][java] simplify the domain logic of the annotation reachability checker
8 years ago
Sungkeun Cho 7212890846 [Bufferoverrun] More prune to make some nodes unreachable
8 years ago
Sungkeun Cho b4b32f8d3e [Bufferoverrun] set uninitialized values in array as top
8 years ago
Sam Blackshear a4f2d99be9 [quandary] a few more ContentProvider sinks
8 years ago
Mehdi Bouaziz 92241119a2 [debug] Show the full payload of proc specs rather than preposts only
8 years ago
Jules Villard 15b8f80e18 [build] record last modified date of --help data inside ./configure
8 years ago
Jules Villard f232e3bd8d [build] fatal on warnings 21, 52, 57
8 years ago
Jules Villard 6f264a30fa [build] remove c stubs and ctypes dependency
8 years ago
Jules Villard 3325306c58 [config] rename --report and -report to --stats-report
8 years ago
Jules Villard f3d2bd7c08 [subcommands] support subcommands without leading --
8 years ago
Jules Villard 31a6aba3c2 [siof] enable SIOF checker only when new --siof option is passed
8 years ago
Sam Blackshear 48d99f38cb [thread-safety] fix typo in printing of domain info
8 years ago
Sam Blackshear 24165942a4 [hil] HIL instructions
8 years ago
Sam Blackshear 0caac1aa93 [hil] HIL expressions
8 years ago
Andrzej Kotulski e742d5bb7b [clang] Replace Prebuilt type_ptr with Typ.t
8 years ago
Sam Blackshear 20aff78b36 [quandary] ContentProvider Uri's as sources/files as sinks
8 years ago
Martino Luca 05a9270b13 [CTL] Attach CTL debugger to breakpoints in source code
8 years ago
Andrzej Kotulski a81f4e7bf9 Remove custom Clang_ast_types module, extend types instead
8 years ago
Martino Luca a42302bd38 Add variant type to traces' node_tags
8 years ago
Martino Luca 46c7aa378c Drop XML reports in InferPrint
8 years ago
Sam Blackshear 3024d9aed2 [quandary] more IPC sources
8 years ago
Jeremy Dubreil 3f67ca3f80 [infer][java] avoid unecessary convertions from sets to lists of call sites
8 years ago
Sam Blackshear bcbb032052 [quandary] WebView.postUrl is a sink
8 years ago
Andrzej Kotulski 6d360fb84a [C++] Replace clang_include_to_override with regex
8 years ago
Martino Luca 2e3b9a30ab [CTL][Debug] Fix colouring issue
8 years ago
Sam Blackshear 119672894d [thread-safety] use real location for trace spacers
8 years ago
Sam Blackshear 3c7361a83d [thread-safety] assume findViewById returns ownership
8 years ago
Jules Villard 19e490dbd2 [clang] create InferClang++ in infer/bin/ on compilation
8 years ago
Sam Blackshear b0216035f4 [frontend] don't treat Sawja-generated ternary operator vars as SSA tmps
8 years ago
Sam Blackshear 1f9c2cde85 [thread-safety] clean up error message printing
8 years ago
Peter O'Hearn 4c2ef788a1 [infer][threadsafety] Use disjunction in the join for threaded
8 years ago
Jules Villard c8489cb3ac [spacetime] two big allocators in some profiles
8 years ago
Josh Berdine ebf9acf6a2 Use tail recursive infix list append
8 years ago
Jules Villard e8a6c2e68d [CLOpt] replace uses of Str with Core.String
8 years ago
Jules Villard 68d6f73142 ocaml 4.04.0
8 years ago
Jules Villard 857eae7c6b [build] address warnings 52 and 57
8 years ago
Jules Villard dd2c56da06 be more careful about handling invalid source files
8 years ago
Jules Villard 724a592c34 [toplevel] do not read inferconfig location from the command line
8 years ago
Jules Villard e5e08ce659 fix warning and wrong type in GraphQL.ml
8 years ago
Sam Blackshear 00f948e924 [quandary] don't add callee-local state to the caller
8 years ago
Sam Blackshear 92011790c2 [quandary] optimize handling of unknown code by adding notion of 'taintable types'
8 years ago
Dulma Churchill 07c9e71399 [linters] Improve linter developer mode
8 years ago
Jules Villard b349fb147c [build] upgrade Reason to 1.13.3
8 years ago
Sam Blackshear 093b3c6478 [logging] don't log debug html for preanalyses
8 years ago
Sam Blackshear d7f39970d1 [thread-safety] report both a read and write stack trace in R/W race reports
8 years ago
Sam Blackshear ede9a31089 [thread-safety] refactor trace generation logic
8 years ago
Dino Distefano 7cef8ae3b5 Making AL distinguish class methods from instance methods
8 years ago
Dulma Churchill 6b9a37f5cd [capture] Fail when buck call fails
8 years ago
Andrzej Kotulski 3cdb0e04f5 [SourceFile] Move append_crc_cutoff to DB module
8 years ago
Dulma Churchill da0e0305f0 [linters] Make fail with syntax error appear at the end of the stderr in linters developer mode
8 years ago
Jules Villard b539366a5c [build] fail early if running `make test` with only some analyzers, add `make config_tests`
8 years ago
Andrzej Kotulski 62d1d74d74 [Typ] Change Typ.pp_full to not include class keywords
8 years ago
Andrzej Kotulski 2214034d03 [QualifiedName] Don't compute regex in each of_qual_string call
8 years ago
Martino Luca b956d2ddef [CTL] Initial version of a step-by-step debugger for CTL formulas
8 years ago
Dulma Churchill 830b185e6a [driver] Improvements to buck compilation database mode
8 years ago
Andrzej Kotulski 5503487704 [C++] Introduce mechanism to write generic models
8 years ago
Andrzej Kotulski a90525f627 [C++] Create notion of generic procname, it will be used to store specs of generic models
8 years ago
Sam Blackshear 899cfadfbd [access paths] don't compare types of bases
8 years ago
Dulma Churchill 6c3cc6fca4 [linters] Do not return a dummy ctl formula from the hardcoded linters
8 years ago
Dulma Churchill 9a9dec4d96 [linters] Disable hard_coded linters in linters developer mode
8 years ago
Sam Blackshear 8e2863a598 [quandary] more detailed source and sink kinds
8 years ago
Sam Blackshear 52dbd129cd [quandary] don't complain about transferring extras between intents
8 years ago
Sam Blackshear 417ddb1bc0 [quandary] make params of WebViewClient methods sources where appropriate
8 years ago
Sam Blackshear 8c5b15f65b [thread-safety] report more warnings by inferring when state is accessed by methods marked `@ThreadSafe` and other methods.
8 years ago
Andrzej Kotulski 21af28619f [C++] Use annotate attribute instead of deprecated
8 years ago
Jules Villard cccefd6434 [driver] better user error messages
8 years ago
Dulma Churchill 142fe31fae [driver] Declare a clean command for xcodebuild with xcpretty
8 years ago
Dulma Churchill 15ede90c44 [driver] Add warning about nothing captured
8 years ago
Jeremy Dubreil 54547c9fd7 [infer][checkers] simplify the logic to invoke the repeated call checker
8 years ago
Jeremy Dubreil bf55514b85 [infer][checkers] Add a pretty print of the annotation reachability payload when printing summaries
8 years ago
Sam Blackshear 88430c3e51 [quandary] make index field optional for custom sinks specified in JSON
8 years ago
Jeremy Dubreil a7422cf227 [infer][backend] make the Map and Set of procedure names pretty printable
8 years ago
Sam Blackshear 615489a619 [thread-safety] don't report on protected reads
8 years ago
Josh Berdine 6d2a88ed64 Add --chunk to set per-procedure-parallelism chunk size
8 years ago
Dulma Churchill f4bc0db2b4 [clang] Make capture with simple clang command be a method call
8 years ago
Dino Distefano 3ebf8c3277 Added the capability to import macros files in AL
8 years ago
Sam Blackshear c255823673 [quandary] clean up `Intent` sinks
8 years ago
Sam Blackshear afb26a9804 [thread-safety] add . to dummy fieldname
8 years ago
Sam Blackshear ff3159953d [thread-safety] don't report read-write races when the write is in a private or autogenerated proc
8 years ago
Andrzej Kotulski f598360786 [C++] Make QualifiedCppName.t reversed list
8 years ago
Jeremy Dubreil f5adab59ec [infer][checkers] Prevent the race conditions between the summaries passed as parameter to the checkers and the summaries from the specs table
8 years ago
Jeremy Dubreil 1cd4b4cc38 [infer][checkers] Do not run the reapeted call checker by default
8 years ago
Dulma Churchill 64791d1136 [driver] Bring clang capture from python to ocaml
8 years ago
Dino Distefano d32faf4f46 Replacing strings by a new data type for AL variables
8 years ago
Paco Estevez Garcia 5482f110c1 Add type path_exec to represent an skipped path of execution. Add logic to symExec to report skipped paths
8 years ago
Jules Villard 41d615c351 [lint] copyright linter lints Makefiles
8 years ago
Jules Villard 5599f078ee [make] do not overwrite execs in infer/bin/ when testing byte compilation
8 years ago
Jules Villard cd421b4a5f [make] print @ commands when passed VERBOSE=1
8 years ago
Andrzej Kotulski fbddeba8a7 [clang] Don't inline global var initializers
8 years ago
Sam Blackshear a800908797 [thread-safety] fix de-duplication logic
8 years ago
Sam Blackshear f8aea424cf [thread-safety] use aggregated access table as results table
8 years ago
Sam Blackshear 912652b523 [thread-safety] use existing conflict detection for reporting R/W races
8 years ago
Sam Blackshear eccc3a8e4e [thread-safety] move reporting of unprotected reads into aggregation function
8 years ago
Sam Blackshear 5130952ee8 [thread-safety] move reporting of unprotected writes into aggregation function
8 years ago
Sam Blackshear 0f6439cf3c [thread-safety] report on write outside sync, read inside sync races
8 years ago
Jeremy Dubreil 4ebfd2aa90 [infer][java] Simplify the ThreadSafety use of Ondemand
8 years ago
Sam Blackshear eeca7a181a [build] Remove deleted function from FbThreadSafety mli
8 years ago
Jeremy Dubreil bc4250caad [infer] fix operator shadowing
8 years ago
Sam Blackshear d5ed44994f [thread-safety] new SynchronizedCollection annotation
8 years ago
Jeremy Dubreil 81c0877e20 [infer][ondemnad] remove the call to `Summary.write_summary` in BufferOverrun which is no longer necessary
8 years ago
Dino Distefano 40e63aa42c Added the capability to define macros in AL
8 years ago
Andrzej Kotulski 5cfde325fd [C++] Fix matching of qualified cpp names
8 years ago
Jeremy Dubreil 0f70ca02e3 [infer][java] Simplify the abstract domain for the annotation reachability checker
8 years ago
Sam Blackshear 6a39585999 [thread-safety] treat non-interface methods with no summary as angelic
8 years ago
Andrzej Kotulski 2cc972705a [clang] Make backend use QualifiedCppName.t instead of string
8 years ago
Jeremy Dubreil 11295967a3 [infer][java] remove unecessary call to `write_summary` in the bounded call tree checker
8 years ago
Sam Blackshear 31069dd1a7 [quandary] remove assignments to formals from summaries
8 years ago
Andrzej Kotulski 4da4949049 [clang][AST] Fix wrong type in translation of NoOp cast and MaterializeExpr
8 years ago
Peter O'Hearn c52054d3d1 [threadsafety] More races with main thread
8 years ago
Dulma Churchill e155e8ea46 [IR] Convert err_data into a record for more clarity
8 years ago
Sam Blackshear 08a7f57731 [thread-safety] warn on private methods marked ThreadSafe
8 years ago
Andrzej Kotulski 2b655c223f [clang] Use QualifiedCppName.Match for infer_traits::TranslateAsType
8 years ago
Andrzej Kotulski ade5a06cd4 [IR][clang] Use qualified cpp name in fields, improve errdesc.ml
8 years ago
Andrzej Kotulski 71702a13dc [IR] More detailed type for Fieldname.t
8 years ago
Sam Blackshear 40ae870c31 [thread-safety] simplify code for adding an access
8 years ago
Sam Blackshear 94afd8446c [thread-safety] rename protectedif -> unprotected
8 years ago
Sam Blackshear f609b6d8ff [thread-safety] refactor logic for summary application
8 years ago
Mehdi Bouaziz f65ac4f094 [infer] std::mutex model to detect simple double lock
8 years ago
Jeremy Dubreil 707d514386 [infer][java] do not report `return not nullable` on lambdas
8 years ago
Andrzej Kotulski e6ebad394e [IR] Make qualified names type safe
8 years ago
Andrzej Kotulski 7c64d217f2 [IR] Refactor Ident.fieldname _*into Fieldname module
8 years ago
Andrzej Kotulski d4e9f0de64 [Makefile] Print duplicate symbols to separate file, not stderr
8 years ago
Sam Blackshear e7e32b038b [thread-safety] classify protected-if reads/writes in callees as protected when a lock is held in the caller
8 years ago
Andrzej Kotulski 9a07318ab7 [IR] Simplify Typ.Name.t type by inlining Csu.t type
8 years ago
Sam Blackshear c5d7762f60 [access trees] expose join of nodes and fold over nodes
8 years ago
Martino Luca a7b947f971 Add support to format reports natively
8 years ago
Jeremy Dubreil e3e0078272 [infer][ondemand] use the result of `Ondemand.analyze_proc_name` in `Summary.read_summary`
8 years ago
Andrzej Kotulski 86534cd97f [IR] Remove Typename.re(i)
8 years ago
Dulma Churchill 565ce2166d [ios] Translate nonnull annotations and take them into account in parameter not null checked issues.
8 years ago
Andrzej Kotulski 42947ea9d9 [IR] Make template info part of Typename.t, rename Typename to Typ.Name
8 years ago
Cristiano Calcagno 434cfbfb15 [eradicate] Add support for new annotation @PropagatesNullable
8 years ago
Sam Blackshear 69fe80346c [quandary][perf] Always use the location of the pdesc in footprint sources
8 years ago
Sam Blackshear 779ec1f0ad [thread-safety] give full traces for read/write races
8 years ago
Sam Blackshear 9066e5bd08 [thread-safety] account for ownership via reflective allocation
8 years ago
Peter O'Hearn e023dddba2 [threadsafety] Races and non-races involving assertMainThread().
8 years ago
Sam Blackshear 9e293eaa64 [thread-safety] add choice variables to support partial path-sensitivity
8 years ago
Andrzej Kotulski 9d64ea23ff [procname] Change type Procname.c to store record instead of tuple
8 years ago
Jules Villard 0b4f4953a5 [build] move to ctypes stubs
8 years ago
Jules Villard 0548b7bd5e [buck-db] add flavour more robustly
8 years ago
Kihong Heo 89a28d4dcc [infer][PR] handle an uncaught exception when converting too large integers to intervals
8 years ago
Matthew Haughton 2e1fe6836a [infer][PR] display additional options in help text
8 years ago
Dino Distefano df543b900b Making easier to specify subclassing
8 years ago
Jeremy Dubreil 4a62c44a3e [infer][ondemand] remove the call to `Specs.get_summary_unsafe` for the Fragement Retains View checker
8 years ago
Jeremy Dubreil c5b30b4c05 [infer][backend] remove the perf stats from the summaries
8 years ago
Jeremy Dubreil 047bb6796a [infer][threadsafety] Run ThreadSafety as part of the checkers
8 years ago
Jeremy Dubreil 30ae60461e [infer][backend] Fail when no callback is registered to run the analysis on-demand
8 years ago
Jeremy Dubreil e23b04180e [infer][ondemand] run all the registered checkers in sequence
8 years ago
Jeremy Dubreil 34106a2056 [infer][java] no longer generate the itermediate report.csv for Java Buck projects
8 years ago
Jules Villard 7d02d59540 Revert "[infer][java] add an option to disable the creation of the human readable list of issues found"
8 years ago
Sam Blackshear 60dac45461 [quandary] don't call read_summary on the current procedure while creating a trace
8 years ago
Dulma Churchill fca8322c1f [linters] Save the linters definition file in the report.json
8 years ago
Jules Villard fe51f08ae9 [UI] only colorize the top 10 reports, do not compile report lists within Buck
8 years ago
Jules Villard 1a8e99963c [build] delete tp/fts
8 years ago
Cristiano Calcagno 5c9b61877a [Eradicate] Code cleanup and add test cases
8 years ago
Peter O'Hearn 5062ac3173 [thread-safety] Model assertManThread and assertHoldsLock
8 years ago
Jules Villard dac8906d86 [make] make sure makefile uses config-time values
8 years ago
Andrzej Kotulski 8d5be14e9c [backend] Escape URLs to fix html output
8 years ago
Jeremy Dubreil 3e6ff023a7 [infer][ondemand] skeleton code to have every checker update their respective payload in the analysis summary
8 years ago
Martino Luca 5448a95ce7 [Infer][Localise] Group all issue types in one place, and provide their human-readable representation
8 years ago
Andrzej Kotulski 24b56de0e9 Populate mangled file only if it's not empty
8 years ago
Andrzej Kotulski 6a02568982 [clang] Change procname file naming scheme
8 years ago
Jules Villard dba740632c [cli] deprecate multiletter short options
8 years ago
Martino Luca 8ab1adf40d Better help message for `filter-report-paths` argument
8 years ago
Sam Blackshear 56b057acb8 [thread-safety] assume formals of DI constructors are owned
8 years ago
Peter O'Hearn 11937cb076 [infer][threadsafety] model tryLock() for java.util.concurrent.locks.Lock
8 years ago
Daniel Wagner-Hall 8397924886 Mark javax.tools.JavaFileObject#getNestingKind as nullable
8 years ago
Cristiano Calcagno d53160dee7 [backend][serialization] Fix flushing of temp file in serialization write
8 years ago
Cristiano Calcagno ec6a3cf6bb [backend] Add support for command-line option --per-procedure-parallelism
8 years ago
Andrzej Kotulski f4c424b4cc [clang frontend] Cleanup CAst_utils
8 years ago
Martino Luca 6e84a4b3cb Add `--filter-report-paths` argument to restrict results to a given list of paths
8 years ago
Andrzej Kotulski 6c67c850d5 [clang capture] Don't attach plugin when clang is invoked in preprocessor mode
8 years ago
Daniel Wagner-Hall 6c1339d044 Mark JavaFileObject#getAccessLevel as nullable
8 years ago
Andrzej Kotulski 41c9b05b47 [clang frontend] assert false on param mismatch
8 years ago
Dino Distefano 43f3a33c0c [infer][AL-DSL] Added predicates to query method calls of a certain class (Real Version).
8 years ago
Cristiano Calcagno 125fe4f21a [backend] Fix read-write race in serialization, using lock + rename.
8 years ago
Jeremy Dubreil 8bd8d5093c [infer][java] add an option to disable the creation of the human readable list of issues found
8 years ago
Dulma Churchill cdd58da8b1 [linters] Save the linters file in the linter definition
8 years ago
Andrzej Kotulski 06ac72c311 [clang] Pass template instantiation info to procnames in clang
8 years ago
Andrzej Kotulski 925d73efce [clang] Add template instantiation info into Procname.t
8 years ago
Peter O'Hearn 2cf3bfeea1 [infer][threadsafety] Stop Unprotected Write and Read/Write races from being reported on the same line
8 years ago
Sam Blackshear bd5eb3c5cf [quandary] don't allow projection of non-footprint idents
8 years ago
Sam Blackshear 0f74016ef5 [thread-safety] add callee write as protected-if if it's conditionally owned in caller
8 years ago
Sam Blackshear b8ff597f7e [thread-safety] unify reads and writes into accesses
8 years ago
Andrzej Kotulski 8168d07240 [backend] Print timeout information into stdout in debug mode
8 years ago
Andrzej Kotulski e363958d34 [codemod] Move `Procname` into `Typ.Procname`
8 years ago
Jules Villard 6125632af3 [subcommands] read subcommand args from .inferconfig and the env
8 years ago
Dulma Churchill 6f25eefc1d [linters] Make the syntax error message more prominent
8 years ago
Andrzej Kotulski e08d9341c8 [clang] Run direct tests with --no-failures-allowed flag
8 years ago
Andrzej Kotulski 55b18df306 [clang] Make translation failures crash InferClang when --no-failures-allowed is set
8 years ago
Andrzej Kotulski 104acee99d [Sil] Create Typename.Obj/Cpp modules with constructors
8 years ago
Jeremy Dubreil cb57578c74 [infer][ondemand] Run the Thread-Safety checker in two phases, first analyze all the procedure on-demand using a procedure callback, and then combine all the analysis results using a cluster callback
8 years ago
Jeremy Dubreil fba8c256d0 [infer][java] When calling InferPrint, only consider the specs file in the local results directory
8 years ago
Andrzej Kotulski 1a9b81c0f4 [clang] Store Typename.t in Procname.ObjC_Cpp.class
8 years ago
Dulma Churchill 674cfe4c83 [linters] Create a linters developers mode
8 years ago
Cristiano Calcagno 5aa714b237 [Eradicate] Improve detection of circularities in field initialization
8 years ago
Jules Villard f30a26f02c [refmt] wrap refmt into scripts/refmt.sh
8 years ago
Jules Villard a8ba910c69 [subcommands] support --help in subcommands
8 years ago
Andrzej Kotulski b52a17eb75 [objc] Remove class information from CContext
8 years ago
Andrzej Kotulski ef79b20e17 [clang] Inline namespaces disappear, simplify infer's code
8 years ago
Sam Blackshear 5134ea36ed [thread-safety] enable defining aliases of @ThreadSafe in .inferconfig
8 years ago
Sam Blackshear 1ef7c253b2 [thread-safety] report on protected write/unprotected read races
8 years ago
Sam Blackshear ea8826599f [thread-safety] track protected writes
8 years ago
Jeremy Dubreil 08980b57e5 [infer][ondemand] make the Procname API more robust by using Typename.t for the class name part of a method name
8 years ago
Martino Luca f8a65e698c Add differential and filtering functionalities to Infer, to compare two analyses
8 years ago
Andrzej Kotulski bc852ec0d1 [Typ] Add instantiation types to StructTyp.t
8 years ago
Sam Blackshear d64480cf72 [thread-safety] expose procedure-level callback to assist refactoring of ondemand
8 years ago
Sam Blackshear 5890007f8e [thread-safety] AccessDomain for better tracking of writes
8 years ago
Ben Hudson 2c2626359c [infer][PR] couple more typos
8 years ago
Cristiano Calcagno 1a3fcd44a1 Fix implementation of touch_start_file
8 years ago
Jeremy Dubreil 13e199a4ca [infer][ondemand] no need to pass the procedure name to save a summary
8 years ago
Jeremy Dubreil 6c14647eae [infer][ondemand] remove unused `Idenv.create_from_idenv` function
8 years ago
Dulma Churchill 15a0662149 [clang] Adding annotations for ObjC instance variables
8 years ago
Dulma Churchill f549d58625 [ios] Capture the signature of getters and setters from headers.
8 years ago
Dulma Churchill 60f732bf7e [clang] Refactor annotation generation to a separate place
8 years ago
Ben Hudson 090ec908b8 [infer][PR] small typo fix
8 years ago
Jeremy Dubreil 9229d1be67 [infer][ondemand] change the type of analyze_ondemand to return the analysis summary
8 years ago
Peter O'Hearn f7f30045cb [infer][threadsafety] Dedup, chapter 2.
8 years ago
Dulma Churchill 01c1d9f112 [linters] Remove new lines from linters messages
8 years ago
Martino Luca 3eecb243e6 Customize tests output via InferPrint's command-line
8 years ago
Juergen Hoetzel fbaa1988b3 [infer][PR] [mvn] Handle recursive modules
8 years ago
Cristiano Calcagno 9147e071f3 Serialization: lock files before writing
8 years ago
Jeremy Dubreil 3352ed0a6b [infer][backend] remove the call stats from the summary
8 years ago
Jeremy Dubreil 9c52e8ee68 [infer][backend] remove the concept of timestamp in summaries and use the summary status instead
8 years ago
Andrzej Kotulski 171083fbba [clang] Move mk_procname_ functions to separate module
8 years ago
Dulma Churchill 04d96cb84b [ios] Remove methods from the tenv as they are not used in the backend
8 years ago
Josh Berdine 95725e4dd0 Refactor StructTyp to Typ.Struct
8 years ago
Andrzej Kotulski f5bb35e245 [C++] Don't put c++ methods into type environment
8 years ago
Sam Blackshear 69df171632 [thread-safety] unify @AssumeThreadSafe and @ThreadSafeMethod into @ThreadSafe(enableChecks = ...)
8 years ago
Sam Blackshear e657d19194 [java frontend] translate boolean annotation parameters
8 years ago
Jeremy Dubreil 7a3fd229cd [infer][ondemand] Also store the summary to disk when the on-demand analysis raises an exception
8 years ago
Cristiano Calcagno 6d6d6f6efa [backend] Cleanup Serialization module
8 years ago
Peter O'Hearn 1580e5b3bb [infer][thread-safety] Better error message for container writes
8 years ago
Jeremy Dubreil d4af8f756a [infer][backend] Write the summary to disk in the checkers framework
8 years ago
Jeremy Dubreil 7c85306e2f [infer][backend] remove duplicate function to store summaries to disk
8 years ago
Sam Blackshear acd9e3246f [cleanup] adding missing mlis for checkers
8 years ago
Cristiano Calcagno 9a06a859e2 Deprecate IList part 3.
8 years ago
Jeremy Dubreil 14862d0aca [infer][ondemand] remove redundant check for already analyzed procedures
8 years ago
Cristiano Calcagno b1b5460529 Deprecate further IList functions
8 years ago
Dulma Churchill 461bd691ce [clang] Translate nullable annotations of return types of methods
8 years ago
Ryan Rhee 91aad00e3c [GraphQL] Detect deprecated API usage
8 years ago
Andrzej Kotulski c7abd82d44 [clang] Translate structs on demand
8 years ago
Cristiano Calcagno 41c5be9bad Deprecate more IList functions
8 years ago
Dulma Churchill 02ff6589ae [debug] Adding a method for prnting captured method signatures and add the list to the logs
8 years ago
Peter O'Hearn c080cbb60f [threadsafety] De-duplicate the reports
8 years ago
Sam Blackshear 040140ba52 [thread-safety] model SynchronizedPool.acquire as acquiring ownership
8 years ago
Peter O'Hearn df154b4135 [threadsafety] read/write races
8 years ago
Andrzej Kotulski 957b67fa87 [clang] Update fcp plugin
8 years ago
Jeremy Dubreil 0df765abfb [infer][ondemand] remove redundancy when storing summaries to disk
8 years ago
Sam Blackshear 8629ee5381 [cleanup] make PatternMatch.override_exists check the current procname too
8 years ago
Sam Blackshear 5c2ee8d85f [thread-safety] model ThreadLocal.get() as acquiring ownership
8 years ago
Sam Blackshear 23150c8490 [thread-safety] use untyped access path maps/sets in thread-safety analysis
8 years ago
Cristiano Calcagno 731dead406 More IList deprecation: fold functions
8 years ago
Jules Villard a79096efa8 [siof] generic model of std::ios_base::Init that prevents SIOF
8 years ago
Jules Villard f1698f3816 [clang] reimplement fuzzy matching of list of qualifiers
8 years ago
Jules Villard 7e1f1f9101 [test] make tests pass in clang-only or java-only mode
8 years ago
Jules Villard 7260d5b763 [make] make some targets depend on the Makefiles
8 years ago
Dulma Churchill d81b1644de [ios] Enable npes for self in initializers
8 years ago
Jules Villard a469e97987 [siof] add --siof-safe-methods whitelisting option
8 years ago
Dulma Churchill 6c82e82444 [linters] Fix one more unavailable api false positive
8 years ago
Jules Villard a8be4f1f4f [clang] options rename: --compilation-database -> --buck-compilation-database, --clang-compilation-db-files -> --compilation-database
8 years ago
Jules Villard 528f05430b [clang] rename --skip-clang-analysis-in-path to --skip-analysis-in-path
8 years ago
Dulma Churchill e7fc96148a [ios] Fix xcodebuild integration with xcpretty, add test.
8 years ago
Jeremy Dubreil 279f50eac6 [infer][backend] make the on-demand analysis function return a summary
8 years ago
Sam Blackshear ae0df5dc57 [access paths] kill type of field access and replace with utility functions for recovering type
8 years ago
Dulma Churchill 6188f1c7a5 [annotations] Print annotations in the dotty file
8 years ago
Jeremy Dubreil db285f976c [infer][java] avoid redundant calls to the function procedure_should_be_analyzed for Infer.SL
8 years ago
Andrzej Kotulski d19e4eaf86 [debug html] Escape type names in html output
8 years ago
Jules Villard f796ba6bb8 [driver] crash early if infer was not compiled for the requested build mode
8 years ago
Jules Villard 451adc7949 [build] fix ./build-infer clang
8 years ago
Jeremy Dubreil 8948b08bf2 [infer][backend] The dependency map with the list of children is no longer used by the ondemand analysis
8 years ago
Jeremy Dubreil 4ed185e557 [infer][java] for the buck integration, remove the files that are invalidating the Buck cache
8 years ago
Jeremy Dubreil 19022144ad [infer] remove the code computing the list of top procedures
8 years ago
Sam Blackshear b229b39a1b [thread-safety] Add @ReturnsOwnership annotation for methods and handle it in the thread-safety analysis
8 years ago
Jules Villard cfd3770a8b [clangdb] support shell-escaped compilation databases
8 years ago
Jules Villard 08aad39050 [clangdb] support relative paths in compilation databases
8 years ago
Jules Villard e4bb0fd179 [clang] pass -Wno-ignored-optimization-argument to clang
8 years ago
Sam Blackshear 919b35f50a [quandary] better taint propagation for Intent's
8 years ago
Sam Blackshear e15121c928 [thread-safety] model DI via Provider.get as acquiring ownership
8 years ago
Sam Blackshear 5cdee51ed5 [checkers] allow custom sources and sinks in annotation reachability
8 years ago
Sam Blackshear 61e4e6e1ed [thread-safety] propagate attributes across binary/unary expressions
8 years ago
Sam Blackshear f085023aff [thread-safety] model certain methods of Resources as @Functional
8 years ago
Sam Blackshear 4f33ecef1e [thread-safety] treat generated GraphQL constructors as returning ownership
8 years ago
Sam Blackshear b8f9c774f3 [thread-safety] support conditional writes to containers
8 years ago
Cristiano Calcagno 60916922c6 Deprecate more IList functions and use Core List instead
8 years ago
Jeremy Dubreil ecfb00e068 [infer][java] Always consider the close() method to be potentially closing a resource
8 years ago
Jules Villard 3f3b0e5fe1 [help] update help sections
8 years ago
Dulma Churchill 9ac65a7b1d [linters] Take current os version into account in the unavailable api check
8 years ago
Jules Villard 55ceb64ba6 [make] only build inferunit for bytecode mode
8 years ago
Sam Blackshear a3e3fdb781 [quandary] fix bug in summary application
8 years ago
Dulma Churchill dbcb871988 [linters] Add extra case of respondsToSelector block
8 years ago
Sam Blackshear ae03acb71b [quandary] reduce max_calls to 3
8 years ago
Sam Blackshear c4fbf4e3fb [thread-safety] propagate attributes across casts
8 years ago
Sam Blackshear 42188eb105 [thread-safety] add understanding of conditional ownership
8 years ago
Sam Blackshear dc9892eef5 [thread-safety] use map of access paths to attributes rather than multiple sets of access paths
8 years ago
Sam Blackshear a3cffa7116 [absint] add inverted map domain
8 years ago
Jeremy Dubreil 578baf319b [infer][java] remove the concept of @Strict for Eradicate
8 years ago
Jeremy Dubreil 13cdff1532 [infer][java] Dynamic dispatch: fix wrong level of indirection on pointers when specialzing methods
8 years ago
Sam Blackshear a4efc7bba7 [cleanup] Simplify PrettyPrintable.Make functors
8 years ago
Jeremy Dubreil abdb238599 [infer][java] disable the Eradicate model for Context.getSystemService(..)
8 years ago
Sam Blackshear 4627bb6f48 [absint] simplify `AbstractInterpreter.Make` functor by hiding `Scheduler` parameter
8 years ago
Dino Distefano fb14d31bb7 Making signature of predicates uniform
8 years ago
Cristiano Calcagno 319e3ed271 [Eradicate] Change Eradicate's join to forget values not present on both paths
8 years ago
Sam Blackshear 9ed282b28b [thread-safety] handle constructors by understanding that a constructor owns `this`
8 years ago
Dulma Churchill acce173eb8 [Linters] Move unavailable api check to the linters rule file
8 years ago
Sam Blackshear 0e77e36235 [thread-safety] propagate @Functional attribute across boxing of primitive types
8 years ago
Sam Blackshear 6338997cf5 [quandary] don't clobber existing taint on receiver when propagating taint from unknown call
8 years ago
Sam Blackshear d41b500659 [thread-safety] treat constants as owned
8 years ago
Sam Blackshear 5c2fcd02bd [cleanup] move annotated_signature into its own module inside eradicate
8 years ago
Jules Villard 93f33d07b8 [cli] do not export the contents of .inferconfig to INFER_ARGS
8 years ago
Jules Villard 4584bf9a4c move CLOpt.exe to Config and restrict its API, remove Interactive fake exe
8 years ago
Jules Villard 744edc10ec add support for subcommands not after --
8 years ago
Jules Villard 6faccb1490 [utils] catch exceptions in epilogues to allow all of them to run
8 years ago
Andrzej Kotulski 40c84077d9 [C++] Fix model of std::vector
8 years ago
Cristiano Calcagno 5c12d98d37 Deprecate IList module in favour of Core List
8 years ago
Jeremy Dubreil c2b967d27b [infer] Dynamic dispatch: use the OCaml type system to implement the invariant that the method specialization should only happen on object types
8 years ago
Sam Blackshear 6c0c3b44b4 [annotations] make override_exists recursive
8 years ago
Jeremy Dubreil c047819ab3 [infer] rename Mangled.Set and add Mangled.Map
8 years ago
Sam Blackshear 38a336694a [quandary] improve taint propagation for unknown calls
8 years ago
Dulma Churchill ffd82c01a7 [clang] Fail when compilations fails in the capture, linters mode
8 years ago
Sam Blackshear f6e8bf0f3f [thread-safety] don't warn on external accesses to fields of ThreadConfined classes
8 years ago
Kihong Heo cef2f0e055 Inferbo
8 years ago
Sam Blackshear 2800c84972 [checkers] don't do expensive access path equality check unless debugging
8 years ago
Jeremy Dubreil b6fae5cd46 [infer][eradicate] Consider junit.framework.TestCase.setUp as an initializer
8 years ago
Andrzej Kotulski f697739b21 [C++ translation] Use correct type when generating dereference
8 years ago
Dulma Churchill 269ea5ffe5 [linters] Take into account the respondsToSelector block in the unavailable api check
8 years ago
Sam Blackshear d84a6b854f [quandary] log instead of failing hard when specified source has no return value
8 years ago
Sam Blackshear f9280b682f [thread-safety] don't warn on accesses to fields assigned to @Functional calls
8 years ago
Sam Blackshear 70df06a596 [thread-safety] don't consider VisibleForTesting methods as public
8 years ago
Sam Blackshear d0f4e8771b [cleanup] generalize PatternMatch.iter_overrides to override_exists
8 years ago
Sam Blackshear 50c73e517b [cleanup] adding Annotations.pname_has_return_annot function
8 years ago
Sam Blackshear cc8ffd9d1e [quandary] allow regexes in defining quandary sources/sinks in inferconfig
8 years ago
Sam Blackshear 3ee349ee23 [thread-safety] warn on unsafe accesses to lists
8 years ago
Sam Blackshear bcfcb5d405 [cleanup] restrict uses of annotated_signature to eradicate
8 years ago
Andrzej Kotulski b3e9eedd59 [clang frontend] Make DeclStmt return empty exps
8 years ago
Sam Blackshear 2351f767dc [cleanup] use pdesc_has_return_annot and friends instead of more cumbersome ways of looking up return annots
8 years ago
Sam Blackshear 73f3c5e0cd [cleanup] separate functions for checking annotations of return value and parameters
8 years ago
Dulma Churchill 2c767fce74 [linters] Clean up the context passing mechanism and add context for if
8 years ago
Andrzej Kotulski dd3de5b011 [clang frontend] Create nodes for dangling instructions
8 years ago
Sam Blackshear b371a3429c [cleanup] simplify method annotation and item annotation iteration methods
8 years ago
Sam Blackshear f0199a058a [cleanup] alphabetize annotations and remove duplicates
8 years ago
Jeremy Dubreil 5322c71063 [infer][backend] find a better trade-off for the value of the SymOps timeout
8 years ago
Sam Blackshear b227ee58a6 [thread-safety] handle some annotations as aliases of ThreadConfined
8 years ago
Sam Blackshear 369feb4149 [thread-safety] allow ownership to be transferred via return
8 years ago
Sam Blackshear f372b6cb2f [quandary] allow sinks to be specified in inferconfig
8 years ago
Sam Blackshear 5bddb1e548 [quandary] allow sources to be specified in inferconfig
8 years ago
Cristiano Calcagno b1421bc27f [BetterEngineering] Remove remaining uses of polymorphic equality
8 years ago
Jules Villard bd2110a789 update timestamp of mirrored fcp files when copying them over so that make knows they are up to date
8 years ago
Sam Blackshear df5798336b [cleanup] give AccessPath.raw its own module
8 years ago
Jules Villard 4b45d5d8a0 [CLOpt] remove `accept_unknown` optional argument of `parse`
8 years ago
Andrzej Kotulski ebc4c6fd53 [config] Fail on unknown options from .inferconfig when in strict mode
8 years ago
Josh Berdine 65eb3a176d Remove Reason comments in copyright header
8 years ago
Sam Blackshear 851a4da7e0 [thread-safety][cleanup] add mli for ThreadSafetyDomain
8 years ago
Sam Blackshear d25a3edbd7 [thread-safety][cleanup] open ThreadSafetyDomain locally to avoid excess typing
8 years ago
Sam Blackshear e132188361 [thread-safety] warn on unsafe accesses in overrides of methods annotated with @ThreadSafeMethod
8 years ago
Jeremy Dubreil add9e476a3 [infer][java] more rebust detection of the class filenames
8 years ago
Cristiano Calcagno f91b3128d3 [BetterEngineering] Replace uses of polymorphic equality
8 years ago
Andrzej Kotulski cceffddd78 [Config] Warn about deprecated args only from Driver exe
8 years ago
Cristiano Calcagno 3f8ee7df49 [Eradicate] Fix issue in Eradicate's check for field initialization
8 years ago
Sam Blackshear c19bee7772 [quandary] for instance methods with no return value, propagate the taint to the receiver
8 years ago
Sam Blackshear b9694ef086 [thread-safety] warn on unsafe writes in constructors
8 years ago
Sam Blackshear c4c495fbe5 [thread-safety] propagate conditional writes to callers
8 years ago
Sam Blackshear 4373945e74 [thread-safety] don't warn on writes rooted in a parameter owned by the callee
8 years ago
Jules Villard f9ab3aa1ac run epilogues register with `at_exit` upon receiving SIGINT as well
8 years ago
Sam Blackshear 6ace3838ba [absint] support HTML debug output
8 years ago
Sam Blackshear e565010cf3 [thread-safety] don't warn on writes to volatile fields
8 years ago
Jules Villard 2e96caac42 [mvn] new integration
8 years ago
Jules Villard 69f8140655 [cli] do not accept unknown arguments in OCaml
8 years ago
Jules Villard 988145dea0 [cli] remove support for INFERCLANG_ARGS
8 years ago
Jules Villard ca784cdb41 [cli] warn about deprecated options, clean up infer repo
8 years ago
Jules Villard cb1e241411 [CLOpt] isolate the subset of Arg.spec used
8 years ago
Sam Blackshear 618e9c9338 [thread-safety] add @AssumeThreadSafe annotation to assume thread-safety of a method without checking it
8 years ago
Sam Blackshear f4b1af6f91 [thread-safety] allow @ThreadConfined annotation on methods
8 years ago
Sam Blackshear 2f69191c7e [backend] expose underlying Procdesc.Node from ProcCFG nodes
8 years ago
Cristiano Calcagno adc68c6d57 [clang] Remove unnecessary list append in clang frontend
8 years ago
Cristiano Calcagno 1eaaf84a90 [checkers] Add support for html output in checkers, starting with Eradicate
8 years ago
Jules Villard 4028e7ca78 [driver] decouple logic for choosing capture mode from the capture
8 years ago
Sam Blackshear f065f7653a [thread-safety] add map for conditional accesses
8 years ago
Sam Blackshear 72e17403fa [thread-safety] add and support @ThreadSafeMethod annotation
8 years ago
Jeremy Dubreil 619c202bd6 [infer][java] do no consider @OnBind as equivalent to @NoAllocation for the reachability checker
8 years ago
Andrzej Kotulski 153ed5e5d9 [Config] Rename Toplevel to Driver
8 years ago