Commit Graph

107580 Commits

Author SHA1 Message Date
Kirill Rakhman 10d6d95ee8 [Tests] Add regression test for #KT-64702 2024-01-04 14:12:42 +00:00
Nikolay Lunyak 533ed5c622 [FIR] Unwrap typealias-bounds in FirTypeParameterBoundsChecker
This change makes sure the test introduced
in the previous commit doesn't crash
the compiler.

^KT-64644 Fixed
2024-01-04 14:08:43 +00:00
Nikolay Lunyak 7c3042772e [FIR] Reproduce KT-64644
Ensure the given code crashes the
compiler.

^KT-64644
2024-01-04 14:08:43 +00:00
Igor Chevdar aaf34c3436 [IR] Fixed a bug with local classes extraction from lambdas
#KT-64508 Fixed
2024-01-04 11:15:18 +00:00
Igor Chevdar 54328a1db4 [K/N][tests] Added a reproducer for #KT-64508 2024-01-04 11:15:18 +00:00
Kirill Rakhman 7fb5cbd1f8 [FIR] Implement UNNECESSARY_NOT_NULL_ASSERTION checker for java warning level types 2024-01-04 09:59:50 +00:00
Kirill Rakhman d6bd31b313 [FIR] Implement UNNECESSARY_SAFE_CALL checker for java warning level types
#KT-63528 Fixed
2024-01-04 09:59:50 +00:00
Nikolay Lunyak 9c0ac27307 [FIR] Don't miss annotations on properties from primary constructors
^KT-64609 Fixed
2024-01-04 09:45:27 +00:00
Nikolay Lunyak 1f46aed3e0 [FIR] Reproduce KT-64609
^KT-64609
2024-01-04 09:45:27 +00:00
Dmitrii Gridin af5f76048b [SLC] AbstractSymbolLightClassesByPsiTest: add more stable order
Now more diff between sources and libraries are readable.
Also prefer .descriptors to .fir as FIR is a first-class support

^KT-62892
2024-01-03 21:35:12 +00:00
Dmitrii Gridin d64f18eaa9 [SLC] AbstractSymbolLightClassesStructureTestBase: add stable order
Now more diff between sources and libraries are readable

^KT-62892
2024-01-03 21:35:12 +00:00
Dmitrii Gridin 2bad2f37ce [LL FIR] add missed ClassId check for combined Java classes symbol provider
findClasses works over regular `PsiElementFinder`, which doesn't know
about out ClassId conception. So, `a/b/A.B` and `a/b/A/B` are the same
from `FqName` point of view.
`FirJavaFacade` has this check, so this problem appears only in the case
of combined provider.

^KT-62892 Fixed
2024-01-03 21:35:12 +00:00
Dmitrii Gridin a39688ba10 [LL FIR] add tests on fir for full qualified name for nested classes
For some reason, outer Java class is treated as a package

^KT-62892
2024-01-03 21:35:12 +00:00
Dmitrii Gridin 4cb75490db [LL FIR] AbstractLowLevelApiLastModuleFirstFileTest: replace moduleStructure with testModule
We can get the module structure from `TestServices`,
so current file is more preferable

^KT-62892
2024-01-03 21:35:12 +00:00
Dmitrii Gridin 7efbcad121 [Analysis API] add diagnostic tests for inner Java class usage
^KT-62892
2024-01-03 21:35:12 +00:00
Dmitrii Gridin 6c7d1babf0 [Analysis API] support Java compilation in tests
Previously we just skipped Java sources.
The order of classes in light classes test data is changed due to
differences in implementations of `compileLibraryToJar` and `runJvmCompiler`

^KT-62892
2024-01-03 21:35:12 +00:00
Alexander Udalov a9f85d75f4 Kapt: remove support for old JVM backend
#KT-64680 Fixed
2024-01-03 19:37:40 +00:00
Alexander Udalov c251eb19a6 Kapt: remove old JVM backend test data (2/2)
In this commit, .ir.txt expectation test data files for the JVM IR
backend are renamed to .txt. This is done as two separate commits so
that Git would recognize that these files were logically moved, not that
the contents of the original .txt files were changed.

 #KT-64680
2024-01-03 19:37:40 +00:00
Alexander Udalov 9c67616b25 Kapt: remove old JVM backend test data (1/2)
In this commit, .txt expectation test data files for the old JVM backend
are deleted.

 #KT-64680
2024-01-03 19:37:40 +00:00
Alexander Udalov e4a608c6e7 Kapt: remove tests on old JVM backend
#KT-64680
2024-01-03 19:37:40 +00:00
Alexander Shabalin eea89c7f23 [K/N] Enable safepoint signposts by default ^KT-62689 2024-01-03 18:30:59 +00:00
Kirill Rakhman 1018ff280e [FIR] Fully expand the bounds of type parameters for canBeNull check
This is required because a not-null bound `Foo` can resolve to a
`typealias Foo = Bar?` in which case we must return true.

#KT-64645 Fixed
2024-01-03 17:15:50 +00:00
Nikita Nazarov 438b2dd164 [K2, MPP] Actualize value class representation
^KT-63638 fixed
2024-01-03 16:39:56 +00:00
Dmitriy Novozhilov 0bd6ea764e [FIR] Consider only normal execution path during contracts verification
There might be several pathes out from the function from CFG point of view:
- normal execution path
- exceptional execution path

For verification of callsInPlace contract it's needed to check only
 the normal path

^KT-63414 Fixed
2024-01-03 14:18:46 +00:00
Dmitriy Novozhilov de9826683e [FIR] Unwrap named arguments during contracts verification
^KT-64501 Fixed
2024-01-03 14:18:46 +00:00
Dmitriy Novozhilov 6031f80e01 [Test] Reproduce KT-63414, KT-64500 and KT-64501 2024-01-03 14:18:46 +00:00
Brian Norman 3346cc4b19 [FIR] Lambdas without contracts should be considered repeatable
^KT-63777 Fixed
2024-01-03 14:08:04 +00:00
Dmitrii Gridin 8a3f850bca [LL FIR] StubBasedFirMemberDeserializer: deserialized properties must have default getter/setter
In FIR we always have either real getter/setter or the default one

^KT-62888 Fixed
^KT-62651 Fixed
2024-01-03 13:39:42 +00:00
Dmitrii Gridin db2849dc0d [Analysis API] add run configuration for standalone tests
^KT-62888
^KT-62651
2024-01-03 13:39:42 +00:00
Dmitrii Gridin 8de9d42b0d [Analysis API] use createSearchScopeByLibraryRoots for test libraries
As it is more similar to production. Also, fixed scope search for klib.
Now we register main binary modules before to avoid duplication with
libraries from createLibrariesByCompilerConfigurators as now we can
have a declared library and regular sources

^KT-62888
^KT-62651
2024-01-03 13:39:42 +00:00
Dmitrii Gridin 02d99769ff [Analysis API] Use library name in result jar
^KT-62888
^KT-62651
2024-01-03 13:39:41 +00:00
Dmitrii Gridin a341dc704f [Analysis API] Add symbol tests for properties from libraries
^KT-62888
^KT-62651
2024-01-03 13:39:41 +00:00
Dmitrii Gridin faf33e4fa4 [Analysis API] add diagnostic test of type inference from getValue delegate
^KT-62888
2024-01-03 13:39:41 +00:00
Yahor Berdnikau 3eb86ede96 [Gradle] Fix warnings in KotlinBaseApiPlugin
^KT-56904 In Progress
2024-01-03 12:40:39 +00:00
Dmitriy Novozhilov 3a5e4d3b45 Advance bootstrap to 2.0.0-dev-11567 2024-01-03 12:12:58 +00:00
Evgenii Mazhukin 0c647d6fec [Tests] Double-check the Native incremental builds in Gradle IT
Couldn't reproduce the issue in tests or with the reproducer. Most likely the problem was on my side.

^KT-63970 Can't Reproduce


Merge-request: KT-MR-13673
Merged-by: Evgenii Mazhukin <evgenii.mazhukin@jetbrains.com>
2024-01-03 12:08:04 +00:00
Kirill Rakhman fd12f24725 [FIR] Only let supertypes of ILTs include Number when it's not unsigned
#KT-64607 Fixed
2024-01-03 12:05:18 +00:00
Artem Kobzar 81d6615915 [K/Wasm] Add ownership for stepping tests and source-maps 2024-01-03 10:55:39 +00:00
Andrey Yastrebov c6bf5b8ef1 KT-63592 Add testGenerateLLDBInitFile test 2024-01-03 10:29:18 +00:00
Andrey Yastrebov 4176c50107 KT-63592 Create setupLLDBScript task 2024-01-03 10:29:18 +00:00
Dmitriy Novozhilov 56221467ff [FIR] Rename PLUGIN_ANNOTATION_AMBIGUITY to COMPILER_REQUIRED_ANNOTATION_AMBIGUITY
This diagnostic may be reported even without any compiler plugins (e.g.
  for annotation named `Target` or `Deprecated`), so the old name
  and message were quite confusing

^KT-64654
2024-01-03 08:50:20 +00:00
Vladimir Sukharev 5728b34733 [K/N][Tests] Ignore test klibName on LInux with caches
^KT-61259
2024-01-02 18:47:05 +00:00
Alexander Shabalin d6a922bc74 [K/N][tests] Migrate link tests to new testing infra ^KT-61259 2024-01-02 18:47:05 +00:00
Sonya Valchuk 588549d1d0 JVM_IR: add offsets to JvmStatic and JvmOverloads proxies
KAPT3 needs them to correct error types in arguments.

 #KT-64639 Fixed
2024-01-02 17:43:09 +00:00
Alexander Korepanov d5aaa29a7f [JS FIR] Implement FirJsReflectionAPICallChecker diagnostic
^KT-60899 Fixed
2024-01-02 16:45:12 +00:00
Marco Pennekamp af7eb8b7af [AA] Add reference resolve tests for Java enums with getName function
^KT-62524
2024-01-02 16:41:34 +00:00
Marco Pennekamp c611f1923f [AA] Refactoring: Move Java reference resolve tests to java subfolder 2024-01-02 16:41:34 +00:00
Kirill Rakhman 5d3738c804 [FIR] Improve annotation use-site target rendring for diagnostics
#KT-62816 Fixed
2024-01-02 15:17:02 +00:00
Kirill Rakhman 8f3f72d9c9 [FIR] Use correct type renderer in symbol rendering for diagnostics
#KT-62815 Fixed
2024-01-02 15:17:02 +00:00
Kirill Rakhman 6b049df87c [FIR] Render deprecation message if it's not a named argument. 2024-01-02 15:17:02 +00:00