| Index: compiler/java/com/google/dart/compiler/resolver/SupertypeResolver.java
|
| diff --git a/compiler/java/com/google/dart/compiler/resolver/SupertypeResolver.java b/compiler/java/com/google/dart/compiler/resolver/SupertypeResolver.java
|
| index 1fdb007f3613538199a0a6a263ffeace1b769b9b..6af78affb2dada74c87410f12940b6059595aefa 100644
|
| --- a/compiler/java/com/google/dart/compiler/resolver/SupertypeResolver.java
|
| +++ b/compiler/java/com/google/dart/compiler/resolver/SupertypeResolver.java
|
| @@ -57,6 +57,10 @@ public class SupertypeResolver {
|
| supertype.getClass(); // Quick null check.
|
| }
|
| if (supertype != null) {
|
| + // TODO(scheglov) check for "extends/implements Dynamic"
|
| + /*if (supertype == typeProvider.getDynamicType()) {
|
| + topLevelContext.onError(superclassNode, ResolverErrorCode.EXTENDS_DYNAMIC, node.getName());
|
| + }*/
|
| classElement.setSupertype(supertype);
|
| } else {
|
| assert classElement.getName().equals("Object") : classElement;
|
| @@ -80,7 +84,11 @@ public class SupertypeResolver {
|
| DartTypeNode boundNode = typeParameterNode.getBound();
|
| Type bound;
|
| if (boundNode != null) {
|
| - bound = classContext.resolveType(boundNode, false);
|
| + bound =
|
| + classContext.resolveType(
|
| + boundNode,
|
| + false,
|
| + ResolverErrorCode.NO_SUCH_TYPE);
|
| boundNode.setType(bound);
|
| } else {
|
| bound = typeProvider.getObjectType();
|
|
|