diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/lombok/core/TypeResolver.java | 6 | ||||
-rw-r--r-- | src/eclipseAgent/lombok/eclipse/agent/PatchDelegate.java | 1 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/core/lombok/core/TypeResolver.java b/src/core/lombok/core/TypeResolver.java index 2fa24fd2..e5c3fac8 100644 --- a/src/core/lombok/core/TypeResolver.java +++ b/src/core/lombok/core/TypeResolver.java @@ -73,7 +73,7 @@ public class TypeResolver { // because if you want to know if 'Foo' could refer to 'bar.Foo' when 'baz.Foo' is explicitly imported, the answer is no. if (nameConflictInImportList(typeRef, potentialMatches)) return Collections.emptyList(); - // Check if any of our potentials is even imported in the first place. If not: no matches. + // Check if any of our potentials are even imported in the first place. If not: no matches. // Note that (ourPackage.*) is added to the imports. potentialMatches = eliminateImpossibleMatches(potentialMatches, library); if (potentialMatches.isEmpty()) return Collections.emptyList(); @@ -84,7 +84,7 @@ public class TypeResolver { LombokNode<?, ?, ?> n = context; mainLoop: - while (n != null && n.getKind() != Kind.COMPILATION_UNIT) { + while (n != null) { if (n.getKind() == Kind.TYPE && typeRef.equals(n.getName())) { // Our own class or one of our outer classes is named 'typeRef' so that's what 'typeRef' is referring to, not one of our type library classes. return Collections.emptyList(); @@ -106,7 +106,7 @@ public class TypeResolver { continue mainLoop; } - if (n.getKind() == Kind.TYPE) { + if (n.getKind() == Kind.TYPE || n.getKind() == Kind.COMPILATION_UNIT) { for (LombokNode<?, ?, ?> child : n.down()) { // Inner class that's visible to us has 'typeRef' as name, so that's the one being referred to, not one of our type library classes. if (child.getKind() == Kind.TYPE && typeRef.equals(child.getName())) return Collections.emptyList(); diff --git a/src/eclipseAgent/lombok/eclipse/agent/PatchDelegate.java b/src/eclipseAgent/lombok/eclipse/agent/PatchDelegate.java index cc72c206..e027b09d 100644 --- a/src/eclipseAgent/lombok/eclipse/agent/PatchDelegate.java +++ b/src/eclipseAgent/lombok/eclipse/agent/PatchDelegate.java @@ -108,6 +108,7 @@ public class PatchDelegate { for (Annotation ann : field.annotations) { if (ann.type == null) continue; TypeBinding tb = ann.type.resolveType(decl.initializerScope); + if (tb == null) continue; if (!charArrayEquals("lombok", tb.qualifiedPackageName())) continue; if (!charArrayEquals("Delegate", tb.qualifiedSourceName())) continue; return true; |