anchor.diff:      if (potentialReflectorClass.constructors.length != 1) {
         // We "own" the direct subclasses of `Reflectable` so when they are
         // malformed as reflector classes we raise an error.
  -      constructorFail();
  +      await constructorFail();
         return false;
       }
       ConstructorElement constructor = potentialReflectorClass.constructors[0];
       if (constructor.parameters.isNotEmpty || !constructor.isConst) {
         // We still "own" `potentialReflectorClass`.
  -      constructorFail();
  +      await constructorFail();
         return false;
       }
   
  
positive.code:         // rather than "original" generic classes; so they do have actual type
          // arguments when there are formal type parameters.
          assert(typeArguments.length == typeParameters.length);
          if (typeArguments.every(_hasSupportedReflectedTypeArguments)) {
            List<int> typesIndices = [];
            for (DartType actualTypeArgument in typeArguments) {
              if (actualTypeArgument is InterfaceType) {
  
negative.code:         // would mean that the value is actually null, which we will also
          // reject as irrelevant.
          if (constantValue == null) return null;
          bool isOk = await checkInheritance(constantValue.type, focusClass.type);
          // When `isOK` is true, result.value.type.element is a ClassElement.
          return isOk ? constantValue.type.element : null;
        } else {
  