Mikhail Glukhikh
20843b6894
Remove error suppression in KotlinChangeSignatureDialog
2021-01-21 18:32:34 +03:00
Pavel Kirpichenkov
628d6a9c30
Don't store logger in instance field
2021-01-21 16:53:09 +03:00
Pavel Kirpichenkov
5003738d29
Fix: use idea caches correctly
...
Instead of using value from cache the first created value
was being saved to field and not invalidated later.
2021-01-21 16:53:09 +03:00
Sergey Igushkin
87c6b6bffc
Revert "Set canBeConsumed = false on the deprecated configurations like compile"
...
This reverts commit dfacccf8
2021-01-21 16:39:00 +03:00
Jinseong Jeon
2e660ef62a
Raw FIR: use lambda parameter type if available
2021-01-21 16:06:23 +03:00
Jinseong Jeon
fa0b933bc8
FIR checker: add diagnostics for missing/ambiguous component calls
2021-01-21 16:06:10 +03:00
Jinseong Jeon
83b9c29495
FIR checker: relocate sealed class ctor call checker
2021-01-21 16:06:10 +03:00
Jinseong Jeon
5f0eb8a401
FIR checker: minor cleanups
2021-01-21 16:06:10 +03:00
Jinseong Jeon
be29b6d64d
FIR checker: use aliased checker when possible (part 2)
2021-01-21 16:06:10 +03:00
Jinseong Jeon
de592f4f67
FIR checker: introduce FunctionChecker alias
...
and use it to add support diagnostic FUNCTION_DECLARATION_WITH_NO_NAME
2021-01-21 16:06:09 +03:00
Mikhail Glukhikh
40bec30393
FIR: implement LT positioning in diagnostic tests, fix LT strategies
2021-01-21 16:06:09 +03:00
Jinseong Jeon
f1d8a6e5d1
FIR checker: introduce DECLARATION_SIGNATURE_OR_DEFAULT positioning strategy
...
and fix CONFLICTING_OVERLOADS to use it
2021-01-21 16:06:09 +03:00
Igor Yakovlev
2e4daee1d4
[FIR] Fix invalid diagnostic fir node sites and improved invalid type parameters count diagnostic report
2021-01-21 15:20:30 +03:00
Simon Ogorodnik
b7d3469819
[FIR] Remove transform/accept from FirResolvedTypeRef.delegateTypeRef
2021-01-21 15:20:30 +03:00
Igor Yakovlev
243f85a4d6
[FIR IDE] Add base support for FIR incomplete types resolve
2021-01-21 15:20:30 +03:00
Ilmir Usmanov
704366e531
JVM: Mark suspend lambda receiver as used if callable reference
...
accesses it.
#KT-44131 Fixed
2021-01-21 12:47:59 +01:00
Mikhael Bogdanov
de00f72fa3
Generate linenumber for inline call site in case of implicit iterator/hasNext/next calls in for loop
...
Otherwise -1 is generated in smap
2021-01-21 12:04:09 +01:00
Sergey Igushkin
dfacccf84f
Set canBeConsumed = false on the deprecated configurations like compile
...
This leads to cleaner error messages in Gradle variant-aware dependency
resolution failures. Gradle has deprecated those configurations since
long ago, and we didn't see much use of them as variant-aware dependency
resolution entities either.
So this commits sets `canBeConsumed` to false on these configuratons:
* compile (+ testCompile, fooCompile in MPP)
* runtime (+ testRuntime, fooRuntime, ...)
* compileOnly (+ testCompileOnly, fooCompileOnly, ...)
* default (+ fooDefault in MPP)
This change replaces the PR #3995
2021-01-21 11:00:21 +00:00
Sergey Igushkin
6e913e16ad
Add integration tests for Kapt + Android Gradle plugin 7.0
2021-01-21 11:00:21 +00:00
Sergey Igushkin
341b87fad0
Use implementation instead of compile in GradleIT, fix versions
2021-01-21 11:00:20 +00:00
Sergey Igushkin
17b71555e0
KT-43944: Don't access Android test source sets' API configurations
...
When dependencies are added to our corresponding configurations,
report errors, as there's no proper way to add those dependencies.
Issue #KT-43944 Fixed
2021-01-21 11:00:19 +00:00
Andrei Klunnyi
77ffc318f2
KT-44250 [Sealed interfaces]: completion fails for 'when' with sealed
2021-01-21 10:53:36 +00:00
Dmitriy Novozhilov
14108011ee
[FIR] Fix inferring arguments of bare types in different situations
...
- argument type is flexible
- supertype has flexible type argument
- type of expression is more specific than bare type
2021-01-21 12:02:01 +03:00
Jinseong Jeon
b99f1a1512
FIR checker: error messages for function diagnostics
...
Also, update error inputs to conform to old FE's
These should have been part of commit 39df3e2b0a
2021-01-21 09:57:55 +03:00
Jinseong Jeon
021395ce39
FIR checker: error message for destructuring declaration diagnostic
...
Also, update error inputs to conform to old FE's
This should have been part of commit 03cb0c3cd1
2021-01-21 09:57:55 +03:00
Jinseong Jeon
35093e0958
FIR checker: error messages for properties/accessors diagnostics
...
Also, update error inputs to conform to old FE's
These should have been part of commit 5167d69b7c
2021-01-21 09:57:55 +03:00
Ilmir Usmanov
952576e98f
JVM_IR: Do not unbox Result parameter if it not only one inline class
...
parameter, since in this case, the compiler generates a bridge, where
the result is unboxed.
2021-01-20 18:30:00 +01:00
Ilmir Usmanov
d48f92775b
JVM_IR: Do not unbox Result parameter in invoke if there is a bridge
...
since the bridge unboxes it.
#KT-44141 Fixed
2021-01-20 18:29:58 +01:00
Ilya Goncharov
0ddb603eaa
[JS IR] Fix of test with method in abstract class calling extension on super type
2021-01-20 20:01:42 +03:00
Steven Schäfer
9c4f8f7e54
JVM IR: Fix signature mapping for inline classes using new mangling
...
When resolving inline class methods in binary dependencies we look for
methods matching both the new and the old mangling scheme. On the IR
backend the method signature has to be computed for the inline class
replacement, since the logic for signature mangling is not contained in
the method signature mapping, unlike in the old backend.
2021-01-20 17:43:41 +01:00
Mikhael Bogdanov
91717cdcdd
Perform inline checks in IR tests
2021-01-20 15:23:09 +01:00
Mikhael Bogdanov
216b775095
Remove obsolete code
2021-01-20 15:23:09 +01:00
Mikhael Bogdanov
147d60523d
Generate inline function arguments with parameters types
...
#KT-44429 Fixed
2021-01-20 15:23:08 +01:00
Ilya Goncharov
50ab9ed054
[JS IR] Add test on interface with default method calling extension method on super-interface
...
^KT-42176 fixed
2021-01-20 14:26:38 +03:00
Pavel Kirpichenkov
5c28762c02
Fix check for local classes in approximating string table
...
Take local/anonymous classes and their inner classes into account.
Simplify approximation: use first available super classifier instead
of first super class. This approximation should only happen for
private declarations that were not previously approximated by frontend.
So basically the only requirement for the approximated types is to be
denotable. Note that this only works if the types are not used later.
JVM uses a different string table implementatin as it needs exact
types of private members for reflection.
^KT-20996 Fixed
2021-01-20 11:05:53 +03:00
Pavel Kirpichenkov
b66f5c8180
Drop type aliases for JS and KLIB string tables
...
They used to use the same approximation logic anyway
^KT-20996
2021-01-20 11:05:53 +03:00
Pavel Kirpichenkov
2f3f75b512
Fix local anonymous class name error in K2MetadataCompiler
...
Extract the logic of approximating to denotable class supertype
from JS/KLIB and use it in metadata compiler.
^KT-20996 In Progress
2021-01-20 11:05:53 +03:00
Pavel Kirpichenkov
b82a44fa63
Add test for KT-20996
2021-01-20 11:05:53 +03:00
Ilmir Usmanov
cce9469e6a
JVM_IR: Do not unbox Result parameter in Result methods
...
#KT-44140 Fixed
2021-01-20 06:27:15 +01:00
Sergey Shanshin
10d9259df5
Returned support for nullable types by not null serializers
...
Fixes Kotlin/kotlinx.serialization#1265
2021-01-19 20:44:47 +03:00
Ilmir Usmanov
b476f1cc3e
Minor. Change test to use the feature instead of suppressing error
2021-01-19 16:03:33 +01:00
Ilmir Usmanov
d1ee45b518
Add language feature for suspend functions in fun interfaces
...
Since in 1.5 JVM_IR is enabled by default and supports suspend functions
in fun interfaces, it is safe to enable the feature by default as well.
2021-01-19 16:03:31 +01:00
Yaroslav Chernyshev
6aa6f82c47
Fix MultiplatformModelImportingContextImpl#isOrphanSourceSet predicate
2021-01-19 17:28:15 +03:00
Svyatoslav Kuzmich
cf228bebc3
Use static year range in copyright of generated FIR and tests
...
Dynamically calculating a year is problematic, especially in cases like
FIR where generation happens in every build. When you are working on a
last year's commit, each build creates a bunch of uncommited
changes of updating the year in copyrights.
2021-01-19 17:17:31 +03:00
Svyatoslav Kuzmich
ba8223218f
[Wasm] Add inline property accessors optimization
2021-01-19 17:08:58 +03:00
Svyatoslav Kuzmich
2aa3c197a3
[Wasm] Use non-persistent IR to speed up tests
2021-01-19 17:08:05 +03:00
Ilya Kirillov
11a3126c8c
FIR: copy class supertypes list on iterating while calculating supertypes
...
This list is backed by mutable list and during iterating on it
we can resolve supertypes of that class via IDE light classes
as IJ Java resolve may resolve a lot of stuff by fir light classes
This causes ConcurrentModificationException
2021-01-19 14:34:57 +01:00
Vyacheslav Gerasimov
a0ad85e20d
Build: Disable caching of test tasks
...
Until `KTI-464 Test tasks with failed tests are cached` is resolved
2021-01-19 14:19:05 +03:00
Sergey Bogolepov
284d42fd2b
Use camelCase for cacheKind control property
...
Because it is more intuitive for end-users.
2021-01-19 17:31:45 +07:00
pyos
29f95c7df2
FIR: improve inference of implicit type arguments in casts
...
Type parameters do not necessarily match one-to-one, or preserve order.
2021-01-18 18:01:03 +03:00