diff options
author | Ben Elliston <bje@au.ibm.com> | 2004-05-22 02:39:35 +0000 |
---|---|---|
committer | Ben Elliston <bje@gcc.gnu.org> | 2004-05-22 12:39:35 +1000 |
commit | b02398bd5bebe35bc44def2963fee7a4c4cf3568 (patch) | |
tree | 0fb35652621330c19f8e8ce0ffeb987cb15f69d5 /gcc/cpplib.h | |
parent | 12fea1f9fcb7129531fa3f30a0688a80e68b5353 (diff) | |
download | gcc-b02398bd5bebe35bc44def2963fee7a4c4cf3568.zip gcc-b02398bd5bebe35bc44def2963fee7a4c4cf3568.tar.gz gcc-b02398bd5bebe35bc44def2963fee7a4c4cf3568.tar.bz2 |
c.opt (Wmissing-include-dirs): New.
* c.opt (Wmissing-include-dirs): New.
* c-opts.c (c_common_handle_option): Pass true for user_supplied_p
to add_path () for -I, but false for OPT_idirafter, OPT_iquote and
OPT_isystem. Handle case OPT_Wmissing_include_dirs.
* c-incpath.h (add_path): Add fourth (bool) argument.
* c-incpath.c (add_env_var_paths): Pass false to add_path ().
(add_standard_paths): Likewise.
(remove_duplicates) [REASON_NOENT]: Warn if -Wmissing-include-dirs
is used and the directory was user-supplied via -I.
(add_path): Set p->user_supplied_p. Remove duplicated code by
using add_cpp_dir_path ().
* cpplib.h (struct cpp_options): Add warn_missing_include_dirs.
(struct cpp_dir): Add user_supplied_p.
* doc/invoke.texi (Warning Options): Document new option.
[testsuite]
* gcc.dg/cpp/Wmissingdirs.c: New.
From-SVN: r82121
Diffstat (limited to 'gcc/cpplib.h')
-rw-r--r-- | gcc/cpplib.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h index 5ac0a19..d006192 100644 --- a/gcc/cpplib.h +++ b/gcc/cpplib.h @@ -264,6 +264,10 @@ struct cpp_options /* Nonzero means warn if slash-star appears in a comment. */ unsigned char warn_comments; + /* Nonzero means warn if a user-supplied include directory does not + exist. */ + unsigned char warn_missing_include_dirs; + /* Nonzero means warn if there are any trigraphs. */ unsigned char warn_trigraphs; @@ -439,6 +443,9 @@ struct cpp_dir directories in the search path. */ ino_t ino; dev_t dev; + + /* Is this a user-supplied directory? */ + bool user_supplied_p; }; /* Name under which this program was invoked. */ |