chore(deps): update kotlin to v2.2.0 #40

Open
renovate wants to merge 1 commit from renovate/kotlin into master
Collaborator

This PR contains the following updates:

Package Type Update Change
org.jetbrains.kotlin.multiplatform (source) plugin minor 2.1.21 -> 2.2.0
org.jetbrains.kotlin.plugin.compose (source) plugin minor 2.1.21 -> 2.2.0
org.jetbrains.kotlin:kotlin-test-junit (source) dependencies minor 2.1.21 -> 2.2.0
org.jetbrains.kotlin:kotlin-test (source) dependencies minor 2.1.21 -> 2.2.0

Release Notes

JetBrains/kotlin (org.jetbrains.kotlin.multiplatform)

v2.2.0

Analysis API
  • KT-73337 Migrate analysis sources to new IR parameter API
  • KT-75880 K2 Mode: Typealias reference resolves to the underlying class in KMP project
  • KT-74246 KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-site
  • KT-57733 Analysis API: Use optimized ModuleWithDependenciesScopes in combined symbol providers
  • KT-69535 Redesign 'containingSymbol'
  • KT-69950 Analysis API: Introduce isSubtypeOf(ClassId)
  • KT-68393 Analysis API: Rename KaClassLikeSymbol. classIdIfNonLocal to classId
  • KT-62924 Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId
Analysis API. Code Compilation
  • KT-75502 K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin project
  • KT-73077 Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sources
  • KT-73936 K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluator
  • KT-74582 InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent fixes
  • KT-74524 Compilation exception with incorrect JvmName annotation arguments
  • KT-74443 Compilation peer collector ignores inline property accessors
Analysis API. FIR
New Features
Performance Improvements
  • KT-75790 Experiment with increasing DEFAULT_LOCKING_INTERVAL time
  • KT-72159 LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks
Fixes
  • KT-76331 Cleanup FileStructureElement for classes
  • KT-73117 K2 AA: Exception "Setter is not found" when val has a setter without body
  • KT-76540 K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures
  • KT-73266 K2. "Declaration should have non-local container" with unclosed annotation on top-level function
  • KT-76432 JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl
  • KT-76217 K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists
  • KT-74740 Highlighting is broken after the built-in serialization refactoring
  • KT-76366 ContextCollector: annotations on class members don't have the class as implicit receiver
  • KT-76352 ContextCollector: wrong class annotation context in BODY mode
  • KT-76341 ContextCollector: support dangling modifiers
  • KT-76332 "Declaration should have non-local container" for declaration inside file annotation
  • KT-76115 Disable FirElementBuilder#getFirForElementInsideAnnotations optimization for files, classes and scripts
  • KT-76347 ContextCollector: avoid resolution for enum entry annotations
  • KT-76272 Cleanup AbstractFileStructureTest
  • KT-75542 K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function
  • KT-73719 K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call
  • KT-72908 K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer before init block
  • KT-75532 ContextCollector: scope for an anonymous function type parameter contains regular parameters
  • KT-74508 FirElementBuilder#findElementInside should reuse logic from KtToFirMapping#getFir
  • KT-73066 [LL] Enable low-level-api-fir-native even with the disabled native part
  • KT-75132 Investigate failures of sandbox diagnostic test
  • KT-75130 Set up LL FIR tests for sandbox test data
  • KT-73386 Standardize LL FIR test for compiler test data
  • KT-75125 ISE “Value classes cannot have 0 fields” on instantiating inline class without fields
  • KT-75179 ContextCollector: support error properties
  • KT-74632 K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessing
  • KT-74818 K2 AA: "FirDeclaration was not found for class KtTypeParameter, fir is null" with TYPE_PARAMETERS_NOT_ALLOWED on anonymous function
  • KT-73183 Support context parameters in ContextCollectorVisitor
  • KT-60350 K2 IDE: top level destructuring RHS should be resolvable
  • KT-74794 K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return type
  • KT-72938 Get rid of KaFirAnnotationListForReceiverParameter
  • KT-73727 Exception in implicit type resolution
Analysis API. Infrastructure
  • KT-74917 [Analysis API, Test Framework] Introduce a way to acquire PsiFile for a given TestFile in KtTestModule
Analysis API. Light Classes
  • KT-73405 Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usages
  • KT-75391 Reduce the amount of psi-based logic in light classes
  • KT-70001 SLC adds @Override with zero text offset on override member
  • KT-75755 K2. False positive red code on vararg parameters in Kotlin class with @JvmOverloads when called from Java
  • KT-75397 Constructors and functions with non-last vararg parameters are treated as varargs
  • KT-74868 Support context parameters
  • KT-74733 SymbolPsiLiteral.text == value for Java constant
  • KT-74620 Delegated functions with value classes are present in light classes
  • KT-74595 Static functions with value classes are present in light classes
  • KT-74284 Synthetic data class methods using value class types present in LC
Analysis API. Providers and Caches
Performance Improvements
  • KT-62115 Analysis API: Package providers are not cached per search scope
  • KT-74463 Analysis API: LLNativeForwardDeclarationsSymbolProvider queries its cache even when the ClassId cannot represent a native forward declaration
Fixes
  • KT-74541 Analysis API: Include files generated by resolve extensions in KaModule content scopes
  • KT-64236 Analysis API: Introduce a separate module for fallback dependencies of library source modules
  • KT-74090 Analysis API: Support dumb mode (restricted analysis)
  • KT-63780 Analysis API: Invalidate resolvable library sessions when binary library modules are modified
  • KT-72388 KaFirStopWorldCacheCleaner: Control-flow exceptions
  • KT-74943 Analysis API: Replace KotlinGlobalModificationService with simpler global modification event publishing and listener-based modification trackers
  • KT-70518 K2: Analysis API: Access indices outside of ConcurrentMap computation in symbol providers
  • KT-74302 Analysis API: LLFirProvider should disregard self-declarations in getFirClassifierBy*
  • KT-67868 Analysis API: Improve the architecture of LLFirKotlinSymbolProviders
Analysis API. Standalone
  • KT-72810 withMultiplatformLightClassSupport is inconvenient in Standalone
Analysis API. Stubs and Decompilation
  • KT-71787 PsiRawFirBuilder.Visitor#visitStringTemplateExpression forces AST loading
  • KT-68484 K2 IDE, Analysis API: "We should be able to find a symbol for function" for getting KaType of Iterable<T>.map(transform: (T) -> R) parameter in J2K
Analysis API. Surface
New Features
  • KT-74475 Add isInline for KaPropertySymbol
  • KT-75063 KaScopeContext: support context parameters
Performance Improvements
  • KT-73669 Support psi-based symbol pointer for implicit primary constructors
  • KT-76008 Provide PSI-based implementation for KaFirNamedClassSymbol#companionObject
  • KT-70165 Introduce PSI-based KaSymbols for K2
Fixes
  • KT-72730 K2: "Unexpected owner function: KtNamedFunction" on vararg val parameter in function
  • KT-75123 K2. KaFirNamedFunctionSymbol should contain a receiver
  • KT-75894 Cannot build KaFirJavaFieldSymbol for FirFieldImpl
  • KT-75115 Analysis API: The JavaModuleResolver compiler class is leaked to Analysis API platform implementations
  • KT-76018 K2: Stop the wold leads to deadlock/freeze
  • KT-76011 KaFirNamedClassSymbol#companionObject doesn't provide generated objects generated by compiled plugins
  • KT-72482 "KotlinIllegalArgumentExceptionWithAttachments: Expected all candidates to have same callableId but some of them but was different" on trying to add the import
  • KT-75586 KaFirPropertyGetterSymbol#isInline and KaFirPropertySetterSymbol#isInline is incorrect for accessors with explicit modifier
  • KT-58572 Analysis API: Enforcing STATUS resolve in 'KtFirNamedClassOrObjectSymbol.visibility' may cause lazy resolve contract violation
  • KT-75574 Recognize injected code fragment copies
  • KT-75573 Recognize physical file copies as dangling files
  • KT-74801 Analysis API: Publish/subscribe to modification events with a single message bus topic
  • KT-73290 Analysis API: Improve the architecture of content scopes and resolution scopes
  • KT-68901 Constructor delegation call receiver missing in fir implementation
  • KT-72639 Support context parameter API
  • KT-73112 AA: FirExpression.toKtReceiverValue should handle context receivers properly
  • KT-74905 Cannot find context receiver in FIR declaration
  • KT-74563 createPointer is overloaded not for all implementations
  • KT-73722 Analysis API: Automatically check that the API surface is fully documented
  • KT-65065 Provide KtTypeReference#getShortTypeText()
Backend. Native. Debug
  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function
Backend. Wasm
New Features
  • KT-59032 Support instantiation of annotation classes on WASM
Fixes
  • KT-77622 K/Wasm: investigate CMP crash on mobile Safari
  • KT-76747 [Wasm] Wasm name section absent for wasm structs
  • KT-76701 K/Wasm: custom formatters are not loaded when a project is built with incremental compilation
  • KT-66081 K/WASM: 0/0, 5/0 and 5%0throw not ArithmeticException, but RuntimeError
  • KT-76287 [Wasm] Enable stdlib and kotlin.test tests after compiler bootstrap
  • KT-75871 [Wasm] Implement new RTTI approach
  • KT-75872 Wasm / IC: IllegalStateException: IC internal error: can not find library
  • KT-74441 K/Wasm: incorrect 1e-45.toString()
  • KT-59118 WASM: floating point toString inconsistencies
  • KT-68948 Wasm: float from variable is printed with many decimal points
  • KT-69107 [wasm] Seemingly incorrect rounding
  • KT-73362 Migrate K/Wasm sources to new IR parameter API
Compiler
New Features
  • KT-70722 Implement better Kotlin warnings for value classes and JEP 390 (Warnings for Value-Based Classes)
  • KT-71768 Enable -Xjvm-default=all-compatibility by default to generate JVM default interface methods
  • KT-54205 Support jakarta Nullability annotations
  • KT-57919 Store all annotations in Kotlin metadata on JVM under a flag
  • KT-73255 Change defaulting rule for annotations
  • KT-74382 Annotating Java record components for @JvmRecord data class
  • KT-74811 Prohibit usages of @MustUseValue / @IgnorableValue if RV checker is not enabled
  • KT-74806 Implement feature flag for improved unused return value checker
  • KT-74809 Support unnamed local variables
  • KT-73508 Add a warning diagnostic for using kotlin.concurrent.AtomicRef
  • KT-72941 ANNOTATIONS_ON_BLOCK_LEVEL_EXPRESSION_ON_THE_SAME_LINE missing in K2
  • KT-74497 Warn about incompatible Kotlin and Java targets in annotations
  • KT-75061 Support context-sensitive resolution in type position
  • KT-75315 Support context-sensitive resolution in the call-argument position
  • KT-75316 Support context-sensitive resolution for expression-position with expected type
  • KT-76088 Support context-sensitive resolution for annotation arguments
  • KT-74049 Introduce special override rule to allow overriding T! with T & Any
Performance Improvements
  • KT-76395 Performance degradation on 28.03.2025
  • KT-76422 FirJavaFacade#createFirJavaClass: do not compute super type references right away
  • KT-75957 K2: PsiRawFirBuilder.Visitor#toFirExpression forces AST loading via getSpreadElement
  • KT-74824 Exponential performance caused by nested flexible types
  • KT-62855 K2: extra allocation for SAM conversion compared to K1
  • KT-74977 K/N: support stack array for Array(size) call
  • KT-74369 Exponential compiler memory usage in specific situations with type inference
Fixes
  • KT-76606 Enable 'Indy: Allow lambdas with annotations' by default
  • KT-77301 False positive Context Parameter resolution when using DslMarker
  • KT-74389 K2: False positive NON_EXPORTABLE_TYPE on non-Unit Promise<...> in K/JS
  • KT-77219 "@Composable annotation is not applicable" on vararg @Composable () -> Unit in Kotlin 2.2.0
  • KT-76357 K2: a nested class annotation observes member declarations of the outer class
  • KT-72734 Support new callable reference nodes in Kotlin Native
  • KT-74421 K2: Missing "val cannot be reassigned" when trying to assign a value to parent's "val"
  • KT-63720 Coroutine debugger: do not optimise out local variables
  • KT-74470 NSME on calling in runtime internal constructor of value class with default arg from tests
  • KT-77640 Context parameters: using 'contextOf()' function leads to [NO_CONTEXT_ARGUMENT]
  • KT-73909 Add an inspection discouraging usage of kotlin.concurrent Native atomics in favor of the new atomics
  • KT-76583 CCE: suspend lambda attempts to unbox value class parameter twice after lambda suspended
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-75457 Native: cache machinery uses stdlib cache with default runtime options even if custom runtime options are supplied when partial linkage is disabled
  • KT-76615 K2: "IllegalArgumentException: Inline class types should have the same representation: Lkotlin/UByte; != B" for mixed Java/Kotlin code
  • KT-77220 Annotation with EXPRESSION is not allowed on lambdas in Kotlin 2.2.0
  • KT-76381 K2: Expected expression 'FirPropertyAccessExpressionImpl' to be resolved
  • KT-74739 Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"
  • KT-74325 Explicit API mode does not enforce explicit return types for extension properties
  • KT-77259 Confusing message for ANNOTATION_WILL_BE_APPLIED_ALSO_TO_PROPERTY_OR_FIELD
  • KT-73771 K2: Infinite compilation caused by buildList without type
  • KT-61258 Kotlin/Native: CLASS CLASS name: modality:FINAL visibility:local superTypes:[.Base]
  • KT-75317 Kotlin/Native: segfault in kotlin::gc::Markkotlin::gc::mark::ConcurrentMark::MarkTraits
  • KT-75965 The iOS app did not run successfully in Release mode
  • KT-77397 Report UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL when calling declaration with contextual function type in signature
  • KT-77137 K2: Controversial behavior allows resolving annotation arguments on a companion inside it
  • KT-77150 Native: compilation fails with an assertion error
  • KT-51960 ClassCastException: Inline function with both context and extension receiver produces this when invoked
  • KT-73611 Remove -Xextended-compiler-checks in favor of a deprecation cycle
  • KT-74649 Deprecate language versions 1.8 and 1.9
  • KT-77283 Binary compatibility of FirDeclarationChecker
  • KT-73445 K2: do not report "cannot infer visibility" when inheriting multiple implementations
  • KT-75945 Indy: Allow lambdas with annotations
  • KT-76898 K2: ClassCastException when data class shadows supertype's componentX method with wrong type
  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76805 Wrong NPE occurs when assigning synthetic properties with platform types in Kotlin 2.1.20
  • KT-76171 "KotlinIllegalArgumentExceptionWithAttachments: Expected expression 'FirSingleExpressionBlock' to be resolved"
  • KT-77078 K2: anonymous object is wrongly allowed to implement interfaces by unsafe Delegation
  • KT-72722 Treat 'copy' calls of a data class as explicit constructor usages
  • KT-77001 Leave ForbidParenthesizedLhsInAssignments as a warning
  • KT-75828 Store backing field/delegate annotations and extension receiver annotations in metadata
  • KT-58369 K2: enable DFA warnings
  • KT-51258 Annotations should go before context receivers
  • KT-76253 K2 Compiler: Less precise diagnostic COMPONENT_FUNCTION_AMBIGUITY for flexible type
  • KT-59526 Store annotation default values in metadata on JVM
  • KT-63850 K2: setter with an annotated parameter has isNotDefault == false flag in metadata
  • KT-75712 -Wextra: false positive UNUSED_LAMBDA_EXPRESSION on functional type variable assignment with inferred type
  • KT-4779 Generate default methods for implementations in interfaces
  • KT-69624 Debugger: Missing local variable in Variables view (inline function)
  • KT-75518 NO_CONTEXT_ARGUMENT should report the name of the context parameter in addition to the type
  • KT-76199 Introduce -Xcontext-sensitive-resolution compiler flag
  • KT-75553 MISSING_DEPENDENCY_SUPERCLASS and MISSING_DEPENDENCY_SUPERCLASS_WARNING is reported at the same time on the same element
  • KT-76159 Obsolete error "'@JvmDefaultWithCompatibility' annotation is only allowed on interfaces" should be removed
  • KT-76660 False negative RETURN_NOT_ALLOWED in lambda in default argument leads to NoClassDefFoundError: $$$$$NON_LOCAL_RETURN$
  • KT-76301 Fail to infer types after syntactical change
  • KT-74999 K2: KotlinNothingValueException within Extension Function
  • KT-76675 KIAEWA exception at KaFirDataFlowProvider with non-local return from nested inline call
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76345 Enhance variable fixation
  • KT-76578 [FIR, K1/K2 Regression] lateinit is allowed on loop parameters
  • KT-76448 FirOverrideChecker: class ClsMethodImpl is not a subtype of class KtNamedDeclaration for factory VIRTUAL_MEMBER_HIDDEN
  • KT-73360 Migrate K/JVM sources to new IR parameter API
  • KT-74852 Kotlin/Native: allow caches for thread state checker and sanitizers
  • KT-76130 IR evaluator does not support array literals in annotation parameter default values
  • KT-76436 Missing K2 checker: non-local return through lambda passed to inline f/o
  • KT-74326 False negative: no variable must be initialized error though code doesn't compile
  • KT-76572 FIR_NON_SUPPRESSIBLE_ERROR_NAMES does not contain deprecation errors
  • KT-75704 Refactor FirWhenSubjectExpression
  • KT-76284 Flexible captured type is not approximated in receiver position
  • KT-76192 RETURN_TYPE_MISMATCH with same expected and actual type: nullability of actual type is omitted
  • KT-75944 Allow using invokedynamic for lambdas with no 'Runtime' level retention annotations
  • KT-76396 FirIntegerConstantOperatorScope: NoSuchElementException: Collection contains no element matching the predicate
  • KT-76209 CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-59506 Context receivers: Unable to use trailing comma in receiver list
  • KT-46119 NONE_APPLICABLE instead of NAMED_ARGUMENTS_NOT_ALLOWED with overloaded Java constructor call
  • KT-75503 Run lazy resolution in CallableCopyTypeCalculator and use withForcedTypeCalculator everywhere in checkers
  • KT-76485 Don't report EXTENSION_SHADOWED_BY_MEMBER if extension can be called with named arguments
  • KT-76154 False positive "EXTENSION_SHADOWED_BY_MEMBER" when extension adds default values to parameters
  • KT-76527 False positive UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL with -Xcontext-receivers and implicit invoke
  • KT-63246 K2: False positive NOTHING_TO_OVERRIDE in generic property with context receiver in non generic class extending generic class
  • KT-58534 K2: "Argument type mismatch" with typealias to context receiver functional type
  • KT-71792 Switch latest stable version in Kotlin project to 2.2
  • KT-74827 CompilationErrorException : Could not load module in an attempt to find deserializer when trying to evaluate an expression
  • KT-70352 K2: False-negative CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-71481 K2: drop pre-1.6 language features from compiler code
  • KT-74454 Support trailing comma in context parameters
  • KT-74069 False positive UNUSED_EXPRESSION due to Long/Int conversion
  • KT-74337 Local Delegated properties don't preserve their annotations and don't show up in reflection
  • KT-55187 Context receivers in function types can have labels
  • KT-58498 Context receivers: ClassCastException with object and extension function in interface
  • KT-58165 K2: "IllegalArgumentException: No argument for parameter VALUE_PARAMETER" on overridden contextual property
  • KT-75234 Add error for callsInPlace contracts on context parameters
  • KT-73805 K2: Investigate missing diagnostic in implicit invoke call on context function type with receiver from module with disabled context parameters
  • KT-41934 NI: a type variable for lambda parameter has been inferred to nullable type instead of not null one
  • KT-75983 Backend Internal error: Exception during IR lowering 'IllegalStateException: Internal error: cannot convert Any to Int'
  • KT-75535 Compilation of typealias does not check for clashes
  • KT-72313 K2 IDE / KMP Debugger: Evaluation of inline functions declared in a common source set causes a crash
  • KT-76290 False positive UNUSED_EXPRESSION while returning Unit in the when branches
  • KT-32358 NI: Smart cast doesn't work with inline function after elvis operator
  • KT-76316 K2: Missing NON_PUBLIC_CALL_FROM_PUBLIC_INLINE on object extending private class in public inline function
  • KT-76324 Frontend diagnostic says "... this will be an error in Kotlin N.M" but N.M is already released
  • KT-76058 PCLA: compile-time failure on calling a higher-order function from another module inside a lambda assigned to a variable of a type with a postponed type variable
  • KT-75571 K2: type mismatch error provides unsubstituted types
  • KT-31391 'Recursive call is not a tail call' with elvis operator in tailrec function
  • KT-73420 False-positive NON_TAIL_RECURSIVE_CALL on tailrec function with elvis in the return statement
  • KT-75815 Disable warnings about different context parameter names in overrides
  • KT-75169 Unnecessary EXTENSION_SHADOWED_BY_MEMBER on generic declarations
  • KT-75483 Native: redundant unboxing generated with smart cast
  • KT-76339 K2: Dangling modifier list is missed for enum entries in PSI mode
  • KT-75513 Avoid overrides traversal without preinitialization
  • KT-74587 Report an error when JvmDefaultWithoutCompatibility is used with -Xjvm-default=all
  • KT-76257 Annotations with class references are not supported when marking IR declarations as visible to metadata
  • KT-71793 Drop language versions 1.6 and 1.7
  • KT-59272 Incorrect bytecode generated: wrong line number table after condition
  • KT-69248 K2: IAE “class KtDotQualifiedExpression is not a subtype of class KtCallExpression for factory ENUM_CLASS_CONSTRUCTOR_CALL” with qualified enum constructor call
  • KT-73778 Kotlin Debugger: NSFE on accessing private property from dependencies during evaluation
  • KT-74131 Incorrect line numbers for static initializer with delegated local variable
  • KT-76320 K2: PsiRawFirBuilder: import alias triggers ast loading
  • KT-63851 K2: No setterValueParameter in metadata for property setter with an annotated parameter
  • KT-55083 JVM: AbstractMethodError caused by lambda with sealed base interface and fun sub interface and overridden method
  • KT-16727 Names for anonymous classes in interfaces are malformed on JDK 8
  • KT-12466 NoClassDefFoundError: B$DefaultImpls on super interface call through K-J-K inheritance
  • KT-71002 Possible inheritance from nullable type through typealias
  • KT-75293 K2: Missing [HAS_NEXT_FUNCTION_TYPE_MISMATCH] diagnostics
  • KT-75498 Forbid .declarations access from checkers
  • KT-72335 KotlinIllegalArgumentExceptionWithAttachments when using illegal selector
  • KT-68375 K2: FirPrimaryConstructorSuperTypeChecker fails on generated superclasses
  • KT-71718 K2: drop TypePreservingVisibilityWrtHack
  • KT-75112 FE resolves wrong receivers order for property passed to delegate
  • KT-75924 K2. Incorrect generic type Inference "R? & Any" appears for "Add explicit type arguments"
  • KT-75969 java.lang.IllegalArgumentException: source must not be null on red code
  • KT-75322 ConeDiagnosticToFirDiagnosticKt: source must not be null
  • KT-73800 Wrong method executed on super call in -Xjvm-default=all/all-compatibility with an extraneous super-interface
  • KT-38029 Wrong method executed on super call in diamond hierarchy with covariant override
  • KT-75242 Any use-site target can be applied to a lambda and an expression
  • KT-73051 incorrect direction of subtyping violation in type mismatch error's message for A<X> </: A<Y> given a Tv <: Rv == C constraint from a lambda return position
  • KT-75090 Argument type mismatch: actual type is 'SuspendFunction0', but 'SuspendFunction0' was expected when anonymous function is passed to function expecting suspend function type
  • KT-74956 K2: No USAGE_IS_NOT_INLINABLE with compiling an inlined function call
  • KT-76049 K2: drop explicitTypeArgumentIfMadeFlexibleSynthetically creation when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-76055 K2: drop prepareCustomReturnTypeSubstitutorForFunctionCall logic when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-76057 K2: don't do reverse Java overridability checks when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-75197 K2: Missing [COMPARE_TO_TYPE_MISMATCH] diagnostics
  • KT-75639 Inline context function leads to ClassCastException
  • KT-75677 K2: change runtime behavior of KT-75649 case in 2.2
  • KT-75961 K2: PsiRawFirBuilder.Visitor#visitSimpleNameExpressionforces AST loading via getReferencedNameElement().node.text
  • KT-67869 Make inference for lambda working consistently inside and outside of the call
  • KT-74885 K2: IAE "source must not be null" in FirCyclicTypeBoundsChecker
  • KT-75578 K2: False negative [SUPER_CALL_WITH_DEFAULT_PARAMETERS] when calling the upper-class implementation of a method with the default value argument
  • KT-73954 Generate implementations in classes for inherited non-abstract methods in -Xjvm-default=all-compatibility
  • KT-75173 Context parameters: KotlinIllegalArgumentExceptionWithAttachments if you override function with value/extension parameter by fun with context
  • KT-75742 Native: "IllegalArgumentException: unknown pass name '' " when specifying an empty list of LLVM passes
  • KT-74819 K2: False-positive overload resolution ambiguity for flatMap inside PCLA
  • KT-75093 K2 IDE: "Unreachable code" highlighting range is confusing
  • KT-74572 Context parameters: contracts don't work with context parameters
  • KT-74765 Move K1 lazy IR implementation from 'ir.tree' to 'psi2ir'
  • KT-71425 IR Inliner: investigate return type of an inlined block
  • KT-74764 Native: merge init nodes generated within the same LLVM module for the same klib
  • KT-75561 K/N: place InteropLowering after UpgradeCallableReferences phase
  • KT-73369 K/N: move interop lowering up the pipeline
  • KT-75517 K2: Refactor FirCallableSymbol.resolvedContextParameters to return symbols
  • KT-75821 K2: REPL resolution doesn't take into account the property type when processing its initializer
  • KT-75705 IllegalArgumentException when isInitialized is used with java field
  • KT-75334 Java target shouldn't be specified if Kotlin target isn't specified
  • KT-75157 Missing PARAMETER_NAME_CHANGED_ON_OVERRIDE and DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES for context parameters
  • KT-75160 Check usages of value parameters in checkers and adapt to context parameters
  • KT-75729 KtPsiFactory: no type-safe way to create triple-quoted KtStringTemplateExpression
  • KT-75040 Unify subject and subjectVariable in FirWhenExpression
  • KT-75323 FirSyntheticProperty: Unexpected status. Expected is FirResolvedDeclarationStatus, but was FirDeclarationStatusImpl
  • KT-75602 Introduce concept of shared library session in Fir sessions
  • KT-75509 PARAMETER_NAME_CHANGED_ON_OVERRIDE is reported randomly
  • KT-75124 IAE “class org.jetbrains.kotlin.psi.KtContextReceiver is not a subtype of class org.jetbrains.kotlin.psi.KtParameter for factory EXPOSED_PARAMETER_TYPE” on private context receiver
  • KT-73585 K2: ABSTRACT_SUPER_CALL is not reported
  • KT-75531 K2 REPL: local name doesn't shadow one from implicit receiver
  • KT-73359 Migrate frontend sources to new IR parameter API
  • KT-75380 K2: Modality is configured incorrectly for some FirDefaultPropertyAccessor
  • KT-75526 Regression in K2 scripting: local name doesn't shadow one from the implicit receiver
  • KT-59379 K2: Missing MIXING_NAMED_AND_POSITIONED_ARGUMENTS
  • KT-75106 K2: type parameters of anonymous functions are unresolved
  • KT-73387 Unexpected implicit type during enhancement
  • KT-72618 Cannot define operator inc/dec in class context
  • KT-74546 Serialize context parameters to metadata
  • KT-68768 K2: unsuccessful inference fork with jspecify annotations
  • KT-75345 Add a test for KT-42271
  • KT-75012 K2: Compiler crash on dynamic == null
  • KT-75195 IllegalStateException: No value for annotation parameter when @all meta-target is used with annotation with constructor
  • KT-75163 WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET for @all meta-target although there are applicable targets
  • KT-75198 @all meta-target should be forbidden for delegated properties
  • KT-74958 K2: UNEXPECTED_TRAILING_LAMBDA_ON_A_NEW_LINE isn't reported on accidental trailing closure
  • KT-74982 Improve UNSUPPORTED message handling
  • KT-75111 False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another module
  • KT-74924 Infinite recursion in substitution of captured type with recursive supertype
  • KT-75289 NPE: getParent(...) must not be null
  • KT-75275 Inline class member inherited from interface is not mangled in '-Xjvm-default=all-compatibility'
  • KT-74340 FIR: folding binary expression chains for psi parser
  • KT-73831 Do not choose field target in annotation classes
  • KT-73494 Enable first-only-warn annotation defaulting mode
  • KT-75174 K2: incorrect influence of return type nullability on required receiver type in KJK hierarchy with property
  • KT-74920 Overriding T! with T & Any is not allowed to the extension property receiver type
  • KT-75150 False ambiguous context parameter reported because context is not chosen via generic parameter
  • KT-74965 CLI compiler doesn't report syntax errors for JS, Metadata backends if light-tree mode is disabled
  • KT-74303 K2 IDE / Kotlin Debugger: AE “Trying to inline an anonymous object which is not part of the public ABI” on evaluating private inline function with object inside
  • KT-75177 NoSuchMethodError on suspend default interface method fake override returning inline class in -Xjvm-default=all-compatibility
  • KT-74718 K/N: Move TestProcessor phase to the top of the pipeline
  • KT-75015 Context parameters: it is possible to declare anonymous function with modifiers but they don't have any effect
  • KT-75092 K2: Missing errors for modifiers on anonymous function in statement position
  • KT-75009 Context parameters: context is unresolved inside anonymous function if passed as an argument
  • KT-75017 Context parameters: "IllegalStateException: Cannot find variable a: R|kotlin/String| in local storage " when context from another local function is called
  • KT-75154 Context receiver deprecation warning should depend on langauge version, not on LATEST_STABLE
  • KT-74979 Context parameters: anonymous functions with a context aren't parsed in complex cases
  • KT-74673 K2: ClassCastException when passing suspending functional interface with generic
  • KT-74469 K2: False positive: "Argument type mismatch" during Java interop
  • KT-75105 K2: False negative NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER for type constraint of anonymous function
  • KT-74929 False positive TYPE_PARAMETER_OF_PROPERTY_NOT_USED_IN_RECEIVER if it is used with T&Any
  • KT-74227 K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function type
  • KT-64558 K2 compiler does not report UNNECESSARY_SAFE_CALL, UNNECESSARY_NOT_NULL_ASSERTION, USELESS_ELVIS, while K2 IDEA does
  • KT-74728 K2: Java method overriding Kotlin method with receiver loses vararg modifier
  • KT-70789 CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabled
  • KT-72829 Forbid 'entries' name of enum entry, and deprioritize it in resolve
  • KT-75037 K2: IrGeneratedDeclarationsRegistrar.registerFunctionAsMetadataVisible doesn't handle extension receivers and context parameters
  • KT-73149 Annotations support for context parameters
  • KT-74798 Report error on local contextual properties
  • KT-74092 Context parameters: it is not possible to declare an anonymous function with a context
  • KT-52152 K2: Investigate suspicious code at SAM conversions
  • KT-75016 K2: BackendException when context var property is declared in interface
  • KT-74474 K2: Report more precise diagnostic when last expression of non-unit lambda is a statement
  • KT-74478 K2: False negative RETURN TYPE_MISMATCH if the last statement of a lambda is indexed assignment
  • KT-73685 K2 IDE / Kotlin Debugger: NSME “Method not found” on evaluating function with constant value in @JvmName
  • KT-74449 Report RETURN_TYPE_MISMATCH instead of ARGUMENT_TYPE_MISMATCH for return expressions in lambdas
  • KT-74918 FIR: account for K/Wasm diagnostics in generateNonSuppressibleErrorNamesFile
  • KT-74897 K2: Report UNSUPPORTED_FEATURE instead of TOPLEVEL_TYPEALIASES_ONLY for nested type aliases
  • KT-74963 K2: Fir2Ir: Avoid a situation when startOffset > endOffset in generated IrBranch
  • KT-74697 Overriding a method that's both deprecated and non-deprecated should not cause warnings
  • KT-74928 K2: "IllegalStateException: Cannot find cached type parameter by FIR symbol" in KJK hierarchy with extension property
  • KT-74630 K2: local class arguments in annotations on types and type parameters are not serialized
  • KT-74445 Commonize Native Function/Property reference lowerings
  • KT-74670 Warning message CONTEXT_CLASS_OR_CONSTRUCTOR isn't reported for context receiver on the constructor
  • KT-74617 Trivial SMAP optimization leads to missing debug info after inline
  • KT-74812 compile-time failure on a callable reference with an input type inferred to an inaccessible generic type
  • KT-66195 K2: Java method is not enhanced from overridden's context receivers
  • KT-74501 Context parameters: ABSTRACT_MEMBER_NOT_IMPLEMENTED if fun with context is implemented in Java in KJK hierarchy
  • KT-74385 Missing diagnostic on repeated suspend modifier in function type
  • KT-74749 Provide explanation IR before script compilation
  • KT-74751 K2: IllegalStateException: Can't apply receivers of FirPropertyAccessExpressionImpl to IrTypeOperatorCallImpl
  • KT-74729 NPE when suspend lambda has inline class parameter
  • KT-74336 Not supported: class org.jetbrains.kotlin.fir.types.ConeIntersectionType
  • KT-74203 K2: False negative NO_ELSE_IN_WHEN of a generic type with star projection <*> bounded by a sealed hierarchy
  • KT-48085 Kotlin/Native: LLD removes live code with --gc-sections when producing DLL
  • KT-69164 Native: use lld from bundled LLVM distribution when compiling on Windows for a MinGW target
  • KT-74081 Context parameters: implicit call resolves to extension when there is a context
  • KT-74682 Implement internal type exposure via parameter bounds deprecation postponement
  • KT-74556 K2: "IAE: class KtDestructuringDeclaration is not a subtype of class KtNamedDeclaration for factory REDECLARATION" with two non-local destructuring declarations
  • KT-73146 Context parameters CLI & diagnostics
  • KT-72104 Consider enabling check for unbound symbols in JVM before lowerings
  • KT-74568 Synthetic nested classes missing JVM attributes
  • KT-73703 [Native] Move KonanIrLinker to serialization.native module
  • KT-61175 K2: FirReceiverParameter does not extend FirDeclaration
  • KT-73961 'lateinit is unnecessary' on transient properties should not be reported for serializable classes
  • KT-73858 Compose / iOS: NullPointerException on building
  • KT-62953 JVM IR: Use SimpleNamedCompilerPhase instead of NamedCompilerPhase
  • KT-72929 Consider caching typealiased constructor symbols created by TypeAliasConstructorsSubstitutingScope
  • KT-74459 K2: false positive MISSING_DEPENDENCY_CLASS for types inside default argument
  • KT-73705 [Native] Decouple native caches support from KonanIrLinker and KonanPartialModuleDeserializer
  • KT-74091 K2: @JvmOverloads-produced overloads have generated line number table
  • KT-69754 Drop -Xuse-k2 compiler flag
  • KT-73352 K2: false negative ARRAY_EQUALITY_OPERATOR_CAN_BE_REPLACED_WITH_EQUALS
  • KT-72962 Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlier
  • KT-73027 IllegalStateException: Annotation argument value cannot be null: since
  • KT-74242 Freeze on runCatching call in finally block inside SAM conversion
  • KT-29222 FIR: consider folding binary expression chains
  • KT-73760 Cannot implement two Java interfaces with @NotNull-annotated type argument and Kotlin's plain (nullable) type parameter
  • KT-58933 Applying suggested signature from WRONG_NULLABILITY_FOR_JAVA_OVERRIDE leads to red code
  • KT-70507 Should parentheses prevent from plus/set operator desugaring?
  • KT-67520 Change of behaviour of inline function with safe cast on value type
  • KT-67518 Value classes leak their carrier type implementation details via inlining
  • KT-72305 K2: Report error when using synthetic properties in case of mapped collections
  • KT-71226 K2 Evaluator: Code fragment compilation with unresolved classes does not fail with exception
  • KT-70233 Implement a deprecation error for FIELD-targeted annotations on annotation properties
  • KT-67517 Value class upcast to Any leaks carrier type interfaces
  • KT-72814 FIR: don't use function references in FirThisReference
  • KT-73153 K2: Standalone diagnostics on type arguments are not reported
  • KT-73011 K2: Allow overloads resolution for callable references based on expected type variable with constraints
  • KT-70139 Remove dependencies of debugger on K1 and old JVM backend
  • KT-69223 Drop parallel lowering mode in JVM backend
  • KT-7461 Forbid using projection modifiers inside top-level Array in annotation's value parameter
  • KT-53804 Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlib
  • KT-52774 Resolve unqualified enum constants based on expected type
Compose compiler
New features

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [org.jetbrains.kotlin.multiplatform](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | plugin | minor | `2.1.21` -> `2.2.0` | | [org.jetbrains.kotlin.plugin.compose](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | plugin | minor | `2.1.21` -> `2.2.0` | | [org.jetbrains.kotlin:kotlin-test-junit](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | dependencies | minor | `2.1.21` -> `2.2.0` | | [org.jetbrains.kotlin:kotlin-test](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | dependencies | minor | `2.1.21` -> `2.2.0` | --- ### Release Notes <details> <summary>JetBrains/kotlin (org.jetbrains.kotlin.multiplatform)</summary> ### [`v2.2.0`](https://github.com/JetBrains/kotlin/blob/HEAD/ChangeLog.md#220) ##### Analysis API - [`KT-73337`](https://youtrack.jetbrains.com/issue/KT-73337) Migrate analysis sources to new IR parameter API - [`KT-75880`](https://youtrack.jetbrains.com/issue/KT-75880) K2 Mode: Typealias reference resolves to the underlying class in KMP project - [`KT-74246`](https://youtrack.jetbrains.com/issue/KT-74246) KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-site - [`KT-57733`](https://youtrack.jetbrains.com/issue/KT-57733) Analysis API: Use optimized `ModuleWithDependenciesScope`s in combined symbol providers - [`KT-69535`](https://youtrack.jetbrains.com/issue/KT-69535) Redesign 'containingSymbol' - [`KT-69950`](https://youtrack.jetbrains.com/issue/KT-69950) Analysis API: Introduce `isSubtypeOf(ClassId)` - [`KT-68393`](https://youtrack.jetbrains.com/issue/KT-68393) Analysis API: Rename `KaClassLikeSymbol. classIdIfNonLocal` to `classId` - [`KT-62924`](https://youtrack.jetbrains.com/issue/KT-62924) Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId ##### Analysis API. Code Compilation - [`KT-75502`](https://youtrack.jetbrains.com/issue/KT-75502) K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin project - [`KT-73077`](https://youtrack.jetbrains.com/issue/KT-73077) Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sources - [`KT-73936`](https://youtrack.jetbrains.com/issue/KT-73936) K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluator - [`KT-74582`](https://youtrack.jetbrains.com/issue/KT-74582) InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent fixes - [`KT-74524`](https://youtrack.jetbrains.com/issue/KT-74524) Compilation exception with incorrect JvmName annotation arguments - [`KT-74443`](https://youtrack.jetbrains.com/issue/KT-74443) Compilation peer collector ignores inline property accessors ##### Analysis API. FIR ##### New Features - [`KT-73493`](https://youtrack.jetbrains.com/issue/KT-73493) Support context parameters ##### Performance Improvements - [`KT-75790`](https://youtrack.jetbrains.com/issue/KT-75790) Experiment with increasing DEFAULT\_LOCKING\_INTERVAL time - [`KT-72159`](https://youtrack.jetbrains.com/issue/KT-72159) LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks ##### Fixes - [`KT-76331`](https://youtrack.jetbrains.com/issue/KT-76331) Cleanup FileStructureElement for classes - [`KT-73117`](https://youtrack.jetbrains.com/issue/KT-73117) K2 AA: Exception "Setter is not found" when val has a setter without body - [`KT-76540`](https://youtrack.jetbrains.com/issue/KT-76540) K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures - [`KT-73266`](https://youtrack.jetbrains.com/issue/KT-73266) K2. "Declaration should have non-local container" with unclosed annotation on top-level function - [`KT-76432`](https://youtrack.jetbrains.com/issue/KT-76432) JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl - [`KT-76217`](https://youtrack.jetbrains.com/issue/KT-76217) K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists - [`KT-74740`](https://youtrack.jetbrains.com/issue/KT-74740) Highlighting is broken after the built-in serialization refactoring - [`KT-76366`](https://youtrack.jetbrains.com/issue/KT-76366) ContextCollector: annotations on class members don't have the class as implicit receiver - [`KT-76352`](https://youtrack.jetbrains.com/issue/KT-76352) ContextCollector: wrong class annotation context in BODY mode - [`KT-76341`](https://youtrack.jetbrains.com/issue/KT-76341) ContextCollector: support dangling modifiers - [`KT-76332`](https://youtrack.jetbrains.com/issue/KT-76332) "Declaration should have non-local container" for declaration inside file annotation - [`KT-76115`](https://youtrack.jetbrains.com/issue/KT-76115) Disable `FirElementBuilder#getFirForElementInsideAnnotations` optimization for files, classes and scripts - [`KT-76347`](https://youtrack.jetbrains.com/issue/KT-76347) ContextCollector: avoid resolution for enum entry annotations - [`KT-76272`](https://youtrack.jetbrains.com/issue/KT-76272) Cleanup AbstractFileStructureTest - [`KT-75542`](https://youtrack.jetbrains.com/issue/KT-75542) K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function - [`KT-73719`](https://youtrack.jetbrains.com/issue/KT-73719) K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call - [`KT-72908`](https://youtrack.jetbrains.com/issue/KT-72908) K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer before `init` block - [`KT-75532`](https://youtrack.jetbrains.com/issue/KT-75532) ContextCollector: scope for an anonymous function type parameter contains regular parameters - [`KT-74508`](https://youtrack.jetbrains.com/issue/KT-74508) `FirElementBuilder#findElementInside` should reuse logic from `KtToFirMapping#getFir` - [`KT-73066`](https://youtrack.jetbrains.com/issue/KT-73066) \[LL] Enable low-level-api-fir-native even with the disabled native part - [`KT-75132`](https://youtrack.jetbrains.com/issue/KT-75132) Investigate failures of sandbox diagnostic test - [`KT-75130`](https://youtrack.jetbrains.com/issue/KT-75130) Set up LL FIR tests for sandbox test data - [`KT-73386`](https://youtrack.jetbrains.com/issue/KT-73386) Standardize LL FIR test for compiler test data - [`KT-75125`](https://youtrack.jetbrains.com/issue/KT-75125) ISE “Value classes cannot have 0 fields” on instantiating inline class without fields - [`KT-75179`](https://youtrack.jetbrains.com/issue/KT-75179) ContextCollector: support error properties - [`KT-74632`](https://youtrack.jetbrains.com/issue/KT-74632) K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessing - [`KT-74818`](https://youtrack.jetbrains.com/issue/KT-74818) K2 AA: "FirDeclaration was not found for class KtTypeParameter, fir is null" with TYPE\_PARAMETERS\_NOT\_ALLOWED on anonymous function - [`KT-73183`](https://youtrack.jetbrains.com/issue/KT-73183) Support context parameters in ContextCollectorVisitor - [`KT-60350`](https://youtrack.jetbrains.com/issue/KT-60350) K2 IDE: top level destructuring RHS should be resolvable - [`KT-74794`](https://youtrack.jetbrains.com/issue/KT-74794) K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return type - [`KT-72938`](https://youtrack.jetbrains.com/issue/KT-72938) Get rid of KaFirAnnotationListForReceiverParameter - [`KT-73727`](https://youtrack.jetbrains.com/issue/KT-73727) Exception in implicit type resolution ##### Analysis API. Infrastructure - [`KT-74917`](https://youtrack.jetbrains.com/issue/KT-74917) \[Analysis API, Test Framework] Introduce a way to acquire `PsiFile` for a given `TestFile` in `KtTestModule` ##### Analysis API. Light Classes - [`KT-73405`](https://youtrack.jetbrains.com/issue/KT-73405) Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usages - [`KT-75391`](https://youtrack.jetbrains.com/issue/KT-75391) Reduce the amount of psi-based logic in light classes - [`KT-70001`](https://youtrack.jetbrains.com/issue/KT-70001) SLC adds `@Override` with zero text offset on `override` member - [`KT-75755`](https://youtrack.jetbrains.com/issue/KT-75755) K2. False positive red code on vararg parameters in Kotlin class with `@JvmOverloads` when called from Java - [`KT-75397`](https://youtrack.jetbrains.com/issue/KT-75397) Constructors and functions with non-last vararg parameters are treated as varargs - [`KT-74868`](https://youtrack.jetbrains.com/issue/KT-74868) Support context parameters - [`KT-74733`](https://youtrack.jetbrains.com/issue/KT-74733) SymbolPsiLiteral.text == value for Java constant - [`KT-74620`](https://youtrack.jetbrains.com/issue/KT-74620) Delegated functions with value classes are present in light classes - [`KT-74595`](https://youtrack.jetbrains.com/issue/KT-74595) Static functions with value classes are present in light classes - [`KT-74284`](https://youtrack.jetbrains.com/issue/KT-74284) Synthetic data class methods using value class types present in LC ##### Analysis API. Providers and Caches ##### Performance Improvements - [`KT-62115`](https://youtrack.jetbrains.com/issue/KT-62115) Analysis API: Package providers are not cached per search scope - [`KT-74463`](https://youtrack.jetbrains.com/issue/KT-74463) Analysis API: `LLNativeForwardDeclarationsSymbolProvider` queries its cache even when the `ClassId` cannot represent a native forward declaration ##### Fixes - [`KT-74541`](https://youtrack.jetbrains.com/issue/KT-74541) Analysis API: Include files generated by resolve extensions in `KaModule` content scopes - [`KT-64236`](https://youtrack.jetbrains.com/issue/KT-64236) Analysis API: Introduce a separate module for fallback dependencies of library source modules - [`KT-74090`](https://youtrack.jetbrains.com/issue/KT-74090) Analysis API: Support dumb mode (restricted analysis) - [`KT-63780`](https://youtrack.jetbrains.com/issue/KT-63780) Analysis API: Invalidate resolvable library sessions when binary library modules are modified - [`KT-72388`](https://youtrack.jetbrains.com/issue/KT-72388) KaFirStopWorldCacheCleaner: Control-flow exceptions - [`KT-74943`](https://youtrack.jetbrains.com/issue/KT-74943) Analysis API: Replace `KotlinGlobalModificationService` with simpler global modification event publishing and listener-based modification trackers - [`KT-70518`](https://youtrack.jetbrains.com/issue/KT-70518) K2: Analysis API: Access indices outside of `ConcurrentMap` computation in symbol providers - [`KT-74302`](https://youtrack.jetbrains.com/issue/KT-74302) Analysis API: `LLFirProvider` should disregard self-declarations in `getFirClassifierBy*` - [`KT-67868`](https://youtrack.jetbrains.com/issue/KT-67868) Analysis API: Improve the architecture of `LLFirKotlinSymbolProvider`s ##### Analysis API. Standalone - [`KT-72810`](https://youtrack.jetbrains.com/issue/KT-72810) withMultiplatformLightClassSupport is inconvenient in Standalone ##### Analysis API. Stubs and Decompilation - [`KT-71787`](https://youtrack.jetbrains.com/issue/KT-71787) `PsiRawFirBuilder.Visitor#visitStringTemplateExpression` forces AST loading - [`KT-68484`](https://youtrack.jetbrains.com/issue/KT-68484) K2 IDE, Analysis API: "We should be able to find a symbol for function" for getting KaType of `Iterable<T>.map(transform: (T) -> R)` parameter in J2K ##### Analysis API. Surface ##### New Features - [`KT-74475`](https://youtrack.jetbrains.com/issue/KT-74475) Add `isInline` for `KaPropertySymbol` - [`KT-75063`](https://youtrack.jetbrains.com/issue/KT-75063) KaScopeContext: support context parameters ##### Performance Improvements - [`KT-73669`](https://youtrack.jetbrains.com/issue/KT-73669) Support psi-based symbol pointer for implicit primary constructors - [`KT-76008`](https://youtrack.jetbrains.com/issue/KT-76008) Provide PSI-based implementation for `KaFirNamedClassSymbol#companionObject` - [`KT-70165`](https://youtrack.jetbrains.com/issue/KT-70165) Introduce PSI-based `KaSymbol`s for K2 ##### Fixes - [`KT-72730`](https://youtrack.jetbrains.com/issue/KT-72730) K2: "Unexpected owner function: KtNamedFunction" on vararg val parameter in function - [`KT-75123`](https://youtrack.jetbrains.com/issue/KT-75123) K2. KaFirNamedFunctionSymbol should contain a receiver - [`KT-75894`](https://youtrack.jetbrains.com/issue/KT-75894) Cannot build KaFirJavaFieldSymbol for FirFieldImpl - [`KT-75115`](https://youtrack.jetbrains.com/issue/KT-75115) Analysis API: The `JavaModuleResolver` compiler class is leaked to Analysis API platform implementations - [`KT-76018`](https://youtrack.jetbrains.com/issue/KT-76018) K2: Stop the wold leads to deadlock/freeze - [`KT-76011`](https://youtrack.jetbrains.com/issue/KT-76011) `KaFirNamedClassSymbol#companionObject` doesn't provide generated objects generated by compiled plugins - [`KT-72482`](https://youtrack.jetbrains.com/issue/KT-72482) "KotlinIllegalArgumentExceptionWithAttachments: Expected all candidates to have same callableId but some of them but was different" on trying to add the import - [`KT-75586`](https://youtrack.jetbrains.com/issue/KT-75586) `KaFirPropertyGetterSymbol#isInline` and `KaFirPropertySetterSymbol#isInline` is incorrect for accessors with explicit modifier - [`KT-58572`](https://youtrack.jetbrains.com/issue/KT-58572) Analysis API: Enforcing STATUS resolve in 'KtFirNamedClassOrObjectSymbol.visibility' may cause lazy resolve contract violation - [`KT-75574`](https://youtrack.jetbrains.com/issue/KT-75574) Recognize injected code fragment copies - [`KT-75573`](https://youtrack.jetbrains.com/issue/KT-75573) Recognize physical file copies as dangling files - [`KT-74801`](https://youtrack.jetbrains.com/issue/KT-74801) Analysis API: Publish/subscribe to modification events with a single message bus topic - [`KT-73290`](https://youtrack.jetbrains.com/issue/KT-73290) Analysis API: Improve the architecture of content scopes and resolution scopes - [`KT-68901`](https://youtrack.jetbrains.com/issue/KT-68901) Constructor delegation call receiver missing in fir implementation - [`KT-72639`](https://youtrack.jetbrains.com/issue/KT-72639) Support context parameter API - [`KT-73112`](https://youtrack.jetbrains.com/issue/KT-73112) AA: FirExpression.toKtReceiverValue should handle context receivers properly - [`KT-74905`](https://youtrack.jetbrains.com/issue/KT-74905) Cannot find context receiver in FIR declaration - [`KT-74563`](https://youtrack.jetbrains.com/issue/KT-74563) `createPointer` is overloaded not for all implementations - [`KT-73722`](https://youtrack.jetbrains.com/issue/KT-73722) Analysis API: Automatically check that the API surface is fully documented - [`KT-65065`](https://youtrack.jetbrains.com/issue/KT-65065) Provide `KtTypeReference#getShortTypeText()` ##### Backend. Native. Debug - [`KT-75991`](https://youtrack.jetbrains.com/issue/KT-75991) Xcode 16.3: Fix lldb stepping test over an inline function ##### Backend. Wasm ##### New Features - [`KT-59032`](https://youtrack.jetbrains.com/issue/KT-59032) Support instantiation of annotation classes on WASM ##### Fixes - [`KT-77622`](https://youtrack.jetbrains.com/issue/KT-77622) K/Wasm: investigate CMP crash on mobile Safari - [`KT-76747`](https://youtrack.jetbrains.com/issue/KT-76747) \[Wasm] Wasm name section absent for wasm structs - [`KT-76701`](https://youtrack.jetbrains.com/issue/KT-76701) K/Wasm: custom formatters are not loaded when a project is built with incremental compilation - [`KT-66081`](https://youtrack.jetbrains.com/issue/KT-66081) K/WASM: `0/0`, `5/0` and `5%0`throw not ArithmeticException, but RuntimeError - [`KT-76287`](https://youtrack.jetbrains.com/issue/KT-76287) \[Wasm] Enable stdlib and kotlin.test tests after compiler bootstrap - [`KT-75871`](https://youtrack.jetbrains.com/issue/KT-75871) \[Wasm] Implement new RTTI approach - [`KT-75872`](https://youtrack.jetbrains.com/issue/KT-75872) Wasm / IC: IllegalStateException: IC internal error: can not find library - [`KT-74441`](https://youtrack.jetbrains.com/issue/KT-74441) K/Wasm: incorrect 1e-45.toString() - [`KT-59118`](https://youtrack.jetbrains.com/issue/KT-59118) WASM: floating point toString inconsistencies - [`KT-68948`](https://youtrack.jetbrains.com/issue/KT-68948) Wasm: float from variable is printed with many decimal points - [`KT-69107`](https://youtrack.jetbrains.com/issue/KT-69107) \[wasm] Seemingly incorrect rounding - [`KT-73362`](https://youtrack.jetbrains.com/issue/KT-73362) Migrate K/Wasm sources to new IR parameter API ##### Compiler ##### New Features - [`KT-70722`](https://youtrack.jetbrains.com/issue/KT-70722) Implement better Kotlin warnings for value classes and JEP 390 (Warnings for Value-Based Classes) - [`KT-71768`](https://youtrack.jetbrains.com/issue/KT-71768) Enable -Xjvm-default=all-compatibility by default to generate JVM default interface methods - [`KT-54205`](https://youtrack.jetbrains.com/issue/KT-54205) Support jakarta Nullability annotations - [`KT-57919`](https://youtrack.jetbrains.com/issue/KT-57919) Store all annotations in Kotlin metadata on JVM under a flag - [`KT-73255`](https://youtrack.jetbrains.com/issue/KT-73255) Change defaulting rule for annotations - [`KT-74382`](https://youtrack.jetbrains.com/issue/KT-74382) Annotating Java record components for `@JvmRecord` data class - [`KT-74811`](https://youtrack.jetbrains.com/issue/KT-74811) Prohibit usages of `@MustUseValue` / `@IgnorableValue` if RV checker is not enabled - [`KT-74806`](https://youtrack.jetbrains.com/issue/KT-74806) Implement feature flag for improved unused return value checker - [`KT-74809`](https://youtrack.jetbrains.com/issue/KT-74809) Support unnamed local variables - [`KT-73508`](https://youtrack.jetbrains.com/issue/KT-73508) Add a warning diagnostic for using kotlin.concurrent.AtomicRef<Int> - [`KT-72941`](https://youtrack.jetbrains.com/issue/KT-72941) ANNOTATIONS\_ON\_BLOCK\_LEVEL\_EXPRESSION\_ON\_THE\_SAME\_LINE missing in K2 - [`KT-74497`](https://youtrack.jetbrains.com/issue/KT-74497) Warn about incompatible Kotlin and Java targets in annotations - [`KT-75061`](https://youtrack.jetbrains.com/issue/KT-75061) Support context-sensitive resolution in type position - [`KT-75315`](https://youtrack.jetbrains.com/issue/KT-75315) Support context-sensitive resolution in the call-argument position - [`KT-75316`](https://youtrack.jetbrains.com/issue/KT-75316) Support context-sensitive resolution for expression-position with expected type - [`KT-76088`](https://youtrack.jetbrains.com/issue/KT-76088) Support context-sensitive resolution for annotation arguments - [`KT-74049`](https://youtrack.jetbrains.com/issue/KT-74049) Introduce special override rule to allow overriding T! with T & Any ##### Performance Improvements - [`KT-76395`](https://youtrack.jetbrains.com/issue/KT-76395) Performance degradation on 28.03.2025 - [`KT-76422`](https://youtrack.jetbrains.com/issue/KT-76422) FirJavaFacade#createFirJavaClass: do not compute super type references right away - [`KT-75957`](https://youtrack.jetbrains.com/issue/KT-75957) K2: PsiRawFirBuilder.Visitor#toFirExpression forces AST loading via getSpreadElement - [`KT-74824`](https://youtrack.jetbrains.com/issue/KT-74824) Exponential performance caused by nested flexible types - [`KT-62855`](https://youtrack.jetbrains.com/issue/KT-62855) K2: extra allocation for SAM conversion compared to K1 - [`KT-74977`](https://youtrack.jetbrains.com/issue/KT-74977) K/N: support stack array for Array(size) call - [`KT-74369`](https://youtrack.jetbrains.com/issue/KT-74369) Exponential compiler memory usage in specific situations with type inference ##### Fixes - [`KT-76606`](https://youtrack.jetbrains.com/issue/KT-76606) Enable 'Indy: Allow lambdas with annotations' by default - [`KT-77301`](https://youtrack.jetbrains.com/issue/KT-77301) False positive Context Parameter resolution when using DslMarker - [`KT-74389`](https://youtrack.jetbrains.com/issue/KT-74389) K2: False positive NON\_EXPORTABLE\_TYPE on non-Unit `Promise<...>` in K/JS - [`KT-77219`](https://youtrack.jetbrains.com/issue/KT-77219) "`@Composable` annotation is not applicable" on vararg `@Composable` () -> Unit in Kotlin 2.2.0 - [`KT-76357`](https://youtrack.jetbrains.com/issue/KT-76357) K2: a nested class annotation observes member declarations of the outer class - [`KT-72734`](https://youtrack.jetbrains.com/issue/KT-72734) Support new callable reference nodes in Kotlin Native - [`KT-74421`](https://youtrack.jetbrains.com/issue/KT-74421) K2: Missing "val cannot be reassigned" when trying to assign a value to parent's "val" - [`KT-63720`](https://youtrack.jetbrains.com/issue/KT-63720) Coroutine debugger: do not optimise out local variables - [`KT-74470`](https://youtrack.jetbrains.com/issue/KT-74470) NSME on calling in runtime internal constructor of value class with default arg from tests - [`KT-77640`](https://youtrack.jetbrains.com/issue/KT-77640) Context parameters: using 'contextOf()' function leads to \[NO\_CONTEXT\_ARGUMENT] - [`KT-73909`](https://youtrack.jetbrains.com/issue/KT-73909) Add an inspection discouraging usage of kotlin.concurrent Native atomics in favor of the new atomics - [`KT-76583`](https://youtrack.jetbrains.com/issue/KT-76583) CCE: suspend lambda attempts to unbox value class parameter twice after lambda suspended - [`KT-76663`](https://youtrack.jetbrains.com/issue/KT-76663) KJS: KotlinNothingValueException caused by expression return since 2.1.20 - [`KT-75457`](https://youtrack.jetbrains.com/issue/KT-75457) Native: cache machinery uses stdlib cache with default runtime options even if custom runtime options are supplied when partial linkage is disabled - [`KT-76615`](https://youtrack.jetbrains.com/issue/KT-76615) K2: "IllegalArgumentException: Inline class types should have the same representation: Lkotlin/UByte; != B" for mixed Java/Kotlin code - [`KT-77220`](https://youtrack.jetbrains.com/issue/KT-77220) Annotation with EXPRESSION is not allowed on lambdas in Kotlin 2.2.0 - [`KT-76381`](https://youtrack.jetbrains.com/issue/KT-76381) K2: Expected expression 'FirPropertyAccessExpressionImpl' to be resolved - [`KT-74739`](https://youtrack.jetbrains.com/issue/KT-74739) Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION\_REFERENCE" - [`KT-74325`](https://youtrack.jetbrains.com/issue/KT-74325) Explicit API mode does not enforce explicit return types for extension properties - [`KT-77259`](https://youtrack.jetbrains.com/issue/KT-77259) Confusing message for `ANNOTATION_WILL_BE_APPLIED_ALSO_TO_PROPERTY_OR_FIELD` - [`KT-73771`](https://youtrack.jetbrains.com/issue/KT-73771) K2: Infinite compilation caused by buildList without type - [`KT-61258`](https://youtrack.jetbrains.com/issue/KT-61258) Kotlin/Native: CLASS CLASS name:<no name provided> modality:FINAL visibility:local superTypes:\[<root>.Base] - [`KT-75317`](https://youtrack.jetbrains.com/issue/KT-75317) Kotlin/Native: segfault in kotlin::gc::Mark<kotlin::gc::mark::ConcurrentMark::MarkTraits> - [`KT-75965`](https://youtrack.jetbrains.com/issue/KT-75965) The iOS app did not run successfully in Release mode - [`KT-77397`](https://youtrack.jetbrains.com/issue/KT-77397) Report UNSUPPORTED\_CONTEXTUAL\_DECLARATION\_CALL when calling declaration with contextual function type in signature - [`KT-77137`](https://youtrack.jetbrains.com/issue/KT-77137) K2: Controversial behavior allows resolving annotation arguments on a companion inside it - [`KT-77150`](https://youtrack.jetbrains.com/issue/KT-77150) Native: compilation fails with an assertion error - [`KT-51960`](https://youtrack.jetbrains.com/issue/KT-51960) ClassCastException: Inline function with both context and extension receiver produces this when invoked - [`KT-73611`](https://youtrack.jetbrains.com/issue/KT-73611) Remove -Xextended-compiler-checks in favor of a deprecation cycle - [`KT-74649`](https://youtrack.jetbrains.com/issue/KT-74649) Deprecate language versions 1.8 and 1.9 - [`KT-77283`](https://youtrack.jetbrains.com/issue/KT-77283) Binary compatibility of FirDeclarationChecker - [`KT-73445`](https://youtrack.jetbrains.com/issue/KT-73445) K2: do not report "cannot infer visibility" when inheriting multiple implementations - [`KT-75945`](https://youtrack.jetbrains.com/issue/KT-75945) Indy: Allow lambdas with annotations - [`KT-76898`](https://youtrack.jetbrains.com/issue/KT-76898) K2: ClassCastException when data class shadows supertype's `componentX` method with wrong type - [`KT-75992`](https://youtrack.jetbrains.com/issue/KT-75992) Xcode 16.3: stacktraces on simulators are not symbolicated - [`KT-76805`](https://youtrack.jetbrains.com/issue/KT-76805) Wrong NPE occurs when assigning synthetic properties with platform types in Kotlin 2.1.20 - [`KT-76171`](https://youtrack.jetbrains.com/issue/KT-76171) "KotlinIllegalArgumentExceptionWithAttachments: Expected expression 'FirSingleExpressionBlock' to be resolved" - [`KT-77078`](https://youtrack.jetbrains.com/issue/KT-77078) K2: anonymous object is wrongly allowed to implement interfaces by unsafe Delegation - [`KT-72722`](https://youtrack.jetbrains.com/issue/KT-72722) Treat 'copy' calls of a data class as explicit constructor usages - [`KT-77001`](https://youtrack.jetbrains.com/issue/KT-77001) Leave ForbidParenthesizedLhsInAssignments as a warning - [`KT-75828`](https://youtrack.jetbrains.com/issue/KT-75828) Store backing field/delegate annotations and extension receiver annotations in metadata - [`KT-58369`](https://youtrack.jetbrains.com/issue/KT-58369) K2: enable DFA warnings - [`KT-51258`](https://youtrack.jetbrains.com/issue/KT-51258) Annotations should go before context receivers - [`KT-76253`](https://youtrack.jetbrains.com/issue/KT-76253) K2 Compiler: Less precise diagnostic COMPONENT\_FUNCTION\_AMBIGUITY for flexible type - [`KT-59526`](https://youtrack.jetbrains.com/issue/KT-59526) Store annotation default values in metadata on JVM - [`KT-63850`](https://youtrack.jetbrains.com/issue/KT-63850) K2: setter with an annotated parameter has `isNotDefault == false` flag in metadata - [`KT-75712`](https://youtrack.jetbrains.com/issue/KT-75712) -Wextra: false positive UNUSED\_LAMBDA\_EXPRESSION on functional type variable assignment with inferred type - [`KT-4779`](https://youtrack.jetbrains.com/issue/KT-4779) Generate default methods for implementations in interfaces - [`KT-69624`](https://youtrack.jetbrains.com/issue/KT-69624) Debugger: Missing local variable in Variables view (inline function) - [`KT-75518`](https://youtrack.jetbrains.com/issue/KT-75518) NO\_CONTEXT\_ARGUMENT should report the name of the context parameter in addition to the type - [`KT-76199`](https://youtrack.jetbrains.com/issue/KT-76199) Introduce -Xcontext-sensitive-resolution compiler flag - [`KT-75553`](https://youtrack.jetbrains.com/issue/KT-75553) `MISSING_DEPENDENCY_SUPERCLASS` and `MISSING_DEPENDENCY_SUPERCLASS_WARNING` is reported at the same time on the same element - [`KT-76159`](https://youtrack.jetbrains.com/issue/KT-76159) Obsolete error "'`@JvmDefaultWithCompatibility`' annotation is only allowed on interfaces" should be removed - [`KT-76660`](https://youtrack.jetbrains.com/issue/KT-76660) False negative RETURN\_NOT\_ALLOWED in lambda in default argument leads to NoClassDefFoundError: $$$$$NON\_LOCAL\_RETURN$$$$$ - [`KT-76301`](https://youtrack.jetbrains.com/issue/KT-76301) Fail to infer types after syntactical change - [`KT-74999`](https://youtrack.jetbrains.com/issue/KT-74999) K2: KotlinNothingValueException within Extension Function - [`KT-76675`](https://youtrack.jetbrains.com/issue/KT-76675) KIAEWA exception at KaFirDataFlowProvider with non-local return from nested inline call - [`KT-75756`](https://youtrack.jetbrains.com/issue/KT-75756) Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script - [`KT-76345`](https://youtrack.jetbrains.com/issue/KT-76345) Enhance variable fixation - [`KT-76578`](https://youtrack.jetbrains.com/issue/KT-76578) \[FIR, K1/K2 Regression] `lateinit` is allowed on loop parameters - [`KT-76448`](https://youtrack.jetbrains.com/issue/KT-76448) FirOverrideChecker: class ClsMethodImpl is not a subtype of class KtNamedDeclaration for factory VIRTUAL\_MEMBER\_HIDDEN - [`KT-73360`](https://youtrack.jetbrains.com/issue/KT-73360) Migrate K/JVM sources to new IR parameter API - [`KT-74852`](https://youtrack.jetbrains.com/issue/KT-74852) Kotlin/Native: allow caches for thread state checker and sanitizers - [`KT-76130`](https://youtrack.jetbrains.com/issue/KT-76130) IR evaluator does not support array literals in annotation parameter default values - [`KT-76436`](https://youtrack.jetbrains.com/issue/KT-76436) Missing K2 checker: non-local return through lambda passed to inline f/o - [`KT-74326`](https://youtrack.jetbrains.com/issue/KT-74326) False negative: no variable must be initialized error though code doesn't compile - [`KT-76572`](https://youtrack.jetbrains.com/issue/KT-76572) FIR\_NON\_SUPPRESSIBLE\_ERROR\_NAMES does not contain deprecation errors - [`KT-75704`](https://youtrack.jetbrains.com/issue/KT-75704) Refactor `FirWhenSubjectExpression` - [`KT-76284`](https://youtrack.jetbrains.com/issue/KT-76284) Flexible captured type is not approximated in receiver position - [`KT-76192`](https://youtrack.jetbrains.com/issue/KT-76192) RETURN\_TYPE\_MISMATCH with same expected and actual type: nullability of actual type is omitted - [`KT-75944`](https://youtrack.jetbrains.com/issue/KT-75944) Allow using invokedynamic for lambdas with no 'Runtime' level retention annotations - [`KT-76396`](https://youtrack.jetbrains.com/issue/KT-76396) FirIntegerConstantOperatorScope: NoSuchElementException: Collection contains no element matching the predicate - [`KT-76209`](https://youtrack.jetbrains.com/issue/KT-76209) CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-59506`](https://youtrack.jetbrains.com/issue/KT-59506) Context receivers: Unable to use trailing comma in receiver list - [`KT-46119`](https://youtrack.jetbrains.com/issue/KT-46119) NONE\_APPLICABLE instead of NAMED\_ARGUMENTS\_NOT\_ALLOWED with overloaded Java constructor call - [`KT-75503`](https://youtrack.jetbrains.com/issue/KT-75503) Run lazy resolution in CallableCopyTypeCalculator and use withForcedTypeCalculator everywhere in checkers - [`KT-76485`](https://youtrack.jetbrains.com/issue/KT-76485) Don't report EXTENSION\_SHADOWED\_BY\_MEMBER if extension can be called with named arguments - [`KT-76154`](https://youtrack.jetbrains.com/issue/KT-76154) False positive "EXTENSION\_SHADOWED\_BY\_MEMBER" when extension adds default values to parameters - [`KT-76527`](https://youtrack.jetbrains.com/issue/KT-76527) False positive UNSUPPORTED\_CONTEXTUAL\_DECLARATION\_CALL with -Xcontext-receivers and implicit invoke - [`KT-63246`](https://youtrack.jetbrains.com/issue/KT-63246) K2: False positive NOTHING\_TO\_OVERRIDE in generic property with context receiver in non generic class extending generic class - [`KT-58534`](https://youtrack.jetbrains.com/issue/KT-58534) K2: "Argument type mismatch" with typealias to context receiver functional type - [`KT-71792`](https://youtrack.jetbrains.com/issue/KT-71792) Switch latest stable version in Kotlin project to 2.2 - [`KT-74827`](https://youtrack.jetbrains.com/issue/KT-74827) CompilationErrorException : Could not load module in an attempt to find deserializer when trying to evaluate an expression - [`KT-70352`](https://youtrack.jetbrains.com/issue/KT-70352) K2: False-negative CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-71481`](https://youtrack.jetbrains.com/issue/KT-71481) K2: drop pre-1.6 language features from compiler code - [`KT-74454`](https://youtrack.jetbrains.com/issue/KT-74454) Support trailing comma in context parameters - [`KT-74069`](https://youtrack.jetbrains.com/issue/KT-74069) False positive UNUSED\_EXPRESSION due to Long/Int conversion - [`KT-74337`](https://youtrack.jetbrains.com/issue/KT-74337) Local Delegated properties don't preserve their annotations and don't show up in reflection - [`KT-55187`](https://youtrack.jetbrains.com/issue/KT-55187) Context receivers in function types can have labels - [`KT-58498`](https://youtrack.jetbrains.com/issue/KT-58498) Context receivers: ClassCastException with object and extension function in interface - [`KT-58165`](https://youtrack.jetbrains.com/issue/KT-58165) K2: "IllegalArgumentException: No argument for parameter VALUE\_PARAMETER" on overridden contextual property - [`KT-75234`](https://youtrack.jetbrains.com/issue/KT-75234) Add error for callsInPlace contracts on context parameters - [`KT-73805`](https://youtrack.jetbrains.com/issue/KT-73805) K2: Investigate missing diagnostic in implicit invoke call on context function type with receiver from module with disabled context parameters - [`KT-41934`](https://youtrack.jetbrains.com/issue/KT-41934) NI: a type variable for lambda parameter has been inferred to nullable type instead of not null one - [`KT-75983`](https://youtrack.jetbrains.com/issue/KT-75983) Backend Internal error: Exception during IR lowering 'IllegalStateException: Internal error: cannot convert Any to Int' - [`KT-75535`](https://youtrack.jetbrains.com/issue/KT-75535) Compilation of typealias does not check for clashes - [`KT-72313`](https://youtrack.jetbrains.com/issue/KT-72313) K2 IDE / KMP Debugger: Evaluation of inline functions declared in a common source set causes a crash - [`KT-76290`](https://youtrack.jetbrains.com/issue/KT-76290) False positive UNUSED\_EXPRESSION while returning Unit in the when branches - [`KT-32358`](https://youtrack.jetbrains.com/issue/KT-32358) NI: Smart cast doesn't work with inline function after elvis operator - [`KT-76316`](https://youtrack.jetbrains.com/issue/KT-76316) K2: Missing NON\_PUBLIC\_CALL\_FROM\_PUBLIC\_INLINE on object extending private class in public inline function - [`KT-76324`](https://youtrack.jetbrains.com/issue/KT-76324) Frontend diagnostic says "... this will be an error in Kotlin N.M" but N.M is already released - [`KT-76058`](https://youtrack.jetbrains.com/issue/KT-76058) PCLA: compile-time failure on calling a higher-order function from another module inside a lambda assigned to a variable of a type with a postponed type variable - [`KT-75571`](https://youtrack.jetbrains.com/issue/KT-75571) K2: type mismatch error provides unsubstituted types - [`KT-31391`](https://youtrack.jetbrains.com/issue/KT-31391) 'Recursive call is not a tail call' with elvis operator in tailrec function - [`KT-73420`](https://youtrack.jetbrains.com/issue/KT-73420) False-positive `NON_TAIL_RECURSIVE_CALL` on tailrec function with elvis in the return statement - [`KT-75815`](https://youtrack.jetbrains.com/issue/KT-75815) Disable warnings about different context parameter names in overrides - [`KT-75169`](https://youtrack.jetbrains.com/issue/KT-75169) Unnecessary EXTENSION\_SHADOWED\_BY\_MEMBER on generic declarations - [`KT-75483`](https://youtrack.jetbrains.com/issue/KT-75483) Native: redundant unboxing generated with smart cast - [`KT-76339`](https://youtrack.jetbrains.com/issue/KT-76339) K2: Dangling modifier list is missed for enum entries in PSI mode - [`KT-75513`](https://youtrack.jetbrains.com/issue/KT-75513) Avoid overrides traversal without preinitialization - [`KT-74587`](https://youtrack.jetbrains.com/issue/KT-74587) Report an error when JvmDefaultWithoutCompatibility is used with -Xjvm-default=all - [`KT-76257`](https://youtrack.jetbrains.com/issue/KT-76257) Annotations with class references are not supported when marking IR declarations as visible to metadata - [`KT-71793`](https://youtrack.jetbrains.com/issue/KT-71793) Drop language versions 1.6 and 1.7 - [`KT-59272`](https://youtrack.jetbrains.com/issue/KT-59272) Incorrect bytecode generated: wrong line number table after condition - [`KT-69248`](https://youtrack.jetbrains.com/issue/KT-69248) K2: IAE “class KtDotQualifiedExpression is not a subtype of class KtCallExpression for factory ENUM\_CLASS\_CONSTRUCTOR\_CALL” with qualified enum constructor call - [`KT-73778`](https://youtrack.jetbrains.com/issue/KT-73778) Kotlin Debugger: NSFE on accessing private property from dependencies during evaluation - [`KT-74131`](https://youtrack.jetbrains.com/issue/KT-74131) Incorrect line numbers for static initializer with delegated local variable - [`KT-76320`](https://youtrack.jetbrains.com/issue/KT-76320) K2: PsiRawFirBuilder: import alias triggers ast loading - [`KT-63851`](https://youtrack.jetbrains.com/issue/KT-63851) K2: No `setterValueParameter` in metadata for property setter with an annotated parameter - [`KT-55083`](https://youtrack.jetbrains.com/issue/KT-55083) JVM: AbstractMethodError caused by lambda with sealed base interface and fun sub interface and overridden method - [`KT-16727`](https://youtrack.jetbrains.com/issue/KT-16727) Names for anonymous classes in interfaces are malformed on JDK 8 - [`KT-12466`](https://youtrack.jetbrains.com/issue/KT-12466) NoClassDefFoundError: B$DefaultImpls on super interface call through K-J-K inheritance - [`KT-71002`](https://youtrack.jetbrains.com/issue/KT-71002) Possible inheritance from nullable type through typealias - [`KT-75293`](https://youtrack.jetbrains.com/issue/KT-75293) K2: Missing \[HAS\_NEXT\_FUNCTION\_TYPE\_MISMATCH] diagnostics - [`KT-75498`](https://youtrack.jetbrains.com/issue/KT-75498) Forbid .declarations access from checkers - [`KT-72335`](https://youtrack.jetbrains.com/issue/KT-72335) KotlinIllegalArgumentExceptionWithAttachments when using illegal selector - [`KT-68375`](https://youtrack.jetbrains.com/issue/KT-68375) K2: FirPrimaryConstructorSuperTypeChecker fails on generated superclasses - [`KT-71718`](https://youtrack.jetbrains.com/issue/KT-71718) K2: drop TypePreservingVisibilityWrtHack - [`KT-75112`](https://youtrack.jetbrains.com/issue/KT-75112) FE resolves wrong receivers order for property passed to delegate - [`KT-75924`](https://youtrack.jetbrains.com/issue/KT-75924) K2. Incorrect generic type Inference "R? & Any" appears for "Add explicit type arguments" - [`KT-75969`](https://youtrack.jetbrains.com/issue/KT-75969) java.lang.IllegalArgumentException: source must not be null on red code - [`KT-75322`](https://youtrack.jetbrains.com/issue/KT-75322) ConeDiagnosticToFirDiagnosticKt: source must not be null - [`KT-73800`](https://youtrack.jetbrains.com/issue/KT-73800) Wrong method executed on super call in -Xjvm-default=all/all-compatibility with an extraneous super-interface - [`KT-38029`](https://youtrack.jetbrains.com/issue/KT-38029) Wrong method executed on super call in diamond hierarchy with covariant override - [`KT-75242`](https://youtrack.jetbrains.com/issue/KT-75242) Any use-site target can be applied to a lambda and an expression - [`KT-73051`](https://youtrack.jetbrains.com/issue/KT-73051) incorrect direction of subtyping violation in type mismatch error's message for A\<X<C>> \</: A\<Y<Tv>> given a Tv <: Rv == C constraint from a lambda return position - [`KT-75090`](https://youtrack.jetbrains.com/issue/KT-75090) Argument type mismatch: actual type is 'SuspendFunction0<Unit>', but 'SuspendFunction0<Unit>' was expected when anonymous function is passed to function expecting suspend function type - [`KT-74956`](https://youtrack.jetbrains.com/issue/KT-74956) K2: No USAGE\_IS\_NOT\_INLINABLE with compiling an inlined function call - [`KT-76049`](https://youtrack.jetbrains.com/issue/KT-76049) K2: drop explicitTypeArgumentIfMadeFlexibleSynthetically creation when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-76055`](https://youtrack.jetbrains.com/issue/KT-76055) K2: drop prepareCustomReturnTypeSubstitutorForFunctionCall logic when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-76057`](https://youtrack.jetbrains.com/issue/KT-76057) K2: don't do reverse Java overridability checks when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-75197`](https://youtrack.jetbrains.com/issue/KT-75197) K2: Missing \[COMPARE\_TO\_TYPE\_MISMATCH] diagnostics - [`KT-75639`](https://youtrack.jetbrains.com/issue/KT-75639) Inline `context` function leads to `ClassCastException` - [`KT-75677`](https://youtrack.jetbrains.com/issue/KT-75677) K2: change runtime behavior of KT-75649 case in 2.2 - [`KT-75961`](https://youtrack.jetbrains.com/issue/KT-75961) K2: `PsiRawFirBuilder.Visitor#visitSimpleNameExpression`forces AST loading via `getReferencedNameElement().node.text` - [`KT-67869`](https://youtrack.jetbrains.com/issue/KT-67869) Make inference for lambda working consistently inside and outside of the call - [`KT-74885`](https://youtrack.jetbrains.com/issue/KT-74885) K2: IAE "source must not be null" in FirCyclicTypeBoundsChecker - [`KT-75578`](https://youtrack.jetbrains.com/issue/KT-75578) K2: False negative \[SUPER\_CALL\_WITH\_DEFAULT\_PARAMETERS] when calling the upper-class implementation of a method with the default value argument - [`KT-73954`](https://youtrack.jetbrains.com/issue/KT-73954) Generate implementations in classes for inherited non-abstract methods in -Xjvm-default=all-compatibility - [`KT-75173`](https://youtrack.jetbrains.com/issue/KT-75173) Context parameters: KotlinIllegalArgumentExceptionWithAttachments if you override function with value/extension parameter by fun with context - [`KT-75742`](https://youtrack.jetbrains.com/issue/KT-75742) Native: "IllegalArgumentException: unknown pass name '' " when specifying an empty list of LLVM passes - [`KT-74819`](https://youtrack.jetbrains.com/issue/KT-74819) K2: False-positive overload resolution ambiguity for flatMap inside PCLA - [`KT-75093`](https://youtrack.jetbrains.com/issue/KT-75093) K2 IDE: "Unreachable code" highlighting range is confusing - [`KT-74572`](https://youtrack.jetbrains.com/issue/KT-74572) Context parameters: contracts don't work with context parameters - [`KT-74765`](https://youtrack.jetbrains.com/issue/KT-74765) Move K1 lazy IR implementation from 'ir.tree' to 'psi2ir' - [`KT-71425`](https://youtrack.jetbrains.com/issue/KT-71425) IR Inliner: investigate return type of an inlined block - [`KT-74764`](https://youtrack.jetbrains.com/issue/KT-74764) Native: merge init nodes generated within the same LLVM module for the same klib - [`KT-75561`](https://youtrack.jetbrains.com/issue/KT-75561) K/N: place InteropLowering after UpgradeCallableReferences phase - [`KT-73369`](https://youtrack.jetbrains.com/issue/KT-73369) K/N: move interop lowering up the pipeline - [`KT-75517`](https://youtrack.jetbrains.com/issue/KT-75517) K2: Refactor FirCallableSymbol.resolvedContextParameters to return symbols - [`KT-75821`](https://youtrack.jetbrains.com/issue/KT-75821) K2: REPL resolution doesn't take into account the property type when processing its initializer - [`KT-75705`](https://youtrack.jetbrains.com/issue/KT-75705) IllegalArgumentException when isInitialized is used with java field - [`KT-75334`](https://youtrack.jetbrains.com/issue/KT-75334) Java target shouldn't be specified if Kotlin target isn't specified - [`KT-75157`](https://youtrack.jetbrains.com/issue/KT-75157) Missing PARAMETER\_NAME\_CHANGED\_ON\_OVERRIDE and DIFFERENT\_NAMES\_FOR\_THE\_SAME\_PARAMETER\_IN\_SUPERTYPES for context parameters - [`KT-75160`](https://youtrack.jetbrains.com/issue/KT-75160) Check usages of value parameters in checkers and adapt to context parameters - [`KT-75729`](https://youtrack.jetbrains.com/issue/KT-75729) KtPsiFactory: no type-safe way to create triple-quoted KtStringTemplateExpression - [`KT-75040`](https://youtrack.jetbrains.com/issue/KT-75040) Unify `subject` and `subjectVariable` in `FirWhenExpression` - [`KT-75323`](https://youtrack.jetbrains.com/issue/KT-75323) FirSyntheticProperty: Unexpected status. Expected is FirResolvedDeclarationStatus, but was FirDeclarationStatusImpl - [`KT-75602`](https://youtrack.jetbrains.com/issue/KT-75602) Introduce concept of shared library session in Fir sessions - [`KT-75509`](https://youtrack.jetbrains.com/issue/KT-75509) PARAMETER\_NAME\_CHANGED\_ON\_OVERRIDE is reported randomly - [`KT-75124`](https://youtrack.jetbrains.com/issue/KT-75124) IAE “class org.jetbrains.kotlin.psi.KtContextReceiver is not a subtype of class org.jetbrains.kotlin.psi.KtParameter for factory EXPOSED\_PARAMETER\_TYPE” on private context receiver - [`KT-73585`](https://youtrack.jetbrains.com/issue/KT-73585) K2: ABSTRACT\_SUPER\_CALL is not reported - [`KT-75531`](https://youtrack.jetbrains.com/issue/KT-75531) K2 REPL: local name doesn't shadow one from implicit receiver - [`KT-73359`](https://youtrack.jetbrains.com/issue/KT-73359) Migrate frontend sources to new IR parameter API - [`KT-75380`](https://youtrack.jetbrains.com/issue/KT-75380) K2: Modality is configured incorrectly for some FirDefaultPropertyAccessor - [`KT-75526`](https://youtrack.jetbrains.com/issue/KT-75526) Regression in K2 scripting: local name doesn't shadow one from the implicit receiver - [`KT-59379`](https://youtrack.jetbrains.com/issue/KT-59379) K2: Missing MIXING\_NAMED\_AND\_POSITIONED\_ARGUMENTS - [`KT-75106`](https://youtrack.jetbrains.com/issue/KT-75106) K2: type parameters of anonymous functions are unresolved - [`KT-73387`](https://youtrack.jetbrains.com/issue/KT-73387) Unexpected implicit type during enhancement - [`KT-72618`](https://youtrack.jetbrains.com/issue/KT-72618) Cannot define operator inc/dec in class context - [`KT-74546`](https://youtrack.jetbrains.com/issue/KT-74546) Serialize context parameters to metadata - [`KT-68768`](https://youtrack.jetbrains.com/issue/KT-68768) K2: unsuccessful inference fork with jspecify annotations - [`KT-75345`](https://youtrack.jetbrains.com/issue/KT-75345) Add a test for KT-42271 - [`KT-75012`](https://youtrack.jetbrains.com/issue/KT-75012) K2: Compiler crash on `dynamic == null` - [`KT-75195`](https://youtrack.jetbrains.com/issue/KT-75195) IllegalStateException: No value for annotation parameter when `@all` meta-target is used with annotation with constructor - [`KT-75163`](https://youtrack.jetbrains.com/issue/KT-75163) WRONG\_ANNOTATION\_TARGET\_WITH\_USE\_SITE\_TARGET for `@all` meta-target although there are applicable targets - [`KT-75198`](https://youtrack.jetbrains.com/issue/KT-75198) `@all` meta-target should be forbidden for delegated properties - [`KT-74958`](https://youtrack.jetbrains.com/issue/KT-74958) K2: UNEXPECTED\_TRAILING\_LAMBDA\_ON\_A\_NEW\_LINE isn't reported on accidental trailing closure - [`KT-74982`](https://youtrack.jetbrains.com/issue/KT-74982) Improve UNSUPPORTED message handling - [`KT-75111`](https://youtrack.jetbrains.com/issue/KT-75111) False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another module - [`KT-74924`](https://youtrack.jetbrains.com/issue/KT-74924) Infinite recursion in substitution of captured type with recursive supertype - [`KT-75289`](https://youtrack.jetbrains.com/issue/KT-75289) NPE: getParent(...) must not be null - [`KT-75275`](https://youtrack.jetbrains.com/issue/KT-75275) Inline class member inherited from interface is not mangled in '-Xjvm-default=all-compatibility' - [`KT-74340`](https://youtrack.jetbrains.com/issue/KT-74340) FIR: folding binary expression chains for psi parser - [`KT-73831`](https://youtrack.jetbrains.com/issue/KT-73831) Do not choose `field` target in annotation classes - [`KT-73494`](https://youtrack.jetbrains.com/issue/KT-73494) Enable first-only-warn annotation defaulting mode - [`KT-75174`](https://youtrack.jetbrains.com/issue/KT-75174) K2: incorrect influence of return type nullability on required receiver type in KJK hierarchy with property - [`KT-74920`](https://youtrack.jetbrains.com/issue/KT-74920) Overriding T! with T & Any is not allowed to the extension property receiver type - [`KT-75150`](https://youtrack.jetbrains.com/issue/KT-75150) False ambiguous context parameter reported because context is not chosen via generic parameter - [`KT-74965`](https://youtrack.jetbrains.com/issue/KT-74965) CLI compiler doesn't report syntax errors for JS, Metadata backends if light-tree mode is disabled - [`KT-74303`](https://youtrack.jetbrains.com/issue/KT-74303) K2 IDE / Kotlin Debugger: AE “Trying to inline an anonymous object which is not part of the public ABI” on evaluating private inline function with object inside - [`KT-75177`](https://youtrack.jetbrains.com/issue/KT-75177) NoSuchMethodError on suspend default interface method fake override returning inline class in -Xjvm-default=all-compatibility - [`KT-74718`](https://youtrack.jetbrains.com/issue/KT-74718) K/N: Move TestProcessor phase to the top of the pipeline - [`KT-75015`](https://youtrack.jetbrains.com/issue/KT-75015) Context parameters: it is possible to declare anonymous function with modifiers but they don't have any effect - [`KT-75092`](https://youtrack.jetbrains.com/issue/KT-75092) K2: Missing errors for modifiers on anonymous function in statement position - [`KT-75009`](https://youtrack.jetbrains.com/issue/KT-75009) Context parameters: context is unresolved inside anonymous function if passed as an argument - [`KT-75017`](https://youtrack.jetbrains.com/issue/KT-75017) Context parameters: "IllegalStateException: Cannot find variable a: R|kotlin/String| in local storage " when context from another local function is called - [`KT-75154`](https://youtrack.jetbrains.com/issue/KT-75154) Context receiver deprecation warning should depend on langauge version, not on LATEST\_STABLE - [`KT-74979`](https://youtrack.jetbrains.com/issue/KT-74979) Context parameters: anonymous functions with a context aren't parsed in complex cases - [`KT-74673`](https://youtrack.jetbrains.com/issue/KT-74673) K2: ClassCastException when passing suspending functional interface with generic - [`KT-74469`](https://youtrack.jetbrains.com/issue/KT-74469) K2: False positive: "Argument type mismatch" during Java interop - [`KT-75105`](https://youtrack.jetbrains.com/issue/KT-75105) K2: False negative NAME\_IN\_CONSTRAINT\_IS\_NOT\_A\_TYPE\_PARAMETER for type constraint of anonymous function - [`KT-74929`](https://youtrack.jetbrains.com/issue/KT-74929) False positive TYPE\_PARAMETER\_OF\_PROPERTY\_NOT\_USED\_IN\_RECEIVER if it is used with T\&Any - [`KT-74227`](https://youtrack.jetbrains.com/issue/KT-74227) K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function type - [`KT-64558`](https://youtrack.jetbrains.com/issue/KT-64558) K2 compiler does not report UNNECESSARY\_SAFE\_CALL, UNNECESSARY\_NOT\_NULL\_ASSERTION, USELESS\_ELVIS, while K2 IDEA does - [`KT-74728`](https://youtrack.jetbrains.com/issue/KT-74728) K2: Java method overriding Kotlin method with receiver loses vararg modifier - [`KT-70789`](https://youtrack.jetbrains.com/issue/KT-70789) CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabled - [`KT-72829`](https://youtrack.jetbrains.com/issue/KT-72829) Forbid 'entries' name of enum entry, and deprioritize it in resolve - [`KT-75037`](https://youtrack.jetbrains.com/issue/KT-75037) K2: IrGeneratedDeclarationsRegistrar.registerFunctionAsMetadataVisible doesn't handle extension receivers and context parameters - [`KT-73149`](https://youtrack.jetbrains.com/issue/KT-73149) Annotations support for context parameters - [`KT-74798`](https://youtrack.jetbrains.com/issue/KT-74798) Report error on local contextual properties - [`KT-74092`](https://youtrack.jetbrains.com/issue/KT-74092) Context parameters: it is not possible to declare an anonymous function with a context - [`KT-52152`](https://youtrack.jetbrains.com/issue/KT-52152) K2: Investigate suspicious code at SAM conversions - [`KT-75016`](https://youtrack.jetbrains.com/issue/KT-75016) K2: BackendException when context var property is declared in interface - [`KT-74474`](https://youtrack.jetbrains.com/issue/KT-74474) K2: Report more precise diagnostic when last expression of non-unit lambda is a statement - [`KT-74478`](https://youtrack.jetbrains.com/issue/KT-74478) K2: False negative RETURN TYPE\_MISMATCH if the last statement of a lambda is indexed assignment - [`KT-73685`](https://youtrack.jetbrains.com/issue/KT-73685) K2 IDE / Kotlin Debugger: NSME “Method not found” on evaluating function with constant value in `@JvmName` - [`KT-74449`](https://youtrack.jetbrains.com/issue/KT-74449) Report RETURN\_TYPE\_MISMATCH instead of ARGUMENT\_TYPE\_MISMATCH for return expressions in lambdas - [`KT-74918`](https://youtrack.jetbrains.com/issue/KT-74918) FIR: account for K/Wasm diagnostics in generateNonSuppressibleErrorNamesFile - [`KT-74897`](https://youtrack.jetbrains.com/issue/KT-74897) K2: Report UNSUPPORTED\_FEATURE instead of TOPLEVEL\_TYPEALIASES\_ONLY for nested type aliases - [`KT-74963`](https://youtrack.jetbrains.com/issue/KT-74963) K2: Fir2Ir: Avoid a situation when startOffset > endOffset in generated IrBranch - [`KT-74697`](https://youtrack.jetbrains.com/issue/KT-74697) Overriding a method that's both deprecated and non-deprecated should not cause warnings - [`KT-74928`](https://youtrack.jetbrains.com/issue/KT-74928) K2: "IllegalStateException: Cannot find cached type parameter by FIR symbol" in KJK hierarchy with extension property - [`KT-74630`](https://youtrack.jetbrains.com/issue/KT-74630) K2: local class arguments in annotations on types and type parameters are not serialized - [`KT-74445`](https://youtrack.jetbrains.com/issue/KT-74445) Commonize Native Function/Property reference lowerings - [`KT-74670`](https://youtrack.jetbrains.com/issue/KT-74670) Warning message CONTEXT\_CLASS\_OR\_CONSTRUCTOR isn't reported for context receiver on the constructor - [`KT-74617`](https://youtrack.jetbrains.com/issue/KT-74617) Trivial SMAP optimization leads to missing debug info after inline - [`KT-74812`](https://youtrack.jetbrains.com/issue/KT-74812) compile-time failure on a callable reference with an input type inferred to an inaccessible generic type - [`KT-66195`](https://youtrack.jetbrains.com/issue/KT-66195) K2: Java method is not enhanced from overridden's context receivers - [`KT-74501`](https://youtrack.jetbrains.com/issue/KT-74501) Context parameters: ABSTRACT\_MEMBER\_NOT\_IMPLEMENTED if fun with context is implemented in Java in KJK hierarchy - [`KT-74385`](https://youtrack.jetbrains.com/issue/KT-74385) Missing diagnostic on repeated suspend modifier in function type - [`KT-74749`](https://youtrack.jetbrains.com/issue/KT-74749) Provide explanation IR before script compilation - [`KT-74751`](https://youtrack.jetbrains.com/issue/KT-74751) K2: IllegalStateException: Can't apply receivers of FirPropertyAccessExpressionImpl to IrTypeOperatorCallImpl - [`KT-74729`](https://youtrack.jetbrains.com/issue/KT-74729) NPE when suspend lambda has inline class parameter - [`KT-74336`](https://youtrack.jetbrains.com/issue/KT-74336) Not supported: class org.jetbrains.kotlin.fir.types.ConeIntersectionType - [`KT-74203`](https://youtrack.jetbrains.com/issue/KT-74203) K2: False negative NO\_ELSE\_IN\_WHEN of a generic type with star projection <\*> bounded by a sealed hierarchy - [`KT-48085`](https://youtrack.jetbrains.com/issue/KT-48085) Kotlin/Native: LLD removes live code with `--gc-sections` when producing DLL - [`KT-69164`](https://youtrack.jetbrains.com/issue/KT-69164) Native: use lld from bundled LLVM distribution when compiling on Windows for a MinGW target - [`KT-74081`](https://youtrack.jetbrains.com/issue/KT-74081) Context parameters: implicit call resolves to extension when there is a context - [`KT-74682`](https://youtrack.jetbrains.com/issue/KT-74682) Implement internal type exposure via parameter bounds deprecation postponement - [`KT-74556`](https://youtrack.jetbrains.com/issue/KT-74556) K2: "IAE: class KtDestructuringDeclaration is not a subtype of class KtNamedDeclaration for factory REDECLARATION" with two non-local destructuring declarations - [`KT-73146`](https://youtrack.jetbrains.com/issue/KT-73146) Context parameters CLI & diagnostics - [`KT-72104`](https://youtrack.jetbrains.com/issue/KT-72104) Consider enabling check for unbound symbols in JVM before lowerings - [`KT-74568`](https://youtrack.jetbrains.com/issue/KT-74568) Synthetic nested classes missing JVM attributes - [`KT-73703`](https://youtrack.jetbrains.com/issue/KT-73703) \[Native] Move KonanIrLinker to `serialization.native` module - [`KT-61175`](https://youtrack.jetbrains.com/issue/KT-61175) K2: FirReceiverParameter does not extend FirDeclaration - [`KT-73961`](https://youtrack.jetbrains.com/issue/KT-73961) 'lateinit is unnecessary' on transient properties should not be reported for serializable classes - [`KT-73858`](https://youtrack.jetbrains.com/issue/KT-73858) Compose / iOS: NullPointerException on building - [`KT-62953`](https://youtrack.jetbrains.com/issue/KT-62953) JVM IR: Use `SimpleNamedCompilerPhase` instead of `NamedCompilerPhase` - [`KT-72929`](https://youtrack.jetbrains.com/issue/KT-72929) Consider caching typealiased constructor symbols created by TypeAliasConstructorsSubstitutingScope - [`KT-74459`](https://youtrack.jetbrains.com/issue/KT-74459) K2: false positive MISSING\_DEPENDENCY\_CLASS for types inside default argument - [`KT-73705`](https://youtrack.jetbrains.com/issue/KT-73705) \[Native] Decouple native caches support from KonanIrLinker and KonanPartialModuleDeserializer - [`KT-74091`](https://youtrack.jetbrains.com/issue/KT-74091) K2: `@JvmOverloads`-produced overloads have generated line number table - [`KT-69754`](https://youtrack.jetbrains.com/issue/KT-69754) Drop -Xuse-k2 compiler flag - [`KT-73352`](https://youtrack.jetbrains.com/issue/KT-73352) K2: false negative ARRAY\_EQUALITY\_OPERATOR\_CAN\_BE\_REPLACED\_WITH\_EQUALS - [`KT-72962`](https://youtrack.jetbrains.com/issue/KT-72962) Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlier - [`KT-73027`](https://youtrack.jetbrains.com/issue/KT-73027) IllegalStateException: Annotation argument value cannot be null: since - [`KT-74242`](https://youtrack.jetbrains.com/issue/KT-74242) Freeze on `runCatching` call in `finally` block inside SAM conversion - [`KT-29222`](https://youtrack.jetbrains.com/issue/KT-29222) FIR: consider folding binary expression chains - [`KT-73760`](https://youtrack.jetbrains.com/issue/KT-73760) Cannot implement two Java interfaces with `@NotNull`-annotated type argument and Kotlin's plain (nullable) type parameter - [`KT-58933`](https://youtrack.jetbrains.com/issue/KT-58933) Applying suggested signature from WRONG\_NULLABILITY\_FOR\_JAVA\_OVERRIDE leads to red code - [`KT-70507`](https://youtrack.jetbrains.com/issue/KT-70507) Should parentheses prevent from plus/set operator desugaring? - [`KT-67520`](https://youtrack.jetbrains.com/issue/KT-67520) Change of behaviour of inline function with safe cast on value type - [`KT-67518`](https://youtrack.jetbrains.com/issue/KT-67518) Value classes leak their carrier type implementation details via inlining - [`KT-72305`](https://youtrack.jetbrains.com/issue/KT-72305) K2: Report error when using synthetic properties in case of mapped collections - [`KT-71226`](https://youtrack.jetbrains.com/issue/KT-71226) K2 Evaluator: Code fragment compilation with unresolved classes does not fail with exception - [`KT-70233`](https://youtrack.jetbrains.com/issue/KT-70233) Implement a deprecation error for FIELD-targeted annotations on annotation properties - [`KT-67517`](https://youtrack.jetbrains.com/issue/KT-67517) Value class upcast to Any leaks carrier type interfaces - [`KT-72814`](https://youtrack.jetbrains.com/issue/KT-72814) FIR: don't use function references in FirThisReference - [`KT-73153`](https://youtrack.jetbrains.com/issue/KT-73153) K2: Standalone diagnostics on type arguments are not reported - [`KT-73011`](https://youtrack.jetbrains.com/issue/KT-73011) K2: Allow overloads resolution for callable references based on expected type variable with constraints - [`KT-70139`](https://youtrack.jetbrains.com/issue/KT-70139) Remove dependencies of debugger on K1 and old JVM backend - [`KT-69223`](https://youtrack.jetbrains.com/issue/KT-69223) Drop parallel lowering mode in JVM backend - [`KT-7461`](https://youtrack.jetbrains.com/issue/KT-7461) Forbid using projection modifiers inside top-level Array in annotation's value parameter - [`KT-53804`](https://youtrack.jetbrains.com/issue/KT-53804) Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlib - [`KT-52774`](https://youtrack.jetbrains.com/issue/KT-52774) Resolve unqualified enum constants based on expected type ##### Compose compiler ##### New features </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4yLjAiLCJ1cGRhdGVkSW5WZXIiOiI0MS43LjAiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOltdfQ==-->
renovate added 1 commit 2025-06-23 12:14:28 +00:00
chore(deps): update kotlin to v2.2.0
Some checks failed
Build / build (pull_request) Failing after 2m27s
d30e79d23e
Some checks failed
Build / build (pull_request) Failing after 2m27s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/kotlin:renovate/kotlin
git checkout renovate/kotlin

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git checkout master
git merge --no-ff renovate/kotlin
git checkout renovate/kotlin
git rebase master
git checkout master
git merge --ff-only renovate/kotlin
git checkout renovate/kotlin
git rebase master
git checkout master
git merge --no-ff renovate/kotlin
git checkout master
git merge --squash renovate/kotlin
git checkout master
git merge --ff-only renovate/kotlin
git checkout master
git merge renovate/kotlin
git push origin master
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: bob/mobile-application#40
No description provided.