Roman Golyshev
ee98a76600
FIR IDE: Implement simple importing of the functions
...
This is not a complete algorithm, but it already works in many cases
Disable some tests that not yet work
2021-02-12 10:53:16 +00:00
Roman Golyshev
88e7d1e5ee
FIR: Attach candidate symbol to the ErrorNamedReference
...
This allows to restore the referenced candidate in cases when there are
no ambiguity
Also, change rendering of named references to be more accurate, so the
diagnostics tests pass: if reference is FirErrorNamedReference, it is
more important than if it has a not-null `candidateSymbol`
2021-02-12 10:53:15 +00:00
Roman Golyshev
51c59e5634
FIR IDE: Check function call before trying to drop the receiver
2021-02-12 10:53:14 +00:00
Roman Golyshev
d88fd5bd73
FIR IDE: More strictly navigate to parent KtDotQualifiedExpression
2021-02-12 10:53:14 +00:00
Roman Golyshev
e265a78a33
FIR IDE: Implement shortening and import for type qualifiers
2021-02-12 10:53:13 +00:00
Roman Golyshev
0e271b72c7
FIR IDE: Do not try to shorten type without qualifier
2021-02-12 10:53:12 +00:00
Roman Golyshev
534f4a66ad
FIR IDE: Add simple shortening for qualified calls and properties
2021-02-12 10:53:12 +00:00
Roman Golyshev
f03ca5ea57
FIR IDE: Add import in case when conflicting class comes from * import
2021-02-12 10:53:11 +00:00
Roman Golyshev
0b48416a1e
FIR IDE: Unwrap nullable types
2021-02-12 10:53:10 +00:00
Roman Golyshev
08e271411f
FIR IDE: Create fake scopes to avoid import duplicates
2021-02-12 10:53:09 +00:00
Roman Golyshev
e34370554d
FIR IDE: Add simple types importing
...
Some tests are not passing
2021-02-12 10:53:09 +00:00
Roman Golyshev
0609aa1e2e
FIR IDE: Refactor KtFirReferenceShortener
2021-02-12 10:53:08 +00:00
Roman Golyshev
8575ce32d4
FIR IDE: Add more tests for type conflicts
2021-02-12 10:53:07 +00:00
Roman Golyshev
e744084c15
FIR IDE: Enable types shortening for nested classes and nested types
2021-02-12 10:53:07 +00:00
Roman Golyshev
b9d074051f
FIR IDE: Add separate tests for FIR reference shortening
2021-02-12 10:53:06 +00:00
Roman Golyshev
c1130f2010
FIR IDE: Add reference shortening service which works over FIR
2021-02-12 10:53:05 +00:00
Roman Golyshev
108395fcfe
FIR: Fix bug with incorrect source element for qualifiers
2021-02-12 10:53:04 +00:00
Roman Golyshev
1479388bd5
FIR IDE: Refactor AbstractFirShortenRefsTest
...
- Use `FIR_COMPARISON` directive
- Move testing utils to `ideaFirTestUtils.kt`
- Ignore `TopLevelFunctionImportWithLotsOfFqName.kt` test for now (it
takes too long to execute)
2021-02-12 10:53:04 +00:00
Roman Golyshev
68b5f2736e
FIR: Add fake root prefix for IDE resolution
2021-02-12 10:53:03 +00:00
Roman Golyshev
0de251e50d
Add runTestInWriteCommand flag to AbstractImportTest
2021-02-12 10:53:02 +00:00
Dmitriy Novozhilov
2d5b685535
[FIR] Fix processing constructors of sealed classes
...
- Allow declaring protected constructors in sealed classes
- Make default visibility of sealed class constructor `protected`
KT-44861
KT-44865
2021-02-12 13:36:41 +03:00
Dmitriy Novozhilov
7c61ddc72b
[FE] Allow declaring protected constructors in sealed classes
...
#KT-44865 Fixed
2021-02-12 13:36:39 +03:00
Dmitriy Novozhilov
f3a8fcaea6
[FE] Make constructors of sealed classes protected instead of internal
2021-02-12 13:36:38 +03:00
Mikhael Bogdanov
e795c2c407
Generate proper hashCode for fun interface wrappers
...
#KT-44875 Fixed
2021-02-12 11:28:17 +01:00
Vyacheslav Karpukhin
f33cad54c5
AndroidDependencyResolver: fixed AAR import on modern AGP plugins
2021-02-11 23:24:19 +01:00
Vyacheslav Karpukhin
7eb5fc7778
AndroidDependencyResolver: fixed NPE
2021-02-11 23:24:18 +01:00
Anton Bannykh
abc44fa658
Increase -Xmx for Ant tests
2021-02-11 18:39:34 +03:00
Jinseong Jeon
20f9787c70
FIR checker: report errors in contract description
2021-02-11 17:02:18 +03:00
Jinseong Jeon
3d635b6a94
FIR: unwrap smartcast expression when extracting effects of contract
2021-02-11 17:02:16 +03:00
Jinseong Jeon
70f462781a
FIR-IDE: add mappings for backing field diagnostics
2021-02-11 17:02:15 +03:00
Alexander Udalov
510b9e6f2a
Move around some codegen box tests
...
In tests merged from boxAgainstJava in 29b96aa1 , some directories were
named slightly differently compared to box, e.g. "property" vs
"properties", "varargs" vs "vararg". This change renames these, moves
some of the tests to more fitting directories, and also renames
"visibility" to "javaVisibility" because it's about Java visibilities
specifically.
2021-02-11 13:50:09 +01:00
Alexander Udalov
2d60fa787d
Remove codegen tests on old language and API versions
2021-02-11 13:50:09 +01:00
Alexander Udalov
401f0ac583
Use TARGET_BACKEND instead of DONT_TARGET_EXACT_BACKEND in box against Java tests
...
"// TARGET_BACKEND: JVM" more clearly says that the test is
JVM-specific, rather than DONT_TARGET_EXACT_BACKEND which excludes all
other backends.
2021-02-11 13:50:08 +01:00
Victor Petukhov
f797ee7803
Substitute captured types with inner intersection one (NewTypeSubstitutor)
...
^KT-44651 Fixed
2021-02-11 14:20:14 +03:00
Alexander Udalov
80daf120e6
Apply illegal-access=permit workaround for JDK 16+
...
Apparently, the openjdk commit that enabled JEP 396 (encapsulated JDK
defaults) is effective since jdk-16+28:
https://github.com/openjdk/jdk/commit/ed4c4ee7
2021-02-11 12:12:39 +01:00
Yaroslav Chernyshev
4b62b2de0c
Use IDEA ASM in kotlin-gradle-plugin-integration-tests module
2021-02-11 13:25:48 +03:00
Mark Punzalan
c3c8991ab6
FIR IDE: Re-organize MainKtQuickFixRegistrar.
2021-02-11 11:11:00 +01:00
Mark Punzalan
a9f19c4a45
FIR IDE: Move ChangeVariableMutabilityFix to idea-frontend-independent.
2021-02-11 11:11:00 +01:00
Mark Punzalan
7962224804
FIR IDE: Add quickfix for VAR_OVERRIDDEN_BY_VAL.
2021-02-11 11:11:00 +01:00
Mikhail Glukhikh
57e06992c9
Skip JDK 6 in failing BB test (java.util.function in use)
2021-02-11 12:59:23 +03:00
Mikhail Glukhikh
cd483ad231
FIR2IR: fix raw SAM conversion (avoid * in type arguments)
2021-02-11 11:48:35 +03:00
Mikhail Glukhikh
5f3102bf2f
FIR2IR: expand type before getting nullability #KT-44803 Fixed
2021-02-11 11:48:35 +03:00
Mikhail Glukhikh
791f589127
SymbolTable: Rewrite nasty code with if without else in elvis RHS
2021-02-11 11:48:34 +03:00
Mikhail Glukhikh
4bc630d82c
FIR2IR: enhance approximation of captured types
2021-02-11 11:48:34 +03:00
Mikhail Glukhikh
346ffb3acf
FIR2IR: support substitution for SAM types
2021-02-11 11:48:34 +03:00
Mikhail Glukhikh
7050af9b79
FIR2IR: use invariant projections for SAM_CONVERSION types
2021-02-11 11:48:34 +03:00
Roman Artemev
67671afab4
[Plugin API] Fix missed call in resolveBySignatureInModule
2021-02-11 11:44:09 +03:00
Nikolay Krasko
2c4a6fdb98
Revert "Use IDEA ASM in kapt module"
...
This reverts commit 903defdf
2021-02-11 01:07:38 +03:00
Alexander Udalov
73aa465ee9
Add tests for issues fixed in JVM IR
...
Note that KT-30696 is fixed only in the single-module case, and KT-42012
is not fixed fully (see KT-44855).
#KT-30041
#KT-30629
#KT-30696
#KT-30933
#KT-32351
#KT-32749
#KT-38849
#KT-42012
#KT-42990
#KT-44234
#KT-44529
#KT-44631
#KT-44647
2021-02-10 21:42:10 +01:00
Yaroslav Chernyshev
17fc10a8af
Mark obsolete Gradle JVM options as Deprecated with Error
...
Options `includeRuntime`, `noStdlib` and `noReflect` were affected
#Fixed KT-44361
2021-02-10 21:21:03 +03:00