correct level in highlighting:

highlight element X only when visiting X or its ascendant
This commit is contained in:
Alexey Kudravtsev
2014-02-10 20:03:58 +04:00
parent e0792ea2f7
commit ad661d92e4
33 changed files with 598 additions and 314 deletions
@@ -1,6 +1,6 @@
public class a {
<error descr="'f(int)' is already defined in 'a'">void f(int i)</error> { }
<error descr="'f(int)' is already defined in 'a'">void f(int i)</error> {
void f(int i) {
new c1() {
<error descr="'f1()' is already defined in 'Anonymous class derived from c1'">public void f1()</error> {}
@@ -28,6 +28,7 @@ public class a {
}
abstract class c1 {
abstract public void f1(int i);
Object o = new c1[0];
}
interface ii {
@@ -4,7 +4,7 @@ class m {
int r = 0;
new Runnable() {
public void run() {
int k = <error descr="Variable 'r' is accessed from within inner class. Needs to be declared final.">r</error>;
int k = <error descr="Variable 'r' is accessed from within inner class, needs to be declared final">r</error>;
int ii = i;
}
};
@@ -27,9 +27,9 @@ class UnsupportedFeatures {
<error descr="For-each loops are not supported at this language level">for (String s : args) { System.out.println(s); }</error>
List<error descr="Generics are not supported at this language level"><String></error> list =
new ArrayList<error descr="Diamond types are not supported at this language level"><></error>();
new ArrayList<error descr="Generics are not supported at this language level"><></error>();
for (<error descr="Incompatible types. Found: 'java.lang.Object', required: 'java.lang.String'">String s : list</error>) {}
<error descr="For-each loops are not supported at this language level">for (String s : list) {}</error>
Arrays.asList<error descr="'asList(java.lang.String...)' in 'java.util.Arrays' cannot be applied to '(java.lang.String)'">("")</error>;
<error descr="Incompatible types. Found: 'boolean', required: 'java.lang.Boolean'">Boolean b = true;</error>
<error descr="Incompatible types. Found: 'java.lang.Boolean', required: 'boolean'">boolean b1 = Boolean.TRUE;</error>