aboutsummaryrefslogtreecommitdiff
path: root/java/com/google/turbine/binder/TypeBinder.java
diff options
context:
space:
mode:
authorcushon <cushon@google.com>2016-11-21 08:59:52 -0800
committerLiam Miller-Cushon <cushon@google.com>2016-11-22 23:34:43 -0800
commit4f0d47545d6c6eb6c7fbdcb19c09fe90088e3f81 (patch)
tree572c0ce9ac520fe9324c338673d1e54220e546b9 /java/com/google/turbine/binder/TypeBinder.java
parent0ddf140d2a04f5bab18638c3ac1d1ce58f85c368 (diff)
downloadturbine-4f0d47545d6c6eb6c7fbdcb19c09fe90088e3f81.tar.gz
Fix a type resolution and canonicalization bug
Interface and superclass type arguments cannot refer to members of the current type, so any simple name references to member types are not implicitly qualified by the current class. MOE_MIGRATED_REVID=139791656
Diffstat (limited to 'java/com/google/turbine/binder/TypeBinder.java')
-rw-r--r--java/com/google/turbine/binder/TypeBinder.java16
1 files changed, 0 insertions, 16 deletions
diff --git a/java/com/google/turbine/binder/TypeBinder.java b/java/com/google/turbine/binder/TypeBinder.java
index 8397325..071ab39 100644
--- a/java/com/google/turbine/binder/TypeBinder.java
+++ b/java/com/google/turbine/binder/TypeBinder.java
@@ -195,22 +195,6 @@ public class TypeBinder {
case INTERFACE:
if (base.decl().xtnds().isPresent()) {
superClassType = (Type.ClassTy) bindClassTy(bindingScope, base.decl().xtnds().get());
- // Members inherited from the superclass are visible to interface types.
- // (The same is not true for interface types declared before other interface
- // types, at least according to javac.)
- bindingScope =
- bindingScope.append(
- new Scope() {
- @Override
- public LookupResult lookup(LookupKey lookup) {
- ClassSymbol result =
- Resolve.resolve(env, owner, base.superclass(), lookup.first());
- if (result != null) {
- return new LookupResult(result, lookup);
- }
- return null;
- }
- });
} else {
superClassType = Type.ClassTy.OBJECT;
}