21 #ifndef __FMS_PLATFORM_ 
   22 #define __FMS_PLATFORM_ 
   27 use,
intrinsic :: iso_fortran_env, only: real128
 
   28 use,
intrinsic :: iso_c_binding, only: c_double,c_float,c_int64_t, &
 
   29                                       c_int32_t,c_int16_t,c_intptr_t
 
   30 #define QUAD_KIND real128 
   31 #define DOUBLE_KIND c_double 
   32 #define FLOAT_KIND c_float 
   33 #define LONG_KIND c_int64_t 
   34 #define INT_KIND c_int32_t 
   35 #define SHORT_KIND c_int16_t 
   36 #define POINTER_KIND c_intptr_t 
   45 #define POINTER_KIND 8 
   60 #define _ALLOCATABLE pointer 
   61 #define _NULL =>null() 
   62 #define _ALLOCATED associated 
   65 #define _ALLOCATABLE allocatable 
   67 #define _ALLOCATED allocated 
   73 #ifdef NO_CRAY_POINTERS 
   74 #undef use_CRI_pointers 
   77 #define use_CRI_pointers 
   82 #ifdef no_8byte_integers 
   83 #define LONG_KIND INT_KIND 
   87 #ifndef ENABLE_QUAD_PRECISION 
   88 #define QUAD_KIND DOUBLE_KIND 
   92 #ifndef FMS_MAX_PATH_LEN 
   93 #define FMS_MAX_PATH_LEN 1024 
   95 #ifndef FMS_MAX_FILE_LEN 
   96 #define FMS_MAX_FILE_LEN 255