Make sys.F90 an optional requirement
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libGridXC |
New
|
Undecided
|
Unassigned |
Bug Description
It may not always be advantageous to have a sys.F90 a requirement in terms of the required code interfaces.
What I suggest would be the LAPACK like solution:
suffix subroutines with an `info` integer.
The return values:
- negative numbers correspond to an invalid argument corresponding to the position: abs(info)
- positive numbers are internal errors for one or the other reasons.
Possibly we could have a netcdf-like API:
call gridxc_cellxc(..., info)
call gridxc_err(info, [msg[, ?]])
This would make hosting application able to do some responses at least.
The report counters (memory and timers) should also be optional, possibly using procedural pointers in the init-call?
Well, thoughts and rants, please comment!
Additionaly the sys.F90 does not match what we really need.
There is a mix of
alloc_meomry_report
alloc_error_event
which should be fixed in any case.