7553 Commits (fcc27cf7a29af2b7a81480b3ad92cc57822bcb08)

Author SHA1 Message Date
Dulma Churchill 892b16b8c0 [closures preanalysis] [1/n] Adding first step of preanalysis to specialize methods with concrete closures they are called with
4 years ago
Daiva Naudziuniene 0a4af7754d [pulse] Fix std::function::operator()
4 years ago
Qianyi Shu bb828a92af [cost] refactor cost model and add NSArray.sort cost model.
4 years ago
Qianyi Shu b71521a90a [cost] add iterator support for nsdictionary
4 years ago
Ezgi Çiçek 8447aa3fac [inferbo] Generalize init's model to NSObject
4 years ago
Dulma Churchill 6e67a6a569 [biabduction] Comment out resource leak test that is currently being flaky in the CI
4 years ago
Daiva Naudziuniene 29fd9e13d1 [pulse] Understand captured variables in cpp lambdas
4 years ago
Radu Grigore 9591276541 [topl] Cheap port to Pulse.
4 years ago
Qianyi Shu debeba5860 [cost] make the size of collection more accurate when modifying in loop
4 years ago
Ezgi Çiçek f02f7b379e [cost] Add FN test for functions that take blocks as arguments
4 years ago
Sungkeun Cho 4c2d5a4c49 [reanalyze] Fix reanalyze option
4 years ago
Radu Grigore 5f2849bf01 [topl] Atomic prunes.
4 years ago
Qianyi Shu 41f2533ff8 [cost] fix enumerator when not used in for-each loop in ObjC
4 years ago
Daiva Naudziuniene 87ff05c9b8 [pulse] Add a new test for npe in objc blocks
4 years ago
Jules Villard 5cceead7ae [pulse] normalize again when we discover new linear eqs
4 years ago
Jules Villard 50b94dbbd6 [pulse] cleanup arithmetic
4 years ago
Jules Villard 8b23fee8f8 [pulse] refactor Atom.eval_atom
4 years ago
Jules Villard ecdb153579 [pulse] streamline atom normalization
4 years ago
Jules Villard 7df30b0c4e [pulse] preserve physical equality on var subst in LinArith
4 years ago
Jules Villard eb37d2ced5 [pulse] substitute entire linear expressions
4 years ago
Jules Villard 36af901d79 [pulse] normalize any linear atom
4 years ago
Jules Villard 69995cebb6 [pulse] add a Linear variant to terms
4 years ago
Jules Villard 45894a7dd9 [pulse] move LinArith before Term
4 years ago
Jules Villard 1d56705cd4 [pulse] evaluate all constant expressions
4 years ago
Jules Villard bcba7c8475 [pulse][minor] moving some arithmetic stuff around
4 years ago
Jules Villard 5278cb7374 [pulse] `delete nullptr` is a no-op
4 years ago
Jules Villard af64d5dafe [pulse] detect when atoms become linear arithmetic
4 years ago
Qianyi Shu 9a3bfa67c7 [cost] fix iterator for constant array
4 years ago
Qianyi Shu b4f23ab599 [cost] add NSArray iterator
4 years ago
Nikos Gorogiannis 06f5eee680 [merge] measure tenv size only in debug mode
4 years ago
Nikos Gorogiannis 3133c18908 [dbwriter] mild refactor
4 years ago
Ezgi Çiçek c449f6e727 [pulse] Tweak error message for Memory Leak
4 years ago
Sungkeun Cho 5d23fb59aa [cost] Add FP test that has two control variables, but linear
4 years ago
Sungkeun Cho 88d5f4b9ad [Cost] Add cost model of binary search
4 years ago
Jules Villard 3e7bf4343b [pulse] make unit tests more robust to adding more tests
4 years ago
Jules Villard 1825b3779c [nullsafe] migrate 3rd-party methodes unit tests to ppx_expect
4 years ago
Jules Villard beca699bc4 [build] swap the build defaults to dev-with-errors
4 years ago
Nikos Gorogiannis dc29f8eeca [specs] fix reanalysis
4 years ago
Jules Villard 6fae5f641e [pulse] change constants to be rationals
4 years ago
Ezgi Çiçek 3fdf66dd11 [models] Refactor hardcoded infer models to use Builtin definitions
4 years ago
Daiva Naudziuniene dcc12d0a42 [closuressubstitution] Flip order of captured variables and actual parameters
4 years ago
Jules Villard 2caaa97d2a [minor] fix doc comment in cTrans.ml
4 years ago
Qianyi Shu 4683076ea6 [cost] add NSMutableArray's add and remove function model
4 years ago
Jules Villard 0433e9592e [pulse] new new arithmetic
4 years ago
Sungkeun Cho 6e0dc774a6 [purity][refactor] Add purityDomain.mli
4 years ago
Sungkeun Cho 55ecfd8811 [purity][refactor] Open AbstractDomain.Types
4 years ago
Qianyi Shu a7ff42069c [cost] write ObjC's NSCollection model separately and refactor
4 years ago
Nikos Gorogiannis 12189f4c4e [specs] remove sharding infra
4 years ago
Mitya Lyubarskiy 7635bb0414 [nullsafe] @Initializer annotation is inherited from parent signatures
4 years ago
Mitya Lyubarskiy 937d5386d1 [nullsafe][refactor] Migrate Overannotated rule to Procname.Java.t
4 years ago
Mitya Lyubarskiy 7d0671910a [nullsafe][easy] Add interface file for models.ml
4 years ago
Daiva Naudziuniene 69e0dce0ed [pulse] fix end() iterator false positive
4 years ago
Nikos Gorogiannis c98783a45a [specs] store analysis and report artefacts separately
4 years ago
Nikos Gorogiannis a9c9d97fb6 [specs] index by procname
4 years ago
Nikos Gorogiannis b763a9dd7e [specs] store in db
4 years ago
Artem Pianykh 16b2b2621d [java][tests] Compile with -g to make javac produce more debug info
4 years ago
Jules Villard 7b743ceb1a [pulse][formula] forget dead facts
4 years ago
Jules Villard bf40a9119e [pulse][formula] print readable variable names in unit tests
4 years ago
Jules Villard 6f5b125aa0 [pulse][formula] improve printing
4 years ago
Jules Villard 934a13a134 [pulse][minor] name ~callee argument for readability
4 years ago
Jules Villard 62e84185b1 [pulse] a few more unit tests
4 years ago
Jules Villard 97fcc3b0ad [pulse] apply equality relation to terms to be added to the equality relation
4 years ago
Jules Villard 2eb6eb3655 [pulse] skeleton for unit testing pulse
4 years ago
Jules Villard 7ccec3fd99 [build] make dune format files when testing
4 years ago
Jules Villard a64f311ea8 [formula] remember results of normalization
4 years ago
Jules Villard cfa81d168d [pulse] check formula unsat more often
4 years ago
Jules Villard f1e9e28f73 [pudge] delete
4 years ago
Jules Villard 5a39c158c5 [pulse] arithmetic domain: take 4!
4 years ago
Artem Pianykh e4a7d1f19d [nullsafe] Add tests around support for Java Lambdas
4 years ago
Artem Pianykh 570191741a [java][tests] Add kotlin-annotatins to classpath to fix warnings
4 years ago
Mitya Lyubarskiy 3fa8c56ce2 [nullsafe][refactor] Convert models.ml to Procname.Java.t
4 years ago
Mitya Lyubarskiy 8d4e9bf26e [nullsafe] Add "Fragment.onViewCreated()" to a list of known initializers
4 years ago
Sungkeun Cho 6d9a620aa1 [cost] Enable purity by default in cost
4 years ago
Ezgi Çiçek fef89019b0 [cost] Enable inferbo issues for java tests
4 years ago
Sungkeun Cho 761d2c56af [cost] Separate purity analysis and reporting
4 years ago
Ezgi Çiçek dc0d761929 [nullsafe] Fix unused sig
4 years ago
Ezgi Çiçek e6211679a0 [cost][loop-invariance] Do not invalidate pure functions
4 years ago
Nikos Gorogiannis e606b0e4fe [sqlite] always enable the write daemon
4 years ago
Mitya Lyubarskiy 1e9f5f1bd3 [nullsafe] Convert InheritanceRule to Procname.Java.t
4 years ago
Mitya Lyubarskiy 94f7d6aeeb [nullsafe][refactor] Migrate TypeOrigin.t to Procname.Java.t
4 years ago
Mitya Lyubarskiy 4bc4376c85 [nullsafe][refactor] Migrate parts of Nullsafe to Procname.Java.t
4 years ago
Mitya Lyubarskiy d4bea60440 [nullsafe][refactor] Migrate DereferenceRule to Procname.Java.t
4 years ago
Sungkeun Cho 80c31ab8da [cost] Add a FP test due to imprecise loop invariant
4 years ago
Daiva Naudziuniene 35de604422 [frontend] Record attribute unused in local variable data
4 years ago
Mitya Lyubarskiy 59592a60e4 [nullsafe][refactor] AnnotatedSignature distincs between first- and third-party
4 years ago
Daiva Naudziuniene c0152f2278 [frontend] Remove duplicate variable declaration
4 years ago
Artem Pianykh 5bd78660ea [nullsafe] Suppress _some_ errors related to synthetic/autogenerated code
4 years ago
Nikos Gorogiannis cf29bc7aa2 [java][procname] params are Typ.t
4 years ago
Nikos Gorogiannis d718c04816 [java][procname] enforce types for java
4 years ago
Nikos Gorogiannis 3ddf77f0f1 [java] make return type in procname a Typ.t
4 years ago
Sungkeun Cho 6c035e3988 [infer] Add max-jobs option
4 years ago
Mitya Lyubarskiy 014f330037 [nullsafe][refactor] Introduce ThirdPartyMethod.t
4 years ago
Nikos Gorogiannis fe617afa49 [specs] move specs file functionality into summary
4 years ago
Nikos Gorogiannis 0475e79d0e [buck-java-flavor] filter out targets with no java sources
4 years ago
Nikos Gorogiannis 697f9c0a47 [buck-java-flavor] integrate with buck using java flavor
4 years ago
Sungkeun Cho 270918fea7 [cost] Remove dead field Struct.subs
4 years ago
Mitya Lyubarskiy 3573e0d202 [nullsafe][refactor] Make DereferenceViolation depend on InferredNullability instead of Nullability
4 years ago
Mitya Lyubarskiy 81951edf55 [nullsafe][refactor] Make AssignmentViolation depend on AnnotatedNullability and InferredNullability instead of Nullability
4 years ago
Qianyi Shu b66b3d3ea5 [cost] add inferbo model for init function of NSString and NSArray
4 years ago
Qianyi Shu d087de8ad6 [cost] adapt NSCollection to behave like Collection model for java
4 years ago
Sungkeun Cho 161b3484f9 [cost] Revert subclass lookup heuristics
4 years ago
Ezgi Çiçek 19799336d4 [inferbo] Add naive models for Java's Buffer
4 years ago
Ezgi Çiçek 745c6577d8 [inferbo] Add Typ Models for Map
4 years ago
Qianyi Shu 3d561ca1db [cost] add alloc for NSObject and NSString.init as an example function using alloc
4 years ago
Sungkeun Cho 54c89408c2 [frontend] Fix translation of for-in block in objc
4 years ago
Artem Pianykh ea8f9c9e91 [java][frontend] Skip concrete method capture in Kotlin classes
4 years ago
Mitya Lyubarskiy 72d45672d8 [nullsafe] Add a test for @SuppressFieldNotInitialized
4 years ago
Ezgi Çiçek 774f972eb7 [inferbo] revise NSArray alloc and init model
4 years ago
Jules Villard c7305245c5 [istd][minor] no need to name ~fold in fold_of_pervasives_map_fold
4 years ago
Ezgi Çiçek d719a1e176 [inferbo] Move model out of Collection
4 years ago
Artem Pianykh 089589d3da [nullsafe] Handle intermediate typecasts in assignment expressions
4 years ago
Artem Pianykh 07887ad30f [nullsafe] Add FP tests for typecasts and generics use
4 years ago
Ezgi Çiçek aa2f420ac8 [inferbo][cost] Check supertype in ObjC models
4 years ago
Sungkeun Cho 0012b1edcc [specs] Add an option to shard spec files
4 years ago
Ezgi Çiçek 444ccc4940 Fix leftover NeverJoin
4 years ago
Ezgi Çiçek 577d4679da [absint][pulse] Remove NeverJoin
4 years ago
Ezgi Çiçek feefda3e59 Wrap Java's PatternMatch into its own module
4 years ago
Jules Villard 86f550317f [pulse] avoid explosion of disjuncts in large nodes
4 years ago
Radu Grigore 9784ee0858 [topl] Prepare cheap port to pulse.
4 years ago
Mitya Lyubarskiy 4d09c54e29 [nullsafe] Model Field nullability for Boolean.TRUE and Boolean.FALSE
4 years ago
Ezgi Çiçek 5a71583c72 [inferbo] Remove symbols on functions returning only exception
4 years ago
Jules Villard 0aeb33947a [debug] add --procedures-cfg
4 years ago
Daiva Naudziuniene 221d0b62ab [pulse] Model builtin __new as returning non-null
4 years ago
Jules Villard 3505e85bfc [biabd] delete model of gettimeofday()
4 years ago
Jules Villard 660eceb20f [pulse] log summary creation
4 years ago
Jules Villard 2dc830735e [istd] refactor of ImperativeUnionFind to expose [find_opt] later
4 years ago
Jules Villard 9578ec74c9 [pulse] model operator== and operator!= for iterators
4 years ago
David Pichardie f6b125c928 Fixing unsound old devirtualization performed in Java frontend
4 years ago
Qianyi Shu 2547a75b8b [cost] add more inferbo and cost analysis models for NSString
4 years ago
Qianyi Shu 829c5da6b2 [cost] add inferbo model for most common function of NSDictionary
4 years ago
Qianyi Shu 6ec7d578cb [cost] Add NSArray.arrayWithObjects: and array access function
4 years ago
Nikos Gorogiannis 41b4e39817 [devirtualizer][java] do not assume first super is a class
4 years ago
Dulma Churchill bd9880569f [biabduction] Remove the model of nsArray_arrayWithObjectsCount as it's no longer compatible with the frontend translation
4 years ago
Nikos Gorogiannis c8a4cfdb95 [tenv][merge][java] intelligently merge type definitions for the same typename
4 years ago
Sungkeun Cho 928137fb34 [frontend] Add translation of arrayWithObjects:count:
4 years ago
Jules Villard 9690dba871 [pulse] a slow example for pudge
4 years ago
Jules Villard ae57f217d2 [pulse] don't always mistake equality for aliasing
4 years ago
Dulma Churchill d2f8028e77 [preanalysis] Adding a preanalysis to resolve local closures
4 years ago
Daiva Naudziuniene 1c5e47d91e [frontend] Record lambda's captured variables in `operator()` procdesc
4 years ago
Sungkeun Cho 831741c5eb [inferbo] Fix a bug in eval_arr
4 years ago
Qianyi Shu 8d648b9c5a [cost] add cost model for most common NSString functions
4 years ago
Ezgi Çiçek e6ed605d67 [cost] Fix unreachable node Top poisoning
4 years ago
Daiva Naudziuniene 50d659b750 Update type of procdesc and closure expression to contain information about capture variable mode
4 years ago
Sungkeun Cho 9b5820bf32 [CCBM] Add semantics of return
4 years ago
Sungkeun Cho 549bd43ef8 [cost] Print where cost become top
4 years ago
Dulma Churchill 795ceadb46 [clang] Remove protocols from the list of superclasses of ObjC classes
4 years ago
Sungkeun Cho 2e319e7a16 [CCBM] Extend the value domain to express multiple markers
4 years ago
Sungkeun Cho 9c33957d7e [CCBM] Rename MarkerSet/InvMarkerSet
4 years ago
Sungkeun Cho 8e264fd669 [CCBM] Add semantics of assigning marker to local variable
4 years ago
Sungkeun Cho 095b946a13 [CCBM] Support another QE check form
4 years ago
Nikos Gorogiannis 2821cf8fdd [buck-clang] revert 500c1b12c95cbf38d45c1eb4a51c47247cf076ec
4 years ago
Qianyi Shu dc502676ea [cost] add model for NSString.string_with_utf8_string_linear and NSString.length
4 years ago
Qianyi Shu 75e5e94f2c [cost] add inferbo model for NSNumber
4 years ago
Qianyi Shu 1c39d7768f [cost] add inferbo model for NSArray
4 years ago
Josh Berdine 7e77bad4d2 [sledge] Change: Implement Fol using a solver-independent intermediate type
4 years ago
Josh Berdine eca73cf39b [sledge] Build: Move sledge equality solver to separate lib
4 years ago
Ezgi Çiçek ebc9f58f6f [cost] Add back the UI thread message
4 years ago
Daiva Naudziuniene 35011757dc [pulse] Add a flag to pass functions that we want to model as returning non-null
4 years ago
Nikos Gorogiannis 34f7741ad9 [java][2/n] refactor classpath
4 years ago
Nikos Gorogiannis d35807223b [java][1/n] split classpath and program modules
4 years ago
Sungkeun Cho cbfb9612e5 [CCBM] Support marker value as object field in Java
4 years ago
Sungkeun Cho 45f00681b1 [CCBM] Extend domain to have this.field values
4 years ago
Ezgi Çiçek be590bcd4c [cost] Add model for ImmutableSet.of
4 years ago
Ezgi Çiçek 05f1d1676e [litho] Tweak the error message
5 years ago
Ezgi Çiçek 5c2f44cbeb [cost] Add cost models for Collection.addAll
5 years ago
Sungkeun Cho 4ef0a787db [cost] Do not print loop line number in trace message
5 years ago
David Pichardie 9d8fe72213 Improving tests about interface default methods (and virtual calls)
5 years ago
Sungkeun Cho d2f3f81826 [cost] Add model of `google::StrLen`
5 years ago
Jules Villard a89d3db364 [pulse] change recency maps to be backed by lists
5 years ago
Jules Villard da3561a533 [log] fix gc stats merging
5 years ago
Daiva Naudziuniene 0ab3689f1f [infer] NULLPTR_DEREFERENCE false positive caused by thread_local variable
5 years ago
Sungkeun Cho 70233b55f1 [cost] Log unknown functions to scuba only with an option
5 years ago
Qianyi Shu 2756189175 [cost] add test for unmodeled inferbo functions that acts as control variable
5 years ago
Qianyi Shu 149e1879ce [cost] add objc test for customized_class and blocks
5 years ago
GaloisNeko dd2222b861 [infer][PR] typo in TopLifted from infer lab
5 years ago
Sungkeun Cho 1745bf9dd0 [cost] Add model of File.listFiles
5 years ago
Ezgi Çiçek 83a83ce9e0 [litho] Add support for Sections
5 years ago
Qianyi Shu bfe2caf92d [cost] log top cost function
5 years ago
Nikos Gorogiannis ba2bad25aa [debug] new command
5 years ago
Jules Villard 727cc8ce6d [log] add mem usage statistics
5 years ago
Sungkeun Cho 5df13f69e7 [inferbo] Add some models of linked list next methods
5 years ago
Artem Pianykh 0f7b6db07c [nullsafe] Fix handling of assignment expressions in prune
5 years ago
Dulma Churchill 85ee958bf9 [pulse] Add model for NSObject.init
5 years ago
Daiva Naudziuniene 2c48e61031 [pulse] A new issue type OPTIONAL_EMPTY_ACCESS for trying to access folly::Optional when it is folly::none
5 years ago
Dulma Churchill 0887b28a65 [linters] Delete unused linters about ComponentKit
5 years ago
Dulma Churchill 622f0fb6f2 [linters] Remove the linters UNAVAILABLE_API_IN_SUPPORTED_IOS_SDK and REGISTERED_OBSERVER_BEING_DEALLOCATED
5 years ago
Qianyi Shu fc6cd0cb28 [cost] extend BasicCost to BasicCostWithReason
5 years ago
Sungkeun Cho b48534c640 [cost] Support a specific form of linked list iteration
5 years ago
Qianyi Shu 3a338e6960 [cost] log unmodeled function in cost analysis
5 years ago
Dulma Churchill 2d4b3c9acd [builtins] Change the name of __free_cf to the more appropriate _objc_bridge_transfer and delete the biabduction implementation
5 years ago
Dulma Churchill fc7437abb0 [biabduction] Delete Core Foundation models for Memory Leaks
5 years ago
Dulma Churchill 61ae2d1e1b [clang] Add implicit implementations for ObjC getters and setters as a preanalysis
5 years ago
Artem Pianykh bc9c2440df [java] Add an option to log JBir translation
5 years ago
Artem Pianykh 96291c0fdd [nullsafe][tests] Rename package name from nullsafe_default to nullsafe
5 years ago
Nikos Gorogiannis 0255765a54 [starvation] document false positive
5 years ago
Ezgi Çiçek a54de2e0dd [litho] Refactor and remove duplicated code
5 years ago
Dulma Churchill b888e33e1f [biabduction] Delete UNARY_MINUS_APPLIED_TO_UNSIGNED_EXPRESSION
5 years ago
Dulma Churchill a7cca8a734 [biabduction] Delete SKIP_POINTER_DEREFERENCE issue type
5 years ago
Nikos Gorogiannis 6a74b967ac [buck-clang] don't special case for targets
5 years ago
Sungkeun Cho 70a432e795 [CCBM] Support Clang target
5 years ago