diff options
Diffstat (limited to 'libgfortran/libgfortran.h')
-rw-r--r-- | libgfortran/libgfortran.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h index 6db6ef9..de17c2f 100644 --- a/libgfortran/libgfortran.h +++ b/libgfortran/libgfortran.h @@ -295,11 +295,25 @@ typedef struct } options_t; - extern options_t options; internal_proto(options); +/* Compile-time options that will influence the library. */ + +typedef struct +{ + int warn_std; + int allow_std; +} +compile_options_t; + +extern compile_options_t compile_options; +internal_proto(compile_options); + + + + /* Structure for statement options. */ typedef struct @@ -334,6 +348,18 @@ typedef enum error_codes; +/* Flags to specify which standard/extension contains a feature. + Keep them in sync with their counterparts in gcc/fortran/gfortran.h. */ +#define GFC_STD_LEGACY (1<<6) /* Backward compatibility. */ +#define GFC_STD_GNU (1<<5) /* GNU Fortran extension. */ +#define GFC_STD_F2003 (1<<4) /* New in F2003. */ +/* Note that no features were obsoleted nor deleted in F2003. */ +#define GFC_STD_F95 (1<<3) /* New in F95. */ +#define GFC_STD_F95_DEL (1<<2) /* Deleted in F95. */ +#define GFC_STD_F95_OBS (1<<1) /* Obsoleted in F95. */ +#define GFC_STD_F77 (1<<0) /* Up to and including F77. */ + + /* The filename and line number don't go inside the globals structure. They are set by the rest of the program and must be linked to. */ |