Inspectopedia Help

Extension property conflicting with synthetic one

Reports extension properties that conflict with synthetic ones that have been automatically produced from Java get or set methods.

Such properties should be either removed or renamed to avoid breaking code by future changes in the compiler.

The quick-fix deletes an extention property.

Example:

val File.name: String get() = getName()

The quick-fix adds the @Deprecated annotation:

@Deprecated("Is replaced with automatic synthetic extension", ReplaceWith("name"), level = DeprecationLevel.HIDDEN) val File.name: String get() = getName()

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Kotlin, 241.16690-IJ

Last modified: 29 April 2024