1898 Commits (6d9943f2aa835bab7e680ded43517dd4c7767689)

Author SHA1 Message Date
Daiva Naudziuniene 84cfd0a450 [frontend] Do not create exceptional successors for return nodes
6 years ago
Martin Trojer 4b69087ad5 Adding OBJCPP models to avoid SKIPs of models from .mm
6 years ago
Ezgi Çiçek 34c2899a69 Fix printing of fields in Java
6 years ago
Dino Distefano b215cdbff4 Fixed problem with expasion of %name% placeholder
6 years ago
Nikos Gorogiannis c5ad94d825 [starvation] Adjust blocking call severities to better reflect practice
6 years ago
Martino Luca ae9ee41f78 [TD] Change JSON format for test-determinator
6 years ago
Sungkeun Cho 06a04ca9f5 Revert "[Inferbo] Add relational domain"
6 years ago
Sungkeun Cho 1f7a6e53fb [Inferbo] Add relational domain
6 years ago
Dulma Churchill 5653839540 [clang] Add the types of captured variables to the procname of blocks
6 years ago
Ezgi Çiçek 5cff9c91f9 Add Java support to ProcnameDispatcher
6 years ago
Kai Yang 2d73494e87 Add is_static_local_var predicate
6 years ago
Nikos Gorogiannis d4a9c6f81a [racerd] gate stability
6 years ago
Jules Villard 6f3719f5f2 [siof] do not warn on simply taking reference of global
6 years ago
Jules Villard 2c8d7a2046 [clang] support `SubstNonTypeTemplateParmExpr`
6 years ago
Jules Villard 2cb96c356a [clang] remove capture hack
6 years ago
Martin Trojer 63b3f5b99b Deal with anonymous objc blocks where non closure args could wrongly be considered duplicates.
6 years ago
Martin Trojer d442937380 Add CFRunLoopObserverCreateWithHandler model and test
7 years ago
Martin Trojer 1ee0390f3c Add test that exemplifies Missing_fld issue on objc
7 years ago
Martin Trojer 8bdbf3aedc Fix false positive BAD_POINTER for objcpp
7 years ago
Mehdi Bouaziz e5de1b6663 Cost: simplify range of parameters
7 years ago
Mehdi Bouaziz bea71d9168 Inferbo/perf: path rather than symbols
7 years ago
Ezgi Çiçek 4624ff48d1 Fix control variable imprecision in do while loops
7 years ago
Martin Trojer a1cadfd88c Adding objcpp liveness test
7 years ago
Daiva Naudziuniene 1e2e9b6d11 [clang frontent] Fix translation of binary operator
7 years ago
Mehdi Bouaziz a8e84d1657 Cost: improve NonNegativePolynomial.(<=)
7 years ago
Mehdi Bouaziz 0639ef82b7 Cost: also take into account arguments in range
7 years ago
Dulma Churchill 60cbc2c98e [biabduction] Enable dynamic dispatch for ObjC methods
7 years ago
Dulma Churchill 2cf0e7a1d2 [clang] Treat class method as a static self only as the first argument of an instance method call, not a class method
7 years ago
Nikos Gorogiannis 848ef3da21 [RacerD] Fix stability implementation
7 years ago
Nikos Gorogiannis f28aa37cb6 [racerd] Do not record paths starting at variables not appearing in source
7 years ago
Martin Trojer 5156ff7f65 [infer][PR] handle improper version strings in @available clauses
7 years ago
Jeremy Dubreil 055a8267e8 [eradicate] promote reports as errors for generated GraphQL source of nulls
7 years ago
Nikos Gorogiannis e5d8f501f4 [starvation] fix conversions of int literals which need 64 bit ints
7 years ago
Jeremy Dubreil 90c08e4596 [eradicate] report as warnings by default
7 years ago
Ezgi Çiçek cf1c2acb54 [Cost] Add invariant analysis
7 years ago
Jules Villard 25627fd4d9 [c] add test for cleanup attribute
7 years ago
Ezgi Çiçek f80af7be93 Fix control var analysis for loops with multiple back-edges per loop head
7 years ago
Mehdi Bouaziz bd725602ee Inferbo: size of arrayblk is unsigned
7 years ago
Mehdi Bouaziz affced4303 Cost: actually, we needed data dependency
7 years ago
Nikos Gorogiannis 73507de47b [starvation] report only on public methods
7 years ago
Dulma Churchill 91e0a7d1a3 [IR] Take parameters into account in to_filename method
7 years ago
Nikos Gorogiannis 101574e9d0 Revert again.
7 years ago
Nikos Gorogiannis d13b845434 [starvation] improve deadlock reports
7 years ago
Nikos Gorogiannis db17b13f6a Bad rebase of stacked diff -- reverting.
7 years ago
Nikos Gorogiannis 787cb2c612 [starvation] improve deadlock reports
7 years ago
Mehdi Bouaziz 5b6430e739 Cost solver
7 years ago
Nikos Gorogiannis 113ddbb3ac [starvation] dedup deadlocks
7 years ago
Daiva Naudziuniene 9738f9821e [frontend] Translating ToVoid cast
7 years ago
Ezgi Çiçek bbd6820ca1 Get rid of data dep analysis and localize it to single step
7 years ago
Daiva Naudziuniene 18b3a465d2 [uninit] Report on unitialized expressions in conditions
7 years ago
Dulma Churchill 79a8f8716c [clang] Adding parameters as part of the procname for C++/ObjC methods and ObjC blocks
7 years ago
Nikos Gorogiannis 4820e3db1e [starvation] add NonBlocking annotation
7 years ago
Jeremy Dubreil a5129e57db [Nullable checker][Objective C] add test for nullable properties in NSArray
7 years ago
Ezgi Çiçek cb8e734bbb Get all the loop instructions
7 years ago
Nikos Gorogiannis cacc975394 [starvation] implement SuppressLint
7 years ago
Daiva Naudziuniene be754c1558 [bi-abduction] Do not treat for union fields as uninitialized
7 years ago
Daiva Naudziuniene 610ed0c885 [uninit] Filter out fields if they come from unions
7 years ago
Nikos Gorogiannis 2a83d64481 [starvation] silence reports on IO
7 years ago
Nikos Gorogiannis 971cd84455 [starvation] report using split events
7 years ago
Mehdi Bouaziz 3c7f38eb09 [infer][tests] update the expected test output for the ndk-build tests
7 years ago
Jeremy Dubreil a2584c6ed2 [infer][tests] update the expected test output
7 years ago
Mehdi Bouaziz 1b63cb42b7 [cost] Compute range using post state
7 years ago
Jules Villard 30c470eb48 [tests] record error bucket in expected output
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Daiva Naudziuniene d7d3e16d6f [uninit] Enable reporting on uninitialized pointers
7 years ago
Nikos Gorogiannis c70b978aa8 [starvation] deduplication
7 years ago
Jeremy Dubreil c35278a8f8 [infer] the fragment retains view checker should not warn on field annotated with @AutoCleanup
7 years ago
Brandon Kieft eab7fd1242 Add predicates to check the receiver class type
7 years ago
Jules Villard fecabb3bf3 [siof] do not report on standard streams
7 years ago
Daiva Naudziuniene c47071f186 [uninit] Initialize indirect function call arguments of pointer type
7 years ago
Martino Luca c7c68346c3 [Test determinator] Add tests
7 years ago
Nikos Gorogiannis e36ca3d07f [starvation] explain why we think a method runs on the ui thread
7 years ago
Mehdi Bouaziz a0e3314b7b Eradicate: add a test for condition-redundant check
7 years ago
Nikos Gorogiannis 5e8b118151 [starvation] fix reported location
7 years ago
Daiva Naudziuniene 736badbb2f [uninit] Fix false positive that includes array element passed by reference
7 years ago
Dino Distefano 9b18d87427 Moved TestDeterminator module
7 years ago
Sam Blackshear 9ca945aa2f [ownership] warn when returning references to borrowed values
7 years ago
Daiva Naudziuniene 8ccf4897dd [uninit] Use access expressions
7 years ago
Martino Luca 858c5aab01 [Test determinator] New format for the profiler samples passed in input to TD
7 years ago
Sungkeun Cho cac08598a0 [inferbo] preciser widening of bound
7 years ago
Jules Villard 8715c4f892 [clang] make switch statement translation more robust
7 years ago
Sam Blackshear 370f5c80e6 [quandary] only treat overrides of service methods as endpoints
7 years ago
Ezgi Çiçek 1263bfa899 Add tests for cost analysis
7 years ago
Ezgi Çiçek 6f8bccb8fd Add tests for invariant problem in cost analysis
7 years ago
Nikos Gorogiannis 9cddbd7af8 [racerd] make locals in Java owned, plus stop reporting on temps/logical vars
7 years ago
Daiva Naudziuniene 9e1678ec65 [uninit] Check the type of whole lhs rather than the base of lhs
7 years ago
Dulma Churchill accfc00d82 [objc frontend] Do not crash on internal forward classes
7 years ago
Sam Blackshear 5ed2016899 [clang] basic support for exceptional control-flow
7 years ago
Sam Blackshear 85b8087f66 [quandary] de-prioritize command line flag sources
7 years ago
Dulma Churchill 27a7f2e798 [linters] Do not report mutable local variable in weakSelf and strongSelf
7 years ago
Mehdi Bouaziz aaf346d115 [cost] Polynomial domain
7 years ago
Nikos Gorogiannis 7e5381b7a9 [starvation] model legacy synchronized containers
7 years ago
Nikos Gorogiannis e3f0754335 [starvation] add static timeout recognition and 5 second android limit
7 years ago
Nikos Gorogiannis f22bb53aa8 [starvation] Treat Service (but not IntentService) subclasses as on UI thread
7 years ago
Nikos Gorogiannis 78ad6e6d00 [concurrency] extend notion of ui thread
7 years ago
Nikos Gorogiannis b02a6e9e48 [starvation] catch AsyncTask.get calls on main thread
7 years ago
Mehdi Bouaziz 62fa99ad3f Simplified example showing problem with arrays
7 years ago
Oliver Castillo fb4e7ee4a4 [infer][PR] Fix spelling errors
7 years ago
Nikos Gorogiannis ecfa29b083 [starvation] dedup deadlock warnings
7 years ago
Jules Villard 766a16cd90 [clang] enforce that `instruction` always returns one SIL expression
7 years ago
Jeremy Dubreil 8162cf826e [infer][genrule] set the project root for the integration test
7 years ago
Brandon Kieft cb66e4212b Add predicates for instance and class methods
7 years ago
Dulma Churchill afe511b53d [biabduction] Support finding skip reasons from attributes for clang too
7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate
7 years ago
Jeremy Dubreil cbfdacd21c [infer][eradicate] add the name of the class for the method expecting non-null parameters
7 years ago
Jules Villard 9a9d199021 [make] fix toplevel
7 years ago
Mehdi Bouaziz 131ae4a801 [itv] Prettier print
7 years ago
Nikos Gorogiannis a7bd92de2f [starvation] enable starvation checker
7 years ago
Dulma Churchill c24ff02bb4 [biabduction] Add to the skip reason when the method comes from a protocol
7 years ago
Ezgi Çiçek fcb83a949f implement missing CXXInheritedCtorInitExpr
7 years ago
Nikos Gorogiannis c104ea11dc [racerd] switch to external issue logs
7 years ago
Jules Villard 7cf0a5e2cc [make] ignore copy-copy races in clang compilation db tests
7 years ago
Nikos Gorogiannis 58f37cb9d8 [starvation] do not report deadlocks when both traces on UI thread
7 years ago
Nikos Gorogiannis 538bcd9135 [starvation] store issues to issue-logs like linters do
7 years ago
Brandon Kieft 275f4c3a8c Add predicates to check for protocols
7 years ago
Brandon Kieft 439839a9fa Add is_in_(interface/implementation) predicates
7 years ago
Brandon Kieft 7d4bd403df Add is_objc_method_exposed predicate
7 years ago
Brandon Kieft 01ee635902 Add is_objc_method_overriding predicate
7 years ago
Nikos Gorogiannis 14ec16da12 [starvation] catch calls to AcccountManager.setUserData
7 years ago
Nikos Gorogiannis bf501e5a7d [starvation] treat Future.get as potentially blocking
7 years ago
Nikos Gorogiannis bef38bbf1a [racerd] recognise std::lock calls
7 years ago
Dino Distefano f2fa8cf0e0 Adding more examples where we get Top as cost
7 years ago
Mehdi Bouaziz 5fe28785bc Cost: fix min
7 years ago
Brandon Kieft d7cf002461 Add new ObjC predicates, mostly related to categories
7 years ago
Sam Blackshear 78521419a9 [racerd] make deep ownership work with OwnedIf
7 years ago
Jules Villard 902de9d6e3 [sil] make return value and type mandatory
7 years ago
Mehdi Bouaziz 1deaf7bfd6 Cost: instantiate symbolic cost after call
7 years ago
Sam Blackshear bb2ff197b3 [absint] fix handling of exceptions
7 years ago
Dino Distefano dbc8f29835 Added array test where we get TOP
7 years ago
Mehdi Bouaziz 9c14e9d384 [Cost] Fix multiplication by 1
7 years ago
Dulma Churchill 077d9a534b [objc frontend] Do not assume that the fast enumeration in ObjC always includes a declaration of the loop variable
7 years ago
Jules Villard 0bbdf63957 [clang] do not attempt to translate pointer to member constructs
7 years ago
Dino Distefano d4337abcb4 Added predicate for C++ copy constructors
7 years ago
Dulma Churchill 038c0b92d4 [objc frontend] Raise SelfClassException only inside ObjCMethodCallExpr nodes
7 years ago
Sam Blackshear d718275402 [quandary] fix test expected output
7 years ago
Sam Blackshear 6b8900746b [quandary] only treat overrides of service methods as endpoints
7 years ago
Jules Villard 4b4517e8ec [clang] call a skip function in case of unimplemented feature
7 years ago
Nikos Gorogiannis dab8e2f17d [starvation] Catch indirect blocks to the UI thread
7 years ago
Jules Villard d92e82b379 [clang] fix translation of `UserDefinedLiteral`
7 years ago
Nikos Gorogiannis e0a61c0a4a [starvation] Move to a cluster checker phase for reporting
7 years ago
Sam Blackshear 30d7239aff [quandary] SQL sinks for java
7 years ago
Sam Blackshear ffba5de70c [quandary] distinguish between SQL reads and writes
7 years ago
Dino Distefano c80a2b0940 Test Determinator for MobileLab
7 years ago
Dulma Churchill 69392d4192 [biabduction] Log reasons for skipping also in non Java context
7 years ago
Mehdi Bouaziz 094eb9dcc7 [Cost] Use OneInstrPerNode CFG
7 years ago
Jules Villard 73a47d594c [debug] print procedures in alphabetical order in cfgs
7 years ago
Nikos Gorogiannis 63aafd3381 [starvation] catch calls to View.getVisibleDisplayFrame
7 years ago
Dulma Churchill 28200b87d7 [objc blocks] Specialize store instructions with current closure in methods specialized with blocks as arguments
7 years ago
Nikos Gorogiannis e5265ea85b [starvation] surface caller of blocking calls in reports
7 years ago
Ezgi Çiçek 8f0701a01c Refine dependency analysis to remove vars at prune exit nodes
7 years ago
Nikos Gorogiannis a4a1a9c55e [starvation] Catch java IO blocking calls on UI thread
7 years ago
Nikos Gorogiannis 7a9009e467 [starvation] Catch CountDownLatch.await calls on main thread
7 years ago
Nikos Gorogiannis b6c8766b11 [starvation] report binder calls on ui thread
7 years ago
Ezgi Çiçek 523c2f539b change clang translation to track if_kind (i.e. the type of prune node)
7 years ago
Nikos Gorogiannis 196c0e5544 [starvation] harmonize java formatting in tests
7 years ago
Sam Blackshear 670ae4a673 [quandary] `WebResourceRequest.getUrl` as source
7 years ago
Sam Blackshear 8084c8fec7 [racerd] treat `@InjectProp` formals as owned
7 years ago
Sam Blackshear ce8f958522 [racerd] don't report INTERFACE_NOT_THREAD_SAFE if the receiver of the interface call is marked `ThreadConfined`
7 years ago
Nikos Gorogiannis 0130c09dfc [starvation] add infrastructure for blocking events other than lock acquisition
7 years ago
Nikos Gorogiannis 269a1a9b93 [starvation] treat locks in (and accessed from) inner classes properly
7 years ago
Daiva Naudziuniene 94aae8713e [biabduction] Fix lookup of abduced expression
7 years ago
Ezgi Çiçek 76300d55c7 Tracks variables that affect control flow for a more precise cost analysis
7 years ago
Ezgi Çiçek af5265f75d "Report infinity as error per function"
7 years ago
Jules Villard f1bcb91542 [make] make sure no command fails
7 years ago
Jules Villard dee7414aa9 [inferbo] do not include location information in the bug description
7 years ago
Dulma Churchill aa578ea586 [retain cycles] Treat missing fields also angelically when it still happens in rare cases
7 years ago
Jeremy Dubreil 4dc3e5f059 [infer] upgrade the version of Guava used for the tests
7 years ago
Jeremy Dubreil 2f1d486aab [eradicate] model com.google.common.base.Strings.isNullOrEmpty(...)
7 years ago
Dino Distefano 3b608695af Improving treatment of default constructor
7 years ago
Jules Villard 9b315d4d08 [tests] some missing dependencies in differential tests
7 years ago
Dulma Churchill 74e16bdb58 [retain cycles] Define custom compare function that is more suited to dedup cycles
7 years ago
Mehdi Bouaziz e9a3913fdb [Inferbo] Do not propagate all safety conditions
7 years ago
Sungkeun Cho 4234288c93 [inferbo] Add a pointer arithmetic test
7 years ago
Sungkeun Cho e12a4a1071 [inferbo] Add traces in lift functions
7 years ago
Sungkeun Cho 1f6feef448 [inferbo] Revise eval_locs for array blocks
7 years ago
Sam Blackshear 94c2cd1d3b [ownership] tests for pointer arithmetic
7 years ago
Sam Blackshear 9180ff56c1 [ownership] handle new kinds of access expressions
7 years ago
Sungkeun Cho a353d69a6e [inferbo] Fix test code
7 years ago
Sungkeun Cho 4aafe8a990 [inferbo][bugfix] Revise gathering safety conditions in sub-exp
7 years ago
Sungkeun Cho b42d66d557 [inferbo][bugfix] Pointer arithmetics on pointers to non-array
7 years ago
Sungkeun Cho 00e1139071 [frontend] Parse binary operator using types of parameters
7 years ago
Jeremy Dubreil 5dea7c55e2 [infer][java] report nullable inconsistencies on library calls
7 years ago
Daiva Naudziuniene 681f2a56ab [HIL] Explicit dereference
7 years ago
Dulma Churchill 436e5340f3 [retain cycles] Move the retain cycle check to sym_exec_wrapper to get the path of the last instruction executed
7 years ago
Nikos Gorogiannis 462c2e2b2e [starvation] fix handling of static synchronized methods and static locks
7 years ago
Nikos Gorogiannis b11dd03fb9 [starvation] ignore local/temp variables as locks
7 years ago
Sungkeun Cho d15894c78a [inferbo] Add tests for relational analysis
7 years ago
Sam Blackshear 33fe8879a5 [quandary] report flows originating from `UserControlledEndpoint` as `_RISK`
7 years ago
Sam Blackshear f621dda0be [infer][clang] models off-by-default
7 years ago
Dulma Churchill 927e2049c3 [backend] Add getter/setter execution to the trace
7 years ago
Ezgi Çiçek 872daf1ba7 Add estimated cost to trace element
7 years ago
Nikos Gorogiannis b335fb9c50 [deadlock] rebrand to starvation
7 years ago
Jules Villard 63e04a55a0 [buck] disable buckd systematically
7 years ago
Sam Blackshear 44e5d0564b [ownership] fix false positives on aggregate locals in loops
7 years ago
Dulma Churchill 46c69cb26f [tests] Fix tests
7 years ago
Jeremy Dubreil 2e14f9c9c3 [infer] model android.app.AlarmManager.cancel(PendingIntent) as not accepting a null parameter
7 years ago
Jeremy Dubreil 8cfbdef7e0 [infer][biabduction] no longer track the resources saved into a container
7 years ago
Sam Blackshear aabf8aec55 [quandary] use `_risk` warning types for endpoint sources in Java
7 years ago
Dino Distefano e54df20eb7 Migrate to Itv.Bound
7 years ago
Sam Blackshear 7efb5cb549 [ownership] allow placement new on non-var expressions
7 years ago