anchor.diff:  
                 assert(substitution != null);
                 for (DartType argument in substitution.arguments) {
  +                argument = argument.withoutNullability;
                   if (argument is InterfaceType) {
                     computeChecks(argument.element);
                   }
  
positive.code:     bool isFunctionChecked = false;
  
      void processCheckedType(DartType t) {
        if (t is FunctionType) {
          checkedFunctionTypes.add(t);
        } else if (t is InterfaceType) {
  
negative.code: 
                  assert(substitution != null);
                  for (DartType argument in substitution.arguments) {
                    argument = argument.withoutNullability;
                    if (argument is InterfaceType) {
                      computeChecks(argument.element);
                    }
  