diff options
author | Alfred Minarik <a.minarik@aon.at> | 2007-08-06 13:10:19 +0200 |
---|---|---|
committer | Gerald Pfeifer <gerald@gcc.gnu.org> | 2007-08-06 11:10:19 +0000 |
commit | 5958f5cbe04796aed00e833d45e347d990aba506 (patch) | |
tree | 40a885ef203ac5e63ceb7fa4aca765ce1cbb70de | |
parent | ae95e46e6ffa937505ef9ab86eada677e382150b (diff) | |
download | gcc-5958f5cbe04796aed00e833d45e347d990aba506.zip gcc-5958f5cbe04796aed00e833d45e347d990aba506.tar.gz gcc-5958f5cbe04796aed00e833d45e347d990aba506.tar.bz2 |
re PR pch/13676 (GCC failes to recognize files ending in .hpp as headers to be precompiled)
PR pch/13676
* doc/invoke.texi: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header.
cp:
* lang-specs.h: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header.
* g++spec.c (lang_specific_driver): Check them.
From-SVN: r127239
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/g++spec.c | 6 | ||||
-rw-r--r-- | gcc/cp/lang-specs.h | 6 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 9 |
5 files changed, 31 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 256381b..62005cf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2007-08-06 Alfred Minarik <a.minarik@aon.at> + + PR pch/13676 + * doc/invoke.texi: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header. + 2008-08-05 Andrew Pinski <andrew_pinski@playstation.sony.com> PR middle-end/32988 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 468612d..eef4d12 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2007-08-04 Alfred Minarik <a.minarik@aon.at> + + PR pch/13676 + * lang-specs.h: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header. + * g++spec.c (lang_specific_driver): Check them. + 2007-08-06 Paolo Carlini <pcarlini@suse.de> PR c++/19532 diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c index 0686de4..a19a35f 100644 --- a/gcc/cp/g++spec.c +++ b/gcc/cp/g++spec.c @@ -235,6 +235,12 @@ lang_specific_driver (int *in_argc, const char *const **in_argv, { if ((len <= 2 || strcmp (argv[i] + (len - 2), ".H") != 0) && (len <= 2 || strcmp (argv[i] + (len - 2), ".h") != 0) + && (len <= 4 || strcmp (argv[i] + (len - 4), ".hpp") != 0) + && (len <= 3 || strcmp (argv[i] + (len - 3), ".hp") != 0) + && (len <= 4 || strcmp (argv[i] + (len - 4), ".hxx") != 0) + && (len <= 4 || strcmp (argv[i] + (len - 4), ".h++") != 0) + && (len <= 4 || strcmp (argv[i] + (len - 4), ".HPP") != 0) + && (len <= 4 || strcmp (argv[i] + (len - 4), ".tcc") != 0) && (len <= 3 || strcmp (argv[i] + (len - 3), ".hh") != 0)) library = 1; } diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h index 7be145d..54d69a1 100644 --- a/gcc/cp/lang-specs.h +++ b/gcc/cp/lang-specs.h @@ -33,6 +33,12 @@ along with GCC; see the file COPYING3. If not see {".C", "@c++", 0, 0, 0}, {".CPP", "@c++", 0, 0, 0}, {".H", "@c++-header", 0, 0, 0}, + {".hpp", "@c++-header", 0, 0, 0}, + {".hp", "@c++-header", 0, 0, 0}, + {".hxx", "@c++-header", 0, 0, 0}, + {".h++", "@c++-header", 0, 0, 0}, + {".HPP", "@c++-header", 0, 0, 0}, + {".tcc", "@c++-header", 0, 0, 0}, {".hh", "@c++-header", 0, 0, 0}, {"@c++-header", "%{E|M|MM:cc1plus -E %(cpp_options) %2 %(cpp_debug_options)}\ diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 5a13c42..233dad3 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -913,6 +913,12 @@ Objective-C++ source code which should not be preprocessed. @item @var{file}.hh @itemx @var{file}.H +@itemx @var{file}.hp +@itemx @var{file}.hxx +@itemx @var{file}.hpp +@itemx @var{file}.HPP +@itemx @var{file}.h++ +@itemx @var{file}.tcc C++ header file to be turned into a precompiled header. @item @var{file}.f @@ -1240,7 +1246,8 @@ Display the version number and copyrights of the invoked GCC@. @cindex C++ source file suffixes C++ source files conventionally use one of the suffixes @samp{.C}, @samp{.cc}, @samp{.cpp}, @samp{.CPP}, @samp{.c++}, @samp{.cp}, or -@samp{.cxx}; C++ header files often use @samp{.hh} or @samp{.H}; and +@samp{.cxx}; C++ header files often use @samp{.hh}, @samp{.hpp}, +@samp{.H}, or (for shared template code) @samp{.tcc}; and preprocessed C++ files use the suffix @samp{.ii}. GCC recognizes files with these names and compiles them as C++ programs even if you call the compiler the same way as for compiling C programs (usually |