Hi Tobias, > I am not sure whether it is the best solution, but one possibility would
be to ignore -fintrinsic-modules-path for the warning. (That assumes that the warning is (almost) never needed for an installed compiler.)
I think this is the right approach. The attached patch does this. Regression-tested with the finclude directory from the installation. OK for trunk? Thomas 2012-08-02 Thomas König <tkoe...@gcc.gnu.org> PR fortran/54033 * scanner.c (add_path_to_list): New argument warn. Don't warn if it is true. (gfc_add_include_path): Warn if directory is missing. (gfc_add_intrinsic_modules_path): Do not warn if directory is missing. * optinons.c (gfc_handle_option): Do not add directory for intrinsic modules to normal include path.
Index: scanner.c =================================================================== --- scanner.c (Revision 190054) +++ scanner.c (Arbeitskopie) @@ -307,7 +307,7 @@ gfc_scanner_done_1 (void) static void add_path_to_list (gfc_directorylist **list, const char *path, - bool use_for_modules, bool head) + bool use_for_modules, bool head, bool warn) { gfc_directorylist *dir; const char *p; @@ -324,8 +324,11 @@ add_path_to_list (gfc_directorylist **list, const gfc_warning_now ("Include directory \"%s\": %s", path, xstrerror(errno)); else - /* FIXME: Also support -Wmissing-include-dirs. */ - gfc_warning_now ("Nonexistent include directory \"%s\"", path); + { + /* FIXME: Also support -Wmissing-include-dirs. */ + if (warn) + gfc_warning_now ("Nonexistent include directory \"%s\"", path); + } return; } else if (!S_ISDIR (st.st_mode)) @@ -363,7 +366,7 @@ add_path_to_list (gfc_directorylist **list, const void gfc_add_include_path (const char *path, bool use_for_modules, bool file_dir) { - add_path_to_list (&include_dirs, path, use_for_modules, file_dir); + add_path_to_list (&include_dirs, path, use_for_modules, file_dir, true); /* For '#include "..."' these directories are automatically searched. */ if (!file_dir) @@ -374,7 +377,7 @@ gfc_add_include_path (const char *path, bool use_f void gfc_add_intrinsic_modules_path (const char *path) { - add_path_to_list (&intrinsic_modules_dirs, path, true, false); + add_path_to_list (&intrinsic_modules_dirs, path, true, false, false); } Index: options.c =================================================================== --- options.c (Revision 189754) +++ options.c (Arbeitskopie) @@ -819,7 +819,6 @@ gfc_handle_option (size_t scode, const char *arg, break; case OPT_fintrinsic_modules_path: - gfc_add_include_path (arg, false, false); gfc_add_intrinsic_modules_path (arg); break;