Reverting pull request 240

This commit is contained in:
Andrey Breslav
2013-04-12 15:25:52 +04:00
parent d875bf80cb
commit c422e4194d
73 changed files with 208 additions and 1160 deletions
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
<caret>override fun f(a: Int) {}
}
@@ -1,10 +0,0 @@
// "Change function signature..." "true"
// ERROR: <html>Class 'B' must be declared abstract or implement abstract member<br/><b>internal</b> <b>abstract</b> <b>fun</b> f(a: jet.String): jet.Unit <i>defined in</i> A</html>
trait A {
fun f(a: Int)
fun f(a: String)
}
class B : A {
<caret>override fun f(a: Int) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'public override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
public <caret>override fun f(a: Int) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
open class A {
open fun f(a: Int) {}
}
class B : A(){
<caret>override fun f(a: Int) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
abstract class A {
abstract fun f(a: Int)
}
class B : A(){
<caret>override fun f(a: Int) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
trait B : A {
<caret>override fun f(a: Int)
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(x: Int, t: String, z: Double)'" "true"
open class A {
open fun f(x: Int, y: String, z: Double) {}
}
class B : A(){
<caret>override fun f(x: Int, t: String, z: Double) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(y: Int, x: String)'" "true"
open class A {
open fun f(a: Int, b: String) {}
}
class B : A(){
<caret>override fun f(y: Int, x: String) {}
}
@@ -1,12 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
open class A {
open fun f() {}
}
open class B : A() {
open override fun f() {}
}
class C : B() {
<caret>override fun f() {}
}
@@ -1,10 +0,0 @@
// "Change function signature to 'override fun f(a: Int): Int'" "true"
open class A {
open fun f(a: Int): Int {
return 0
}
}
class B : A(){
<caret>override fun f(a: Int): Int = 7
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
<caret>override fun f(a: Int) {}
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f(a: Int): Int'" "true"
// ERROR: <html>Type mismatch.<table><tr><td>Required:</td><td>jet.Int</td></tr><tr><td>Found:</td><td>jet.String</td></tr></table></html>
open class A {
open fun f(a: Int): Int = 0
}
class B : A(){
// Note that when parameter types match, RETURN_TYPE_MISMATCH_ON_OVERRIDE error is reported
// and "Change function signature" quickfix is not present.
<caret>override fun f(a: Int): Int = "FOO"
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "false"
// ERROR: 'f' overrides nothing
// ACTION: Remove 'override' modifier
open class A {
open fun foo() {}
fun f(a: Int) {}
}
class B : A(){
<caret>override fun f(a: String) {}
}
@@ -1,6 +0,0 @@
// "Change function signature to 'protected override fun next(p0: Int): Int'" "true"
import java.util.Random
class MyRandom : Random() {
<caret>protected override fun next(p0: Int): Int = 4
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
trait A {
fun f()
}
class B : A {
<caret>override fun f() {}
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
trait A {
fun f()
}
trait B {
fun f()
}
class C : A, B {
<caret>override fun f() {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
<caret>override fun f() {}
}
@@ -1,10 +0,0 @@
// "Change function signature..." "true"
// ERROR: <html>Class 'B' must be declared abstract or implement abstract member<br/><b>internal</b> <b>abstract</b> <b>fun</b> f(a: jet.String): jet.Unit <i>defined in</i> A</html>
trait A {
fun f(a: Int)
fun f(a: String)
}
class B : A {
<caret>override fun f() {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'public override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
public <caret>override fun f() {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
open class A {
open fun f(a: Int) {}
}
class B : A(){
<caret>override fun f(a: String) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
abstract class A {
abstract fun f(a: Int)
}
class B : A(){
<caret>override fun f(a: String) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
trait B : A {
<caret>override fun f(a: String)
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(x: Int, t: String, z: Double)'" "true"
open class A {
open fun f(x: Int, y: String, z: Double) {}
}
class B : A(){
<caret>override fun f(z: String, x: String, t: String) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(y: Int, x: String)'" "true"
open class A {
open fun f(a: Int, b: String) {}
}
class B : A(){
<caret>override fun f(x: String, y: Int) {}
}
@@ -1,12 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
open class A {
open fun f() {}
}
open class B : A() {
open override fun f() {}
}
class C : B() {
<caret>override fun f(a : Int) {}
}
@@ -1,10 +0,0 @@
// "Change function signature to 'override fun f(a: Int): Int'" "true"
open class A {
open fun f(a: Int): Int {
return 0
}
}
class B : A(){
<caret>override fun f(a: String): Int = 7
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "true"
trait A {
fun f(a: Int)
}
class B : A {
<caret>override fun f(a: String) {}
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f(a: Int): Int'" "true"
// ERROR: <html>Type mismatch.<table><tr><td>Required:</td><td>jet.Int</td></tr><tr><td>Found:</td><td>jet.String</td></tr></table></html>
open class A {
open fun f(a: Int): Int = 0
}
class B : A(){
// Note that when parameter types match, RETURN_TYPE_MISMATCH_ON_OVERRIDE error is reported
// and "Change function signature" quickfix is not present.
<caret>override fun f(a : String): String = "FOO"
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f(a: Int)'" "false"
// ERROR: 'f' overrides nothing
// ACTION: Remove 'override' modifier
open class A {
open fun foo() {}
fun f(a: Int) {}
}
class B : A(){
<caret>override fun f(a: String) {}
}
@@ -1,6 +0,0 @@
// "Change function signature to 'protected override fun next(p0: Int): Int'" "true"
import java.util.Random
class MyRandom : Random() {
<caret>override fun next(): Int = 4
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
trait A {
fun f()
}
class B : A {
<caret>override fun f(a: Int) {}
}
@@ -1,11 +0,0 @@
// "Change function signature to 'override fun f()'" "true"
trait A {
fun f()
}
trait B {
fun f()
}
class C : A, B {
<caret>override fun f(a: String) {}
}
@@ -1,9 +0,0 @@
// "Change function signature to 'override fun f(a: A)'" "true"
// ERROR: 'f' overrides nothing
// ERROR: 'f' overrides nothing
import a.B
import a.A
class BB : B() {
<caret>override fun f(a: A) {}
}
@@ -1,7 +0,0 @@
// "Change function signature to 'override fun f(a: A)'" "true"
// ERROR: 'f' overrides nothing
// ERROR: 'f' overrides nothing
import a.B
class BB : B() {
<caret>override fun f() {}
}
@@ -1,5 +0,0 @@
package a
class A {}
open class B {
override fun f(a: A) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: A)'" "true"
// ERROR: 'f' overrides nothing
// ERROR: 'f' overrides nothing
import a.B
class A {}
class BB : B() {
<caret>override fun f(a: a.A) {}
}
@@ -1,8 +0,0 @@
// "Change function signature to 'override fun f(a: A)'" "true"
// ERROR: 'f' overrides nothing
// ERROR: 'f' overrides nothing
import a.B
class A {}
class BB : B() {
<caret>override fun f() {}
}
@@ -1,5 +0,0 @@
package a
class A {}
open class B {
override fun f(a: A) {}
}
@@ -1,7 +1,7 @@
// "Change 'B.foo' function return type to 'Int'" "false"
// "Change 'B.foo' function return type to 'Long'" "false"
// "Remove explicitly specified return type in 'B.foo' function" "false"
// ERROR: <html>Return type is 'jet.String', which is not a subtype of overridden<br/><b>internal</b> <b>abstract</b> <b>fun</b> foo(): jet.Int <i>defined in</i> A</html>
// ERROR: <html>Return type is 'jet.String', which is not a subtype of overridden<br/><b>internal</b> <b>abstract</b> <b>fun</b> foo() : jet.Int <i>defined in</i> A</html>
abstract class A {
abstract fun foo() : Int;
}