| Index: compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java
|
| diff --git a/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java b/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java
|
| index 88221918da00a107b288a734bab20058f1eee11b..e80a4b12a39852c24a53eeb741d8a5c4a4e57cbf 100644
|
| --- a/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java
|
| +++ b/compiler/java/com/google/dart/compiler/type/TypeAnalyzer.java
|
| @@ -1350,15 +1350,12 @@ public class TypeAnalyzer implements DartCompilationPhase {
|
| @Override
|
| public Type visitPropertyAccess(DartPropertyAccess node) {
|
| Element element = node.getElement();
|
| - if (element != null && (element.getModifiers().isStatic()
|
| - || Elements.isTopLevel(element))) {
|
| - return element.getType();
|
| - }
|
| - if (element instanceof ConstructorElement) {
|
| + if (element != null) {
|
| return element.getType();
|
| }
|
| DartNode qualifier = node.getQualifier();
|
| Type receiver = nonVoidTypeOf(qualifier);
|
| + // convert into InterfaceType
|
| InterfaceType cls = types.getInterfaceType(receiver);
|
| if (cls == null) {
|
| return diagnoseNonInterfaceType(qualifier, receiver);
|
|
|