Commit Graph

8434 Commits

Author SHA1 Message Date
Valentin Kipyatkov 411f2c833c Process inline functions from libraries (if sources available) + process source libraries if analysis scope includes them 2020-04-18 01:25:02 +03:00
Valentin Kipyatkov 06de3de1a6 Do not show doc-comment references in data flow 2020-04-18 01:25:01 +03:00
Valentin Kipyatkov 84a786dde3 Renames and test output format improvement 2020-04-18 01:25:01 +03:00
Valentin Kipyatkov 63095f9ec9 Handling of method references 2020-04-18 01:25:00 +03:00
Valentin Kipyatkov 7dd30eb943 Support other kinds of variables for invoke receiver 2020-04-18 01:25:00 +03:00
Valentin Kipyatkov 8a1ea7b45e One more test 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov cc6090347a Handling other types of expressions as invoke receiver 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov 9624f8afa3 Flaky test? 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov f3b26e1c9a Correct detection of parameter index or receiver from invoke call 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov 83ef8def4d Hacked SliceNullnessAnalyzerBase from IDEA to take into account SliceUsage.isLeaf() and give reasonable and stable results for Kotlin 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov e4d9801388 Process only correct implicit receivers 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov 04d4f7444e Tracking of receiver for incoming lambda's for outflow analysis + better handling of invoke and operator calls 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov 8f01427534 Tracking of incoming lambda's for outflow analysis 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov a09a9a65ff Special handling of inline function to track values from individual calls 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov 269420a0e0 Processing implicit extension receiver usages in outflow processing 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 52ff1c62dd Tracking of implicit receiver from enclosing lambda 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 4e88e2697c Replaced [LAMBDA OUT] in test data to [LAMBDA CALLS] which is less confusing 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 7bcd6619cf Tracking inflow of lambda receiver 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 61d4383cb9 Merged LambdaResultOutflowBehaviour and LambdaCallsBehaviour into one 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 1e39d4a63c Code refactoring + better handling of incoming data flow to java super methods 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov b5b0fd62a9 Track anonymous function parameters in inbound data flow analysis as well 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov f0d4d7bb86 Added correctness check of test data + fixed huge amount of incorrect code in test data 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov c19a16f1e0 Track lambda parameters in inbound data flow analysis 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov b4b58d1d99 Handling implicit receivers in InflowSlicer 2020-04-18 01:24:53 +03:00
Valentin Kipyatkov 90188ef44f Data flow to/from here: supported expected/actual declarations and extension receivers 2020-04-18 01:24:52 +03:00
Valentin Kipyatkov 0b2aff4e70 KT-38003 works for Java implementations of extension method 2020-04-18 01:24:52 +03:00
Valentin Kipyatkov 84c9692332 KT-38003 works for Java implementations too 2020-04-18 01:24:51 +03:00
Valentin Kipyatkov 2b83e3721a KT-38003 "Analyze Data Flow from Here" should work on parameter of abstract method
#KT-38003 Fixed
2020-04-18 01:24:51 +03:00
Toshiaki Kameyama eff57001dc Create secondary constructor: fill 'this()' arguments
#KT-11865 Fixed
2020-04-16 17:04:09 +02:00
Toshiaki Kameyama 831fbba0c1 Redundant qualifier name: don't report for EnumClass.Companion
#KT-37181 Fixed
2020-04-16 10:48:06 +02:00
Toshiaki Kameyama f747f8543e Redundant qualifier name: don't report for EnumClass.values/EnumClass.valueOf
#KT-34696 Fixed
2020-04-16 10:48:05 +02:00
Toshiaki Kameyama 77b6881032 Replace 'when' with 'if': do not suggest if 'when' is used as expression and it has no 'else' branch
#KT-35329 Fixed
2020-04-15 22:47:30 +02:00
Toshiaki Kameyama 37277d71de Condition of 'if' expression is constant: remove else keyword if needed
#KT-34713 Fixed
2020-04-15 21:53:16 +02:00
Toshiaki Kameyama 1b0fac4a67 Add quick fix for PROPERTY_TYPE_MISMATCH_ON_OVERRIDE on constructor parameter
#KT-29934 Fixed
2020-04-15 21:32:29 +02:00
Toshiaki Kameyama e2a7170b2f Fix false positive "Collection count can be converted to size" with Iterable
#KT-34677 Fixed
2020-04-15 18:38:37 +02:00
Toshiaki Kameyama b4c62cdb52 Introduce "Add missing 'class' keyword" intention
#KT-14884 Fixed
2020-04-15 14:53:52 +02:00
Toshiaki Kameyama 8c4fdd1edd Unused import: do not report for 'invoke' function import that is used from same file
#KT-24281 Fixed
2020-04-15 14:00:41 +02:00
Toshiaki Kameyama 8aa120576b Add quick fix for TOPLEVEL_TYPEALIASES_ONLY 2020-04-15 13:28:37 +02:00
Toshiaki Kameyama 9b3c3ae4ba "Replace 'invoke' with direct call" intention: do not add unnecessary parenthesis
#KT-37967 Fixed
2020-04-15 09:59:23 +02:00
Toshiaki Kameyama 2f29b38b19 "Replace 'invoke' with direct call" intention: fix false positive when function is not operator
#KT-37977 Fixed
2020-04-15 09:16:50 +02:00
Dmitriy Dolovov 753ef971f9 HMPP: Fix serialization of TargetPlatform in tests 2020-04-14 21:07:27 +07:00
Dmitry Gridin 585177bcf7 Formatter: fix indent for multiline expression in string template
#KT-35359 Fixed
2020-04-14 13:54:12 +00:00
Mikhail Bogdanov 9d68db1668 Switch usages android build tools from 23.0.1 to 28.0.3 2020-04-14 13:53:22 +02:00
Ilya Chernikov cf387ffad1 Remove obsolete source-sections plugin 2020-04-13 13:49:33 +02:00
Roman Golyshev d7667209b2 KT-37144 Respect quotes in package name during decompilation
- Odd package names (for example `try` in `arrow-core`) were pasted
as-is to the decompiled text
- Because of this, stub checks were failing, forcing completion to start
over and over again, as if something changed in the files
- See EA-5572315 for the error
- ^KT-37144 Fixed
2020-04-13 07:34:28 +00:00
Dmitriy Dolovov cdbc272aca IDE. Drop redundant test in GradleNativeLibrariesInIDENamingTest 2020-04-10 18:14:13 +07:00
Vladimir Dolzhenko b51ae78b84 Do not resolve alias imported references on rename
#KT-38096 Fixed
2020-04-09 20:38:01 +00:00
Dmitry Gridin 9d8d881bff CallableUsageReplacementStrategy: support KtSuperTypeCallEntry
#KT-37849 Fixed
2020-04-09 15:19:36 +07:00
Ilya Matveev cf157e3999 [IDE, native] Update mock K/N dist: fully qualified klib names 2020-04-09 13:07:45 +07:00
Ilya Matveev 12e4159525 [IDE, native] Update mock K/N dist: klib componentization
This patch actualizes an internal structure of mock klibs
used in IDE tests for the K/N support.
2020-04-09 13:07:44 +07:00