From b6161cb41bb42ae30193dafe2871b818843e78b6 Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Mon, 5 Mar 2012 17:05:36 +0400 Subject: [PATCH] Bug with wrong 'anonymous initializer without constructor' fixed --- .../src/org/jetbrains/jet/lang/resolve/BodyResolver.java | 2 +- compiler/testData/diagnostics/tests/AnonymousInitializers.jet | 2 +- idea/testData/checker/AnonymousInitializers.jet | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java index 9b2c69aaba3..c4ed3117f6d 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java @@ -257,7 +257,7 @@ public class BodyResolver { private void resolveAnonymousInitializers(JetClassOrObject jetClassOrObject, MutableClassDescriptor classDescriptor) { if (!context.completeAnalysisNeeded(jetClassOrObject)) return; List anonymousInitializers = jetClassOrObject.getAnonymousInitializers(); - if (jetClassOrObject.hasPrimaryConstructor()) { + if (classDescriptor.getUnsubstitutedPrimaryConstructor() != null) { ConstructorDescriptor primaryConstructor = classDescriptor.getUnsubstitutedPrimaryConstructor(); assert primaryConstructor != null; final JetScope scopeForInitializers = classDescriptor.getScopeForInitializers(); diff --git a/compiler/testData/diagnostics/tests/AnonymousInitializers.jet b/compiler/testData/diagnostics/tests/AnonymousInitializers.jet index 515ed807058..b8922a192bb 100644 --- a/compiler/testData/diagnostics/tests/AnonymousInitializers.jet +++ b/compiler/testData/diagnostics/tests/AnonymousInitializers.jet @@ -1,4 +1,4 @@ -class NoC { +trait NoC { { } diff --git a/idea/testData/checker/AnonymousInitializers.jet b/idea/testData/checker/AnonymousInitializers.jet index f5f5db7a224..5fdfd561edb 100644 --- a/idea/testData/checker/AnonymousInitializers.jet +++ b/idea/testData/checker/AnonymousInitializers.jet @@ -1,4 +1,4 @@ -class NoC { +trait NoC { { }