anchor.diff:  
     INTEGER :: year
   
  +  ! TODO: d%year must be positive. Implement checks.
  +
     date2num = 0
     DO year = 1,d%year-1
       date2num = date2num+daysInYear(year)
  
positive.code:   REAL(KIND=real_dp)            :: days,totseconds
  
    INTEGER :: year,month,day,hour,minute,second,millisecond
  
    days = num
  
  
negative.code: PURE ELEMENTAL SUBROUTINE addMilliseconds(self,ms)
  !======================================================================>
  !
  ! datetime-bound procedure. Adds an integer number of milliseconds to 
  ! self. Called by datetime addition (+) and subtraction (-) operators.
  !
  !======================================================================>
  