Oleg Ivanov
7da94cc299
[FIR] Fix wrong ConstantReference for returnsNotNull in EffectExtractor
2020-08-12 11:06:07 +03:00
Anton Yalyshev
f6f3787b51
Disable FUS for Code Completion in 1.4.20
2020-08-12 10:22:29 +03:00
Andrey Uskov
20371b874a
Configuration caching - register listener only once per project
...
To many listeners cause performance issues in Gradle.
2020-08-12 00:40:18 +03:00
Georgy Bronnikov
d2fda2a07c
Fir2Ir: bug fix
2020-08-12 00:31:33 +03:00
Ilmir Usmanov
8a098545e6
Minor. Add test
2020-08-11 22:10:51 +02:00
Ilmir Usmanov
00bf07fc41
Force boxing kotlin.Result return type of suspend functions
...
#KT-40843 Fixed
2020-08-11 22:10:47 +02:00
Ilmir Usmanov
b06218c456
Minor. Update test data
2020-08-11 20:27:00 +02:00
Georgy Bronnikov
f21d8a4c5b
JVM_IR, minor: use vals instead of objects
2020-08-11 18:44:47 +03:00
Vladimir Dolzhenko
6e016ce041
ktFile has to return script declaration from stub as well
2020-08-11 14:31:18 +00:00
Oleg Ivanov
4367d6631f
[FIR] Add CallsInPlace contract analyzer
2020-08-11 16:17:01 +03:00
Oleg Ivanov
cc9c5b9e3c
[FIR] Add CFG nodes, add multiple subGraphs for CFGOwner
2020-08-11 16:17:01 +03:00
Oleg Ivanov
128075e780
[FIR] Add fir source saving in resolved contract description
2020-08-11 16:17:01 +03:00
Oleg Ivanov
f467dccc68
[FIR] Rename confusing variable in CFGTraverser
2020-08-11 16:17:00 +03:00
Alexander Udalov
bcf1ee3907
Minor, fix test data for kotlinx.serialization bytecode text test
2020-08-11 15:14:06 +02:00
Steven Schäfer
53fe30eb45
JVM IR: Don't produce CHECKCASTs on null constants (KT-36650)
2020-08-11 15:13:40 +02:00
Alexander Udalov
7503f134c2
IR: use IdSignature to compare classes in FqNameEqualityChecker
...
This is both simpler and a lot more performant.
2020-08-11 14:41:57 +02:00
Alexander Udalov
36a1a65d98
IR: make IrBranch/IrCatch/IrSpreadElement/IrModuleFragment/IrPackageFragment classes
2020-08-11 14:41:57 +02:00
Alexander Udalov
08a35f0674
IR: make IrBody and subtypes classes
2020-08-11 14:41:57 +02:00
Alexander Udalov
4351f5235b
IR: make IrExpression and subtypes classes
2020-08-11 14:41:56 +02:00
Alexander Udalov
ba7ff36274
IR: make IrDeclarationReference and subtypes classes
2020-08-11 14:41:56 +02:00
Alexander Udalov
ee904a975a
IR: make IrMemberAccessExpression and subtypes classes
...
Merge IrMemberAccessExpressionBase into IrMemberAccessExpression, and
IrCallWithIndexedArgumentsBase into IrFunctionAccessExpression (extract
the latter into a separate file).
2020-08-11 14:41:56 +02:00
Alexander Udalov
fde7314aaf
IR: do not inherit IrExpressionWithCopy from IrExpression
2020-08-11 14:41:55 +02:00
Alexander Udalov
9aa7da44e2
IR: remove IrTerminalExpressionBase, Ir{Terminal,}DeclarationReferenceBase
...
Implement no-op acceptChildren/transformChildren in the base class
IrExpressionBase instead. This doesn't change behavior because all other
implementations of acceptChildren/transformChildren are not affected.
2020-08-11 14:41:55 +02:00
Alexander Udalov
868018f51f
IR: do not inherit IrFunctionReferenceImpl from IrCallWithIndexedArgumentsBase
2020-08-11 14:41:55 +02:00
Alexander Udalov
e3dfd5fb49
IR: push down implementations of startOffset/endOffset/type/...
...
Do not store these as properties in IrElementBase, IrExpressionBase and
similar classes. This helps to reduce boilerplate in implementations
(just "override val" in the constructor, instead of taking a parameter
and passing it to the superclass), and also slightly optimizes memory in
cases where the value is trivial (UNDEFINED_OFFSET, 0, etc) and thus
does not need to be stored.
2020-08-11 14:41:54 +02:00
Roman Golyshev
03f804b1c5
FIR Completion: Move completion files to idea-fir module
2020-08-11 15:38:07 +03:00
Ilmir Usmanov
d861373c6d
Hack attributes for continuation of suspend function in SAM-adapter
2020-08-11 11:58:20 +02:00
Mikhail Zarechenskiy
2e131b870a
Add tests for obsolete issues
...
#KT-38804 Obsolete
#KT-38801 Obsolete
#KT-38835 Obsolete
#KT-38737 Obsolete
#KT-38664 Obsolete
#KT-38549 Obsolete
#KT-38766 Obsolete
#KT-38714 Obsolete
2020-08-11 12:34:02 +03:00
Georgy Bronnikov
7f4df19dd1
JVM_IR: reorganize throw... functions in Symbols
2020-08-11 10:54:29 +03:00
Denis Zharkov
6a16d6a246
FIR: Simplify delegating constructors call resolution
2020-08-11 10:14:02 +03:00
Denis Zharkov
8b71f5e558
FIR: Do not leave cyclic upper bounds of type parameters
2020-08-11 10:14:02 +03:00
Denis Zharkov
a5a93d00a7
FIR: Rework delegation constructor calls resolution
...
Make it work independently of being called for inner class (as in FE 1.0)
2020-08-11 10:14:02 +03:00
Denis Zharkov
db93b9052b
FIR: Fix incorrect optimization for integer literals
2020-08-11 10:14:02 +03:00
Vyacheslav Gerasimov
ad8709b2dc
Build: Remove exclusion of kotlinx-coroutines-core in scripting-common
...
It breaks available-at feature used in MPP
2020-08-11 00:39:04 +03:00
Vladimir Dolzhenko
8540f47c15
Fixed FindUsages case on look up implementation getter/setters via property names
...
#KT-40788 Fixed
#KT-24616 Fixed
back-port from kotlin-ide commit aa5580bb5a7e96b209cdaa1c82f4e485ee001ae8
2020-08-10 22:04:06 +02:00
Mikhail Zarechenskiy
e49cdf0ca2
Prohibit using suspend functions as SAM in fun interfaces
...
#KT-40978 Fixed
2020-08-10 22:04:16 +03:00
Mikhael Bogdanov
607f99ed3c
Don't generate implicit overrides delegating to Java defaults
...
#KT-40920 Fixed
2020-08-10 20:03:23 +02:00
Sergey Igushkin
07aee8831e
Fix stdlib-by-default with non-compiled source sets (KT-40559)
...
When a `variantFilter { ... }` is used in Android projects, AGP does not
creates some variants but still creates the source sets which would be
related to those variants.
For source sets that are not included into any compilation, the stdlib
module added by default was kotlin-stdlib-common, and it was added to
the `api` scope.
But AGP checks the `androidTest*Api` configurations and
if it detects any dependencies in them, it reports deprecation warnings.
However, we have plans to prohibit unused source sets at all as they
have no reasonable use cases. So the fix is not to add the stdlib by
default to source sets that participate in no compilations.
Issue #KT-40559 Fixed
2020-08-10 20:08:22 +04:00
Roman Golyshev
6e2887e083
FIR Completion: Add insertion handling for functions with lambdas
...
- The support is not complete
2020-08-10 18:25:34 +03:00
Roman Golyshev
b3a674abee
FIR IDE: Add parameter's and type's properties required for completion
2020-08-10 18:25:34 +03:00
Roman Golyshev
67ed33367f
FIR Completion: Add function insert handler
...
- It is a specialized copy from `KotlinFunctionInsertHandler.Normal`
2020-08-10 18:25:34 +03:00
Roman Golyshev
b547feb00d
FIR Completion: Render vararg modifier in lookups
2020-08-10 18:25:33 +03:00
Roman Golyshev
582b00f5b2
FIR Completion: Add UniqueLookupElement to the lookup elements
...
- It is done to differentiate overloads of the same function
2020-08-10 18:25:33 +03:00
Roman Golyshev
b6ee478190
FIR Completion: Add psi element to the lookups
...
- May be a performance problem later
2020-08-10 18:25:33 +03:00
Roman Golyshev
53180e707e
FIR Completion: Fix invalid isAbstract condition
2020-08-10 18:25:33 +03:00
Roman Golyshev
ef461260b0
FIR Completion: Add simple insertion handler to lookup elements
...
- The `QuotedNamesAwareInsertionHandler` is just a copy of
`BaseDeclarationInsertHandler`
2020-08-10 18:25:33 +03:00
Roman Golyshev
10598ee98e
FIR Completion: Add simple lookup decorating with icon and parameters
2020-08-10 18:25:32 +03:00
Roman Golyshev
64187b40c9
FIR Completion: Prevent immediate completion in number literals
...
- This is copied from the original KotlinCompletionContributor
2020-08-10 18:25:32 +03:00
Alexey Trilis
d86c14243e
Add @SinceKotlin to kotlinx.browser and kotlinx.dom packages
...
Add @DeprecatedSinceKotlin to kotlin.browser and kotlin.dom packages
2020-08-10 18:08:19 +03:00
Dmitriy Novozhilov
0e53d11dd4
Disable AllowResultInReturnType feature
...
#KT-40843
2020-08-10 17:57:53 +03:00