mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
ignore implicit this reference before super call for java 7
This commit is contained in:
@@ -32,6 +32,8 @@ import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.projectRoots.JavaSdkVersion;
|
||||
import com.intellij.openapi.projectRoots.JavaVersionService;
|
||||
import com.intellij.openapi.roots.ProjectFileIndex;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.openapi.util.Condition;
|
||||
@@ -52,7 +54,10 @@ import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.psi.templateLanguages.OuterLanguageElement;
|
||||
import com.intellij.psi.tree.IElementType;
|
||||
import com.intellij.psi.util.*;
|
||||
import com.intellij.util.*;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.ArrayUtilRt;
|
||||
import com.intellij.util.Function;
|
||||
import com.intellij.util.IncorrectOperationException;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.xml.util.XmlStringUtil;
|
||||
@@ -2004,6 +2009,7 @@ public class HighlightUtil extends HighlightUtilBase {
|
||||
|
||||
@Nullable
|
||||
public static HighlightInfo checkImplicitThisReferenceBeforeSuper(@NotNull PsiClass aClass) {
|
||||
if (JavaVersionService.getInstance().isAtLeast(aClass, JavaSdkVersion.JDK_1_7)) return null;
|
||||
if (aClass instanceof PsiAnonymousClass) return null;
|
||||
PsiClass superClass = aClass.getSuperClass();
|
||||
if (superClass == null || !PsiUtil.isInnerClass(superClass)) return null;
|
||||
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
class Test {
|
||||
class Test1 extends Test {}
|
||||
class Test2 extends Test1 {}
|
||||
}
|
||||
+12
-1
@@ -38,6 +38,9 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.extensions.ExtensionPoint;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.fileTypes.StdFileTypes;
|
||||
import com.intellij.openapi.projectRoots.JavaSdkVersion;
|
||||
import com.intellij.openapi.projectRoots.JavaVersionService;
|
||||
import com.intellij.openapi.projectRoots.JavaVersionServiceImpl;
|
||||
import com.intellij.openapi.roots.LanguageLevelProjectExtension;
|
||||
import com.intellij.openapi.vfs.VfsUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -180,7 +183,15 @@ public class LightAdvHighlightingTest extends LightDaemonAnalyzerTestCase {
|
||||
public void testXXX() { doTest(false, false); }
|
||||
public void testUnused() { doTest(true, false); }
|
||||
public void testQualifierBeforeClassName() { doTest(false, false); }
|
||||
public void testQualifiedSuper() { doTest(false, false); }
|
||||
public void testQualifiedSuper() {
|
||||
((JavaVersionServiceImpl)JavaVersionService.getInstance()).setTestVersion(JavaSdkVersion.JDK_1_6, myTestRootDisposable);
|
||||
doTest(false, false);
|
||||
}
|
||||
|
||||
public void testIgnoreImplicitThisReferenceBeforeSuperSinceJdk7() throws Exception {
|
||||
doTest(false, false);
|
||||
}
|
||||
|
||||
public void testCastFromVoid() { doTest(false, false); }
|
||||
public void testCatchUnknownMethod() { doTest(false, false); }
|
||||
public void testIDEADEV8822() { doTest(false, false); }
|
||||
|
||||
Reference in New Issue
Block a user