anchor.diff:                let oldv,oldve = mkCompGenLocal mWholeExpr "inputRecord" overallTy
                 Some (olde,oldv,oldve), tpenv
   
  +    let hasOrigExpr = Option.isSome optOrigExpr
  +
       let fldsList = 
           let flds = 
               [
  
positive.code:             errorR(Error(FSComp.SR.tcObjectConstructionExpressionCanOnlyImplementConstructorsInObjectModelTypes(),mWholeExpr))
      else
          if isNil flds then 
              let errorInfo = 
                  if Option.isSome optOrigExpr then FSComp.SR.tcEmptyCopyAndUpdateRecordInvalid()
                  else FSComp.SR.tcEmptyRecordInvalid()
              error(Error(errorInfo,mWholeExpr))
  
          if isFSharpObjModelTy cenv.g overallTy then errorR(Error(FSComp.SR.tcTypeIsNotARecordTypeNeedConstructor(),mWholeExpr))
  
negative.code:             errorR(InternalError("Unexpected failure in getting super type",mWholeExpr))
              None,tpenv
  
      let expr,tpenv = TcRecordConstruction cenv overallTy env tpenv optOrigExpr overallTy fldsList mWholeExpr
  
      let expr = 
          match superTy with 
  