Report default object specific diagnostics on 'default' modifier

This commit is contained in:
Pavel V. Talanov
2015-03-06 16:21:58 +03:00
parent 012d25dbca
commit 5540f09751
10 changed files with 31 additions and 22 deletions
@@ -4,7 +4,7 @@ class A {
default <!REDECLARATION!>object<!> {
val x = 1
}
default <!MANY_DEFAULT_OBJECTS, REDECLARATION!>object<!> {
<!MANY_DEFAULT_OBJECTS!>default<!> <!REDECLARATION!>object<!> {
val x = 1
}
}
@@ -13,10 +13,10 @@ class AA {
default object {
val x = 1
}
default <!MANY_DEFAULT_OBJECTS!>object A<!> {
<!MANY_DEFAULT_OBJECTS!>default<!> object A {
val x = 1
}
default <!MANY_DEFAULT_OBJECTS!>object AA<!> {
<!MANY_DEFAULT_OBJECTS!>default<!> object AA {
val x = 1
}
}
@@ -26,7 +26,7 @@ class B() {
}
object b {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object<!> {
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object {
val x = 1
} // error
}
@@ -2,7 +2,7 @@
class A {
inner class B {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object<!> { }
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object { }
}
}
@@ -1,9 +1,9 @@
fun test() {
class A {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object<!> {}
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object {}
}
object {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object<!> {}
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object {}
}
}
@@ -1,17 +1,17 @@
class A {
inner class I {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object A<!>
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object A
default <!MANY_DEFAULT_OBJECTS, MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>object B<!>
<!MANY_DEFAULT_OBJECTS, MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object B
default <!MANY_DEFAULT_OBJECTS, MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>object C<!>
<!MANY_DEFAULT_OBJECTS, MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object C
}
}
object O {
default <!DEFAULT_OBJECT_NOT_ALLOWED!>object A<!>
<!DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object A
default <!MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>object B<!>
<!MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object B
default <!MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>object C<!>
<!MANY_DEFAULT_OBJECTS, DEFAULT_OBJECT_NOT_ALLOWED!>default<!> object C
}