diff options
author | Francois-Xavier Coudert <coudert@clipper.ens.fr> | 2006-11-17 12:11:25 +0100 |
---|---|---|
committer | François-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2006-11-17 11:11:25 +0000 |
commit | 31198773e456d1a8ecabdd576fa3a9d4412cbf07 (patch) | |
tree | 2eedcb4f55a3cf78d29fa8c589d673751e940362 /gcc/fortran/options.c | |
parent | 9bd6112c5a2585eb58564f583ad84da87fe27d3a (diff) | |
download | gcc-31198773e456d1a8ecabdd576fa3a9d4412cbf07.zip gcc-31198773e456d1a8ecabdd576fa3a9d4412cbf07.tar.gz gcc-31198773e456d1a8ecabdd576fa3a9d4412cbf07.tar.bz2 |
gfortran.h (gfc_add_intrinsic_modules_path, [...]): New prototypes.
* gfortran.h (gfc_add_intrinsic_modules_path,
gfc_open_intrinsic_module): New prototypes.
(gfc_add_include_path, gfc_open_included_file): Update prototypes.
* lang.opt: Add -fintrinsic-modules-path option.
* module.c (gfc_match_use): Match the Fortran 2003 form of
USE statement.
(gfc_use_module): Also handle intrinsic modules.
* scanner.c (gfc_directorylist): Add use_for_modules for field.
(intrinsic_modules_dirs): New static variable.
(add_path_to_list, gfc_add_intrinsic_modules_path): New functions.
(gfc_add_include_path): Use the new add_path_to_list helper
function.
(gfc_release_include_path): Free memory for intrinsic_modules_dirs.
(open_included_file, gfc_open_intrinsic_module): New functions.
(gfc_open_included_file): Use the new open_included_file
helper function.
* lang-specs.h: Use the new -fintrinsic-modules-path option.
* parse.c (decode_statement): Do not match the required space
after USE here.
* options.c (gfc_handle_option): Handle the new option. Use new
prototype for gfc_add_include_path.
(gfc_post_options): Use new prototype for gfc_add_include_path.
* gfortran.dg/use_1.f90: New test.
* gfortran.dg/use_1.f90: New test.
* gfortran.dg/use_1.f90: New test.
From-SVN: r118930
Diffstat (limited to 'gcc/fortran/options.c')
-rw-r--r-- | gcc/fortran/options.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index a814910..f03319b 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -217,10 +217,10 @@ gfc_post_options (const char **pfilename) source_path = alloca (i + 1); memcpy (source_path, canon_source_file, i); source_path[i] = 0; - gfc_add_include_path (source_path); + gfc_add_include_path (source_path, true); } else - gfc_add_include_path ("."); + gfc_add_include_path (".", true); if (canon_source_file != gfc_source_file) gfc_free ((void *) canon_source_file); @@ -511,6 +511,11 @@ gfc_handle_option (size_t scode, const char *arg, int value) gfc_option.flag_implicit_none = value; break; + case OPT_fintrinsic_modules_path: + gfc_add_include_path (arg, false); + gfc_add_intrinsic_modules_path (arg); + break; + case OPT_fmax_errors_: gfc_option.max_errors = value; break; @@ -555,7 +560,7 @@ gfc_handle_option (size_t scode, const char *arg, int value) break; case OPT_I: - gfc_add_include_path (arg); + gfc_add_include_path (arg, true); break; case OPT_J: |