Commit Graph

95845 Commits

Author SHA1 Message Date
Dmitriy Dolovov fbfb564b41 [Native][tests] Don't compile given KLIB libraries 2022-11-04 10:10:51 +00:00
Dmitriy Dolovov a8b0f8a145 [Native][tests] Minor: Add check to ensure all custom KLIBs are valid 2022-11-04 10:10:50 +00:00
Dmitriy Dolovov 09c6746d64 [Native][tests] Use lazy properties for K/N test infra to avoid premature resolve of Gradle configurations 2022-11-04 10:10:50 +00:00
mvicsokolova 775db55539 [Native][tests] Support passing custom (external) KLIBs as -l dependencies to Kotlin/Native compiler invocation 2022-11-04 10:10:50 +00:00
Dmitriy Dolovov f98a5020cd [Native][tests] Don't patch FQNs inside of kotlinx.* package 2022-11-04 10:10:49 +00:00
Dmitriy Dolovov 753ad9f29c [Native][tests] Minor: Mark TestProperty as private, it should not be used outside of the file 2022-11-04 10:10:49 +00:00
mvicsokolova 2f85b4928e Moved nativeTest constructor to buildSrc 2022-11-04 10:10:48 +00:00
Dmitriy Novozhilov 5c277cf95d [Build] Roll back bootstrap for JPS build to 1.8.20-dev-1438
This is a workaround for KT-54791
2022-11-04 11:50:03 +02:00
Jinseong Jeon 4497be0b68 AA: do not parse signature with NO_NAME_PROVIDED
^KTIJ-23503 Fixed
2022-11-04 10:42:19 +01:00
Sebastian Sellmair 6cadad5a6b [Gradle][MPP] KotlinCompilationAssociator: Fix KotlinJvmCompilationAssociator (main and test confusion)
^KT-54783 Verification Pending
2022-11-04 08:42:28 +00:00
Sebastian Sellmair 9632c6d796 [Gradle][MPP] KotlinWithJavaCompilationFactory: Support recursive call from .javaSourceSets.all
^KT-54783 Verification Pending
2022-11-04 08:42:27 +00:00
Anna Kozlova f18d1e9067 [Analysis API FIR] support call expression resolve in class literal
KTIJ-23272
2022-11-04 08:10:09 +01:00
Vladimir Dolzhenko 5dc2442872 Safe reporting PSI elements in KEWA 2022-11-03 17:27:11 +00:00
pyos 20871dd555 FIR DFA: update assignment indices when joining flows 2022-11-03 13:33:11 +00:00
pyos 8e40566520 Minor: make a function that intersects N maps shorter 2022-11-03 13:33:10 +00:00
pyos 639a454d6c FIR DFA: when joining flows, clear reassigned vars with no statements
For example:

    val c = C("...")
    val x = c.x // alias to variable for c.x, which depends on c
    if (x == null) return
    // now c.x has type Any
    c = C(null)
    // c has been reassigned => info for c.x is no longer valid;
    // c itself has never had any statements made about it, but
    // we must still call removeAllAboutVariable to clear the
    // dependents
2022-11-03 13:33:10 +00:00
pyos 0781cd12d4 FIR DFA: copy logic statements to aliases before removing variables
^KT-54744 Fixed
2022-11-03 13:33:09 +00:00
pyos 31eaa211b7 Add test for KT-54744 2022-11-03 13:33:09 +00:00
Nikita Bobko a926edd845 Disable ReferencesToSyntheticJavaProperties until the KEEP document is approved
KEEP document: https://github.com/Kotlin/KEEP/pull/329
2022-11-03 12:02:59 +00:00
Pavel Punegov 762f014c5f [K/N][test] Don't mark objects with ThreadLocal annotation for new MM
Merge-request: KT-MR-7569
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2022-11-03 11:23:36 +00:00
Vladimir Sukharev 44f638e952 Drop K/N dependency to JCenter 2022-11-03 10:51:56 +00:00
Dmitriy Novozhilov 2fd8bf9153 [FIR] Don't analyze lambda twice inside delegate inference
This is a workaround for ^KT-54767
2022-11-03 08:30:09 +00:00
Dmitriy Novozhilov 7af43176ce [FIR] Add optin on API of updating type of receiver values. KT-54708 2022-11-03 08:30:09 +00:00
Dmitriy Novozhilov e6ce008415 [FIR] Ignore leaked internal types because of KT-54568 2022-11-03 08:30:09 +00:00
Dmitriy Novozhilov 089d907fd4 [FIR] Ignore leaked internal types because of KT-54517 2022-11-03 08:30:08 +00:00
Dmitriy Novozhilov 097a86deb5 [Test] Check that FIR tree does not contain stub types and type variable types after resolution 2022-11-03 08:30:08 +00:00
Dmitriy Novozhilov 20045ac0dc [FIR] Replace uninferred type variables and stub types during builder inference 2022-11-03 08:30:08 +00:00
Dmitriy Novozhilov 22c21ca4df [FIR] Replace uninferred type variables and stub types during delegate inference 2022-11-03 08:30:07 +00:00
Svyatoslav Scherbina 94387da867 Bump Kotlin/Native version to 1.8.20-dev-1815 2022-11-02 19:23:27 +00:00
Jaebaek Seo bb15a6425c Add KDoc for KtWhenExpression.getMissingCases()
KtWhenExpression.getMissingCases() reports the same missing cases even
when the KtWhenExpression has an else branch. Without a description, it
is difficult to be aware of it.
2022-11-02 17:51:06 +00:00
Jinseong Jeon 7f6cad6fb3 FIR: ensure STATUS resolve phase before reading valueClassRepresentation 2022-11-02 18:04:38 +01:00
Jinseong Jeon 542ca68aba AA: add test about PsiType for @JvmInline value class 2022-11-02 18:04:38 +01:00
Jinseong Jeon c9a2e10dd7 AA: merge single/multi modules tests for PsiTypeProvider
...because single-module test is also multi-module test
2022-11-02 17:38:16 +01:00
Jinseong Jeon d98081dce2 AA: introduce MPP tests for PsiTypeProvider 2022-11-02 17:38:16 +01:00
Jinseong Jeon dc7506c40a AA: utilize logic in PsiTypeProvider test
...to reuse them in upcoming multi-module tests
2022-11-02 17:38:15 +01:00
Jinseong Jeon 5bca3c6841 AA: rename test api for better clarification
Many sub tests are implementing the same name, doTestByFileStructure,
which indeed are based on the list of KtFile in a single module.
Rather, this one should be named after "ModuleStructure".
2022-11-02 17:38:15 +01:00
Joshua Schwartz 96e789098f Close parenthesis
Also replace semicolon with comma to fix grammar.
2022-11-02 16:42:41 +02:00
Roman Golyshev c3031ccff5 [Analysis API] Use smart pointer to hold onto KtFile in ShortenCommand
It's a better approach, considering that we already
keep all the PSI element via smart pointers
2022-11-02 14:23:21 +00:00
Yahor Berdnikau c7363adf10 Align kotlin stdlib jvm variants versions
Instead of doing substitution for stdlib, plugin now just aligns jvm
variants version in all dependencies to one. This eliminates issue when
JPMS module requires kotlin.stdlib.jdk8 (or jdk7) and fails to find it
in compilation classpath. Kotlin-stdlib-jdk8(,jdk7) variants in 1.8.0 is
 empty one, so new approach will not cause duplicate classes in
 classpath issue.

 Gradle property to disable alignment was renamed from "kotlin
 .stdlib.jdk.variants.substitution" to "kotlin.stdlib.jdk.variants
 .version.alignment" to better reflect new approach.

^KT-54703 Fixed
2022-11-02 13:37:52 +00:00
Yahor Berdnikau 0122b73bae Align stdlib version also on kotlin-stdlib-jdk7:1.8+ in dependencies
To avoid having transitive kotlin-stdlib-jdk8 with older version leading
 to classpath conflicts.

^KT-54703 In Progress
2022-11-02 13:37:51 +00:00
Yahor Berdnikau 5f40ba5bd9 Move stdlib version alignment tests into separate test suite
^KT-54703 In Progress
2022-11-02 13:37:51 +00:00
Sergej Jaskiewicz ba7f5afebe [JS IR] Generate debug info for catch parameters
We will need it to generate original names for catch parameters in
sourcemaps.

Also, don't generate redundant debug info for compiler-generated
exception handling control flow operators.

See the doc comment to the MultipleCatchesLowering class

#KT-46276
2022-11-02 13:14:01 +00:00
Sergej Jaskiewicz 871d445b4e [JS IR] Generate debug info for global property initializers 2022-11-02 13:14:01 +00:00
Sergej Jaskiewicz 4ae03ea74a [JS IR] Improve debug info for if and when statements
#KT-46276
2022-11-02 13:14:01 +00:00
Sergej Jaskiewicz ccbb2a08a0 [JS IR] Improve debug info for functions with default parameters
Don't generate unnecessary mappings so that the user doesn't need to
step in many times to get where they want

#KT-46276
2022-11-02 13:14:00 +00:00
Sergej Jaskiewicz 43c5c8b44f [JS IR] Fix debug info for Char, Long, and unsigned integer literals
Map class constructor calls to the literals they were generated
from.

#KT-46276
2022-11-02 13:13:59 +00:00
Sergej Jaskiewicz 512a2bfd7a [JS IR] Improve debug info for callable references and lambdas
#KT-46276
2022-11-02 13:13:59 +00:00
Sergej Jaskiewicz fe0e9db3aa [JS IR] Generate debug info for JS switch statements
#KT-46276
2022-11-02 13:13:59 +00:00
Sergej Jaskiewicz b2b7958b62 [JS IR] Generate debug info for secondary constructors
#KT-46276
2022-11-02 13:13:58 +00:00
Sergej Jaskiewicz ec18dce7cb [JS IR] Improve debug info for suspend functions
- Map generated explicit Unit returns to the closing brace of
  the original body
- Name the continuation parameter as `$completion` to match the JVM BE,
  and generate debug info for it (so that it appears in the 'names'
  array in sourcemaps)
- Don't generate debug info for coroutine instantiation ceremony
  (so that the user doesn't need to step in many times to get where they
  want)

#KT-46276
2022-11-02 13:13:58 +00:00