aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/options.c
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <coudert@clipper.ens.fr>2006-11-17 12:11:25 +0100
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2006-11-17 11:11:25 +0000
commit31198773e456d1a8ecabdd576fa3a9d4412cbf07 (patch)
tree2eedcb4f55a3cf78d29fa8c589d673751e940362 /gcc/fortran/options.c
parent9bd6112c5a2585eb58564f583ad84da87fe27d3a (diff)
downloadgcc-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.c11
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: