3094 Commits (2d49f4b7ade8e959f36f2c5846fcfc535e44ae8a)

Author SHA1 Message Date
Jules Villard d4bdfec49a [pulse] record invalidation events in histories
4 years ago
Jules Villard 7207e05682 [pulse] discard "pruned" atoms that refer to variables outside the pre
4 years ago
Jules Villard 9b0f1ab415 [pulse] make sure we do not leak local mutations of formals into the summary
4 years ago
Ezgi Çiçek ce209f6e4f [cost][inferbo] Add more models for NSDictionary and NSMutableDictionary
4 years ago
Nikos Gorogiannis 38cef2df0b [starvation] add model for Display.getRealSize
4 years ago
Sungkeun Cho 2886e849da [frontend,pulse] Avoid dereference of C struct
4 years ago
Sungkeun Cho 851fb3267b [frontend] ObjC setter/getter for C struct field
4 years ago
Sungkeun Cho fa10bb225a [uninit/pulse] Do not track captured variables of block
4 years ago
Loc Le ad2fc1148d [pulse][isl] manifest errors
4 years ago
Jules Villard 4c48b79f6c [siof] detect constexpr for all procedures
4 years ago
Daiva Naudziuniene e2c2c2b7ab [pulse] Separate issue type for nil messaging of non-pod return type
4 years ago
Sungkeun Cho 341169ff0f [inferbo] Evaluate cpp vector parameter symbolically
4 years ago
Ezgi Çiçek 2bdc4e5573 [ConfigImpact] Take cost insantiation and models into account
4 years ago
Ezgi Çiçek 913dfb8c37 [hoisting] Instantiate cost at call instruction
4 years ago
Radu Grigore fa9e19ac29 [topl] Deactivate baos test
4 years ago
Ezgi Çiçek 2492a4fd3f [tests] Enforce java 8 backward compatibility
4 years ago
Sungkeun Cho 3d4b3ab4be [cost] Do not print inferbo issues in tests
4 years ago
Jules Villard e549103d75 [pulse] use term_eqs
4 years ago
Jules Villard 8602b709ef [pulse][arith] change bit shifts by a constant factor into multiplications
4 years ago
Jules Villard d1b3e56574 [pulse] cap the size of literals in formulas
4 years ago
Jules Villard a5b4992873 [clang] add support for VarTemplateSpecializationDecl
4 years ago
Nikos Gorogiannis a32a1a41b0 [starvation] add model for WifiManager.getConnectionInfo
4 years ago
Nikos Gorogiannis 7b0d47217c [starvation] add models for checkPermission/checkSelfPermission
4 years ago
Daiva Naudziuniene 22c6a42d5c [deadstore][minor] Add missing FP_
4 years ago
Daiva Naudziuniene a947961d76 [deadstore] False positive caused by exceptional cfg
4 years ago
Nikos Gorogiannis 3783c52a76 [starvation] add models for getStreamVolume and getRingerMode
4 years ago
Daiva Naudziuniene 7a1ec45ebe [pulse][objc][nullptr] A special case for objc nil messaging for unknown call
4 years ago
Ezgi Çiçek df191c4084 [biabduction] Make test independent of Java specific concat
4 years ago
Gabriela Cunha Sampaio 68b4b5cc27 [pulse] IsInstanceOf simplification for null obj
4 years ago
Gabriela Cunha Sampaio 6357a97d6c [pulse] Adding model for Java Map
4 years ago
Radu Grigore 6f83c45e47 [topl] Remove nondet marker
4 years ago
Sungkeun Cho 346380c649 [pulse] Init struct fields with zero when a message is sent to nil
4 years ago
Loc Le cd3c7b55da [pulse] FN about bug after malloc
4 years ago
Jules Villard d9c037e062 [CLI] rename biabduction-specific option
4 years ago
Jules Villard c07af055eb [topl] delete shallow implementations in favour of a single Pulse one
4 years ago
Gabriela Cunha Sampaio fd1731c34b [pulse] Refining model for Java Collection interface
4 years ago
Ezgi Çiçek bf0fa55a45 [immutability] Add support for modifications to Litho's Immutable Maps
4 years ago
Jules Villard 55871dd285 [pulse][2/2] generate latent issues when null is allocated
4 years ago
Ezgi Çiçek abb6131e88 [cost] Add models for Java Set
4 years ago
Mitya Lyubarskiy d966003b31 [nullsafe] Change "Field not initialized" error message
4 years ago
Jules Villard e0142794a3 [lab] adjust README to reflect new option name
4 years ago
Daiva Naudziuniene e7aa401777 [pulse][uninit] Remove special case for ObjC block captured variables
4 years ago
Sungkeun Cho b004a7f510 [liveness] Handles live variables in catch block
4 years ago
Sungkeun Cho d9021b9517 [frontend] Add try_entry, try_exit statements for C++ try-catch blocks
4 years ago
Martin Trojer 18f28395e8 [clang] migrate to llvm/clang11
4 years ago
Ezgi Çiçek c67f3d5753 [objc] Suppress block counter when getting method name
4 years ago
Daiva Naudziuniene 778c629401 [clang frontend][objc] Fix types of variables captured by reference in objc blocks
4 years ago
Ezgi Çiçek 0599185fca [litho] Add test for replicating issue with null access path args
4 years ago
Gabriela Cunha Sampaio 2d56b1bff1 [pulse] Suppress reports containing skipped calls
4 years ago
Gabriela Cunha Sampaio cba144b779 [pulse] Adapting error messages
4 years ago
Nikos Gorogiannis 6a19997303 [racerd] fix analysis of class initializers
4 years ago
Nikos Gorogiannis f3984e864d [starvation] fix FP with @NonBlocking caller and blocking calls in callees
4 years ago
Daiva Naudziuniene 3ad19cd83d [pulse][nullptr][objcpp] Warn on sending a message to nil when return type is non-POD
4 years ago
Daiva Naudziuniene 709f9127b2 [pulse][objcpp][nullptr] Link self with return to preserve the trace
4 years ago
Gabriela Cunha Sampaio f719294d41 [pulse] Model for TextUtils.isEmpty()
4 years ago
Gabriela Cunha Sampaio e739099a40 [pulse] Model for Java instanceof
4 years ago
Gabriela Cunha Sampaio 752c494970 [pulse] Adding temporary model for Collection.isEmpty()
4 years ago
Nikos Gorogiannis 3ec6410072 [starvation] ConnectivityManager.getActiveNetworkInfo
4 years ago
Nikos Gorogiannis 136281edb5 [starvation] add distinct issue for blocking IPC Binder calls
4 years ago
Sungkeun Cho 598cb10170 [ConfigImpact] Use config-impact-issues.exp instead of issues.exp
4 years ago
Daniel Schoepe 91015609b2 [racerd] Add models for javax.crypto.Mac methods (#1395)
4 years ago
Daiva Naudziuniene e4ff4b500a [pulse][nullptr][objc] Add nil summaries for ObjC instance methods
4 years ago
Ezgi Çiçek 7f9d56b1b5 [ConfigImpact] Only report on functions that occur on a given json config data
4 years ago
Ezgi Çiçek a57d572bca [ConfigImpact] Enable clang analysis and add tests
4 years ago
Jules Villard 1320e79201 [liveness] ignore most dead stores when the variable has been passed by reference
4 years ago
Gabriela Cunha Sampaio 671727be53 [pulse] Implementing temporary model for Java instanceof operator
4 years ago
Jules Villard bc841595d5 [tests] add missing copyright
4 years ago
Sungkeun Cho 7912877166 [uninit] Revise error message to include access paths
4 years ago
Sungkeun Cho c5cbd3142e [uninit] Fix a bug on nested struct initialization
4 years ago
Sungkeun Cho 7e6654cd25 [ConfigImpact] Add a new checker: ConfigImpactAnalysis
4 years ago
Jules Villard 4c357e434b [pulse] apply discovered variable equalities eagerly
4 years ago
Jules Villard 84d1fd3b52 [pulse] add tests
4 years ago
Adam Ernst bf87088a35 Don't warn about direct ivar access for atomic readonly properties
4 years ago
Jules Villard 4f77f82cba [pulse] some models should "prune" instead of "and"
4 years ago
Jules Villard a1db290c2e [pulse] models for folly::Optional::operator{*,->}()
4 years ago
Ezgi Çiçek 7af9d02542 [inferbo] Handle global constant array loads in Obj-C
4 years ago
Nikos Gorogiannis 745f04f77d [racerd] races in nullsafe classes
4 years ago
Gabriela Cunha Sampaio bc49f1deb1 [pulse] Adapting --pulse-model-return-nonnull for Java
4 years ago
Gabriela Cunha Sampaio 54c3dafef8 [pulse] Modeling Java instanceof operator as returning true
4 years ago
Ezgi Çiçek a6a279d845 [inferbo] Handle field access from global struct arrays
4 years ago
Sungkeun Cho 9cdd87b67b [inferbo] Handle when const global assigned to local variable
4 years ago
Nikos Gorogiannis 7f6798999a [starvation] warn on SettableFuture.set under lock
4 years ago
Ezgi Çiçek f6f47cd7c9 [inferbo][cost] Add tests for global constant array of structs initialization
4 years ago
Sungkeun Cho b50ff19291 [frontend] Reset id generator before generating ObjC getter/setter
4 years ago
Ezgi Çiçek b57ccc3364 [cost] Remove expensive modeling for Provider.get
4 years ago
Xiaoyu Liu 285ddb4a98 Infer# integration (#1361)
4 years ago
Daiva Naudziuniene e0f0022fa1 [pulse][objcpp][npe] Basic examples
4 years ago
Ezgi Çiçek 802dce02d1 [cost] Model Collection's containsAll
4 years ago
Ezgi Çiçek 0a517db238 [cost] Model Collection's contains
4 years ago
Ezgi Çiçek 90974b92e4 [cost] If the modeled cost is Top, underestimate the cost
4 years ago
Sungkeun Cho 60fe0c96b9 [pulse] Ignore array elements in uninitialized value check
4 years ago
Sungkeun Cho 27ab8bd253 [pulse] Uninitialized check for struct fields
4 years ago
Jules Villard f5936689a4 [pulse] case split in model of free(3)
4 years ago
Sungkeun Cho e185233d71 [frontend] Fix incorrect order of statements (paren)
4 years ago
Sungkeun Cho 89c8e25deb [frontend] Add tests of using single field struct
4 years ago
Jules Villard 12bcf119c8 [pulse] fix C test not calling the functions it was supposed to
4 years ago
Gabriela Cunha Sampaio be39e74bd4 [pulse] Modeling checkState and checkArgument
4 years ago
Sungkeun Cho b289d240f5 [frontend] Fix incorrect order of statements (implicit cast)
4 years ago
Sungkeun Cho 8ed44df7f6 [frontend] Fix incorrect order of statements (negation)
4 years ago
Gabriela Cunha Sampaio e04f0a0ffa [pulse] Modeling checkNotNull function
4 years ago
Sungkeun Cho 051473394b [frontend] Fix incorrect order of statements
4 years ago
Sungkeun Cho f3a29d1c9c [frontend] Add a return param of struct type in ObjC methods
4 years ago
Gabriela Cunha Sampaio 549954cb97 [pulse] Suppress Pulse NPE reports on @Nullsafe
4 years ago
Gabriela Cunha Sampaio 27acb0fe4e [pulse] Modeling Java Integer class
4 years ago
Gabriela Cunha Sampaio e6d50837ba Renaming Java tests in Pulse
4 years ago
Gabriela Cunha Sampaio 9362b22317 Copying Java biabduction tests into Pulse
4 years ago
Sungkeun Cho eeb34231fa [pulse] Loosen fieldname comparison in state
4 years ago
Gabriela Cunha Sampaio caa8bd0e39 Renaming biabduction Java tests
4 years ago
Ezgi Çiçek 34eb8ebafb [cost] Model Map.containsValue
4 years ago
Ezgi Çiçek 840a10afaa [pre-analysis] Remove throw/catch handling from preanalysis
4 years ago
Sungkeun Cho 1bce54aaf3 [frontend] Handle struct copy in C
4 years ago
Nikos Gorogiannis 7b8145b8bc [racerd][C++] do not report on lambdas at top level
4 years ago
Sungkeun Cho 759fddc7e8 [frontend] Fix a bug in translation of empty for-loop
4 years ago
Artem Pianykh 3aaf1de4f7 [java] Support Ultralight synthetic names
4 years ago
Daiva Naudziuniene 16718384b3 [pulse] Optional Empty Access false positives we want to address
4 years ago
Jules Villard 2ac2f019df [clang] fix some loops with no brackets
4 years ago
Jules Villard ad45bbe28d [clang] fix order of translation for [this]
4 years ago
Daiva Naudziuniene 0c6eedc835 [pulse] Model std::__optional_storage_base::has_value
4 years ago
Artem Pianykh edc8754727 [nullsafe] Fix behaviour of --no-nullsafe-optimistic-third-party-in-default-mode
4 years ago
Ezgi Çiçek d02f0b322e [cost] Record zero operation cost for procedures that simply throw
4 years ago
Ezgi Çiçek 731b632632 [cost] Procedures with empty body gets 0 cost
4 years ago
Loc Le 9228899f38 ISL tests
4 years ago
Sungkeun Cho 3685cc6fdd [pulse] Revise trace of uninitialized value check
4 years ago
Sungkeun Cho 1bf82d9f86 [pulse] Give semantics of dispatch_sync in ObjC
4 years ago
Sungkeun Cho fa29098376 [pulse] Inter-procedural uninit analysis
4 years ago
Daiva Naudziuniene b5df1be318 [pulse] Model std::vector:empty()
4 years ago
Sungkeun Cho 69371bb2c5 [pulse] Change to ExitProgram state when calling noreturn function
4 years ago
Sungkeun Cho 0cbe2f9b08 [pulse] Uninitialized value check in pulse
4 years ago
Ezgi Çiçek da950064d2 Add ability to skip translation with negation (source doesn't contain)
4 years ago
Sungkeun Cho e4b3971441 [frontend] Fix capture mode in ObjC
4 years ago
Radu Grigore f8aa139b88 [topl] Be more precise in extracting summaries.
4 years ago
Radu Grigore 3478a8828f [topl] Added limits, to avoid high runtimes in corner-cases.
4 years ago
Daiva Naudziuniene 0343f5c7d9 [pulse] Remove duplicate `by` from a trace
4 years ago
Ezgi Çiçek b46433642c [immutability] Add a new experimental immutability analysis
4 years ago
Ezgi Çiçek 11141cb100 [impurity] Collect all accesses
4 years ago
Nikos Gorogiannis 0105f280a3 [racerd] consider ownership of interface calls
4 years ago
Daiva Naudziuniene 4e658903ae [pulse] Check the validity of the addresses captured by lambda only for captures by reference
4 years ago
Radu Grigore e00dbe46b1 [topl] Got rid of quadratic runtime for long methods.
4 years ago
Radu Grigore d652e22a0a [topl] Don't bubble up errors.
4 years ago
Radu Grigore d3ff423bb1 [topl] Don't put trivial large steps in trace.
4 years ago
Radu Grigore c829db4964 [topl] Fixed an eggregious performance issue (repeated summaries).
4 years ago
Radu Grigore 59daa1f022 [topl] Added the ArrayWrite event type.
4 years ago
Radu Grigore 33071b82b5 [topl] Interprocedural analysis (in Pulse)
4 years ago
Radu Grigore 206686718f [topl] Report error traces
4 years ago
Mitya Lyubarskiy c6a33c88b7 [nullsafe] Prettier error rendering for untrusted values
4 years ago
Joscha Benz 606a3c95d9 Add a config option to whitelist common initializer values for liveness analysis (#1340)
4 years ago
Sungkeun Cho ce9472f451 [cost] Add trace of closure in autoreleasepool checker
4 years ago
Ezgi Çiçek d3f1aab803 [preanalysis] Handle assigning blocks to locals in closure substitution
4 years ago
Martin Trojer 9fd1a87cd5 Upgrade Infer to clang10
4 years ago
Ezgi Çiçek c80b80d0d7 [preanalysis] Handle closure substitution in conditionals
4 years ago