Fix KT-10764 IDEA doesn't show overload conflict between constructor and function...
When checking for overloads in package, consider functions and top-level class constructors as possibly conflicting between each other. NB OverloadUtil uses containing package scope from module descriptor. Change diagnostic message for CONFLICTING_OVERLOAD: it's misleading in case of fun vs constructor conflict. Add custom multifile test for diagnostics in IDE (probably not the best; should preprocess file content if it's required to check highlighting in multiple files, not only in the first file). Add test for KT-10765 Incremental compilation misses overload conflict between constructor and function ...
This commit is contained in:
+10
@@ -0,0 +1,10 @@
|
||||
// FILE: test1.kt
|
||||
class <!CONFLICTING_OVERLOADS!>A<!>
|
||||
class B<!CONFLICTING_OVERLOADS!>(val x: Int)<!> {
|
||||
<!CONFLICTING_OVERLOADS!>constructor(x: Int, y: Int)<!>: this(x + y)
|
||||
}
|
||||
|
||||
// FILE: test2.kt
|
||||
<!CONFLICTING_OVERLOADS!>fun A()<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun B(x: Int)<!> = x
|
||||
<!CONFLICTING_OVERLOADS!>fun B(x: Int, y: Int)<!> = x + y
|
||||
Reference in New Issue
Block a user