aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/libgfortran.h
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2005-08-11 15:50:13 +0200
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2005-08-11 13:50:13 +0000
commit8b67b708f159a6776a07d6eec9c44d3dc8ab9f6e (patch)
treed2c54ce8afd0ee3ffde950228cb4b59edbde4431 /libgfortran/libgfortran.h
parent74b002ba34f1d63cc0130ad44076b462477c631f (diff)
downloadgcc-8b67b708f159a6776a07d6eec9c44d3dc8ab9f6e.zip
gcc-8b67b708f159a6776a07d6eec9c44d3dc8ab9f6e.tar.gz
gcc-8b67b708f159a6776a07d6eec9c44d3dc8ab9f6e.tar.bz2
re PR libfortran/20006 ($ format extension doesn't work)
PR libfortran/20006 * gfortran.h: Add is_main_program member to symbol_attribute. * trans-decl: Add a gfor_fndecl_set_std tree. (gfc_build_builtin_function_decls): Create it. (gfc_generate_function_code): Add this call at the beginning of the main program. * trans.c (gfc_generate_code): Move main_program and attr. * trans.h: Add declaration for gfor_fndecl_set_std. * Makefile.am: Add file runtime/compile_options.c. * Makefile.in: Regenerate. * libgfortran.h: Create structure compile_options_t. Define the compile_options variable and GFC_STD_ macros. * runtime/compile_options.c: New file. * runtime/error.c (notify_std): New function. * runtime/main.c (init): Call init_compile_options during initialization. * io/format.c: Use the new notify_std function for the $ descriptor extension. * gfortran.dg/runtime_warning_1.f90: New test. Co-Authored-By: Steven Bosscher <stevenb@suse.de> From-SVN: r102990
Diffstat (limited to 'libgfortran/libgfortran.h')
-rw-r--r--libgfortran/libgfortran.h28
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. */