anchor.diff:          output_string=adjustl(output_string)
       end function str_d
   
  -    function str_r(value,fmt) result(output_string)
  +    elemental function str_r(value,fmt) result(output_string)
           implicit none
  -        real :: value
  -        character(len=*), optional :: fmt
  +        real(real32), intent(in) :: value
  +        character(len=*), optional, intent(in) :: fmt
           character(len=MAXSTRINGLENGTH) :: output_string
           if (present(fmt)) then
               write(output_string,fmt) value
  
positive.code: !!------------------------------------------------------------
  module string
  
      implicit none
      interface str
          module procedure str_d
  
negative.code:         output_string=adjustl(output_string)
      end function str_r
  
      elemental function str_i(value,fmt) result(output_string)
          implicit none
          integer, intent(in) :: value
          character(len=*), optional, intent(in) :: fmt
          character(len=MAXSTRINGLENGTH) :: output_string
          if (present(fmt)) then
              write(output_string,fmt) value
  