anchor.diff:    void buildConstructorBody(ir.Constructor constructor) {
       openFunction(constructor.function);
       _addClassTypeVariablesIfNeeded(constructor);
  +    _potentiallyAddFunctionParameterTypeChecks(constructor.function);
       constructor.function.body.accept(this);
       closeFunction();
     }
  
positive.code:       assert(_targetFunction != null && _targetFunction is ir.FunctionNode);
        returnStatement.expression.accept(this);
        value = pop();
        DartType returnType = _elementMap.getFunctionType(_targetFunction);
        if (_targetFunction.asyncMarker == ir.AsyncMarker.Async) {
          if (options.enableTypeAssertions &&
              !isValidAsyncReturnType(returnType)) {
  
negative.code:     if (parent is ir.Procedure && parent.kind == ir.ProcedureKind.Factory) {
        _addClassTypeVariablesIfNeeded(parent);
      }
      _potentiallyAddFunctionParameterTypeChecks(functionNode);
  
      if (closedWorld.nativeData.isNativeMember(targetElement)) {
        nativeEmitter.nativeMethods.add(targetElement);
  