Use modules instead of files for MPP diagnostic

Using files turned to be a bad idea, because people often
use the same name for files with expects and with corresponding actuals.

This commits disambiguiates ambiguous message for
AMBIGUOUS_ACTUALS/AMBGIUOUS_EXPECTS diagnostics by using modules instead
of files

^KT-32582 Fixed
This commit is contained in:
Dmitry Savvinov
2019-08-21 18:41:19 +03:00
parent 45737e51fb
commit 3989f351ff
13 changed files with 39 additions and 34 deletions
@@ -1,5 +1,5 @@
package sample
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom.kt, left.kt")!>A<!> {
fun <!AMBIGUOUS_ACTUALS("Function 'foo'", "bottom.kt, left.kt")!>foo<!>(): Int
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom, left")!>A<!> {
fun <!AMBIGUOUS_ACTUALS("Function 'foo'", "bottom, left")!>foo<!>(): Int
}
@@ -1,3 +1,3 @@
package foo
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom.kt, middle.kt")!>A<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom, middle")!>A<!>
@@ -1,6 +1,6 @@
package foo
expect class <!AMBIGUOUS_ACTUALS("Class 'ActualInMiddleCompatibleInBottom'", "bottom.kt, middle.kt")!>ActualInMiddleCompatibleInBottom<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'CompatibleInMiddleActualInBottom'", "bottom.kt, middle.kt")!>CompatibleInMiddleActualInBottom<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'ActualInMiddleCompatibleInBottom'", "bottom, middle")!>ActualInMiddleCompatibleInBottom<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'CompatibleInMiddleActualInBottom'", "bottom, middle")!>CompatibleInMiddleActualInBottom<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'CompatibleInMiddleAndBottom'", "bottom.kt, middle.kt")!>CompatibleInMiddleAndBottom<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'CompatibleInMiddleAndBottom'", "bottom, middle")!>CompatibleInMiddleAndBottom<!>
@@ -1,3 +1,3 @@
package foo
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom.kt, middle.kt")!>A<!>
expect class <!AMBIGUOUS_ACTUALS("Class 'A'", "bottom, middle")!>A<!>
@@ -1 +1 @@
actual class <!AMBIGUOUS_EXPECTS("Actual class 'A'", "left.kt, right.kt")!>A<!>
actual class <!AMBIGUOUS_EXPECTS("Actual class 'A'", "left, right")!>A<!>