diff options
Diffstat (limited to 'libgfortran/libgfortran.h')
-rw-r--r-- | libgfortran/libgfortran.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h index 40cb080a78c..bba95f7c781 100644 --- a/libgfortran/libgfortran.h +++ b/libgfortran/libgfortran.h @@ -672,10 +672,18 @@ internal_proto(show_backtrace); /* error.c */ +#if defined(HAVE_GFC_REAL_16) +#define GFC_LARGEST_BUF (sizeof (GFC_REAL_16)) +#elif defined(HAVE_GFC_REAL_10) +#define GFC_LARGEST_BUF (sizeof (GFC_REAL_10)) +#else +#define GFC_LARGEST_BUF (sizeof (GFC_INTEGER_LARGEST)) +#endif + #define GFC_ITOA_BUF_SIZE (sizeof (GFC_INTEGER_LARGEST) * 3 + 2) -#define GFC_XTOA_BUF_SIZE (sizeof (GFC_UINTEGER_LARGEST) * 2 + 1) -#define GFC_OTOA_BUF_SIZE (sizeof (GFC_INTEGER_LARGEST) * 3 + 1) -#define GFC_BTOA_BUF_SIZE (sizeof (GFC_INTEGER_LARGEST) * 8 + 1) +#define GFC_XTOA_BUF_SIZE (GFC_LARGEST_BUF * 2 + 1) +#define GFC_OTOA_BUF_SIZE (GFC_LARGEST_BUF * 3 + 1) +#define GFC_BTOA_BUF_SIZE (GFC_LARGEST_BUF * 8 + 1) extern void sys_exit (int) __attribute__ ((noreturn)); internal_proto(sys_exit); |