Improve ABI version error reporting in the compiler

- only report ABI errors if there's at least one other error
- append additional helpful information to the "unresolved reference" error
This commit is contained in:
Alexander Udalov
2015-09-15 19:33:42 +03:00
parent d98b3433eb
commit 2b269b2652
9 changed files with 80 additions and 17 deletions
@@ -39,11 +39,12 @@ public class TraceBasedErrorReporter(private val trace: BindingTrace) : ErrorRep
public data class AbiVersionErrorData(
public val actualVersion: BinaryVersion,
public val filePath: String,
public val classId: ClassId
)
override fun reportIncompatibleAbiVersion(classId: ClassId, filePath: String, actualVersion: BinaryVersion) {
trace.record(ABI_VERSION_ERRORS, filePath, AbiVersionErrorData(actualVersion, classId))
trace.record(ABI_VERSION_ERRORS, filePath, AbiVersionErrorData(actualVersion, filePath, classId))
}
override fun reportIncompleteHierarchy(descriptor: ClassDescriptor, unresolvedSuperClasses: List<String>) {