From 8a76bd30d276834620b1cc95e3d941e830561987 Mon Sep 17 00:00:00 2001 From: Stepan Koltsov Date: Tue, 20 Mar 2012 21:44:53 +0400 Subject: [PATCH] java.lang.Object is not required class #KT-1609 Fixed --- .../lang/resolve/java/JavaDescriptorResolver.java | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java index 526235fe374..76e3e1981f3 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java @@ -528,19 +528,12 @@ public class JavaDescriptorResolver { } - // cache - protected ClassDescriptor javaLangObject; - - @NotNull - private ClassDescriptor getJavaLangObject() { - if (javaLangObject == null) { - javaLangObject = resolveClass(new FqName("java.lang.Object"), DescriptorSearchRule.ERROR_IF_FOUND_IN_KOTLIN); - } - return javaLangObject; - } + private static final FqName JL_OBJECT = new FqName("java.lang.Object"); private boolean isJavaLangObject(JetType type) { - return type.getConstructor().getDeclarationDescriptor() == getJavaLangObject(); + ClassifierDescriptor classifierDescriptor = type.getConstructor().getDeclarationDescriptor(); + return classifierDescriptor instanceof ClassDescriptor && + DescriptorUtils.getFQName(classifierDescriptor).equals(JL_OBJECT.toUnsafe()); }