8068 Commits (70e062e7c05b54f0f08a03136d9994c3e2505edd)

Author SHA1 Message Date
Ezgi Çiçek d1935941a6 [control][hotfix] Don't fail when not all exit nodes are prune nodes
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
Loc Le 12c582a698 [pulse] explicit isl error specs for free/delete
4 years ago
Daiva Naudziuniene 16718384b3 [pulse] Optional Empty Access false positives we want to address
4 years ago
Loc Le 92341d8ffc isl summary for memory store
4 years ago
Kevin Higgs afc9666e15 Fix SIL to HIL conversion for Exp.Var inside Lfield and Lindex (#1372)
4 years ago
Luka Rahne 66d0eaa357 Fix #1366; apply xml escaping on generated xml report (#1367)
4 years ago
Gabriela Cunha Sampaio e065b0b0b2 Change Pulse Checker from experimental for C++ and Java to experimental for Java only
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
Loc Le 6eb79feaaf [Pulse] explicit Ok/Error summaries: bi-abduction for memory read
4 years ago
Sungkeun Cho 1166c13cb1 [log] Add a missing line space
4 years ago
Franco Raimondi 366ca37ff9 apache commons lang3 string utils model (#1346)
4 years ago
Jules Villard 60119943a6 [nullsafe] do not crash when java_class_info is empty
4 years ago
Daiva Naudziuniene 47954fc428 [pulse] Do not drop astates in ExitScope instruction
4 years ago
Daiva Naudziuniene 0c6eedc835 [pulse] Model std::__optional_storage_base::has_value
4 years ago
Sungkeun Cho b4b75c4ffb [config] Use not-reversed list types for `Config` variables
4 years ago
Sungkeun Cho 153005c3cb [config] Add RevList for explicit reversed list in Config
4 years ago
Artem Pianykh edc8754727 [nullsafe] Fix behaviour of --no-nullsafe-optimistic-third-party-in-default-mode
4 years ago
Nikos Gorogiannis f779ed8951 [memtrace] allow memory tracing of analysis workers
4 years ago
Nikos Gorogiannis ea321b42a2 [buck] fix no-inline arguments order when doing a query
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
Artem Pianykh 9d2daee569 [nullsafe] Fix checkState model
4 years ago
Loc Le b1d371e54d Pulse with explicit Ok/Error summaries
4 years ago
Ezgi Çiçek d02f0b322e [cost] Record zero operation cost for procedures that simply throw
4 years ago
Nikos Gorogiannis 72a59553d2 [buck] store query args in argument file
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
Jules Villard b5bd85c967 [pulse] quantifier elimination using var_eqs
4 years ago
Jules Villard 8b2b797136 [pulse] minor rename: eq -> lin_eq
4 years ago
Sungkeun Cho 3685cc6fdd [pulse] Revise trace of uninitialized value check
4 years ago
Jules Villard 0980bbe2b3 [pulse] also visit values involved in array accesses
4 years ago
Jules Villard 7d11a26d66 [pulse] canonicalise attributes too
4 years ago
Jules Villard 27150cb7d3 [pulse] not-completely-broken interprocedural arrays
4 years ago
Jules Villard b57f6527b7 [pulse][minor] remove unused argument
4 years ago
Jules Villard 66365c2d54 [pulse] add comment for [subst_find_or_new]
4 years ago
Nikos Gorogiannis 8c4b212545 [ondemand] kill analyze_proc_desc
4 years ago
Nikos Gorogiannis f4c52851fb [ondemand] remove ref to execution environment
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 67417e5fb7 [pulse] Refactoring: reuse proc_name_of_call result
4 years ago
Sungkeun Cho 69371bb2c5 [pulse] Change to ExitProgram state when calling noreturn function
4 years ago
Nikos Gorogiannis 7e79b4826f [proc locker] minor cleanup
4 years ago
Nikos Gorogiannis 75d2674a45 [biabduction] reduce logging noise
4 years ago
Sungkeun Cho 0cbe2f9b08 [pulse] Uninitialized value check in pulse
4 years ago
Ezgi Çiçek 8b6bd61c2c Close forgotten channel
4 years ago
Ezgi Çiçek da950064d2 Add ability to skip translation with negation (source doesn't contain)
4 years ago
Joshua Selbo 559dc82bd6 [nullsafe] Register Android Paint enum values as non-nullable
4 years ago
Nikos Gorogiannis caa7f9a7d7 [process pool] remove file locking protocol
4 years ago
Jules Villard e526cf157a [pulse] filter out unsat states earlier
4 years ago
Nikos Gorogiannis e152ba8f33 [stats] fix analyzed count
4 years ago
Sungkeun Cho e4b3971441 [frontend] Fix capture mode in ObjC
4 years ago
Sungkeun Cho 2d8f404a5f Revert "[Refactoring] Use pvar instead of mangled in CapturedVar"
4 years ago
Jules Villard ab2813e355 [pulse] canonicalize wrt equality relation
4 years ago
Jules Villard 5423bb1699 [pulse] make sure we checked satisfiability on summaries
4 years ago
Jules Villard 98b562c844 [pulse][refactor] extract and reuse a `SatUnsat` module
4 years ago
Jules Villard 581487ec61 [pulse] record aliasing information in the arithmetic
4 years ago
Sungkeun Cho 49bfd206a0 [Refactoring] Use pvar instead of mangled in CapturedVar
4 years ago
Sungkeun Cho 6972d9cb91 [Refactoring] Use inline record for captured variable type
4 years ago
Nikos Gorogiannis 695a3df7be [exe-env] refactor into a two-level hashtable
4 years ago
Nikos Gorogiannis 15943b1ea1 [biabduction] don't specialise models
4 years ago
Radu Grigore 6a61a85964 [topl] Refactor: Put constraint code in PulseTopl.Constraint.
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
Ezgi Çiçek 7de9c49a6d [minor] Remove unnecessary exists check over singleton list
4 years ago
Nikos Gorogiannis 3ceac69079 [lru] strengthen tests with key-value pair order
4 years ago
Sungkeun Cho 1209f53952 [cost] Move the comment about trace for cost increase to www
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
Nikos Gorogiannis 9acdedeef8 [exe_env] abstract type
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
Radu Grigore 9c57668714 [topl] Extract summaries from posts
4 years ago
Radu Grigore 009f3b651c [topl] Small steps in Pulse
4 years ago
Radu Grigore 2ce0c680a7 [topl] Added a hook for large steps in Pulse.
4 years ago
Radu Grigore 72a5a1e7ec [topl] Small step hook inside Pulse
4 years ago
Ezgi Çiçek 128d13d810 [inferbo][cost] Refactor cost env
4 years ago
Ezgi Çiçek 9e4036cf2f [impurity] Change Var to Pvar
4 years ago
Mitya Lyubarskiy bf6fa3647c [nullsafe] Record info for "Parameter Not Nullable" issues in json
4 years ago
Ezgi Çiçek 0d0b3d2eb4 [impurity] Hoist out formals and procname
4 years ago
Mitya Lyubarskiy 7dcbacf693 [nullsafe] Add an option to warn about unvetted third party in default mode
4 years ago
Mitya Lyubarskiy c6a33c88b7 [nullsafe] Prettier error rendering for untrusted values
4 years ago
David Pichardie b073b55b1a Fixing warning in experimental Java source parser
4 years ago
Joscha Benz 606a3c95d9 Add a config option to whitelist common initializer values for liveness analysis (#1340)
4 years ago
Nikos Gorogiannis bab5aa4b08 [racerd] refactor processing of calls
4 years ago
Sungkeun Cho ce9472f451 [cost] Add trace of closure in autoreleasepool checker
4 years ago
Nikos Gorogiannis 3eed17488a [racerd] improve summary processing on calls
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 2b4c3fcbaa [clang] remove redundant Procdesc.Node prefixes
4 years ago
Jules Villard 73195ca203 [clang] remove named node_name
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
Ezgi Çiçek f3f77fa0b4 [cost] Silence the log in non-debug mode and refactor
4 years ago
Joshua Selbo 4c85f98c29 [nullsafe] Register View Properties as known non-nullable fields
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
Mitya Lyubarskiy cced510cb9 [nullsafe][annotation graph] Don't fail while dealing with synthetic fields
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 49dc61b9c5 [clang] refactor to expose when creating destructor call will succeed
4 years ago
Jules Villard 578583f2ab [pulse] check that new arithmetic facts are consistent with the heap
4 years ago
Jules Villard 47e9f8ffec [pulse][easy] code factorisation
4 years ago
Jules Villard e32f6ca360 [clang] fix bad interaction between ConditionalOperator and initializers
4 years ago
Ezgi Çiçek 14b32f1727 [cost] Register forgotten expensive issue
4 years ago
Daiva Naudziuniene 82778eedde [bug hash] Location independent procname
4 years ago
Nikos Gorogiannis 0eb686aad4 [racerd] move more domain ops to domain
4 years ago
Sungkeun Cho ac009cb3aa [cost] Add expensive autoreleasepool size issue type
4 years ago
Mitya Lyubarskiy 47c1a327c7 [nullsafe] Conventional style output of the field json
4 years ago
Nikos Gorogiannis 5e50e9947c [racerd] move some domain operations into domain module
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
Sungkeun Cho ac624e9520 [cost] Fix ignoring function pointer symbols in degree_with_term
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 45ff034c79 [clang] improve debug logs
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 4aea679d30 [nullsafe] Store method name and param types in output json
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 ae52fb4787 [nullsafe] Add a model for WifiConfiguration.SSID
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
Jules Villard bd2d2d129e [workspace] fix broken [SourceFile.to_abs_path]
4 years ago
Daiva Naudziuniene 3d74f39102 [pulse] Improve trace for Optional Empty Access
4 years ago
Jules Villard 2f8e1ed940 [workspace] SourceFile.is_under_project_root true when under workspace too
4 years ago
Daiva Naudziuniene 9166d60af7 [bug hash] Ignore line and column in lambda's name when computing bug hash
4 years ago
Daiva Naudziuniene bd997be9a3 [doc] Documentation 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
Mitya Lyubarskiy 0bf010d72a [nullsafe] Build and output the annotation graph
4 years ago
Mitya Lyubarskiy c07223293d [nullsafe][annotation graph] Issue a provisional violation in assignments between two provisionally nullables
4 years ago
Mitya Lyubarskiy 18ccc321c8 [nullsafe][annotation graph] Don't try to annotate primitives
4 years ago
Mitya Lyubarskiy a4efdce9b0 [nullsafe][annotation graph] Support provisionally nullable in fields
4 years ago
Martin Trojer 671d9fa291 Add --clang-yojson-file flag
4 years ago
Nikos Gorogiannis 8c40ed53d7 [typ] move type constants to own module
4 years ago
Mitya Lyubarskiy 310c3f2c34 [nullsafe][Annotation graph] Glueing together: preparing to build annotation graph
4 years ago
Mitya Lyubarskiy 234aae3e60 [nullsafe][annotation graph] Introduce ProvisionallyNullable nullability
4 years ago
Mitya Lyubarskiy a673a13b44 [nullsafe][refactor] Store all joinees' origins in InferredNullability
4 years ago
Mitya Lyubarskiy ffe1b55f42 [nullsafe] Remove uneccessary logic in chosing join priority
4 years ago
Mitya Lyubarskiy 19d1d2a678 [nullsafe][annotation graph] Annotation graph: introduce ProvisionalAnnotation
4 years ago
Daiva Naudziuniene b17861b1c8 [pulse] More precise model for constructing folly::Optional<Value> from Value
4 years ago
Nikos Gorogiannis b6eb480597 [java] fix char cast
4 years ago
Nikos Gorogiannis 4fb2fde4af [tenv][java] hashcons instead of Obj magic
4 years ago
Ezgi Çiçek a09ea5ea9c [cost] add model for iterating over collections via block
4 years ago
Sungkeun Cho 15c1f816dc [cost] Check if callee is actually defined
4 years ago
Jules Villard 5066944b76 [buck] enable buckd
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
Jules Villard e1cadb12b0 [pulse] emit formula of path conditions in json output
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
Jules Villard b2109fa0b9 [debug] add proc names of each spec to the dumped json
4 years ago
Jules Villard 8f94d39ce1 [debug/explore] add possibility to select "all"
4 years ago
Jules Villard 46838a45a4 [pulse] define PulseSummary.yojson_of_t
4 years ago
Daiva Naudziuniene 57114e95e9 [pulse] Enable NULLPTR_DEREFERENCE by default
4 years ago
Jules Villard 3b77523d7f [debug] new option --procedures-summary-json
4 years ago
Jules Villard bfc370f600 [debug,explore] make interactive mode pipe-able
4 years ago
Jules Villard 4442c52f7f [pulse][minor] inline a module definition
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
Nikos Gorogiannis adcad19ee1 [comp-db] simple refactor
4 years ago
Jules Villard 2bdc6b892b [pulse] apply Abort specs too
4 years ago
Mitya Lyubarskiy e3de7ce5dc [nullsafe] Unsoundly consider Pair<> elements non-nullable
4 years ago
Mitya Lyubarskiy fd91678b1c [nullsafe] Populate the list of popular third-party fields
4 years ago
Jules Villard 25cb478dc8 work harder at matching changed files when a workspace is involved
4 years ago
Jules Villard f3d58e7e09 [buck] add --workspace to resolve different project roots
4 years ago
Jules Villard 2a191060b2 [taskbar] print proc name earlier
4 years ago
Jules Villard c47911359a [preanalysis] more conservative and efficient devirtualizers
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
Ezgi Çiçek 2a28ebfeb4 [inferbo] Remove unused model
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
Nikos Gorogiannis 8ddc9ee48b [starvation] reroute access to set of critical pairs of summary through a fold
4 years ago
Ezgi Çiçek ae3f1d79c9 [inferbo] Replace call to clone with equivalent call to id
4 years ago
Nikos Gorogiannis 2da86aada6 [starvation] push thread into Event type
4 years ago
Mitya Lyubarskiy d0f39f3ce7 [nullsafe] boolean arguments in Preconditions methods are non-nullable
4 years ago
Ezgi Çiçek cbe796e541 [preanalysis] Add a new preanalysis for ObjC's copy and mutableCopy
4 years ago
Nikos Gorogiannis 84e9bea312 [starvation] improve handling of @NonBlocking annotation
4 years ago
Ezgi Çiçek ebee6fd7ba [IR] Track objC protocols in each class
4 years ago
Ezgi Çiçek 8da46d0f0d [inferbo] Add naive models for mutableCopy and copy
4 years ago
Jules Villard 79c6cd37eb [website] misc. minor improvements
4 years ago
Jules Villard ea4f7cf35a [scheduler] document option
4 years ago
Ezgi Çiçek f7fed13d0c [inferbo] Model NSSet/NSOrderedSet as collections
4 years ago
Mitya Lyubarskiy e18c396626 [nullsafe] Register Uri.EMPTY as a known non-nullable field
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 fb080ac0cc [cost] Extend the polynomial domain (preparation)
4 years ago
Nikos Gorogiannis d36dbca2fd [starvation] refactor event type with records
4 years ago
Nikos Gorogiannis 8df1f12213 [starvation] make simultaneous lock acquisition an atomic event
4 years ago
Sungkeun Cho 5ec6bc7a09 [cost] Refactoring: Avoid using functors that are used only once
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 0b7e2fb7c7 [pulse] more type-safety around summary and latent issues creation
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
Nikos Gorogiannis d2fc917ef9 [gradle] parallelize capture
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
Nikos Gorogiannis b516290b77 [dbwriter] exponential backoff wait for server start
4 years ago
David Pichardie 2c6fd7a617 Running Java source parser from command line
4 years ago
Nikos Gorogiannis 8f13e6ecb3 Fix CPU core calculation
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
Sungkeun Cho 336e1c7b99 [cost] Refactoring: autorelease size models
4 years ago
Sungkeun Cho ecb409504d [SIL] Change WithBlockParameters to have Block.t
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
Ezgi Çiçek e1806cbbb2 [cost] Don't compare callsite location for symbols
4 years ago
Mitya Lyubarskiy 190216ca3a [nullsafe][refactor] More functional-style code for building errors
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 ff7cd86140 [frontend] Rearrange translation of lambda's body
4 years ago
Daiva Naudziuniene 996c1b63e0 [frontend] Check if a method is a cpp lambda call operator
4 years ago
Daiva Naudziuniene d0cb245303 [frontend] Fix capture init for cpp lambdas
4 years ago
Sungkeun Cho d13ae13a71 [pulse] Fix linting issue
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
Mitya Lyubarskiy 58e897edd0 [nullsafe][refactor] Consolidate information about the issue to be reported
4 years ago
Jules Villard 931cf2d72b [pulse][minor] resolve mysterious 'a in .mli
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
Nikos Gorogiannis 3f737cbd49 [biabduction][models] delete objcpp copy
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
Josh Berdine cd1cfe3487 Adjust Gc control parameters to use best-fit allocator with overhead 120
4 years ago
Nikos Gorogiannis 84ff14f2e7 [sqlite] enforce attribute.is_defined iff procdesc is not NULL
4 years ago
Nikos Gorogiannis d35a4f6f2e [debug] deterministically order procedures when printing
4 years ago
Josh Berdine 7a416739d6 [ocaml] Upgrade to OCaml 4.11.1 and dune 2.7.1
4 years ago
Mitya Lyubarskiy d4e46239b9 [nullsafe][EASY] Whitelist static fields from `java.nio.charset.StandardCharsets`
4 years ago
Ezgi Çiçek 9b84af1813 [cost] Replace polynomial category zero with unreachable
4 years ago
Nikos Gorogiannis 386f303b1d [scheduler][restart] use proc_uids instead of serialised procnames as targets
4 years ago
Sungkeun Cho 4d3c22e167 [cost] Fix cost-issues.exp in autoreleasepool
4 years ago
Jules Villard 7eba62c9ed [doc] update documentation on building checkers
4 years ago
Sungkeun Cho 8fde3f2479 [cost] Revise CostDomain.plus functionality: zero+unreachable
4 years ago
Sungkeun Cho 18baa1f126 [cost] Enable top_and_unreachable issues of autoreleasepool size
4 years ago
Sungkeun Cho 6ff1a42b6a [cost] Add tests run with ARC/non-ARC sources
4 years ago
Jules Villard b62c3f55b9 [pulse] fix fuel debug message
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 5406fa3224 [scheduler][restart] use filenames instead of procnames for dependencies
4 years ago
Nikos Gorogiannis 30fcdc7d29 [attributes] request attributes only when procdesc isn't required
4 years ago
Ezgi Çiçek 9681317f57 [preanalysis] Add mli file and documentation for the preanalysis about specializing methods with blocks
4 years ago
Nikos Gorogiannis db9828809e [sourcefiles] use custom serializer
4 years ago
Nikos Gorogiannis a2c1aa79c8 [procname] preserve sharing when serialising
4 years ago
Nikos Gorogiannis 1db53f43b5 [biabduction][models] move to sqlite
4 years ago
Nikos Gorogiannis cb2243741c [sqlite] remove proc_name_hum field
4 years ago
Nikos Gorogiannis e9a6195b52 [sqlite] index on proc_uid
4 years ago
Nikos Gorogiannis 343d6b1bea [preanal] do not rewrite capture db
4 years ago
Sungkeun Cho 65dd303415 [cost] Add new experimental cost kind
4 years ago
Ezgi Çiçek dab523f7eb [cost] Remove unused IO Cost kind
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
Daiva Naudziuniene 20a8890fd5 [frontend] Clean up method creation
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
Nikos Gorogiannis 1d908ff327 [sqlite] localise statements to where they are used
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
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