Commit Graph

81012 Commits

Author SHA1 Message Date
pyos 66429cfb43 JVM_IR: do not inline @JvmStatic into their static proxies 2021-03-31 00:08:40 +02:00
pyos a518a9407d JVM_IR: remap calls to protected @JvmStatic in companions
Protected functions on unrelated classes cannot be called from outside
the current package, so in general, we can only call the static proxy,
not the original companion method.

This has an ABI compatibility implication in that removing `@JvmStatic`
from a protected companion method will require recompiling Kotlin use
sites (of course, this is already source- and binary-incompatible from
Java perspective).

 #KT-12063 Fixed
2021-03-31 00:08:40 +02:00
pyos 85aa6383ad JVM_IR: cast bound property receivers to original type
Because the receiver type is used for determining where to put
accessors, and the type of fake overrides' receivers is the same as for
the original declaration, casting to the type of the parameter leads to
assertion errors.

 #KT-44658 Fixed
2021-03-30 23:09:28 +02:00
Svyatoslav Scherbina 1d96f810da Native: fix target for ReturnsRetained and ConsumesReceiver annotations
These annotations can be used on Objective-C property accessors imported
to Kotlin.
Note: the annotations aren't used in source code, only generated
directly to metadata by cinterop. So this commit doesn't in fact fix
anything but rather makes the implementation less fragile.

See https://github.com/JetBrains/kotlin-native/issues/3336.
2021-03-30 20:23:59 +00:00
Svyatoslav Scherbina 107129679e Native: fix interop_objc_tests after recent frontend change
b60056f11e raises a warning to an error,
fixing this error here.
2021-03-30 15:32:46 +00:00
Mikhail Glukhikh bf2e83f64c Make same tests FIR_IDENTICAL 2021-03-30 18:06:06 +03:00
Shagen Ogandzhanian e0e2715864 [js] Fix constant folding for unsigned aithmetic in IR
this resolves KT-44138
2021-03-30 16:53:12 +02:00
Pavel Kirpichenkov 36bc71121a [IDE] Optimize stdlib cache for non-JVM modules
Consider only dependencies of JVM modules.
Cache found/missing stdlib dependencies for modules.

As of now, non-JVM platforms use default builtins in IDE.
For any non-JVM module indexed stdlib dependency is guaranteed
to be missing, searching for it is useless and costly.

^KTIJ-5666 Fixed
See also KT-44552
2021-03-30 17:28:08 +03:00
pyos 6c11751c55 FIR: infer non-error types for unnamed annotation arguments 2021-03-30 16:20:01 +03:00
Vyacheslav Gerasimov f2a892a972 Cleanup 201 and as41 bunch files 2021-03-30 14:23:43 +03:00
Mikhail Zarechenskiy 943f03e55f Fix add import quick fix for delegated property and missing extension
^KT-39199 Fixed
2021-03-30 13:58:41 +03:00
Mikhail Glukhikh f453649d0b FIR: report NO_TYPE_ARGUMENTS_ON_RHS properly 2021-03-30 12:52:13 +03:00
Ilmir Usmanov 5617d83c6b Remove coroutinesPackage from tests, since it is kotlin.coroutines
anyway.
Simplify createTextForHelpers: remove experimental coroutines version.
2021-03-30 12:41:40 +03:00
Nikolay Krasko c868116535 Drop Bintray from wizards (KTI-528) 2021-03-30 12:34:08 +03:00
Nikolay Krasko c74a3bd2b1 Move testResolveDependencyOnMppInCustomConfiguration to library from maven central (KTI-528) 2021-03-30 12:34:07 +03:00
Nikolay Krasko 1547d4f516 Drop bintray from Gradle inspections and fixes tests (KTI-528) 2021-03-30 12:34:06 +03:00
Nikolay Krasko 7a9c2c1d17 Drop bootstrap mentioning from CodeConformanceTest 2021-03-30 12:34:05 +03:00
Nikolay Krasko 529fc352b3 Drop custom private Bintray Android Studio repository (KTI-528) 2021-03-30 12:34:04 +03:00
Nikolay Krasko 5631481747 Drop bintray kotlin-dev (KTI-528) 2021-03-30 12:34:03 +03:00
Nikolay Krasko 1cedc7e93e Drop bintray jetbrains markdown (KTI-528) 2021-03-30 12:34:02 +03:00
Nikolay Krasko 832523e23f Replace intellij-third-party-dependencies repository (KTI-528) 2021-03-30 12:34:01 +03:00
Nikolay Krasko 87d509a7aa Rearrange list of repositories - move jcenter to the end 2021-03-30 12:34:00 +03:00
Nikolay Krasko 818855d6f0 Update cache redirector for more complex aliases
For example:
"https://packages.jetbrains.team/maven/p/ij/intellij-dependencies" to "https://cache-redirector.jetbrains.com/intellij-dependencies",
2021-03-30 12:33:59 +03:00
Alexander Udalov 6e86df2f6d Workaround illegal access to JDK internals in DynamicBundle
This is basically a manual cherry-pick of
https://github.com/JetBrains/intellij-community/commit/547caebd980d.

 #KT-44624 Fixed
2021-03-30 11:33:07 +02:00
Alexander Udalov 8e1a70cff6 Copy com.intellij.DynamicBundle to compiler/cli
This is needed to fix KT-44264 without updating the whole project to
intellij 203, which might take significant time.

In this commit, the file is copied as is from
https://github.com/JetBrains/intellij-community/blob/27837dd8e68a95cc4da0954f93321c98017b3d11/platform/core-api/src/com/intellij/DynamicBundle.java.
2021-03-30 11:33:07 +02:00
Dmitriy Novozhilov d0a148074f [FIR2IR] Fix generating body for for-loop 2021-03-30 12:28:15 +03:00
Victor Petukhov 5d78b0a962 Report resolution ambiguity on '+=' by taking into account full resolution result including post type checking for '+'
^KT-45503 Fixed
2021-03-30 12:12:56 +03:00
Mark Punzalan 1da35029a6 Restore UNUSED_* diagnostics to relevant tests. 2021-03-30 09:57:56 +03:00
Pavel Punegov 303d5ece96 Use iPhone 11 as a default target for ios simulator tests.
iPhone 12 isn't available on the xcode 12 without updates.
2021-03-30 06:47:01 +00:00
Ting-Yuan Huang 17ba350868 AnalysisHandlerExtensionTest: set output dir for JVM 2021-03-29 20:41:09 +03:00
Ting-Yuan Huang 0dee48781c Tests for AnalysisHandlerExtension
Add two common use cases of AnalysisHandlerExtension:
1. repeated analysis with new source roots.
2. frontend only mode
2021-03-29 20:41:08 +03:00
Ting-Yuan Huang dba127a4d8 Add AnalysisHandlerExtension extension point for K2Native
frontendPhase is moved out of back phases to allow frontend only mode.

AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.

A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:06 +03:00
Ting-Yuan Huang 8e7b561b10 Add AnalysisHandlerExtension extension point for K2JsCompiler
AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.

A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:05 +03:00
Ting-Yuan Huang 4db79285c1 Add AnalysisHandlerExtension extension point for K2MetadataCompiler
AnalysisHandlerExtension allows compiler plugins to:
1. Intercept and override the default analysis.
2. Utilize the compiler infrastructure to do custom analysis.

A well know plugin on the JVM platform is KAPT.
2021-03-29 20:41:03 +03:00
Ting-Yuan Huang e0c28e27d2 Move AnalysisHandlerExtension out of frontend.java
A dummy AnalysisHandlerExtension that extends the new extension is kept
in frontend.java for backward compatbility.
2021-03-29 20:41:01 +03:00
Elena Lepilkina 510e38b791 [K/N][performance] Adopted performance service to work with new configurations and build numbers 2021-03-29 17:10:18 +00:00
Elena Lepilkina d709df9d8d [K/N][performance] Removed analyzer dependencies and fixed running benchmarks 2021-03-29 17:10:18 +00:00
Ilya Goncharov 30a024d05d [JS IR] Add test with member with JsName and default argument
^KT-44796 fixed
2021-03-29 19:58:15 +03:00
Steven Schäfer a7f8f0d903 JVM IR: Avoid IndexOutOfBounds exceptions in TypeOperatorLowering
The code didn't account for SYNTHETIC_OFFSETs (KT-45688) and could
throw on IR containing broken line numbers (KT-44910).
2021-03-29 19:44:11 +03:00
Ilya Goncharov 6567b0e8ad [Gradle, JS] Remove supporting source maps for IR until it exists
^KT-45754 fixed
2021-03-29 19:36:17 +03:00
Dmitry Petrov 466e7b60b0 JVM_IR fix receiver type for fake overrides 2021-03-29 19:04:42 +03:00
Ilya Muradyan 92b99b140e [Scripting] Fix Bintray-dependent test 2021-03-29 18:36:50 +03:00
Ilya Muradyan d40ada5d07 [REPL] Fix syntax errors analysis and incompleteness detection 2021-03-29 18:36:49 +03:00
Ivan Kylchik 736efe0403 [VISUALIZER] Edit black box test to run visualizer on all modules 2021-03-29 18:11:24 +03:00
Ivan Kylchik 097b5a74fb [VISUALIZER] Rewrite black box runner using callback to TestRunner 2021-03-29 18:11:23 +03:00
Ivan Kylchik dbf1f54c3f Add possibility to run callback lambda before dispose test project 2021-03-29 18:11:22 +03:00
Ivan Kylchik 0f70ec032d [VISUALIZER] Add new visualizer tests processing codegen box test data 2021-03-29 18:11:21 +03:00
Ivan Kylchik 427a1295c8 Allow to create sub folders for expected data file that did not exist 2021-03-29 18:11:21 +03:00
Ivan Kylchik 29920d729f [VISUALIZER] Remove unnecessary abstract property frontendFacade
Right frontend facade will be chosen by frontendKind
2021-03-29 18:11:20 +03:00
Ivan Kylchik e19514f1dc [VISUALIZER] Render original symbols/descriptors in fir/psi 2021-03-29 18:11:19 +03:00