3415 Commits (18097db701556eedf46ffba544eac915959dd353)

Author SHA1 Message Date
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
Ezgi Çiçek 17a3bec2ca [cost] Add tests for objc differential cost analysis
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
Nikos Gorogiannis 7e4dc9477e [buck][java] remove genrule integration and combined mode
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
Martin Trojer 212068f89b Make buck tests more robust
4 years ago
Martin Trojer 4487513a2f [ndkbuild] only make ndkbuild test build for x86
4 years ago
Martin Trojer 1a04fc8f53 Make buck_flavors_deterministic_test more robust
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
Sungkeun Cho 4d076b2771 [test] Fix class name in test
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
Jules Villard 29f3941600 [clang] deal with conditionally-destroyed temporaries
4 years ago
Jules Villard 3d588b2751 [clang] get rid of FallbackNode
4 years ago
Jules Villard 2efa22073c [clang] force node creation in switch statements
4 years ago
David Pichardie 2f09b39f56 New java source parser for declaration locations (experimental)
4 years ago
Mitya Lyubarskiy 79d65a83df [nullsafe] Record correct param index in json
4 years ago
Jules Villard f2e3f67f40 [clang] change the way we wire up return statements
4 years ago
Daiva Naudziuniene 019adf7e78 [pulse] Model for folly::Optional::get_pointer
4 years ago
Jules Villard f411c7d131 [pulse] do not stop at the first error in function calls
4 years ago
Jules Villard 578583f2ab [pulse] check that new arithmetic facts are consistent with the heap
4 years ago
Jules Villard e32f6ca360 [clang] fix bad interaction between ConditionalOperator and initializers
4 years ago
Sungkeun Cho ac009cb3aa [cost] Add expensive autoreleasepool size issue type
4 years ago
Daiva Naudziuniene 58f1fd8b32 [pulse] Optional Empty Access for std::optional
4 years ago
Nikos Gorogiannis e36463959c [starvation] acquisitions mod location
4 years ago
Daiva Naudziuniene eb4684f6d5 [pulse] Less precise model for constructing optional from value
4 years ago
Daiva Naudziuniene a4241eeb43 [pulse] Refactor Optional models
4 years ago
Jules Villard b6460870dc [biabd] rename a test to follow naming conventions
4 years ago
Mitya Lyubarskiy 218bb81885 [nullsafe] Store inconsistent subclass param index in json output
4 years ago
Mitya Lyubarskiy c3f1ff0386 [nullsafe] Store field name in output json
4 years ago
Mitya Lyubarskiy 52ec2e5009 [nullsafe][annotation graph] Add test case for annotation graph
4 years ago
Artem Pianykh 1eb3d688be [java] Support human readable issues types in @SuppressLint
4 years ago
Mitya Lyubarskiy dc16825ba7 [nullsafe][annotation graph] Support `Object.equals()`
4 years ago
Mitya Lyubarskiy 192de51707 [nullsafe][annotation graph] Account for virtual params
4 years ago
Mitya Lyubarskiy dc667bec0f [nullsafe][annotation graph] Snapshot test for annotation graph
4 years ago
Daiva Naudziuniene 3d74f39102 [pulse] Improve trace for Optional Empty Access
4 years ago
Artem Pianykh 816af4a355 [java][reporting] @SuppressLint now blocks _only_ specified issue types
4 years ago
Ezgi Çiçek 9111526a5e [frontend] Track protocols in A<ObjCProtocol>
4 years ago
Josh Berdine 47fad6eaf3 [buck] Do not use .buckversion
4 years ago
Daiva Naudziuniene b17861b1c8 [pulse] More precise model for constructing folly::Optional<Value> from Value
4 years ago
Ezgi Çiçek a09ea5ea9c [cost] add model for iterating over collections via block
4 years ago
Sungkeun Cho 6bf091d8c0 [frontend] Revise translation of message expression in ObjC frontend
4 years ago
Sungkeun Cho 98aee0837e [infer] Fix `make clean` of ObjC frontend test
4 years ago
Sungkeun Cho 3df2bbba96 [cost] Fix on-demand generation of NSEnumerator
4 years ago
Sungkeun Cho 43b98fc0cf [preanalysis] Replace overridden method calls in ObjC
4 years ago
Ezgi Çiçek 067020f4df [inferbo] Add model for NSFastEnumeration
4 years ago
Daiva Naudziuniene 059c0f24a2 [pulse] Model Optional value_or
4 years ago
Nikos Gorogiannis b19b8a8d8c [buck-java][test] remove dead variables
4 years ago
Sungkeun Cho 67d74c7c3d [cost] Revise nextObject model to handle multiple enumerators
4 years ago
Sungkeun Cho a3fd1cad56 [cost] Fix function name in model `arrayWithObjects:`
4 years ago
Sungkeun Cho 95efb32fb4 [cost] Enable passing enumerator as paramter in ObjC
4 years ago
Sungkeun Cho 198c700e87 [cost] Add an option printing/suppressing function pointers in cost
4 years ago
Sungkeun Cho cd27695524 [cost] Add model: NSFileManager.contentsOfDirectoryAtURL
4 years ago
Sungkeun Cho dbc33aa427 [cost] Add model: NSKeyedUnarchiver.decodeObjectForKey:
4 years ago
Sungkeun Cho b3c74c4152 [cost] Add models: NSURL.getResourceValue, path
4 years ago
Sungkeun Cho 0f22f1bd95 [cost] Add models: NSOrderedSet.orderedSet, orderedSetWithArray
4 years ago
Ezgi Çiçek 2679bb0b61 [inferbo] Add model for `String.valueOf(char[])`
4 years ago
Sungkeun Cho 0f44f39b41 [cost] Support closure symbols in operation/allocation cost kinds
4 years ago
Sungkeun Cho 075581ec8d [cost] Extend the polynomial domain for closure field
4 years ago
Ezgi Çiçek cbe796e541 [preanalysis] Add a new preanalysis for ObjC's copy and mutableCopy
4 years ago
Ezgi Çiçek 8da46d0f0d [inferbo] Add naive models for mutableCopy and copy
4 years ago
Ezgi Çiçek f7fed13d0c [inferbo] Model NSSet/NSOrderedSet as collections
4 years ago
Ezgi Çiçek f5c2be5543 [frontend] Treat allocWithZone: same as alloc
4 years ago
Ezgi Çiçek ec88edd564 [inferbo] Add model for NSDictionary.initWithDictionary
4 years ago
Sungkeun Cho 1154a2673a [inferbo] Introduce closure value
4 years ago
Ezgi Çiçek eb0fe0f995 [cost] Refactor dispatch mechanism to be uniform across cost kinds
4 years ago
Jules Villard 7fdb33b710 [pulse] report errors only when the PRUNE nodes along the path are true
4 years ago
Ezgi Çiçek 980f110156 [cost] Add naive model for forEach
4 years ago
Sungkeun Cho 4e7fc51ad2 [cost] Add FN tests on enumerator
4 years ago
Mitya Lyubarskiy 506907568b [nullsafe] Store information about nullable method calls as part of issue json
4 years ago
David Pichardie 2c6fd7a617 Running Java source parser from command line
4 years ago
Daiva Naudziuniene 22d317c940 [pulse] Move pulse model flags to .inferconfig for pulse tests
4 years ago
Sungkeun Cho a9e2322bda [closure] Keep closure parameter in specialized procedure
4 years ago
Martin Trojer 26dcd63a25 Revert "upgrade to clang10"
4 years ago
Nikos Gorogiannis 63586d98df [starvation] make analysis work with sil instead of hil
4 years ago
Sungkeun Cho 3dc96deea5 [cost] Fix test: field of object
4 years ago
Mitya Lyubarskiy b019143577 [nullsafe] Record relevant third party method in case of bad param passed.
4 years ago
Sungkeun Cho 03b330214f [cost] Add FN test: saving lambda in object field
4 years ago
Ezgi Çiçek 68597c5908 [cost] Remove --perf-profiler-data-file option and loom_test.json
4 years ago
Sungkeun Cho ead975f193 [closure] Substitute closure parameter when given via variable
4 years ago
Ezgi Çiçek 6678455838 [cost] Rename test files to enable arc lint & editor highlighting
4 years ago
Martin Trojer 15786e8f09 upgrade to clang10
4 years ago
Sungkeun Cho 8222d5fa1f [cost] Ignore tagged pointers in autoreleasepool size
4 years ago
Sungkeun Cho 498b49769c [cost] Add model of NSArray.index_of_object_passing_test
4 years ago
Ezgi Çiçek ee5ccfeb9b [cost] Add differential test for unreachable cost issue type
4 years ago
Jules Villard 6c8fc85e22 [preanalysis] do not nullify vars captured by ref
4 years ago
Sungkeun Cho 6ebc5033a8 [cost] Add model of CFAutorelease
4 years ago
Sungkeun Cho 4aa3338947 [cost] Add autorelease models: some methods of NSKeyedUnarchiver
4 years ago
Sungkeun Cho 83641788d1 [cost] Use prefix convention not returning autoreleased object
4 years ago
Sungkeun Cho 76ad9915a1 [cost] Increase autoreleasepool size when non-ARC call ARC
4 years ago
Daiva Naudziuniene 91a33f6edc [frontend] Captured struct variables in cpp lambdas
4 years ago
Daiva Naudziuniene 857daf63c9 [frontend] Capture reference variables
4 years ago
Daiva Naudziuniene 42abe5b277 [frontend] Fix type of captured vars in lambda's body
4 years ago
Daiva Naudziuniene d0cb245303 [frontend] Fix capture init for cpp lambdas
4 years ago
Qianyi Shu 88eb380cc3 [cost] fix objc block name comparison
4 years ago
Qianyi Shu 8a844ab67f [cost] add differential cost test for objc
4 years ago
Mitya Lyubarskiy bc4b1882dc [nullsafe] Add a field to jsonbug_t: unvetted third party methods
4 years ago
Mitya Lyubarskiy ee0b62b958 [nullsafe] Always output `nullsafe_extra` to the result json
4 years ago
Jules Villard 03bc3f31c8 [pulse] add option to skip functions/classes
4 years ago
Sungkeun Cho cebf95afc4 [cost] Select autorelease trace with bigger polynomial
4 years ago
Sungkeun Cho 9f43c88565 [cost] Add a FN test using block (autoreleasepool)
4 years ago
Sungkeun Cho a40ad1c733 [cost] Report with relative paths on xcode_isysroot in tests
4 years ago
Ezgi Çiçek 22e25fda76 [inferbo] Ignore symbolic values in ranges when upper bound is constant
4 years ago
Nikos Gorogiannis 49765274b5 Revert "[sqlite] enforce attribute.is_defined iff procdesc is not NULL"
4 years ago
Sungkeun Cho 6dc4612363 [cost] Add trace for autoreleasepool size
4 years ago
Ezgi Çiçek dcad238f11 [cost] Include the previous cost's trace in differential traces
4 years ago
Nikos Gorogiannis 84ff14f2e7 [sqlite] enforce attribute.is_defined iff procdesc is not NULL
4 years ago
Ezgi Çiçek 9b84af1813 [cost] Replace polynomial category zero with unreachable
4 years ago
Sungkeun Cho 4d3c22e167 [cost] Fix cost-issues.exp in autoreleasepool
4 years ago
Sungkeun Cho 8fde3f2479 [cost] Revise CostDomain.plus functionality: zero+unreachable
4 years ago
Sungkeun Cho 6ff1a42b6a [cost] Add tests run with ARC/non-ARC sources
4 years ago
Sungkeun Cho cb4cf115e1 [cost] Autoreleasepool size analysis
4 years ago
Sungkeun Cho 4dbfb72260 [cost] Extend cost_item json format to print autoreleasepool_size
4 years ago
Nikos Gorogiannis e9a6195b52 [sqlite] index on proc_uid
4 years ago
Qianyi Shu c3909c0434 [cost] add iterator model for NSOrderedSet
4 years ago
Qianyi Shu 5ed04a8e9a [frontend] Add translation of dictionaryWithObjects:forKeys:count:
4 years ago
Sungkeun Cho 44ff6df1d6 [frontend] Add autoreleasepool code block
4 years ago
Qianyi Shu d908accd0c [cost] add inferbo model for NSArray.arrayByAddingObjectsFromArray, NSMutableArray.initWithCapacity
4 years ago
Daiva Naudziuniene 4401701578 [pulse] Model for std::function copy constructor
4 years ago
Ezgi Çiçek 2b1e036a15 [inferbo] Add model for NSDictionary.dictionary
4 years ago
Ezgi Çiçek 06489dced0 [cost] Add FP test for NSDictionary initialization
4 years ago
Ezgi Çiçek 7cb8145ef6 [litho] Fix FN caused by special treatment of ResType suffixes
4 years ago
Dulma Churchill fdb1640e12 [closures preanalysis] [3/n] Adding models to dispatch functions and remove code for previous specialization and dispatch models
4 years ago
Dulma Churchill 2e66bf6b8f [closures preanalysis][2/n] Add second preanalysis that fills the body of the specialized methods with blocks
4 years ago
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