aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorJason Thorpe <thorpej@wasabisystems.com>2002-04-07 03:12:23 +0000
committerJason Thorpe <thorpej@gcc.gnu.org>2002-04-07 03:12:23 +0000
commit477cdac7549280eaf6d79ab9dce15e0099e01ce0 (patch)
treea89c2d17b9489b6bd19288f037013b3eaa28a891 /gcc/doc
parent03da52864c9025823694a9b5fabc472c6e534658 (diff)
downloadgcc-477cdac7549280eaf6d79ab9dce15e0099e01ce0.zip
gcc-477cdac7549280eaf6d79ab9dce15e0099e01ce0.tar.gz
gcc-477cdac7549280eaf6d79ab9dce15e0099e01ce0.tar.bz2
cppinit.c (cpp_create_reader): Initialize discard_comments_in_macro_exp.
* cppinit.c (cpp_create_reader): Initialize discard_comments_in_macro_exp. (COMMAND_LINE_OPTIONS): Add "-CC" option. (cpp_handle_option): Handle "-CC" option. * cpplex.c (save_comment): If saving a C++ comment in a directive, convert it to a C comment. (_cpp_lex_direct): Pass second comment start character to save_comment to indicate comment type. * cpplib.c (_cpp_handle_directive): If processing a "#define" directive and discard_comments_in_macro_exp is false, re-enable saving of comments. (lex_macro_node): If discard_comments_in_macro_exp is false, discard any comments before the macro identifier. * cpplib.h (struct cpp_options): Add discard_comments_in_macro_exp member. * cppmacro.c (cpp_get_token): If expanding a macro while processing a directive, discard any comments we might encounter. (parse_params): If discard_comments_in_macro_exp is false, ignore comments in the macro parameter list. * gcc.c (cpp_unique_options): Add "-CC" option. (option_map): Map "--comments-in-macros" to "-CC". * doc/cppopts.texi: Document "-CC" option. * f/lang-specs.h: Add "-CC" option. * testsuite/gcc.dg/cpp/maccom1.c: New test. * testsuite/gcc.dg/cpp/maccom2.c: New test. * testsuite/gcc.dg/cpp/maccom3.c: New test. * testsuite/gcc.dg/cpp/maccom4.c: New test. * testsuite/gcc.dg/cpp/maccom5.c: New test. * testsuite/gcc.dg/cpp/maccom6.c: New test. From-SVN: r51975
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/cppopts.texi13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/doc/cppopts.texi b/gcc/doc/cppopts.texi
index 5958abd..68bd439 100644
--- a/gcc/doc/cppopts.texi
+++ b/gcc/doc/cppopts.texi
@@ -527,6 +527,19 @@ For example, comments appearing at the start of what would be a
directive line have the effect of turning that line into an ordinary
source line, since the first token on the line is no longer a @samp{#}.
+@item -CC
+Do not discard comments, including during macro expansion. This is
+like @option{-C}, except that comments contained within macros are
+also passed through to the output file where the macro is expanded.
+
+In addition to the side-effects of the @option{-C} option, the
+@option{-CC} option causes all C++-style comments inside a macro
+to be converted to C-style comments. This is to prevent later use
+of that macro from inadvertently commenting out the remainer of
+the source line.
+
+The @option{-CC} option is generally used to support lint comments.
+
@item -gcc
@opindex gcc
Define the macros @sc{__gnuc__}, @sc{__gnuc_minor__} and