Commit Graph

96054 Commits

Author SHA1 Message Date
Sebastian Sellmair 126c8eafa3 [Gradle] KotlinWithJavaCompilationFactory: Use compile&runtime classpath from javaSourceSet
^KT-54867 Verification Pending
2022-11-12 13:18:50 +00:00
Sebastian Sellmair cc004c75c2 [Gradle] Implement KT54867KotlinWithJavaCompilationClasspathTest to cover KT-54867 2022-11-12 13:18:50 +00:00
[pʲɵs] 3f52d03164 FIR: render entire declaration header in *_MISMATCH_ON_OVERRIDE (#5019)
Otherwise it's really not clear what exactly the type is supposed to be.
2022-11-11 20:59:25 +02:00
Anna Kozlova 9f470e2a4d [LL API] return FirErrorProperty for top level destructuring declaration
KTIJ-23552
2022-11-11 17:39:54 +01:00
Anna Kozlova 3590c4ea35 [Analysis API FIR] support generated temp properties
KTIJ-23492 (array index expression), KTIJ-23138 (inc/dec desugaring)
2022-11-11 17:39:53 +01:00
Svyatoslav Kuzmich ee2e966c5c [Wasm] Reuse JS interop closure converters across modules
Otherwise, these function export names clash without proper linking
2022-11-11 16:29:52 +00:00
pyos f745d0db0e FIR: deserialize value class representation from metadata
This is necessary when jvm-abi-gen strips out private constructors.
#KT-54897 Fixed
2022-11-11 16:28:38 +00:00
Alexander Udalov af2b77dd4e FIR: minor, add message when value class has no representation
KT-54897
2022-11-11 16:28:38 +00:00
Alexander Udalov beb3759f5a Add jvm-abi-gen test on inline class with private ctor
KT-54897
2022-11-11 16:28:37 +00:00
Zalim Bashorov 89ba1b515e [Wasm, test] Use "dynamic import" to catch exception thrown during JS & Wasm modules initialization 2022-11-11 16:22:10 +01:00
Zalim Bashorov 31f3fbcd78 [JS, Wasm] Improve readability of the message printed for failed tests for kotlin.test 2022-11-11 16:22:10 +01:00
Zalim Bashorov 5dd188f2cd [CODEOWNERS] Mark files in /js/js.tests/* owned by Kotlin Wasm 2022-11-11 16:22:08 +01:00
Zalim Bashorov 5fb72dd99d [JS, Wasm] Add to gradle.properties some properties useful while working with JS & Wasm 2022-11-11 16:21:54 +01:00
Zalim Bashorov 5511377c2c [Wasm, tests] Cleanup and improvements in wasm test infra
- Remove no longer necessary separate generation to run inside browsers
- Generate index.html in DEBUG mode instead of SUPER_DEBUG
- Print link to index.html using IDEA builtin server (0.0.0.0:63342)
- Small improvements in generated index.html
2022-11-11 16:21:54 +01:00
Zalim Bashorov 10bf3b848e [JS & Wasm tests] Load properties from root local.properties file too 2022-11-11 16:21:54 +01:00
Zalim Bashorov e0cadb78e1 [CODEOWNERS] Remove depth limit since it doesn't change test running time much 2022-11-11 16:20:44 +01:00
Zalim Bashorov 5e9d2dfbe6 [CODEOWNERS] Add owner for kotlin-gradle-plugin-tcs-android 2022-11-11 16:20:43 +01:00
Zalim Bashorov 43e05ed8a2 [CODEOWNERS] Update owners for JS and Wasm part of gradle plugin 2022-11-11 16:20:43 +01:00
Zalim Bashorov 9c6254c8f5 [Wasm, JS] Add script to check that a specific v8 version is available for all platforms 2022-11-11 16:20:43 +01:00
Zalim Bashorov cbf7497f76 [Wasm, JS] Update v8 to 10.9.194
It turned out that 10.9.130 is not available for intel based macs (mac64)
2022-11-11 16:20:43 +01:00
Sergej Jaskiewicz 6674e41a3d Add "Kotlin JS" as a co-owner of the stepping tests 2022-11-11 15:01:49 +00:00
Dmitrii Gridin 592591acad [AA] KtPsiBasedSymbolPointer: disable type inference
^KT-54417
2022-11-11 14:34:52 +00:00
Dmitrii Gridin bbe1aa61af [AA FIR] support symbol pointer for property from constructor
^KT-54311
^KT-54311
2022-11-11 14:34:52 +00:00
Dmitrii Gridin fe93f49ff7 [AA] KtPsiBasedSymbolPointer: add class type check
^KT-54311
2022-11-11 14:34:51 +00:00
Mikhail Glukhikh 4dc7b6dddc K2: fix/universalize logic to determine that member is from Java 2022-11-11 13:30:40 +00:00
Mikhail Glukhikh d35dedcb72 FIR2IR: simplify f/o owner lookup tag extraction 2022-11-11 13:30:39 +00:00
Mikhail Glukhikh 4cb41f8e82 FIR2IR: rename unmatchedReceiver -> unmatchedOwner 2022-11-11 13:30:39 +00:00
Mikhail Glukhikh 08d351db57 K2: unify all importing data logic inside FirAbstractImportingScope 2022-11-11 13:30:39 +00:00
Mikhail Glukhikh e46978f7b3 K2: simplify visibility check for static qualifiers 2022-11-11 13:30:38 +00:00
Mikhail Glukhikh 104fd4c14d K2: don't use dispatch receiver to store imported static qualifiers
Related to KT-53441
2022-11-11 13:30:38 +00:00
Mikhail Glukhikh 7205a90d9d FIR2IR: drop redundant visibility check in fake override generator 2022-11-11 13:30:37 +00:00
Mikhail Glukhikh cb39221f85 FIR2IR: drop unused code with annotation placeholder 2022-11-11 13:30:37 +00:00
Mikhail Glukhikh 3a81174a4c FIR2IR: support static fake overrides (functions) #KT-53441 Fixed 2022-11-11 13:30:36 +00:00
Mikhail Glukhikh ec77e1896c FIR2IR: cleanup CallAndReferenceGenerator 2022-11-11 13:30:35 +00:00
Mikhail Glukhikh f070401bb5 K2: fix visibility checks for static overrides via imported from static
#KT-53441 In Progress
2022-11-11 13:30:35 +00:00
Mikhail Glukhikh cc1a094b6c K2: rename importedFromObject -> importedFromObjectOrStatic 2022-11-11 13:30:34 +00:00
Mikhail Glukhikh 2b2cc07c89 FirObjectImportedCallableScope: fix wrong variable name 2022-11-11 13:30:34 +00:00
Mikhail Glukhikh d16a4ae647 FirClassSubstitutionScope: partial cleanup 2022-11-11 13:30:33 +00:00
Mikhail Glukhikh 53f37a3893 FIR: always use class-based dispatch receiver type in class member helpers 2022-11-11 13:30:33 +00:00
Mikhail Glukhikh d4fc2248ff FIR: make class member helper names more consistent 2022-11-11 13:30:32 +00:00
pyos e2a83a0ed0 FIR: unwrap intersection overrides when looking for owner class
But not substitution overrides! This is important if the method called
is an intersection override where one of the intersected types is a
subtype of a generic type.
2022-11-11 13:30:32 +00:00
pyos 9f65c6022c Move substitution override unwrapping to FirVisibilityChecker
This is because it is only needed for the declaration itself, not for
the containing class. Currently there is no difference because
`containingNonLocalClass` will look at the dispatch receiver argument if
one exists anyway, and for substitution/intersection overrides one must
exist.
2022-11-11 13:30:31 +00:00
Yan Zhulanow 40f1bc8480 [Analysis API] Allow disabling sealed class inheritor searcher in tests
Index-less implementation of sealed class inheritor searcher affects
Java caches, making laziness work quite differently, comparing to IDEs.
2022-11-11 11:28:39 +00:00
Yan Zhulanow b770e5d02f [LL API] Get designation correctly for enum value members (KTIJ-23458)
Although being a 'KtClass' in the PSI, 'KtEnumEntry' is a callable in
Analysis API, and its direct members should also be treated as local.
2022-11-11 11:28:38 +00:00
Yan Zhulanow 4d41ac09df [Analysis API] Treat inapplicable declarations safely (KTIJ-23458)
Make 'getClassOrObjectSymbol()' and 'getNamedClassOrObjectSymbol()'
return 'null' for inapplicable PSI declarations.
2022-11-11 11:28:38 +00:00
Yan Zhulanow 0a8b9c821c [FE] Add missing 'ClassId' check in Kotlin class loading (KTIJ-23435)
'findKotlinClassOrContent()' does not really distinguish between
outer class names and package path components, so it might return
'foo/bar/Baz.Boo' for 'foo/bar/Baz/Boo'. Possibly because
 'findKotlinClassOrContent()' potentially returns a raw byte array,
 ClassId checking is supposed to be performed in
 'extractClassMetadata()'. For Java, it happens inside
 'FirJavaFacade.findClass()', yet for Kotlin the check was absent.
2022-11-11 11:28:37 +00:00
Yan Zhulanow 04ccd3710f [LC] Compute modifiers/annotations lazily (KTIJ-23442) 2022-11-11 11:28:37 +00:00
Yan Zhulanow 48fbb62658 [FE] Add missing 'originalForSubstitutionOverrideAttr' to parameters
'originalForSubstitutionOverrideAttr' is supposed to be on all
'SubstitutionOverride' declarations, and certain functionality, such as
'KtFirOverrideInfoProvider#getOriginalOverriddenSymbol()' depends on it.

Absence of the attribute might trigger infinite loop/recursion in
substitution unwrapping.
2022-11-11 11:28:36 +00:00
Yan Zhulanow 01009ed75b [LL API] Seek for the containing file in the right module (KTIJ-22808)
It's not guaranteed that the declaration for which we need a containing
file is from the currently analyzed module.
2022-11-11 11:28:36 +00:00
Yan Zhulanow 76931522e0 [Analysis API] Fix designation path for constructors (KTIJ-22808)
Local declaration check performs incorrectly for constructors as they
always have local callable IDs.
2022-11-11 11:28:35 +00:00