Sebastian Sellmair
ded5cf2caa
[Gradle] Replace 'configureArchivesAndComponent' with KotlinTargetArtifact
...
KT-61634
2023-10-25 08:34:48 +00:00
Sebastian Sellmair
eb4daa4482
[Gradle] Implement CreateTargetConfigurationsSideEffect and NativeForwardImplementationToApiElementsSideEffect
...
KT-61634
2023-10-25 08:34:48 +00:00
Sebastian Sellmair
787420cc21
[Gradle] Introduce KotlinTargetSideEffect and KotlinCompilationSideEffect
...
KT-61634
2023-10-25 08:34:48 +00:00
Sebastian Sellmair
f89a46710a
[Gradle] Implement KotlinTargetSideEffect.extensionPoint
...
KT-61634
2023-10-25 08:34:47 +00:00
Ivan Kochurkin
1827df82c4
Removed useless as casts from compiler code
...
It allows compiling code with K2 and enabled `-Werror`
2023-10-24 20:59:56 +00:00
Ivan Kochurkin
d50c6f1b6d
[FIR] Fix missing USELESS_CAST
...
`FirUselessTypeOperationCallChecker` always checks exact types matching for `as` operator
Simplify code of cast checker and utils
^KT-56629 Fixed
^KT-56615 Fixed
^KT-59820 Fixed
2023-10-24 20:59:56 +00:00
Dmitrii Gridin
2f8026f335
[LL FIR] add missed diagnostic tests for scripts
...
^KT-62840
^KT-62841
^KT-62861
2023-10-24 19:32:54 +00:00
Dmitrii Gridin
8e623ee73a
[LL FIR] support script tests
2023-10-24 19:32:54 +00:00
Mikhail Glukhikh
cba9f1c559
AA: fix PSI finding for FIR callable fake overrides
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
5bd9b282a0
K2/JS: fix JS_NAME_CLASH positioning as source was changed for callable copies
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
30c35d79f4
LL API: unwrap callable copies while determining their sources
...
In previous commit (K2: prefer derived class sources...)
we changed default source for callable copy (e.g. substitution override)
to its owner class. This can create an unexpected situation in LL API,
because normally KtCallableDeclaration is expected to be a source.
This commit introduces "compensation" on analysis API side.
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
3cb9396b20
K2: prefer derived class sources for callable copies (e.g. fake overrides)
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
4b2a122f80
FIR2IR: make delegate field/accessors sources closer to PSI2IR
...
#KT-59864 Fixed
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
47fec1a113
K2: use similar sources for if branches (PSI/LT)
...
Related to KT-59584
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
21b4ce050c
K2: add source range test to ensure #KT-59584 Fixed
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
920b0bfe63
FIR2IR: use SYNTHETIC_OFFSET for data class generated members
2023-10-24 17:08:40 +00:00
Mikhail Glukhikh
a9894b1842
K2: use derived class sources for callable copies if base callables have no sources
...
Related to KT-60155
2023-10-24 17:08:40 +00:00
Vladimir Sukharev
8395018de8
[FIR] Fix disappeared INVALID_CHARACTERS_NATIVE_ERROR
...
https://youtrack.jetbrains.com/issue/KT-60003/K2-Disappeared-INVALIDCHARACTERSNATIVEERROR
^KT-60003 Fixed
Merge-request: KT-MR-12686
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2023-10-24 16:28:30 +00:00
Dmitriy Novozhilov
07c4cd231c
[FIR2IR] Lazily load all classes in FIR2IR builtins which may appear in sources
...
If some of builtin classes is declared in sources, trying to load it in
IrBuiltInsOverFir before fir2ir pass which generates IR for source
declarations will lead to creating lazy class instead of normal one
Without this change the following tests are failing:
- `FirLightTreeBlackBoxInlineCodegenWithBytecodeInlinerTestGenerated.Signature`
- `testByteIteratorWithWhileLoop`
- `testByteIteratorWithForLoop`
2023-10-24 15:35:05 +00:00
Dmitriy Novozhilov
81821d4cd4
[FIR2IR] OptIn to using IrClass.declarations in all appropriate places
2023-10-24 15:35:05 +00:00
Dmitriy Novozhilov
38a7f2bc07
[IR] Mark utilities, which use IrDeclarationContainer.declarations with @IrSymbolInternals
...
Only those utilities are marked because only them are accessible in fir2ir.
And in other modules it's allowed to access .declarations from anywhere
2023-10-24 15:35:05 +00:00
Dmitriy Novozhilov
78a705a1bc
[Build] Opt in to IrSymbolInternals for some backend-specific modules
2023-10-24 15:35:05 +00:00
Dmitriy Novozhilov
c8b7dbd352
[IR] Add optIn to IrDeclarationContainer.declarations
...
Accessing list of declaration may trigger lazy declaration list computation for lazy class,
which requires computation of fake-overrides for this class. So it's unsafe to access it
before IR for all sources is built (because fake-overrides of lazy classes may depend on
declaration of source classes, e.g. for java source classes)
So this OptIn is needed to carefully handle all cases of .declarations access in FIR2IR
2023-10-24 15:35:05 +00:00
Troels Bjerre Lund
3556533d95
[K/N] Fix K2 detection in native tests
...
This updates how the requested language version is detected in native
tests, after language version 2 has become the default.
2023-10-24 14:00:34 +00:00
Kirill Rakhman
56f53fbd0b
[FIR] Make ClassId not null in enum call mapped from java
2023-10-24 13:27:02 +00:00
Ilya Goncharov
c9e328528e
[Gradle,JS]make downloadBaseUrl nullable to work with FAIL_ON_PROJECT_REPOS
...
^KT-56300 fixed
^KT-55620 fixed
2023-10-24 13:10:12 +00:00
Evgeniy.Zhelenskiy
f4d18da6a0
[FIR] Introduce OPERATOR_CALL_ON_CONSTRUCTOR diagnostic
...
#KT-59943
2023-10-24 12:24:52 +00:00
Ilya Kirillov
649bbcf35f
[Analysis API] fix common code resolution which requires getting symbols from builtin session
...
A common platform builtin session before were created with `::wrapScopeWithJvmMapped`.
This required some other JVM session components to be registered.
We cannot register all JVM components in builtin session;
it would lead to problems like KT-62777.
So we use `::wrapScopeWithJvmMapped` only for true JVM sessions.
This commit fixes a test added in the previous commit for KT-62768.
^KT-62768 fixed
2023-10-24 11:44:42 +00:00
Ilya Kirillov
80fda25c58
[Analysis API] fix common code resolution which requires FirSyntheticPropertiesStorage
...
Added test `FirSourceLazyDeclarationResolveTestGenerated.Classes.testClassDelegatedInCommonCode`
now fails with another exception (KT-62772). It's fixed in the following commit.
^KT-62768 fixed
2023-10-24 11:44:42 +00:00
Dmitriy Novozhilov
0325ffaa01
[FIR] Properly handle nested annotations on compiler-required annotation phase
...
There was a case when we visited the same declaration multiple times
because of forward-referencing and visiting with designation
So because of this there were two changes required:
- remove assertion about visiting the same declaration twice (it's fine
since we don't actually resolve annotations twice)
- not skipping resolution of class children if annotations on this class
are already resolved
^KT-61388 Fixed
KT-62854
2023-10-24 11:44:21 +00:00
Matt Groth
80257dc58f
Remove print statement
...
This print statement should either be delated, as I did here, or if it must be kept should be properly logged at an INFO level so that gradle builds that are at the WARN level do not see this.
2023-10-24 11:16:32 +00:00
Svyatoslav Kuzmich
aeeb5d5c48
[Wasm] Disallow dynamic type in K2 (KT-56849)
2023-10-24 10:54:58 +00:00
Anna Kozlova
5cac013d8c
[AA] approximate inplace type parameters bounds
...
^ KTIJ-27211 fixed
2023-10-24 10:54:15 +00:00
Ivan Kochurkin
f37f1e6d91
[FIR] Add a comment that explains why FirErrorTypeRefImpl is written manually
2023-10-24 10:53:33 +00:00
Ivan Kochurkin
bb937a8a21
[FIR] Initialize annotations in FirErrorTypeRef
...
^KT-62447 Fixed
^KT-62628 Fixed
2023-10-24 10:53:33 +00:00
Dmitrii Gridin
ec3cfdefcb
[LL FIR] add missing file node to control flow graph
...
The file
^KT-62834 Fixed
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
a1ee07603a
[FIR] add cfg dump to script test
...
^KT-62834
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
2eb761adae
[LL FIR] generate resolution tests over codegen/box testData
...
Such testData can contain contract violations and other resolution
problems, so we should check them as well
^KT-62776
^KT-62832
^KT-62834
^KT-62836
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
052b9f01af
[tests] TestRunner: wrap exceptions from preAnalysisHandlers
...
Some exceptions (like contract violations) can be thrown from preAnalysisHandlers
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
5a786e25c2
[codegen] testData: move WITH_STDLIB to global scope
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
09a1df9ee5
[codegen] testData: add missing directory structure for Java classes
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
bb00326197
[LL FIR] mark AbstractFirLazyDeclarationResolveTest test as thread safe
2023-10-24 10:30:55 +00:00
Sergej Jaskiewicz
9eacdb3314
[FIR generator] Print builder property name in generated classes' KDocs
...
Just like we do when generating the IR tree
2023-10-24 10:29:43 +00:00
Sergej Jaskiewicz
fa20e401f8
[IR generator] Rename kdoc -> kDoc property in FieldConfig
2023-10-24 10:29:43 +00:00
Sergej Jaskiewicz
7e7f4811bd
[FIR/IR generator] Add kDoc property to AbstractElement & AbstractField
2023-10-24 10:29:43 +00:00
Xin Wang
51325ba630
[IR] Implement getContextReceiverParameters for IrBasedPropertyDescriptor
...
Fixes: KT-59590
2023-10-24 10:07:08 +00:00
cristiangarcia
03ad981dea
Make ClangFrontend cacheable
...
Co-authored-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com >
Merge-request: KT-MR-11479
Merged-by: Cristian Garcia <Cristian.Garcia-Marin@jetbrains.com >
2023-10-24 09:50:02 +00:00
Alexander Shabalin
b3e13fb2c2
[K/N] Migrate runtime/collections tests to new testing infra ^KT-61259
2023-10-24 09:27:46 +00:00
Dmitrii Krasnov
10a6d8fd2c
[Gradle IT] Added configuration for running IT with k/n from master
...
[Gradle] Updated kotlin-build-gradle-plugin to 0.0.40
#KT-45978 Ready for Review
Merge-request: KT-MR-12509
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com >
2023-10-24 08:38:51 +00:00
Nataliya.Valtman
80485809d9
Add runtimeOnly and compileOnly dependencies to FUS
...
#KT-62617 Fixed
2023-10-24 08:22:28 +00:00