Avoid failing on error types when enumerating all signatures

This commit is contained in:
Andrey Breslav
2014-06-06 22:56:27 +04:00
parent 8e4954ab67
commit a26f4f9203
2 changed files with 4 additions and 2 deletions
@@ -34,11 +34,13 @@ import org.jetbrains.jet.lang.resolve.java.descriptor.SamAdapterDescriptor
class BuilderFactoryForDuplicateSignatureDiagnostics(
builderFactory: ClassBuilderFactory,
private val typeMapper: JetTypeMapper,
private val bindingContext: BindingContext,
private val diagnostics: DiagnosticHolder
) : SignatureCollectingClassBuilderFactory(builderFactory) {
// Avoid errors when some classes are not loaded for some reason
private val typeMapper = JetTypeMapper(bindingContext, ClassBuilderMode.LIGHT_CLASSES)
override fun handleClashingSignatures(data: ConflictingJvmDeclarationsData) {
val allDelegatedToTraitImpls = data.signatureOrigins.all { it.originKind == JvmDeclarationOriginKind.DELEGATION_TO_TRAIT_IMPL }
@@ -146,7 +146,7 @@ public class GenerationState {
this.intrinsics = new IntrinsicMethods();
this.classFileFactory = new ClassFileFactory(this, new BuilderFactoryForDuplicateSignatureDiagnostics(
builderFactory, typeMapper, bindingContext, diagnostics));
builderFactory, this.bindingContext, diagnostics));
this.generateNotNullAssertions = generateNotNullAssertions;
this.generateNotNullParamAssertions = generateNotNullParamAssertions;