1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
#ifndef _ICORE_COM_
#define _ICORE_COM_
#if defined(__fortran)
#if defined(__fortran77)
c icore.com : begin
c icore(1) is an anchor in memory that allows subroutines to address memory
c allocated with malloc. This system will fail if the main memory is segmented
c or parallel processes are not careful in how they allocate memory.
integer icore(1)
common / / icore
c icore.com : end
#else /* defined(__fortran9x) */
integer :: icore(1)
common / / icore
#endif /* defined(__fortran77) */
#else /* C(++) code */
CRASH HARD!
Blank common blocks can TECHNICALLY be done, but their use is HIGHLY
ill-advised.
#endif /* defined(__fortran) */
#endif /* _ICORE_COM_ */
#ifdef _SBCORE_COM_
#error "icore.com is incompatible with sbcore.com"
#endif
|