anchor.diff:                      
         END SUBROUTINE Cleanup 
   
  -   END SUBROUTINE ProcessComFile ! ( TopFileName, FileInfo, ErrStat, ErrMsg )
  +   END SUBROUTINE ProcessComFile
   !=======================================================================
      SUBROUTINE ProgAbort ( Message, TrapErrors, TimeWait, ErrLevel )
   
  
positive.code:    RETURN
     END SUBROUTINE GetWords
  !=======================================================================
     SUBROUTINE InitInpErrs ( InputErrors, MaxErrs, ErrStat, ErrMsg )
  
        ! This subroutine parses the specified line of text for AryLen REAL values.
        ! Generate an error message if the value is the wrong type.
  
  
           ! Arguments declarations.
  
        INTEGER(IntKi), INTENT(OUT)            :: ErrStat                       ! The error status.
        INTEGER(IntKi), INTENT(IN)             :: MaxErrs                       ! The maximum number of errors allowed.
  
        CHARACTER(*),   INTENT(OUT)            :: ErrMsg                        ! The error message, if ErrStat /= 0.
  
        TYPE (InpErrsType), INTENT(INOUT)      :: InputErrors                   ! The derived type for holding the input errors
  
  
           ! Local declarations.
  
        INTEGER(IntKi)                         :: ErrStatLcl                    ! Error status local to this routine
        CHARACTER(*), PARAMETER                :: RoutineName = 'InitInpErrs'
  
  
        ErrStat = ErrID_None
        ErrMsg  = ''
        
           ! Set up the error-messages structure for invalid entries.
  
        InputErrors%MaxErrs = MaxErrs
        InputErrors%NumErrs = 0
  
        ALLOCATE ( InputErrors%FileLine( MaxErrs ), STAT=ErrStatLcl )
        IF ( ErrStatLcl /= 0 )  THEN
           CALL SetErrStat( ErrID_Fatal,'Error allocating memory for the InputErrors%FileLine array',ErrStat,ErrMsg,RoutineName)
           RETURN
        ENDIF
  
        ALLOCATE ( InputErrors%ErrMsgs( MaxErrs ), STAT=ErrStatLcl )
        IF ( ErrStatLcl /= 0 )  THEN
           CALL SetErrStat( ErrID_Fatal,'Error allocating memory for the InputErrors%ErrMsgs array',ErrStat,ErrMsg,RoutineName)
           RETURN
        ENDIF
  
        ALLOCATE ( InputErrors%FileList( MaxErrs ), STAT=ErrStatLcl )
        IF ( ErrStatLcl /= 0 )  THEN
           CALL SetErrStat( ErrID_Fatal,'Error allocating memory for the InputErrors%FileList array',ErrStat,ErrMsg,RoutineName)
           RETURN
        ENDIF
  
        RETURN
  
     END SUBROUTINE InitInpErrs
  !=======================================================================
     SUBROUTINE IntAry2Str( IntAry, Str, ErrStat, ErrMsg )
     
        ! This routine converts an ASCII array of integers into an
  
negative.code:       CHARACTER(*),   INTENT(OUT)            :: ErrMsg                        ! The error message, if ErrStat /= 0.
        CHARACTER(*),   INTENT(IN)             :: ExpVarName                    ! The expected variable name.
  
        TYPE (FileInfoType), INTENT(IN)        :: FileInfo                      ! The derived type for holding the file information.
  
  
           ! Local declarations.
  