Mercurial > hg > CbC > CbC_gcc
diff gcc/fortran/libgfortran.h @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
line wrap: on
line diff
--- a/gcc/fortran/libgfortran.h Fri Oct 27 22:46:09 2017 +0900 +++ b/gcc/fortran/libgfortran.h Thu Oct 25 07:37:49 2018 +0900 @@ -1,5 +1,5 @@ /* Header file to the Fortran front-end and runtime library - Copyright (C) 2007-2017 Free Software Foundation, Inc. + Copyright (C) 2007-2018 Free Software Foundation, Inc. This file is part of GCC. @@ -22,9 +22,9 @@ Note that no features were obsoleted nor deleted in F2003. Please remember to keep those definitions in sync with gfortran.texi. */ -/* For now, use F2015 = GFC_STD_GNU. */ -#define GFC_STD_F2015 (1<<5) /* PLACEHOLDER for Fortran 2015. */ -#define GFC_STD_F2008_TS (1<<9) /* POST-F2008 technical reports. */ +#define GFC_STD_F2018_DEL (1<<11) /* Deleted in F2018. */ +#define GFC_STD_F2018_OBS (1<<10) /* Obsolescent in F2018. */ +#define GFC_STD_F2018 (1<<9) /* New in F2018. */ #define GFC_STD_F2008_OBS (1<<8) /* Obsolescent in F2008. */ #define GFC_STD_F2008 (1<<7) /* New in F2008. */ #define GFC_STD_LEGACY (1<<6) /* Backward compatibility. */ @@ -36,6 +36,15 @@ #define GFC_STD_F77 (1<<0) /* Included in F77, but not deleted or obsolescent in later standards. */ +/* Combinations of the above flags that specify which classes of features + * are allowed with a certain -std option. */ +#define GFC_STD_OPT_F95 (GFC_STD_F77 | GFC_STD_F95 | GFC_STD_F95_OBS \ + | GFC_STD_F2008_OBS | GFC_STD_F2018_OBS \ + | GFC_STD_F2018_DEL) +#define GFC_STD_OPT_F03 (GFC_STD_OPT_F95 | GFC_STD_F2003) +#define GFC_STD_OPT_F08 (GFC_STD_OPT_F03 | GFC_STD_F2008) +#define GFC_STD_OPT_F18 ((GFC_STD_OPT_F08 | GFC_STD_F2018) \ + & (~GFC_STD_F2018_DEL)) /* Bitmasks for the various FPE that can be enabled. These need to be straight integers e.g., 8 instead of (1<<3), because they will be included in Fortran source. */ @@ -149,15 +158,13 @@ #define GFC_STDOUT_UNIT_NUMBER 6 #define GFC_STDERR_UNIT_NUMBER 0 - -/* FIXME: Increase to 15 for Fortran 2008. Also needs changes to - GFC_DTYPE_RANK_MASK. See PR 36825. */ -#define GFC_MAX_DIMENSIONS 7 +/* F2003 onward. For std < F2003, error caught in array.c(gfc_match_array_ref). */ +#define GFC_MAX_DIMENSIONS 15 -#define GFC_DTYPE_RANK_MASK 0x07 -#define GFC_DTYPE_TYPE_SHIFT 3 -#define GFC_DTYPE_TYPE_MASK 0x38 -#define GFC_DTYPE_SIZE_SHIFT 6 +#define GFC_DTYPE_RANK_MASK 0x0F +#define GFC_DTYPE_TYPE_SHIFT 4 +#define GFC_DTYPE_TYPE_MASK 0x70 +#define GFC_DTYPE_SIZE_SHIFT 7 /* Basic types. BT_VOID is used by ISO C Binding so funcs like c_f_pointer can take any arg with the pointer attribute as a param. These are also