Improve AMBIGUOUS_CALLS renderer

This commit is contained in:
Pavel V. Talanov
2016-02-19 17:41:28 +03:00
parent b399bbffd7
commit 8cbc9eee3e
6 changed files with 71 additions and 2 deletions
@@ -0,0 +1,21 @@
// !DIAGNOSTICS_NUMBER: 1
// !DIAGNOSTICS: OVERLOAD_RESOLUTION_AMBIGUITY
// !MESSAGE_TYPE: HTML
package a.b
val ref1 = ::foo
fun <T> foo(a: kotlin.String, t: T) {
}
fun <T> foo(b: String, t : T) {
}
fun foo(i: Int) {
}
class String
@@ -0,0 +1,9 @@
<!-- overloadResolutionAmbiguityHtml1 -->
<html>
Overload resolution ambiguity. All these functions match.
<ul>
<li><b>public</b> <b>fun</b> <`T> foo(b: a.b.String, t: ???): Unit <i>defined in</i> a.b</li>
<li><b>public</b> <b>fun</b> foo(i: Int): Unit <i>defined in</i> a.b</li>
<li><b>public</b> <b>fun</b> <`T> foo(a: kotlin.String, t: ???): Unit <i>defined in</i> a.b</li>
</ul>
</html>
@@ -0,0 +1,21 @@
// !DIAGNOSTICS_NUMBER: 1
// !DIAGNOSTICS: OVERLOAD_RESOLUTION_AMBIGUITY
// !MESSAGE_TYPE: TEXT
package a.b
val ref1 = ::foo
fun <T> foo(a: kotlin.String, t: T) {
}
fun <T> foo(b: String, t : T) {
}
fun foo(i: Int) {
}
class String
@@ -0,0 +1,5 @@
<!-- overloadResolutionAmbiguityTxt1 -->
Overload resolution ambiguity:
public fun <T> foo(b: a.b.String, t: ???): Unit defined in a.b
public fun foo(i: Int): Unit defined in a.b
public fun <T> foo(a: kotlin.String, t: ???): Unit defined in a.b