diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt index 45979742ca1..a66625e5d3f 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.kt @@ -77,7 +77,7 @@ public object ModifierCheckerCore { COMPANION_KEYWORD to EnumSet.of(OBJECT), LATEINIT_KEYWORD to EnumSet.of(MEMBER_PROPERTY), DATA_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS, LOCAL_CLASS), - INLINE_KEYWORD to EnumSet.of(FUNCTION, PROPERTY_GETTER, PROPERTY_SETTER, PROPERTY), + INLINE_KEYWORD to EnumSet.of(FUNCTION), NOINLINE_KEYWORD to EnumSet.of(VALUE_PARAMETER), TAILREC_KEYWORD to EnumSet.of(FUNCTION), EXTERNAL_KEYWORD to EnumSet.of(FUNCTION, PROPERTY_GETTER, PROPERTY_SETTER), diff --git a/compiler/testData/diagnostics/tests/extensions/kt819ExtensionProperties.kt b/compiler/testData/diagnostics/tests/extensions/kt819ExtensionProperties.kt index 1a63b490b0d..83a43ec2657 100644 --- a/compiler/testData/diagnostics/tests/extensions/kt819ExtensionProperties.kt +++ b/compiler/testData/diagnostics/tests/extensions/kt819ExtensionProperties.kt @@ -2,10 +2,10 @@ import java.io.* -inline val InputStream.buffered : BufferedInputStream +inline val InputStream.buffered : BufferedInputStream get() = if(this is BufferedInputStream) this else BufferedInputStream(this) -inline val Reader.buffered : BufferedReader +inline val Reader.buffered : BufferedReader get() = if(this is BufferedReader) this else BufferedReader(this) diff --git a/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.kt b/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.kt index 2b76219b0e1..19425d8c030 100644 --- a/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.kt +++ b/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.kt @@ -15,9 +15,12 @@ abstract class A() { class FinalClass() { open fun foo() {} val i: Int = 1 - open get(): Int = field + open inline get(): Int = field var j: Int = 1 - open set(v: Int) {} + open inline set(v: Int) {} + + inline val f: ()->Unit + get() = {} } private public class C diff --git a/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.txt b/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.txt index 103c0a4fbd8..5ca81f2ca69 100644 --- a/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.txt +++ b/compiler/testData/diagnostics/tests/modifiers/IllegalModifiers.txt @@ -29,6 +29,7 @@ package illegal_modifiers { public final class FinalClass { public constructor FinalClass() + public final val f: () -> kotlin.Unit public final val i: kotlin.Int = 1 public final var j: kotlin.Int public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean diff --git a/js/js.translator/testData/expression/misc/cases/KT-2314.kt b/js/js.translator/testData/expression/misc/cases/KT-2314.kt index dd5277482bc..365dbee22e5 100644 --- a/js/js.translator/testData/expression/misc/cases/KT-2314.kt +++ b/js/js.translator/testData/expression/misc/cases/KT-2314.kt @@ -19,7 +19,7 @@ inline public fun myArrayList(vararg values: T): ArrayList { return c } -inline public val ArrayList.myHead: T +public val ArrayList.myHead: T get() { return get(0) }