Local interfaces are forbidden now

This commit is contained in:
Mikhail Glukhikh
2015-10-08 20:06:26 +03:00
parent d1ab5168ec
commit 2fee9d362c
24 changed files with 38 additions and 226 deletions
+14
View File
@@ -0,0 +1,14 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
fun foo() {
<!LOCAL_INTERFACE_NOT_ALLOWED!>interface a<!> {}
val b = object {
<!NESTED_CLASS_NOT_ALLOWED!>interface c<!> {}
}
class A {
<!NESTED_CLASS_NOT_ALLOWED!>interface d<!> {}
}
val f = {
<!LOCAL_INTERFACE_NOT_ALLOWED!>interface e<!> {}
}
}
@@ -0,0 +1,3 @@
package
public fun foo(): kotlin.Unit
@@ -8,7 +8,7 @@ fun withLocalClasses(param: Int): Interface {
get() = 100
}
interface LocalInterface : Interface {
<!LOCAL_INTERFACE_NOT_ALLOWED!>interface LocalInterface<!> : Interface {
override fun foo(x: Int): Int =
x + param
}
@@ -7,6 +7,6 @@ fun foo() {
}
}
<!NON_TOPLEVEL_CLASS_DECLARATION!>interface T<!> {
<!LOCAL_INTERFACE_NOT_ALLOWED, NON_TOPLEVEL_CLASS_DECLARATION!>interface T<!> {
}
}