1107 Commits (5aa26dc32ee2dd88b96e303e3d859be6df1f35d2)

Author SHA1 Message Date
Daiva Naudziuniene 610ed0c885 [uninit] Filter out fields if they come from unions
7 years ago
Mehdi Bouaziz 1b63cb42b7 [cost] Compute range using post state
7 years ago
Mehdi Bouaziz fc5c093d1e ProcCfg: do not include module Node
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Daiva Naudziuniene d7d3e16d6f [uninit] Enable reporting on uninitialized pointers
7 years ago
Mehdi Bouaziz 4927e31c2f Abstract type for list of instructions in node
7 years ago
Mehdi Bouaziz 3a41f50830 get_vararg_type_names: refactor to prepare for new instrs
7 years ago
Mehdi Bouaziz 42b3958a07 ProcCfg: fold on nodes only
7 years ago
Jeremy Dubreil c35278a8f8 [infer] the fragment retains view checker should not warn on field annotated with @AutoCleanup
7 years ago
Jules Villard fecabb3bf3 [siof] do not report on standard streams
7 years ago
Daiva Naudziuniene 93c2d7a4f4 [uninit] Have both pointer and its dereference as uninitialized
7 years ago
Daiva Naudziuniene c47071f186 [uninit] Initialize indirect function call arguments of pointer type
7 years ago
Dino Distefano 4b296003fa Let's traverse the constraints list only once
7 years ago
Daiva Naudziuniene 736badbb2f [uninit] Fix false positive that includes array element passed by reference
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
Daiva Naudziuniene 9e1678ec65 [uninit] Check the type of whole lhs rather than the base of lhs
7 years ago
Mehdi Bouaziz 1898ef3a7a [Summary] Move payloads to a separate module
7 years ago
Mehdi Bouaziz aaf346d115 [cost] Polynomial domain
7 years ago
Mehdi Bouaziz 62fa99ad3f Simplified example showing problem with arrays
7 years ago
Jules Villard 3aa6fdf1ce [rename] specs -> summary, Summary -> SummaryPayload
7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate
7 years ago
Mehdi Bouaziz d7024298f9 [cost] Implem-agnostic abstract domain name
7 years ago
Daiva Naudziuniene 28b696881c [minor] Use List.is_empty instead of List.length equal to 0
7 years ago
Mehdi Bouaziz c1aac1e089 Cost: Non-negative Bound abstract domain
7 years ago
Mehdi Bouaziz 5fe28785bc Cost: fix min
7 years ago
Jeremy Dubreil 3a3c871684 [infer][objc] the nullable checker should not report issues involving objectForKeyedSubscript:
7 years ago
Mehdi Bouaziz eea5b4c97e Cost: separate conditions for reporting
7 years ago
Jules Villard 902de9d6e3 [sil] make return value and type mandatory
7 years ago
Mehdi Bouaziz 1deaf7bfd6 Cost: instantiate symbolic cost after call
7 years ago
Mehdi Bouaziz e8ceedeb82 [Cost] Forces Inferbo
7 years ago
Mehdi Bouaziz 68129abab8 Cost/inferbo: move range to numerical abstract domain
7 years ago
Jules Villard ce0ffaf877 [ocaml] detect and kill dead modules
7 years ago
Nikos Gorogiannis e0a61c0a4a [starvation] Move to a cluster checker phase for reporting
7 years ago
Mehdi Bouaziz 9ed60bc936 [cost] Removed dead abstract domains
7 years ago
Mehdi Bouaziz 14d6b2f019 [Cost] Use inferbo abstract state as extra rather than calling inferbo transfer functions
7 years ago
Mehdi Bouaziz ad15f558e4 [cost] Simplifications
7 years ago
Mehdi Bouaziz 094eb9dcc7 [Cost] Use OneInstrPerNode CFG
7 years ago
Mehdi Bouaziz 722258d41b Real InstrNode
7 years ago
Dino Distefano 6b6f6be6d9 Don't check prune node condition in the control dependecy analysis for java code
7 years ago
Dino Distefano 70b5e5fd0c Make the cost analysis run on apps
7 years ago
Ezgi Çiçek 8f0701a01c Refine dependency analysis to remove vars at prune exit nodes
7 years ago
Josh Berdine 16988b0a7a [ocamlformat] Upgrade to ocamlformat 0.5
7 years ago
Sam Blackshear 8084c8fec7 [racerd] treat `@InjectProp` formals as owned
7 years ago
Sam Blackshear ce8f958522 [racerd] don't report INTERFACE_NOT_THREAD_SAFE if the receiver of the interface call is marked `ThreadConfined`
7 years ago
Ezgi Çiçek 76300d55c7 Tracks variables that affect control flow for a more precise cost analysis
7 years ago
Sam Blackshear cfa2dd5f83 [quandary] pass call flags to sink creation
7 years ago
Ezgi Çiçek af5265f75d "Report infinity as error per function"
7 years ago
Mehdi Bouaziz 4aefa6f76b Debug: session name
7 years ago
Mehdi Bouaziz 950f46a3b6 [Cost] Proper data structure for constraints
7 years ago
Mehdi Bouaziz 66b3357479 Share ProcCfg.OneInstrPerNode(Normal)
7 years ago
Mehdi Bouaziz 3f5c161391 [Cost] Typos
7 years ago
Mehdi Bouaziz be8ac23557 Callbacks, cleanup: tuple -> record
7 years ago
Jeremy Dubreil 431d4f1290 [infer] fix infinite loop with the suggestion to add nullable annotations on C++ fields
7 years ago
Dino Distefano 3b608695af Improving treatment of default constructor
7 years ago
Sam Blackshear 9180ff56c1 [ownership] handle new kinds of access expressions
7 years ago
Mehdi Bouaziz 1a7c5a1493 Fix deadcode
7 years ago
Mehdi Bouaziz 14e48fb5a0 [RFC] Cost: pair with Inferbo
7 years ago
Ezgi Çiçek 872daf1ba7 Add estimated cost to trace element
7 years ago
Nikos Gorogiannis b335fb9c50 [deadlock] rebrand to starvation
7 years ago
Sam Blackshear 44e5d0564b [ownership] fix false positives on aggregate locals in loops
7 years ago
Jules Villard 84d3144c98 [istd] break IStd.ml into sensible components
7 years ago
Mehdi Bouaziz e9fe470bf9 Cost: bound map as a functional datastructure
7 years ago
Mehdi Bouaziz ffb4074d56 Cost: cleanup
7 years ago
Ezgi Çiçek 1cef32eaf7 Rewrite minimum_propagation algorithm in a functional way
7 years ago
Dino Distefano e54df20eb7 Migrate to Itv.Bound
7 years ago
Sam Blackshear 7efb5cb549 [ownership] allow placement new on non-var expressions
7 years ago
Sam Blackshear 082e3f1f9e [ownership] use Base instead of Var
7 years ago
Sam Blackshear 6b3282f619 [ownership] First parameter to constructor is read, not written
7 years ago
Sam Blackshear f8dfc2305e [ownership] simple 2-step traces
7 years ago
Sam Blackshear ec73adc66d [ownership] support placement new
7 years ago
Sam Blackshear 1ea4f01403 [ownership] consolidate acquires_ownership cases
7 years ago
Mehdi Bouaziz 1db6e0c2c6 [easy] Labels for Procdesc.fold_nodes/instrs
7 years ago
Varun Arora 9387706a54 add clang_method_kind field to AnalysisIssue
7 years ago
Sam Blackshear 12ad6c11c1 [ownership] return bottom on early exit or thrown exception
7 years ago
Sam Blackshear 3a40afcd22 [ownership] directly assigning any field of an aggregate struct counts as initialization
7 years ago
Sam Blackshear 6976181b77 [ownership] special-case frontend-generated inner destructors.
7 years ago
Sam Blackshear 89a6d7e20d [racerd] don't report races in third-party code
7 years ago
Nikos Gorogiannis 3bcfbd6a64 [deadlock] abstract domain
7 years ago
Dino Distefano d2cc5e72f7 Extending analysis to parametric case
7 years ago
Sam Blackshear 1977fefaab [ownership] assume operator= borrows for function types, copies for other types
7 years ago
Daiva Naudziuniene 4157ba820a [HIL] Implicit dereference in access expression
7 years ago
Sam Blackshear a0149872ad [ownership] report invocation of lambdas capturing a var whose lifetime is over
7 years ago
Tony Hu 56872d8126 [java] Add command-line option to specify external Java packages
7 years ago
Sam Blackshear 58adf8dd52 [ownership] implementing borrowing
7 years ago
Jules Villard d773dedb4b [IR] kill `Exp.get_vars`
7 years ago
Sam Blackshear 68e4e94008 [ownership] domain for borrowing
7 years ago
Sam Blackshear e687ef40b3 [dead stores] report on dead stores to values captured by value in a lambda
7 years ago
Dino Distefano 69bfc0535c [Experimental] First very basic version of performance analysis tool
7 years ago
Sam Blackshear dedabf71e2 [liveness] don't report on dead stores of variables captured by reference in a lambda
7 years ago
Josh Berdine 3534838b73 [ocamlformat] Upgrade to ocamlformat 0.4
7 years ago
Sungkeun Cho 373e6b39cc [infer] Use inline record for Typ.Tarray
7 years ago
Sam Blackshear 4485e97bee [ownership] report use after destructor
7 years ago
Jules Villard d3f3386c9e [wibble] rename `Ident{Set,Map,Hash}` -> `{Set,Map,Hash}`
7 years ago
Sam Blackshear d76d20a9ca [ownership] prototype of ownership analysis for tracking reads/moves
7 years ago
Sam Blackshear f191819642 [litho] print name of component with missing prop
7 years ago
Daiva Naudziuniene 5ebc6562ee [HIL] AccessExpression on the left hand side of assignment
7 years ago
Sam Blackshear 87de52210c [litho] handle extra setters for resType props
7 years ago
Jeremy Dubreil 89ec1effde [infer][nullable checker] lookup the attributes in the CFG
7 years ago
Daiva Naudziuniene 896e849bfc [HIL] Access expression
7 years ago
Jeremy Dubreil 2288e66063 [infer][nullable checker] treat all aliases as not null when one is checked for null
7 years ago
Sam Blackshear 1a75ec9cf8 [cleanup] Move ObjC/C++-specific Procname functions to dedicated module
7 years ago
Sam Blackshear c031891d30 [litho] fix divergence bug in unroll_call
7 years ago
Varun Arora ad10435b58 [IR] combine is_objc_instance_method and is_cpp_instance_method fields in ProcAttributes into method_kind
7 years ago
Mehdi Bouaziz d61c4927c1 [ProcnameDispatcher] Optimization and do not crash with Java
7 years ago
Sam Blackshear ab77cfe803 [quandary] thrift services as sources in Java
7 years ago
Sam Blackshear 80b3d080ce [cleanup] sunset Context leaks
7 years ago
Mehdi Bouaziz 653f212023 Disable Inferbo for Java
7 years ago
Jules Villard 4a71067c68 [tests] kill some new dead code
7 years ago
Sam Blackshear 30112cbcb0 [litho] organize functions for GraphQL getters and required props into separate modules
7 years ago
Sam Blackshear ebfe8d1e72 [litho] move reporting of missing required props out of transfer functions
7 years ago
Jules Villard ec118e62a7 [cleanup] make caller pdesc an optional argument of `Ondemand.analyze_proc_desc`
7 years ago
Jules Villard 58e0cbe6ee [base] move `Config.language` to its own `Language` module
7 years ago
Sam Blackshear 2c6fb16636 [litho] support optional Prop's
7 years ago
Sam Blackshear 4545f36875 [litho] prototype of required `@Prop` checker
7 years ago
Sam Blackshear 360151eb10 [litho] utility function for iterating over all call chains encoded in the domain
7 years ago
Sam Blackshear f7c415f7ae [cleanup] restrict Java-specific utility functions to Typ.Procname.Java.t's
7 years ago
Sam Blackshear 04d2882a6b [cleanup] organize Java-specific functions on types
7 years ago
Jules Villard 1a5ba13778 [cfg][minor] do not duplicate the Hashtbl API
7 years ago
Jules Villard 4b1a7b1771 [cleanup] remove dead code
7 years ago
Jules Villard 92e3d56f2e [cleanup] add missing `open! IStd`
7 years ago
Radu Grigore eb91d59e40 [infer][PR] Fixed namespace for Java globals.
7 years ago
Sam Blackshear b3992cbab8 [liveness] add CKComponentKey to whitelist
7 years ago
Jeremy Dubreil 6e1979a3e0 [infer][IR] introduce a fold function over the procedure descriptions in a file to avoid make copies of mutable data-structures
7 years ago
Jeremy Dubreil b089486b5a [infer][nullable checker] take subtyping into account when detecting pointer assignment
7 years ago
Jeremy Dubreil 73b4409e6f [infer][nullable checker] no longer propagate the nullability when the lhs is not a pointer type
7 years ago
Jeremy Dubreil c6a6087ed1 [infer][IR] factor the test for pointer type
7 years ago
Josh Berdine 63439ecc02 [ocamlformat] Upgrade base and ocamlformat
7 years ago
Dino Distefano d83a9445f1 First extension to uninit inter-procedural analysis
7 years ago
Dino Distefano e3e2fb22a1 Change pattern-matching order
7 years ago
Jeremy Dubreil 32deab86bd [infer][nullable checker] avoid reporting the nullable violations that are already reported by the biabduction analysis
7 years ago
Sam Blackshear d6ed9e3bbe [liveness] remove special-casing for destructor reads
7 years ago
Sam Blackshear f37344358b [experimental] interprocedural should_update analysis
7 years ago
Jeremy Dubreil 1f6d73269e [infer] simplify the API to report errors
7 years ago
Jeremy Dubreil c62dd2a0c2 [infer][nullable checker] add models for mutations of mutable dictionaries and mutable arrays
7 years ago
Sam Blackshear b23e967f1b [liveness] print type of unused var
7 years ago
Jeremy Dubreil 83118865aa [infer] add arrayByAddingObject: to the list of methods asserting the parameters
7 years ago
Sam Blackshear 647e1cd62d [dead stores] config file for custom scope guard types
7 years ago
Sam Blackshear 6799e7a7fb [dead stores] whitelist more RAII guard types
7 years ago
Sam Blackshear 3c28e0308a [quandary] clean up source type in report
7 years ago
Sam Blackshear 0ebdd369b0 [liveness] don't warn on dead stores of type CKComponentScope
7 years ago
Jeremy Dubreil 4aaa39fdd1 [infer][nullable checker] propagate object nullablilty when calling an Objective C instance method on a nullable receiver
7 years ago
Jeremy Dubreil d4c81a7798 [infer][nullable checker] model NSDictionary initialization as crashing on nil keys or nil values
7 years ago
Jeremy Dubreil 297195bb3c [infer] move the AccessPath module under the IR subdirectory
7 years ago
Dulma Churchill 306a0a9182 [liveness] Do not report on variables with block attribute
7 years ago
Dulma Churchill 71fde88950 [IR] Adding support for variable attributes, adding __block for ObjC variables
7 years ago
Sam Blackshear 74670cb0ba [dead stores] don't warn on dead stores of ScopeGuard's
7 years ago
Sam Blackshear ca3f71a8b3 [experimental] report call chains reachable from onCreateLayout
7 years ago
Sam Blackshear 8d0f141974 [dead stores] identify dead stores involving struct values
7 years ago
Peter Goldsborough 5a06a187f2 Added is_outside_codebase check for FIELD_SHOULD_BE_NULLABLE
7 years ago
Dino Distefano dfb8b421ac Extending uninit to struct
7 years ago
Dulma Churchill c0f250c45e [liveness] Change the model of assert functions to include the handle failure function to avoid dead store fps
7 years ago
Jeremy Dubreil a991b98d02 [infer][nullable checker] also report a null dereference error when adding nil key or value to NSDictionary
7 years ago
Sam Blackshear ceb0062cdd [cleanup] kill constant propagation pass in bi-abduction
7 years ago
Dino Distefano ba422a8ad8 Remove FPs for struct in ObjC
7 years ago
Jules Villard 6a8d71ad81 [style] s/_foo/foo_/ when `foo_` is not unused
7 years ago
Jeremy Dubreil 354b46f8ca [infer][nullable checker] no report for objects created by URLWithString:
7 years ago
Jeremy Dubreil a4428a4cae [infer][nullable checker] report an error when a nullable value is stored into an NSArray without being checked for null
7 years ago
Sam Blackshear 181959216b [cleanup] remove harness-related code
7 years ago
Jeremy Dubreil 956d6d0a1d [infer][nullable checker] better error messages for nullable violations involving Clang materialized variables
7 years ago
Jeremy Dubreil 1709db4089 [infer] always store the procedure description in the summary
7 years ago
Sam Blackshear 2b0335f32b [quandary] track sanitizers applied in trace domain
7 years ago
Sam Blackshear e2f38423e5 [cleanup] delete repeated calls checker
7 years ago
Sam Blackshear 758048078b [quandary] move sanitizer specifications from TaintSpec -> Trace
7 years ago
Jules Villard 45d5d878cf [cfg] minor renamings
7 years ago
Dino Distefano aa54b1b035 Extending uninit analysis to struct
7 years ago
Josh Berdine f62ab09e61 [ocamlformat] Upgrade ocamlformat to v0.2 from opam
7 years ago
Jeremy Dubreil 4a1eae048a [infer][clang] fix unitialized value false positive for values not initialized in the throw branch
7 years ago
Dino Distefano 979c476fa3 Do not report when defining an array
7 years ago
Dulma Churchill 718747e39c [clang] Add new procname type for specializing methods with block parameters
7 years ago
Jeremy Dubreil b2a3f3b8e4 [infer] better error messages for the nullable checker
7 years ago
Jeremy Dubreil ebea2a6ba1 [infer][clang] the nullable checker should not warn on pointer re-assignment
7 years ago
Jules Villard 0f1bdf664d [clang] static data members are external globals unless defined in the file
7 years ago
Jeremy Dubreil 4283bf2602 [infer][java] re-use the Eradicate models for Preconditions.checkNotNull and the like
7 years ago
Jeremy Dubreil b3f75da37e [infer][nullable checker] only report once when the return of a nullable method is derferenced several times
7 years ago
Dino Distefano ce711d7e8a [uninit] Reporting parameters calls which are not passed by reference
7 years ago
Jeremy Dubreil 8274453277 [infer][clang] the nullable checker should not warn on Objective C method call when the receiver is nullable
7 years ago
Jeremy Dubreil d85d185402 [infer][java] Enable the @Nullable checker on Java
7 years ago
Jeremy Dubreil 5e1b7faf97 [infer][clang] the nullable checker should not report on methods that have already been checked for null
7 years ago
Jeremy Dubreil 2ea11de8b6 [infer][clang] consider the symetrical case for the null check
7 years ago
Sam Blackshear ad522a8b19 [dead stores] don't warn on likely-harmless dead stores to default values
7 years ago
Jeremy Dubreil b594cbdc5a [infer][nullable] no longer fail hard when the nullable suggestion checker cannot compute the post of a procedure
7 years ago
Dino Distefano c98570f899 do not report on captured vars in objc blocks
7 years ago
Dino Distefano a75073907c Fix uninit for temp variables
7 years ago
Dulma Churchill 3799dfa4bb [dead store objc] Do not report dead store in a captured variable of an objc block
7 years ago
Dulma Churchill b95c4e34d6 [dead store objc] Whitelisting macro variables in dead stored checker for Objective-C
7 years ago
Sam Blackshear 0a5c10c8ef [hil] don't let clients pass `debug:true`
7 years ago
Dino Distefano 0117539dd9 Fix debug flag in uninit
7 years ago
Sam Blackshear 2d29b47855 [traces] allow reported traces to return an issue type
7 years ago
Jeremy Dubreil c4949f372e [infer][clang] the nullability checker was not reporting when dereferencing a field of a nullable object
7 years ago
Sam Blackshear 3d6168cd0d [hil] add HIL wrapper for abstract interpreter
7 years ago
Sam Blackshear c65569a868 [quandary] sanity checks for preventing oversized summaries
7 years ago
Josh Berdine f89e687efa [ocamlformat] Use ocamlformat from github
7 years ago
Sam Blackshear 13a02122ac [traces] fix printing of sinks
7 years ago
Sam Blackshear b826b16a6f [uninit] convert to HIL
7 years ago
Mehdi Bouaziz 624cc5e536 [uninit] Do not crash if failed to compute post
7 years ago
Sam Blackshear ddda04c92b [cleanup] alphabetize checker names
7 years ago
Sam Blackshear bc02bee737 [cleanup] rename thread-safety analysis
7 years ago
Jules Villard 588142c908 [checkers] enable biabduction by default + docs and logs improvements
7 years ago
Dino Distefano f87447ba52 Uninitialized value/variable checker
7 years ago
Sam Blackshear 169df0fe80 [thread-safety] infer accesses that need to be safe from lock usage
7 years ago
Jeremy Dubreil 171145603e [infer][checkers] specify the dynamic dispatch handling policy on a per-checker basis.
7 years ago
Sam Blackshear 0e7542a18f [thread-safety] fix bug in expanding callee access paths in caller
7 years ago
Sam Blackshear 3a5a0413bb [thread-safety] remove special treatment for immutable collections
7 years ago
Sam Blackshear 06a51869df [thread-safety] better error message for unannotated interfaces
7 years ago
Josh Berdine 2cb2963641 [thread-safety][c++] Optimize access list map quotienting
7 years ago
Daiva Naudziuniene 3001cb6323 [threadsafety] Add ownership on stack-allocated variables in cpp
7 years ago
Sam Blackshear b57084902d [thread-safety] better error messages for write-write races that are distinct, but conflicting writes rather than self-races
7 years ago
Jeremy Dubreil 923a15fa60 [infer][clang] initial version of a nullable checker for Clang languages
7 years ago
Sam Blackshear 4255d918ad [thread-safety][cleanup] clean up error messages/comments
7 years ago
Kyriakos Nikolaos Gkorogiannis d179c4ccb5 [threadsafety] Address issue arising from actuals and formals having different lengths at call sites (this time for ObjC).
7 years ago
Kyriakos Nikolaos Gkorogiannis 9e1d96c1f2 [threadsafety] Fix exception thrown by list of actuals and formals not having the same length in some cases (C++?)
7 years ago
Kyriakos Nikolaos Gkorogiannis a64034fbf9 [threadsafety] Fix make-excluder uses which potentially incorrectly assume a lock is held.
7 years ago
Josh Berdine 7b891e45eb [thread-safety] Remove some dead code
7 years ago
Josh Berdine e9cd0872ed [thread-safety][c++] Do not quotient by may_alias when analyzing non-Java code
7 years ago
Josh Berdine c081cef5a5 [thread-safety][c++] Skip folly::detail::SingletonHolder::createInstance
7 years ago
Josh Berdine b92909fe71 [thread-safety][c++] Add models for several synchronization operations
7 years ago
Kyriakos Nikolaos Gkorogiannis 5c1fab6ceb [thread-safety] Rebase accesses in callees onto variables of the caller, where possible.
7 years ago
Sam Blackshear 32583aa876 [thread-safety] Change meaning of @ThreadSafe to "can run in parallel with any thread including itself"
7 years ago
Josh Berdine 96af301910 [thread-safety] More informative printing of access paths
7 years ago
Sam Blackshear 983bcbbae7 [traces] add matches function for extra flexibility in expanding traces
7 years ago
Sam Blackshear 76bf0a7819 [thread-safety][cleanup] get rid of thumbs_up
7 years ago
Sam Blackshear 768d6e4f3d [thread-safety] better error message for actuals/formals mismatch
7 years ago
Jules Villard 22aca7494b [siof] understand that <iostream> initialises streams
7 years ago
Sam Blackshear d70babb871 [thread-safety] eliminate escape analysis
7 years ago
Jules Villard 94e7a7b141 [siof] one access per sink, better report deduplication
7 years ago
Mehdi Bouaziz 39ff045569 [ai] No need to create a domain for a bottom_lifted type
7 years ago
Sam Blackshear 14d0e2a786 [thread-safety] remove custom compare for AccessListMap
7 years ago
Sam Blackshear dfc15372c4 [checkers] make get_proc_desc usable from cluster checkers
7 years ago
Jeremy Dubreil 243fd57eb7 [infer] Add an option to specify the name of the nullable annotation
7 years ago
Sam Blackshear ece8678417 [cleanup] remove some needless language checks in checkers callbacks
7 years ago
Sam Blackshear 39a71d607c [cleanup] remove some needless language checks in checkers callbacks
7 years ago
Sam Blackshear 18a9e52752 [cleanup] remove Idenv from checkers callbacks
7 years ago
Sam Blackshear 6a76bc6c7a [checkers] move aggregation by class out of cluster checker callbacks
7 years ago
Sam Blackshear 45dbb42705 [absint] make InvertedSet/InvertedMap functors consistent non-inverted versions
7 years ago
Sam Blackshear ca51c72f3a [thread-safety] support assertOnBackgroundThread and similar
7 years ago
Sam Blackshear 1e605bdd94 [thread-safety] new threads domain
7 years ago
Sam Blackshear b3e8e972d6 [thread-safety] separate warning type for interfaces called in non-threadsafe context
7 years ago
Sam Blackshear f93e500232 [thread-safety] gate de-duplication with Config.filtering
7 years ago
Jeremy Dubreil 4ec5440692 [infer][clang] port the nullable suggestion on fields on C++
7 years ago
Sam Blackshear b61a34007a [thread-safety] re-enable check for calling non-threadsafe interface
7 years ago
Jules Villard b3b4e42067 [threadsafety] watch out for non-Java pnames
7 years ago
Sam Blackshear 375b808394 [access tries] max width config
7 years ago
Josh Berdine 0da92c24ea [thread-safety][c++] Add models for some std::map operations
7 years ago
Sam Blackshear fd105802db [thread-safety] don't use Map.choose or Set.choose
7 years ago
Sam Blackshear 14aef012f6 [quandary] allow specifying globals as sources
7 years ago
Sam Blackshear 4065b1d120 [dead stores] recognize lambdas with `auto` parameter
7 years ago
Jules Villard 1c375a17ac [log] die more appropriately
7 years ago
Sam Blackshear 81fbcf7501 [access trie] make max depth configurable
7 years ago
Sam Blackshear 028a28752b [access trees] function for computing depth
7 years ago