3213 Commits (d3a83beab4d0f2744af8013fb8ab0ea08d5b1772)

Author SHA1 Message Date
Ezgi Çiçek 2bd39abefc [purity] Add model for Object.clone()
5 years ago
Nikos Gorogiannis 8a99f4b3bb [java] bug fix for type translation
5 years ago
Sungkeun Cho bc0c060bd4 [cost] Add a test (recursive dependency in class initializers)
5 years ago
Sungkeun Cho 545e6c8802 [inferbo] Add models of String.lastIndexOf and String.replace
5 years ago
Ezgi Çiçek a4c3925d9a [impurity] Track unique accesses
5 years ago
Ezgi Çiçek e3c89b1f10 [impurity] Fix include_value_history
5 years ago
Sungkeun Cho e35b26ae8e [inferbo] Get static final array values from class initializer
5 years ago
Artem Pianykh 786a72574f [build] Replace custom make cmds w/ dune promotion and byte_complete
5 years ago
Artem Pianykh fcce3c0659 [RFC][build] Use dune environments and profiles instead of contexts
5 years ago
Jules Villard e5b50d7d46 [quandaryBO] delete :(
5 years ago
Jules Villard 339ebe74ec [config] sensible default for --from-json-report
5 years ago
Dulma Churchill 2f90b05c2a [pulse] Add model for malloc
5 years ago
Ezgi Çiçek b90d7c42d3 [impurity] Do not add value history in impurity traces
5 years ago
Sungkeun Cho 117ab1164b [cost] Revert "Use type of Provider.get"
5 years ago
Sungkeun Cho 020cd199b5 [cost] Use type of Provider.get
5 years ago
Ezgi Çiçek c6237f5f9f [pulse] Add model for Object.clone()
5 years ago
Mitya Lyubarskiy 087a5a9787 [nullsafe] A dedicated test for testing field nullability memoization
5 years ago
Ezgi Çiçek 5f8e6233bb [pulse] Take into account skipped calls for state comparison
5 years ago
Mitya Lyubarskiy bd83813b3e [tech debt] Remove experimental nullability checkers
5 years ago
Nikos Gorogiannis fa4f9ef5f3 [tests] remove genrule test
5 years ago
Ezgi Çiçek bb5cdf9b97 [pulse] Add FN tests to impurity
5 years ago
Radu Grigore 0fc2769a65 [topl] A test for comparing arguments.
5 years ago
Dulma Churchill 634a42b619 [SelfInBlock] Take ns_noescape into account when reporting captured strong self.
5 years ago
Artem Pianykh 19093a2fa0 @update-submodule: facebook-clang-plugins Fix handling of non-literal `offsetof` expressions
5 years ago
Ezgi Çiçek 7deaae6598 [cost] Rename ZERO_* to *_UNREACHABLE_AT_EXIT
5 years ago
Mitya Lyubarskiy e1f4da320f [nullsafe] Consistent severity for nullsafe issues.
5 years ago
Ezgi Çiçek ebbc0fc7f2 [cost] Add traces for ZERO_* issues
5 years ago
Mitya Lyubarskiy 335a9efec7 [nullsafe] Trust explicitly annotated third party in all modes
5 years ago
Mitya Lyubarskiy f136bf21b5 [nullsafe][refactor][messaging] Refactor code + more consistent messaging
5 years ago
Sungkeun Cho 9a38987929 [cost] Do not report `EXPENSIVE_EXECUTION_TIME` when a cost of a node is top
5 years ago
Sungkeun Cho 85812abf71 [cost] Report the biggest cost in function
5 years ago
Ezgi Çiçek 43350f7c6b [cost] Add Java tests for ZERO_EXECUTION_TIME
5 years ago
Sungkeun Cho 0d046c8e7c [inferbo] Ignore float/double constant
5 years ago
Radu Grigore 5a095ca411 [topl] Switched to low-level syntax.
5 years ago
Radu Grigore 2888a90e2a [topl] Added tests for inefficient iteration
5 years ago
Sungkeun Cho 7a0be26596 [inferbo] Revise semantics of `values` function of Java enum class
5 years ago
Ezgi Çiçek cbd506011f [cost] Add tests for ZERO_EXECUTION_COST
5 years ago
Sungkeun Cho ef74f3f18d [cost] Revise message of Provider.get.modeled
5 years ago
Artem Pianykh 3859f178fa [nullsafe] Properly handle method calls on trusted classes under NullsafeLocal mode
5 years ago
Mitya Lyubarskiy f57dc78679 [nullsafe] Error reporting: recommend non-nullable alternarives for known nullable methods
5 years ago
Sungkeun Cho 100807ed2a [inferbo] Do not prune values with bottom
5 years ago
Artem Pianykh bcaa0e0dfe [nullsafe] Add tests on interop between third-party vs other in various modes
5 years ago
Artem Pianykh 9697c6e294 [nullsafe] Fix treatment of enum values wrt nullsafe mode
5 years ago
Artem Pianykh 2572819a5b [nullsafe] Directly model nullability of values from third-party code
5 years ago
Artem Pianykh b50f13eb18 [nullsafe] Support Nullsafe(Local, trust=all/none) mode
5 years ago
Mitya Lyubarskiy 8e1e15a8c4 [nullsafe] Fix genrule test
5 years ago
Mitya Lyubarskiy c38c2cf1bf [nullsafe][EASY] Add period at the end of dereference message when origin is present
5 years ago
Nikos Gorogiannis 281385203f [biabduction] kill guarded by check
5 years ago
Nikos Gorogiannis c10c7a39a6 [java] use a package/classname record for java classes instead of string
5 years ago
David Pichardie 64289cde4d [Java frontend]Javalib's lambda rewritting is making his way through Infer
5 years ago
Sungkeun Cho 175af05b8b [inferbo] Add model of vector resize
5 years ago
Nikos Gorogiannis ace23a1670 [java] use plain strings instead of mangled for JavaClassName
5 years ago
Sungkeun Cho 9562ab4d68 [inferbo] Suppress integer overflow in hash functions
5 years ago
Ezgi Çiçek ceb50cdf0e [cost] Adjust cold-start loom query
5 years ago
Nikos Gorogiannis c51db130fc [driver] don't clear MAKEFLAGS
5 years ago
Sungkeun Cho 4311371d81 [inferbo] Revise split model semantics
5 years ago
Dulma Churchill 58913e6a1c [Infer] Dedup reports of weakSelf in Noescape block
5 years ago
Dulma Churchill 00c52a52c2 [Infer] Dedup the reporting of Captured StrongSelf
5 years ago
Dulma Churchill f6341977fb [Infer] Dedup reports of strongSelf Not checked
5 years ago
Sungkeun Cho 22601846b2 [inferbo] Add model of emplace_back
5 years ago
Radu Grigore f8511c2358 [topl] Added another small test, for BAOS.
5 years ago
Sungkeun Cho b9db4fa4b9 [inferbo] Add model for C++ exception throw
5 years ago
Sungkeun Cho 412e8a977c [inferbo] Add model for std::shared_ptr<>::operator->
5 years ago
David Pichardie 2cccf8adce Invokedynamic removing by class file rewriting
5 years ago
Sungkeun Cho ca04002f6c [inferbo] Revise finding constructors on std::make_shared
5 years ago
Sungkeun Cho 92e7aeeb3e [infer] Fix clang frontend for switch statment
5 years ago
Dulma Churchill a864823f38 [SelfInBlock] Fix a bug in exps_of_instr where some expressions were missed.
5 years ago
Mitya Lyubarskiy 597c730474 [nullsafe] Treat parameter in overrides of `equals(Object param)` as nullable.
5 years ago
Mitya Lyubarskiy ae907d80cf [nullsafe] Model Object.equals() and descentands as FalseOnNull
5 years ago
Mitya Lyubarskiy 79d088e676 [nullsafe][EASY] functions that are modelled as @TrueOnNull should be also modelled for nullability.
5 years ago
Mitya Lyubarskiy 067a545c0e [nullsafe] Fix a bug and specify behavior for multiparam version for @TrueOnNull and @FalseOnNull annotations
5 years ago
Mitya Lyubarskiy a55179ba80 [nullsafe][refactoring] Simplify call to condition_redundant checks.
5 years ago
Dulma Churchill 7631d34f43 [SelfInBlock] Refactor the reporting to run only once over the domain
5 years ago
Nikos Gorogiannis a6da208e9d [starvation] use access expressions instead of access paths
5 years ago
Ezgi Çiçek b5562f124a [cost] Disable reporting of allocation costs
5 years ago
Sungkeun Cho f94990a0c2 [inferbo] Add taint domain
5 years ago
Ezgi Çiçek 239a5302f6 [pulse] Add more models for Java
5 years ago
Mitya Lyubarskiy 43e857ccb3 [nullsafe][easy] Break CustomAnnotations.java into two subtests
5 years ago
Sungkeun Cho 4a08151851 [cost] Non-symbolic value for unknown external function call
5 years ago
Ezgi Çiçek 040442c93b [pulse] Don't write through pointer arguments in Java
5 years ago
Nikos Gorogiannis 777eb33870 [racerd] use concurrent context for reporting in C++/ObjC
5 years ago
Nikos Gorogiannis 9648632bd5 [clang] Revert "Translate SynchronizedStmt"
5 years ago
Nikos Gorogiannis 1a0c73ab99 [starvation] decouple AbstractAddress from starvation
5 years ago
Ezgi Çiçek d84a9e0c1c [inferbo][cost] Generalize String models and add models for StringBuilder
5 years ago
Ezgi Çiçek 6a38121b8a [inferbo] Add model for String.substring
5 years ago
Ezgi Çiçek c51f47b05e [inferbo] Revise Java's String constructor models
5 years ago
Sungkeun Cho 7f25684491 [inferbo] Check nested global array access
5 years ago
Sungkeun Cho f8ee0a14aa [inferbo] Give semantics of std::make_shared as simple constructor
5 years ago
Dulma Churchill 63428e7b69 [SelfInBlock] Check for when weakSelf is used in a no escaping block
5 years ago
Ezgi Çiçek 9f4098ea1a [cost] Revise substring's cost model
5 years ago
Nikos Gorogiannis 21cff2d659 [starvation] substitute arguments over parameters in locks
5 years ago
Nikos Gorogiannis 07e91cabf7 [starvation] no inner class normalisation for java
5 years ago
Dulma Churchill 9dfd1943e6 [selfInBlock] Remove false positive from mix self weakSelf
5 years ago
Artem Pianykh 237aac4cd0 [nullsafe] Introduce @Nullsafe annotation
5 years ago
Ezgi Çiçek a0fd5a0e6a [pulse] Refactor attributes into domain
5 years ago
Ezgi Çiçek 7cb11b587a [inferbo] Revise String.split's bounds
5 years ago
Jules Villard b948c3e182 [topl] delete unused test file
5 years ago
Dulma Churchill b1eb969635 [selfInBlock] Add a new check when strongSelf is captured in a (sub)block.
5 years ago
Mitya Lyubarskiy 19bc35d836 [nullsafe] Make condition redundant slightly less aggressive
5 years ago
Dulma Churchill edc47d4a96 [selfInBlock] Handle conditionals as well as ifs
5 years ago
Dulma Churchill 430727519b [clang frontend] Translate BinaryOperators in ifs equally whether they are part of a ExprWithCleanups or not
5 years ago
Nikos Gorogiannis 5a1641d319 [racerd] kill non-deterministic test
5 years ago
Dulma Churchill 66c6a73cc6 [SelfInBlock] Report strongSelf Not Checked when strongSelf passed to a function as argument
5 years ago
Dulma Churchill 05bd4185e0 [SelfInBlock] Reporting strongSelf Not Checked only in field access
5 years ago
Radu Grigore fe736f4151 [topl] Added two (test) properties for ServletResponse.
5 years ago
Radu Grigore 6e6a33cd01 [topl] Added a test for ByteArrayOutputStream.
5 years ago
Artem Pianykh fe1fd57593 [nullsafe] Add a test for subclass annotation with multiple interfaces
5 years ago
Mitya Lyubarskiy cf26c024bf [nullsafe] Specific error message for overriding Object.equals()
5 years ago
Mitya Lyubarskiy d641c9ac9a [nullsafe] Better error message for inheritance rule, part 2
5 years ago
Sungkeun Cho c93c3163d6 [inferbo] Get global constant array values from initializers
5 years ago
Nikos Gorogiannis 4e45a62d3c [starvation] fix inner class tests
5 years ago
Nikos Gorogiannis 279f1c85ce [racerd] abbreviate procnames in report text
5 years ago
Ezgi Çiçek dd59a141f0 [impurity] Rely on set of skipped functions to determine impurity
5 years ago
Mitya Lyubarskiy eddf2ef180 [nullsafe] Better error message for inheritance rule
5 years ago
Sungkeun Cho 67a4b73cd0 [inferbo] Revise bit-and semantics on pointer value
5 years ago
Jules Villard 3bf771bff4 [pulse] add model for std::vector<>::at()
5 years ago
Nikos Gorogiannis 45ada8703e [starvation] allow aliasing of parameters across threads
5 years ago
Sungkeun Cho 97ba078d55 [inferbo] Revise getting size of array block
5 years ago
Radu Grigore bfdb379fe3 [topl] Added a test, for intraprocedural reasoning.
5 years ago
Mitya Lyubarskiy 715227d126 [nullsafe] Show Strict mode violations as errors: part 3
5 years ago
Mitya Lyubarskiy 6417b19ace [nullsafe] Show violations of @NullsafeStrict mode as errors: Part 2
5 years ago
Jules Villard 9199aa4b24 [topl] split tests
5 years ago
Mitya Lyubarskiy be05c8a7dd [nullsafe] Show Strict mode violations as errors: part 1
5 years ago
Artem Pianykh 592c746e6b [java] Make override resolution consider parameter types
5 years ago
Artem Pianykh 774223165c [tests] Use git diff instead of diff to colorize `make test` output
5 years ago
Artem Pianykh 9aebdd242f [tests] Don't fail duplicates check when running java tests
5 years ago
Sungkeun Cho 1305db390a [infer] Load global array constant
5 years ago
Sungkeun Cho 9b1001eda2 [litho] Make analysis null return aware
5 years ago
Sungkeun Cho 16f18792f1 [infer] Capture global initializer ondemand
5 years ago
Ezgi Çiçek 6637557781 [inferbo] Add models for Preconditions.checkNotNull and Preconditions.checkState
5 years ago
Mitya Lyubarskiy f77c90a1f1 [nullsafe] Add a test for `switch` case
5 years ago
Kfir Schindelhaim 16391f6d63 Update CK fixtures
5 years ago
Kfir Schindelhaim 33b3ea8b10 Update CK linter for subclasses
5 years ago
Ezgi Çiçek 6f64131ae6 [pulse] Do not havoc arguments of unknown functions that are pointers to const
5 years ago
Nikos Gorogiannis ca1ba2511b [starvation] tests for a multi-file C++ deadlock
5 years ago
Sungkeun Cho 0b7e479b34 [cost] Use actual call path when printing unknown function calls
5 years ago
Ezgi Çiçek 4cd595aebd [pulse] Add naive model for array length in Java
5 years ago
Artem Pianykh 59c6967e64 [nullsafe] Redo InconsistentSubclassAnnotation tests
5 years ago
Ezgi Çiçek 598a4d5a55 [pulse] Ignore Exceptional CF
5 years ago
Jules Villard cc0a4e807a [buck] no more tests for the deprecated java integration
5 years ago
Jules Villard e4dd2bbd8c [buck] one buck mode datatype to rule them all
5 years ago
Ezgi Çiçek cb9bb2a73c [pulse] Add simplified models for Java iterators and `Object.equals`
5 years ago
Sungkeun Cho 3d087ff5e5 [inferbo] Update relation between iterator and integer value on Call
5 years ago
Sungkeun Cho 7e3275dcc8 [inferbo] Add relation between iterator and integer value
5 years ago
Nikos Gorogiannis 1dc2e8a87c [RFC][java] kill regexp-based line number fixer
5 years ago
Radu Grigore 3554101ece [topl] Generate simpler monitor for deterministic states.
5 years ago
Sungkeun Cho 78ff7f7942 [litho] Distinguish builder object by latest callsite
5 years ago
Sungkeun Cho 805e3f17fc [litho] Do not remove non-build-called part at build calls
5 years ago
Ezgi Çiçek 01755ef48e [inferbo] Add model for String.split
5 years ago
Radu Grigore 3e9d1bff16 [topl] Bugfix in matching constructor names.
5 years ago
Radu Grigore 7bfef217de [biabduction] Simplify postconditions after re-execution.
5 years ago
Radu Grigore 4654424b03 [topl] More biabduction-friendly monitor.
5 years ago
Radu Grigore b70a0f0b65 [topl] Optimize code instrumentation.
5 years ago
Ezgi Çiçek 5776d7cfab [litho] Report at created location with bold message
5 years ago
Radu Grigore 91ebfe9c20 [topl] Support side conditions for transitions.
5 years ago
Ezgi Çiçek be1fda72a8 [inferbo] Add model for `Collection.toArray`
5 years ago
Ezgi Çiçek 0b5d7b71cb [inferbo] Add model for load of java.util.Collections.EMPTY_*
5 years ago
Ezgi Çiçek 12478e1238 [inferbo] Add models for Java Collections
5 years ago
Mitya Lyubarskiy 9285c51dfa [nullsafe] Enum values can be used as non-null without strictification
5 years ago
Martin Trojer 7c22d4169d Add project-root to buck targers when looking for infer-deps.txt
5 years ago
Ezgi Çiçek ada1d6f3c7 [litho] Add create method to the trace and simplify trace printing
5 years ago
Ezgi Çiçek 38421e2735 [litho] Remove old domain
5 years ago
Sungkeun Cho 6fb2a94f57 [litho] Not ignore location
5 years ago
Ezgi Çiçek c2b59f0f5f [litho] Add tests
5 years ago
Sungkeun Cho 1f64acf3de [litho] Moved is_build_called and added is_return_called
5 years ago
Jules Villard 49fb5b7c85 [pulse] do arithmetic on pointers too
5 years ago
Ezgi Çiçek 47c89611a5 [litho] Remove GraphQL ShouldUpdate analysis
5 years ago
Nikos Gorogiannis ce39017611 [typ][fieldname] make java representation more sharing friendly and typesafe
5 years ago
Jules Villard e06a43a677 [pulsebo] use inferbo more in summaries
5 years ago
Nikos Gorogiannis 6edf037659 [starvation] treat precondition calls as assumes
5 years ago
Nikos Gorogiannis b994fa7f70 [starvation] add path sensitivity on Future.isDone
5 years ago
Sungkeun Cho 2835468df9 [litho] Add substitution at function calls
5 years ago
Nikos Gorogiannis b012bb9435 [racerd] ownership of contained objects should be that of container
5 years ago
Jules Villard a42e15147b [pulse] fix test for by-ref automatic initialisation
5 years ago
Ezgi Çiçek f4d3513724 Revert "[litho] Check and report on all nodes where return calls"
5 years ago
Ezgi Çiçek 776d4bf97d [litho] Change the domain
5 years ago
Ezgi Çiçek bdd4664177 [litho] Ignore location in CreatedLocation
5 years ago
Jules Villard eb52b28f91 [pulsebo] use inferbo in prunes
5 years ago
Ezgi Çiçek 61f5a2f157 [litho] Add a FN test
5 years ago
Ezgi Çiçek ca8396d9bc [litho] Add new tests for new litho domain
5 years ago
Ezgi Çiçek e356ae2b01 [litho] Treat inter-proc calls as no-op for now
5 years ago
Ezgi Çiçek cff85799de [litho] MethodCalls comparison shouldn't take receiver into account
5 years ago
Sungkeun Cho 5f77a3c1a5 [litho] Check and report on all nodes where return calls
5 years ago
Nikos Gorogiannis 9df0c678de [starvation][whole-program] more models
5 years ago
Ezgi Çiçek 9c1bef41e7 [litho] Make MethodCall comparison oblivious to prop suffixes
5 years ago
Sungkeun Cho 668969a3c2 [frontend] Do not die when selector is unknown in objc boxed expr
5 years ago
Sungkeun Cho 47790ed496 [litho] Add prop check in the new domain
5 years ago
Nikos Gorogiannis 9941a16e98 [starvation] model Thread.join as blocking
5 years ago
Nikos Gorogiannis 34899d3b8b [starvation] fix FPs due to mishandling wait
5 years ago
Dulma Churchill d00d8b3597 [AL] Allow to match typedefs and pointers.
5 years ago
Martin Trojer fbe1c92c17 clang9
5 years ago
Dulma Churchill f73671a5dd [test determinator] Matching on mangled C and C++ names
5 years ago
Nikos Gorogiannis 1c0e42bf3f [starvation][whole-program] static initializer attributes
5 years ago
Ezgi Çiçek 23b2dcf753 [required-props] Add more tests
5 years ago
Dulma Churchill f69d0992bc [self-in-block] Add new issue type MULTIPLE_WEAKSELF
5 years ago
Nikos Gorogiannis 0319dac803 [starvation][whole-program] fix buggy model
5 years ago
Sungkeun Cho ab7c61b836 [inferbo] Extend bound domain to express multiplication of bounds
5 years ago
Nikos Gorogiannis 7a538c5004 [starvation][whole-program] thread class
5 years ago
Nikos Gorogiannis aef34d8384 [starvation][whole-program] analyze constructors for initial attribute state
5 years ago
Nikos Gorogiannis 82a9f1ac65 [starvation][whole-program] Looper and Handler models and semantics
5 years ago
Dulma Churchill c9c4adebc2 [AL] Improve the predicate for checking visibility attribute and example rule for checking macro for category implementation
5 years ago
Dulma Churchill 48da570aa0 [AL] Introduce a way of binding the two witnesses of an AND formula
5 years ago
Jules Villard df49f318f6 [pulse] havoc formals passed by reference to unknown procedures
5 years ago
Jules Villard 32f60f3d3c [pulse] model the fact `free(0)` is a no-op
5 years ago
Jules Villard 3fbefbad34 [pulse] model some of `std::atomic`
5 years ago
Sungkeun Cho 61ae040077 [pulse] Add bo_itv to pulse attributes
5 years ago
Sungkeun Cho 81667f25ae [cost] Update issues.exp
5 years ago
Sungkeun Cho 8fa098474e [cost] Fix the model of substring
5 years ago
Dulma Churchill 766fc2c072 [AL] Adding a new transition to siblings
5 years ago
Mitya Lyubarskiy b2910c1336 [nullsafe] More specific error messaging for Null nullability
5 years ago
Mitya Lyubarskiy bd426954a3 [nullsafe][easy][bug fix] Swap over reporting for undeclared and already declared third party
5 years ago
Nikos Gorogiannis 624d7d7930 [starvation][whole-program] more models
5 years ago
Nikos Gorogiannis 404caf3bb4 [starvation][whole-program] track runnables as attributes
5 years ago
Nikos Gorogiannis 20a7e9d75b [starvation][whole-program] add a bit of typestate/dataflow
5 years ago
Nikos Gorogiannis ff819da3c6 [starvation-whole-program] more modeled executors
5 years ago
Jules Villard d79bd90b81 [pdesc] new pre-analysis to diverge after "noreturn" function calls
5 years ago
Jules Villard 78a33acb77 [cfg] run pre-analysis lazily in ondemand
5 years ago
Sungkeun Cho b1698ab0ea [inferbo] Get static value of EMPTY from class initializer in Java
5 years ago
Nikos Gorogiannis 374c09c6c7 [starvation][whole-program] allow scheduled work on unknown threads
5 years ago
Jules Villard de6864a07a [objc] pass SDK config to plugin
5 years ago
Sungkeun Cho 8b959be727 [inferbo] Add size alias when array size is one
5 years ago
Jules Villard b03ca78bf3 [pdesc][refactor] ability to set normal and exceptional succs independently
5 years ago
Nikos Gorogiannis 883044763e [starvation-whole-program] more executor models
5 years ago
Martin Trojer 4817cb4c8e fix genrule test
5 years ago
Nikos Gorogiannis 0d175daddc [starvation] enable some tests
5 years ago
Dulma Churchill e411db6f82 [AL] Make the transition Parameters work with function calls
5 years ago
Mitya Lyubarskiy d5b574dd80 [nullsafe] Render strict mode violations nicely
5 years ago
Mitya Lyubarskiy 1b8305d1e1 [nullsafe] Special error messaging for case when unmodelled third-party signature is called
5 years ago
Mitya Lyubarskiy 48a447d77a [nullsafe] Always specify if the nullability comes from internal models or third party
5 years ago
Mitya Lyubarskiy 108473e97b [nullsafe] Changes in wording of error messages: unified and more clear language
5 years ago
Mitya Lyubarskiy b860336640 [nullsafe] Render origin in a more light weight way
5 years ago
Mitya Lyubarskiy e0b688ceab [nullsafe] Don't render type origin in trivial cases
5 years ago
Nikos Gorogiannis bbb1237e90 [concurrency] add models for Android UI thread callbacks (ServiceConnection)
5 years ago
Nikos Gorogiannis 0c4d2d7a92 [starvation-whole-program] recognize Android callback methods as scheduled work
5 years ago
Nikos Gorogiannis 08df37ef76 [starvation] whole program analysis
5 years ago
Ezgi Çiçek 655096e87c [required-props] Add more tests for casting
5 years ago
Jules Villard f81c9d56e3 [pulse] arithmetic operations
5 years ago
Jules Villard 6ecf4066e8 [pulse] model std::integral_constant
5 years ago
Jules Villard 6df4fb6a9b [pulse] report dereference of NULL and constants
5 years ago
Sungkeun Cho c3186578d6 [cost] Keep excluding unqualified variables by ItvUpdatedBy
5 years ago
Sungkeun Cho 50252d3152 [cost] Exclude bin-op-generated integers from control variables
5 years ago
Dulma Churchill 510a5e2933 [self in block] Adding traces to the Strong_self_not_checked check
5 years ago
Dulma Churchill bf581e0b72 [self in block] Add a check for strongSelf not checked for null
5 years ago
Sungkeun Cho 0aec8a04e9 [inferbo] Substitution of array block of default case in Java
5 years ago
Ezgi Çiçek ddf6254b6f [required-props] Only report when there is a create
5 years ago
Nikos Gorogiannis 243835aca2 [starvation] extend models of scheduled work
5 years ago
Ezgi Çiçek a356ef19d7 [litho] Fix test naming convention and add another FP test
5 years ago
Ezgi Çiçek 9e5307b339 [pulse][impurity] Add Pulse Java models for get and cast
5 years ago
Sungkeun Cho ecc5c80a9b [inferbo] Fix a bug in SafeInvertedMap.join
5 years ago
Sungkeun Cho 7a5ce51901 [inferbo] Revise band semantics
5 years ago
Ezgi Çiçek 94f4ded9b4 [cost] Introduce cost issue types for functions on UI Thread
5 years ago
Sungkeun Cho e66a23a04c [infer] Narrow all loops at least once in the widening phase
5 years ago
Sungkeun Cho 0d700471c0 [inferbo] Add size alias when i=1
5 years ago
Sungkeun Cho 773766e3f7 [inferbo] Function call of Java enum values in class initializer
5 years ago
Sungkeun Cho b50e1cba51 [inferbo] Extend bound to express Min/Max(bound, bound)
5 years ago
Dulma Churchill f303c9fa87 [self in block] Fix error in choosing variables fmor the domain for reporting
5 years ago
Nikos Gorogiannis 5ea35133af [starvation] record scheduling parallel works via executors
5 years ago
Dulma Churchill 41fffa690c [self in block] Adding traces to the mixed self with weakself check
5 years ago
Mitya Lyubarskiy 027ff479d1 [nullsafe] 3rd party annotations from the repo are respected in nullsafe
5 years ago
Mitya Lyubarskiy 3d2df4cc3c [nullsafe] Functionality to load 3rd party info from the storage
5 years ago
Ezgi Çiçek d50091bb17 [inferbo] Add models for Math.min and Math.max
5 years ago
Sungkeun Cho fa571100df [inferbo] Extend alias domain to have multiple aliases on a variable
5 years ago
Dulma Churchill 43823266ec [self in block] Add a new checker to detect correct uses of when ObjC blocks capture self.
5 years ago
Sungkeun Cho 0a8919166f [inferbo] Add a model: Object.clone
5 years ago
Sungkeun Cho 88813fdaa7 [inferbo] Revise division by constant
5 years ago
Nikos Gorogiannis dda0470b05 [starvation] make thread domain more precise
5 years ago
Nikos Gorogiannis d154415cd0 [starvation] add path sensitivity restricted to thread status
5 years ago
Sungkeun Cho 28cc6b33a9 [cost] Set the minimum basic cost of node
5 years ago
Dulma Churchill da5b319e67 [test determinator] Remove .llvm suffixes before matching the names
5 years ago
Jules Villard 2e4fbb7fe5 [pulse] intervals!
5 years ago
Jules Villard b20c22a5ee [pulse] abduce arithmetic facts
5 years ago
Mitya Lyubarskiy f9b0d06826 [nullsafe] Primitive types are always Nonnull
5 years ago
Sungkeun Cho 65c25cff23 [inferbo] Forget size alias when size changed in model
5 years ago
Nikos Gorogiannis 2b27a8ff2b [starvation] push thread status inside critical pairs
5 years ago
Dulma Churchill 4e7c794334 [test determinator] Run test determinator with the buck compilation database flag
5 years ago
Sungkeun Cho 480f99cfc2 [inferbo] Avoid top value on unknown non-static function call
5 years ago
Mitya Lyubarskiy 0f1187a3a3 [nullsafe] Make Strict mode respect static methods
5 years ago
Ezgi Çiçek 6781ba36d3 [impurity] Start checking equivalence at materialized addresses in pre
5 years ago
Dulma Churchill d001db1e94 [test determinator] Merge test determinator results under buck capture all flavours, add test
5 years ago
Ezgi Çiçek 75a18b5027 [required-props] Track create methods
5 years ago
Ezgi Çiçek 02f747abca [required-props] Add new FPs
5 years ago
Dulma Churchill 7565c3baa6 [test determinator] Match Blocks, add test
5 years ago
Mitya Lyubarskiy 6511b2052a [nullsafe] Introduce Strict mode
5 years ago
Mitya Lyubarskiy 4d52e874fc [nullsafe] Introduce DeclaredNonnull
5 years ago
Jules Villard 16c88e282d [pulse] some tests about values
5 years ago
Nikos Gorogiannis 734ae60cb7 [starvation] introduce a proper thread domain
5 years ago
Dulma Churchill 0e116c5557 [test determinator] Match Objective-C methods, add test
5 years ago
Dulma Churchill ef75952223 [test determinator] Pass flag to test determinator for clang, add test
5 years ago
Jules Villard 6a738045fd [pulse] interprocedural histories and traces
5 years ago
Nikos Gorogiannis a9c90368e8 [annotation reachability] fix bug on android annotation check
5 years ago
Nikos Gorogiannis 0a06353bce [starvation] more tests documenting interaction with thread status
5 years ago
Jules Villard 669383d315 [pulse] more details about variable declaration events
5 years ago
Nikos Gorogiannis 0149c3171e [starvation] hide ui-thread trace
5 years ago
Nikos Gorogiannis 31bb9b399a [starvation] add tests documenting path sensitivity FPs and FNs
5 years ago
Sungkeun Cho 5835139860 [cost] Conservative array length evaluation
5 years ago
Ezgi Çiçek 0ac75fdb31 [impurity] Hotfix broken tests
5 years ago
Jules Villard 8182514f35 [impurity] clarify string parameter of `ImpurityDomain.add_to_errlog`
5 years ago
Jules Villard 96c96a8dc6 [pulse] remember equalities found in branches
5 years ago
Jules Villard 3ac8e27062 [pulse] use constant equality to prune unfeasible paths
5 years ago
Ezgi Çiçek 42c4fde720 [impurity] Add initial Java support and don't run pulse twice
5 years ago
Sungkeun Cho fd16cb5985 [inferbo] Inequality for iterator alias target
5 years ago
Ezgi Çiçek 557e2bfa3f [impurity] Consider functions with no pulse summary as impure
5 years ago
Sungkeun Cho 83987fca96 [cost] Revise hasNext model
5 years ago
Nikos Gorogiannis 9dbe55c419 [java tracing] goodbye
5 years ago
Nikos Gorogiannis 11891e8d5b [buck][genrule] fix tests
5 years ago
Ezgi Çiçek 064e211e39 [inefficient-keyset] Add androidx.collections.SimpleArrayMap to eligible maps
5 years ago
Ezgi Çiçek 9882b37c6c [cost][inferbo] Add models for androidx.collection
5 years ago
Mitya Lyubarskiy fcd0efb7ba [nullsafe] Consolidate various things checking dereference and get rid of misleading names
5 years ago
Sungkeun Cho c509f1c178 [cost] Add FB-specific cost models
5 years ago
Ezgi Çiçek 08f9cd4eb8 [required-props] Improve the heuristic to check build() for summaries
5 years ago
Ezgi Çiçek c9f3e20fc4 [required-props] Add more tests showing the ineffectiveness of callee heuristic
5 years ago
Ezgi Çiçek 2e129a5abe [required-props] Add call chain to trace
5 years ago
Ezgi Çiçek 856dfc5b74 [litho] Split into two checkers: litho-required-props and litho-graphql-field-access
5 years ago
Dulma Churchill 6cfbd38355 [AL] Take API_AVAILABLE into account in the Unavailable_Api check
5 years ago
Nikos Gorogiannis e0d7950e07 [concurrency] fix over-eager modeling of thread status
5 years ago
Sungkeun Cho 2d26236bed [infer] Eagerly try narrowing for the outermost loops
5 years ago
Sungkeun Cho 1468dcc1d9 [inferbo] Extend alias for collection iteration loop
5 years ago
Nikos Gorogiannis 36de121dc5 [starvation] change domain to use critical pairs `(set of locks held, event)`
5 years ago
Nikos Gorogiannis fb77efea6a [starvation] add test for master-lock false positive
5 years ago
Nikos Gorogiannis f57bb9be0a [starvation] make deduplication depend on filtering config var
5 years ago
Nikos Gorogiannis 41729410ac [starvation] remove rarely-used logic for identifying locks
5 years ago
Sungkeun Cho 5303177a2d [inferbo] Symbolic value on functions returning only exception
5 years ago
Sungkeun Cho dda1486a67 [inferbo] Introduce inequality for size alias target
5 years ago
Ezgi Çiçek d163be3b87 [required-props] Added tests for Component.Builder prop added in the chain of calls.
5 years ago
Ezgi Çiçek c68dc542b7 [required-props] Refactor tests
5 years ago
Jules Villard 362e9cc622 [pulse] do not print `()` after functions
5 years ago
Ezgi Çiçek 073e4db9d7 [required-props] Add support for checking varArgs
5 years ago
Mitya Lyubarskiy c472e95d72 [nullsafe] Add a test for field-overannotated warning
5 years ago
Sungkeun Cho c5ab00ae82 [cost] Avoid giving top to unknown global in Java
5 years ago
Sungkeun Cho 738a751d17 [cost] Add eval mode for cost substitution
5 years ago
Dulma Churchill 0eccdb25dc [clang] Do not try to store block declarations as methods of a C++ struct.
5 years ago
Mitya Lyubarskiy 361e11b3be [nullsafe] When inferring type based on the formal type, respect NullsafeType instead of reading annotations
5 years ago
Sungkeun Cho 402f3115ea [cost] Strengthen condition for collecting control variables
5 years ago
Ezgi Çiçek f7903007ee [required-props] Extend required prop setting with more custom suffixes
5 years ago
Ezgi Çiçek df712bc629 [required-props] Refine Required Props checker to only check @Prop
5 years ago
Ezgi Çiçek c5ca4db8d0 [pulse][impurity] Use pulse for detecting impurity
5 years ago
Sungkeun Cho d55f5c02d5 [cost] Add modeled range
5 years ago
Sungkeun Cho 4ff2700bde [inferbo] Add InputStream.read model
5 years ago
Sungkeun Cho 2158090322 [inferbo] Extend Simple alias domain
5 years ago
Mitya Lyubarskiy 9e60679667 [nullsafe][easy] Remove duplicated test cases for condition redundant
5 years ago
Mitya Lyubarskiy b03d2fd520 [nullsafe] More test cases for Condition Redundant
5 years ago
Sungkeun Cho 21c890f23d [inferbo] Revise widen of bounds
5 years ago
Nikos Gorogiannis 3543c89c19 [lockless] detect lock acquisitions from methods annotated @Lockless
5 years ago
Sungkeun Cho afcb0ab46b [inferbo] Address collection add in loop
5 years ago
Mitya Lyubarskiy 4f8629727e [nullsafe] Delete nullsafe-gradual tests
5 years ago
Phoebe Nichols 426775c939 hook in incremental analysis add procedure test
5 years ago
Mitya Lyubarskiy 224d44d79a [nullsafe] Make intention of NullFieldAccess test explicit and add positive cases
5 years ago
Mitya Lyubarskiy 7132a84b0d [nullsafe] Reorder and add more cases for checking @PropagatesNullable annotation
5 years ago
Mitya Lyubarskiy 7a09618dc4 [nullsafe] Make test for @TrueOnNull and @FalseOnNull annotation specific about positive and negative cases
5 years ago
Dulma Churchill 86140581d5 [AL] Adding predicate for AL rule to check that a variable of a specific type is being captured in a block
5 years ago
Dulma Churchill ab683af1f1 [objc frontend] Keep the counter for block names local to each procedure
5 years ago
Mitya Lyubarskiy fbeb58c0f2 [nullafe] Consolidate different ways to suppress field not initialized
5 years ago
Mitya Lyubarskiy b1810ef3ff [nullsafe] @Nonnull should not suppress Field Not Initialized warning
5 years ago
Sungkeun Cho f79871c5fa [cost] Ignore character symbols in the cost results
5 years ago
Mitya Lyubarskiy 63a5ffb4dc [nullsafe] Make FieldNotInitialized cover negative cases together with positive ones
5 years ago
Mitya Lyubarskiy 5bd61e75f2 [nullsafe] Consolidate and expand tests for known initializers
5 years ago
Mitya Lyubarskiy 260176251c [nullsafe] Make @Initializer annotation test specific and without "builder" boilerplate
5 years ago
Mitya Lyubarskiy 0d69999de8 [nullsafe] Provide both positive and negative cases for @Cleanup annotation test
5 years ago
Mitya Lyubarskiy 090fa92c15 [nullsafe] Make FieldNotNullable test specific about both positive and negative cases
5 years ago
Mitya Lyubarskiy fe674937a4 [nullsafe] Improve the test for checking `onDestroy` handling
5 years ago
Sungkeun Cho 5e1e5d412c [inferbo] Add Java String constructor models
5 years ago
Dulma Churchill 41aa20e2b6 [pulse] Adding tests for pulse in Objective-C++ (the C++ part)
5 years ago
Dulma Churchill 5c58689493 [pulse] Add pulse tests for objective-c (the c part of it)
5 years ago
Dulma Churchill 27ea5d041b [biabduction] Rename use_after_free to avoid name clash with Pulse
5 years ago
Mitya Lyubarskiy 8add080e4a [nullsafe][refactor tests] split and improve FieldNotNullable tests
5 years ago
Dulma Churchill d04e098eb1 [AL] Add a is_static predicate
5 years ago
Mitya Lyubarskiy 1046c63b0f [nullsafe] Prepare to introduce gradual mode: split tests
5 years ago
Mitya Lyubarskiy 46cf107411 [nullsafe] Remove functionality for @Present annotations
5 years ago
Sungkeun Cho ad4bc0a905 [cost] Ignore non-int symbols in the cost results
5 years ago
Phoebe Nichols 43964c898c Add test for introducing a procedure
5 years ago
Phoebe Nichols 6874926b10 Clean specs directory before running capture
5 years ago
Sungkeun Cho a294085d9a [inferbo] Extend size alias domain for Java temporary variables
5 years ago
Mitya Lyubarskiy 2339791336 [nullsafe][EASY] rename test annotation for clarity
5 years ago
Mitya Lyubarskiy 5b0bdfb297 [nullsafe] Refine semantics of @Nonnull: obey minimum surprise principle
5 years ago
Ezgi Çiçek 193aa91b05 [litho] Hookup litho tests to main test suite
5 years ago
Sungkeun Cho 59f06568cf [inferbo] Use std::vector model for std::string
5 years ago
Jules Villard 9e5115a9e0 [annotreach] support for new `"symbol_regexps"` matcher
5 years ago
Dulma Churchill d0bfb856ed [AL] Add new predicate is_extern
5 years ago
Sungkeun Cho fadd8cb541 [inferbo] Prune array size in Java
5 years ago
Sungkeun Cho 77084782e1 [inferbo] Fix bug in integer pruning by pointer
5 years ago
Sungkeun Cho aaa40084c4 [inferbo] Add Preconditions.checkArgument model
5 years ago
Sungkeun Cho 5f5b3de91a [inferbo] Pruning collection.size in Java
5 years ago
Sungkeun Cho 28d617b345 [cost] Revise Java's cast model
5 years ago
Nikos Gorogiannis 86a1bbf1a7 [racerd] output access expressions language-sensitively
5 years ago
Sungkeun Cho e0a5cde2d5 [cost] Print elements field of collection
5 years ago
Ezgi Çiçek 22cfcc09f5 [cost] Add test about Preconditions
5 years ago
Sungkeun Cho 9c49841ebb [cost] Add Iterator.next model
5 years ago
Jules Villard 0af754f3d7 [annot reachability] apply sanitizers in more cases
5 years ago
Jules Villard 00cbc9c1e4 [annot reachability] add debug logging and light refactor
5 years ago
Sungkeun Cho d3056d3309 [cost] Ignore boolean symbols in the cost results
5 years ago
Ezgi Çiçek 5fa9f89285 [cost] Fix misleading test names
5 years ago
Sungkeun Cho 7c18231c5c [cost] Revise hasNext() to avoid bottom in condition
5 years ago
Sungkeun Cho 4530ef5bb0 [inferbo] Fix min of minmax and linear
5 years ago
Ezgi Çiçek 89782dfff9 [cost] Mask min/max symbols when printing big O
5 years ago
Ezgi Çiçek 9c5b704ddd [cost] Record bigO in error trace description
5 years ago
Ezgi Çiçek 57492f830b [inferbo] Add missing list initialization with initial capacity
5 years ago
Sungkeun Cho ddd4d98636 [inferbo] Add vector model: data
5 years ago
Sungkeun Cho 58b403c8ff [inferbo] Add vector model: empty
5 years ago
Sungkeun Cho c05062556f [inferbo] Add vector model: push_back
5 years ago
Sungkeun Cho f6b4f75e7c [inferbo] Pruning by vector::size
5 years ago
Sungkeun Cho e9cf5d33b3 [inferbo] Add models of vector constructors
5 years ago
Ezgi Çiçek 8286347ebf [inferbo] Add models for Java's Integer
5 years ago
Sungkeun Cho 8c4be65754 [inferbo] Ondemand value generation of vector as function parameter
5 years ago
Phoebe Nichols fc17a0fce3 Add test for cost change detection with incremental analysis
5 years ago
Sungkeun Cho f066776b17 [inferbo] Add model: vector size
5 years ago
Sungkeun Cho 7a8e7d13e9 [inferbo] Add model: vector constructor
5 years ago
Jules Villard fe701a17cc [diff] delete infer-diff
5 years ago
Jules Villard 13d54990bd [models] get rid of include-based C++ models
5 years ago
Martin Trojer 0fe30d13c5 add flag for (undefined) functions that should be modelled as mallocs
5 years ago
Phoebe Nichols e7af794abb Add incremental analysis test for changing a file
5 years ago
Phoebe Nichols e3668daaa5 Add test incremental_analysis_remove_file to the toplevel makefile
5 years ago
Ezgi Çiçek b8d25d1301 [inferbo] Fix the model of Collections.emptySet
5 years ago
Sungkeun Cho a3229fc43a [inferbo] Suppress intended integer underflow of unsigned integer
5 years ago
Sungkeun Cho 80f4b64915 [inferbo] Prune linear bound by minmax
5 years ago
Sungkeun Cho b3f52284ed [inferbo] Ignore the top of latest prune of callees
5 years ago
Ezgi Çiçek 127902222d [pulse] Filter AddressOfStackVariable from read only heuristic check
5 years ago
Sungkeun Cho 84a6561dc9 [inferbo] Precise mod semantics on unsigned integer
5 years ago
Sungkeun Cho 26a4f83e8b [inferbo] Avoid pruning on array elements
5 years ago
Jules Villard a857fec1f3 [increr] test incremental analysis
5 years ago
Sungkeun Cho f3311dfd98 [inferbo] Weak update on array contents
5 years ago
Ezgi Çiçek 09ab685c7e [pulse] Handle stack refs escaping their scope via pointer
5 years ago
Phoebe Nichols 70474ec2de Fix test buck_flavours_diff
5 years ago
Sungkeun Cho 124ab9fed7 [inferbo] Downgrade issues of void pointer
5 years ago
Ezgi Çiçek 0682ccc1e9 [cost][inferbo] Add models for indexOf
5 years ago
Nikos Gorogiannis af12e55344 [buck/java2] rely on (and modify) PATH to find infer binary to improve caching
5 years ago
Ezgi Çiçek 998e7c8fe3 [inefficientKeysetIterator] Turn on by default and fix msg
5 years ago
Jules Villard 937e971849 [objc] fix test so that it looks like it could compile
5 years ago
Jules Villard 15246ec2a2 [tests] attempt at fewer race conditions
5 years ago
Jules Villard a504a67ec2 [pulse] model some of `std::basic_string`
5 years ago
Jules Villard 14b9975cf3 [pulse] support modelling destructors
5 years ago
Jules Villard d9aadf5df2 [pulse] allow models in invalidation traces
5 years ago
Nikos Gorogiannis 4f46567fa7 [annotreach] kill custom path sensitivity
5 years ago
Nikos Gorogiannis 5b191c53ae [annotreach] clean up tests
5 years ago
Nikos Gorogiannis ffdc9193dc [annot-reach] complete the set of android thread annotations
5 years ago
Martin Trojer 124036ea0b New faster version of Diff/Test-Determinator
5 years ago
Jules Villard ef26e8bb28 [clang] NamespaceAliasDecl is just a no-op
5 years ago
Ezgi Çiçek 4114f7fbdf [inefficientKeysetIterator] Chase predecessors 4 more nodes to check the pattern
5 years ago
Ezgi Çiçek 102018734f [inefficientKeysetIterator] Add missing type checks
5 years ago
Jules Villard c89a8d3e63 delete ownership checker
6 years ago
Jules Villard e803a30c2d [clang] fix translation of `initListExpr` again
6 years ago
Jules Villard 14ce445f81 [pulse] run tests against C++17
6 years ago
Jules Villard 86decb83f6 [pulse] record attributes of address not edge-reachable in the post
6 years ago
Jules Villard 58b1df6bb9 [clang] fix destructor placement for temporaries in conditionals
6 years ago
Jules Villard 3a3c93140e [pulse] translate initListExpr in more cases
6 years ago
Jules Villard d96ab2458d [pulse] model lambda destructor
6 years ago
Jules Villard 91a2e2986b [pulse] model lambda capture by value
6 years ago
Jules Villard 433c144840 [pulse] calling known lambdas calls the corresponding proc name
6 years ago
Jules Villard 2bf6852b95 [pulse] model `std::function::operator=`
6 years ago
Jules Villard ae3089c2b2 [uninit] look at complex HIL expressions too
6 years ago
Jules Villard f15d9915a0 [pulse] better types to avoid `_fun_` prefix to proc names in bug traces
6 years ago