Module dc_error

module dc_error

        ! Uses
    use netcdf_f77, only: NF_ENOTVAR, NF_EINVAL

        ! Variables
    integer, public, parameter :: DC_NOERR = 0
    integer, private, save :: errno = DC_NOERR
    integer, private, save :: cause_int = DC_NOERR
    character (len=80), private, save :: cause_string = ""
    character (len=80), private, save :: cause_location = ""
    integer, public, parameter :: GT_EFAKE = -100
    integer, public, parameter :: GT_ENOMOREDIMS = -101
    integer, public, parameter :: GT_EDIMNODIM = -102
    integer, public, parameter :: GT_EDIMMULTIDIM = -103
    integer, public, parameter :: GT_EDIMOTHERDIM = -104
    integer, public, parameter :: GT_EBADDIMNAME = -105
    integer, public, parameter :: GT_ENOTVAR = -106
    integer, public, parameter :: GT_ENOMEM = -107
    integer, public, parameter :: GT_EOTHERFILE = -108
    integer, public, parameter :: GT_EARGSIZEMISMATCH = -109
    integer, public, parameter :: GT_ENOMATCHDIM = -110
    integer, public, parameter :: GT_ELIMITED = -111
    integer, public, parameter :: GT_EBADVAR = -112
    integer, public, parameter :: GT_ECHARSHORT = -113
    integer, public, parameter :: GT_ENOUNLIMITDIM = -114
    integer, public, parameter :: GT_EBADATTRNAME = -115
    integer, public, parameter :: GT_EBADHISTORY = -116
    integer, public, parameter :: GT_EBADALLOCATESIZE = -117
    integer, public, parameter :: GT_ERANKMISMATCH = -118
    integer, public, parameter :: GR_ENOTGR = -300
    integer, public, parameter :: USR_ECHAR = -1000
    integer, public, parameter :: USR_EINT = -1001

        ! Interfaces
    public interface DumpError

        ! Subroutines and functions
    public integer function ErrorCode ()
    public subroutine GetErrorMessage (msg)
    public subroutine StoreError (number, where, err, cause_c, cause_i)

end module dc_error

Description of Variables

DC_NOERR

integer, public, parameter :: DC_NOERR = 0

errno

integer, private, save :: errno = DC_NOERR

cause_int

integer, private, save :: cause_int = DC_NOERR

cause_string

character (len=80), private, save :: cause_string = ""

cause_location

character (len=80), private, save :: cause_location = ""

GT_EFAKE

integer, public, parameter :: GT_EFAKE = -100

GT_ENOMOREDIMS

integer, public, parameter :: GT_ENOMOREDIMS = -101

GT_EDIMNODIM

integer, public, parameter :: GT_EDIMNODIM = -102

GT_EDIMMULTIDIM

integer, public, parameter :: GT_EDIMMULTIDIM = -103

GT_EDIMOTHERDIM

integer, public, parameter :: GT_EDIMOTHERDIM = -104

GT_EBADDIMNAME

integer, public, parameter :: GT_EBADDIMNAME = -105

GT_ENOTVAR

integer, public, parameter :: GT_ENOTVAR = -106

GT_ENOMEM

integer, public, parameter :: GT_ENOMEM = -107

GT_EOTHERFILE

integer, public, parameter :: GT_EOTHERFILE = -108

GT_EARGSIZEMISMATCH

integer, public, parameter :: GT_EARGSIZEMISMATCH = -109

GT_ENOMATCHDIM

integer, public, parameter :: GT_ENOMATCHDIM = -110

GT_ELIMITED

integer, public, parameter :: GT_ELIMITED = -111

GT_EBADVAR

integer, public, parameter :: GT_EBADVAR = -112

GT_ECHARSHORT

integer, public, parameter :: GT_ECHARSHORT = -113

GT_ENOUNLIMITDIM

integer, public, parameter :: GT_ENOUNLIMITDIM = -114

GT_EBADATTRNAME

integer, public, parameter :: GT_EBADATTRNAME = -115

GT_EBADHISTORY

integer, public, parameter :: GT_EBADHISTORY = -116

GT_EBADALLOCATESIZE

integer, public, parameter :: GT_EBADALLOCATESIZE = -117

GT_ERANKMISMATCH

integer, public, parameter :: GT_ERANKMISMATCH = -118

GR_ENOTGR

integer, public, parameter :: GR_ENOTGR = -300

USR_ECHAR

integer, public, parameter :: USR_ECHAR = -1000

USR_EINT

integer, public, parameter :: USR_EINT = -1001

Description of Interfaces

DumpError

public interface DumpError
    subroutine DumpError ()
    end subroutine DumpError
end interface DumpError

Description of Subroutines and Functions

ErrorCode

public function ErrorCode () result (result)
    integer :: result
end function ErrorCode

GetErrorMessage

public subroutine GetErrorMessage (msg)
    character (len=*), intent(out) :: msg
end subroutine GetErrorMessage

StoreError

public subroutine StoreError (number, where, err, cause_c, cause_i)
    integer, intent(in) :: number
    character (len=*), intent(in) :: where
    logical, optional, intent(out) :: err
    character (len=*), optional, intent(in) :: cause_c
    integer, optional, intent(in) :: cause_i
    ! Calls: DumpError
end subroutine StoreError