public  subroutine write_response_file(name, argv)  
    
    Response files allow to read command line options from files.
Whitespace is used to separate the arguments, we will use newlines
as separator to create readable response files which can be inspected
in case of errors.
    Arguments
        
    
      
        | Type | Intent | Optional | Attributes |  | Name |  | 
    
        
            | character(len=*), | intent(in) |  |  | :: | name |  | 
        
            | type(string_t), | intent(in) |  |  | :: | argv(:) |  | 
    
  
    
        
      Variables
      
    
      
        | Type | Visibility | Attributes |  | Name |  | Initial |  | 
    
        
            | integer, | public |  | :: | iarg |  |  |  | 
        
            | integer, | public |  | :: | io |  |  |  | 
    
  
    
    
    
    
    
    
    
    
    Source Code
    subroutine write_response_file(name, argv)
    character(len=*), intent(in) :: name
    type(string_t), intent(in) :: argv(:)
    integer :: iarg, io
    open(file=name, newunit=io, status='replace')
    do iarg = 1, size(argv)
        write(io, '(a)') unix_path(argv(iarg)%s)
    end do
    close(io)
end subroutine write_response_file