1!
2! Copyright (C) 1996-2016	The SIESTA group
3!  This file is distributed under the terms of the
4!  GNU General Public License: see COPYING in the top directory
5!  or http://www.gnu.org/copyleft/gpl.txt.
6! See Docs/Contributors.txt for a list of contributors.
7!
8c
9c Copyright Alberto Garcia, 1996, 1997, 1998
10c
11c This module implements an interface to the FORTRAN logical unit
12c system. Based on code by Richard Maine.
13c
14c
15c Alberto Garcia, December 30, 1996
16c Rewritten as a single subroutine
17c with multiple entry points, March 7, 1998
18c Rewritten to use the module m_io. All calls are deferred to m_io,
19c    Nick Papior, July, 2018
20c---------------------------------------------------------------
21c
22      subroutine io
23      use m_io, only: seterr_ => io_seterr
24      use m_io, only: setout_ => io_setout
25      use m_io, only: geterr_ => io_geterr
26      use m_io, only: getout_ => io_getout
27      use m_io, only: assign_ => io_assign
28      use m_io, only: reserve_ => io_reserve
29      use m_io, only: close_ => io_close
30      use m_io, only: status_ => io_status
31
32      implicit none
33
34      integer :: unit
35
36      entry io_seterr(unit)
37      call seterr_(unit)
38      return
39      entry io_setout(unit)
40      call setout_(unit)
41      return
42
43      entry io_geterr(unit)
44      call geterr_(unit)
45      return
46      entry io_getout(unit)
47      call getout_(unit)
48      return
49
50      entry io_assign(unit)
51      call assign_(unit)
52      return
53
54      entry io_reserve(unit)
55      call reserve_(unit)
56      return
57
58      entry io_close(unit)
59      call close_(unit)
60      return
61
62      entry io_status
63      call status_()
64      return
65
66      end subroutine
67