aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpplib.h
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2000-01-12 00:35:36 +0000
committerZack Weinberg <zack@gcc.gnu.org>2000-01-12 00:35:36 +0000
commit40c79d58a3f379be9eb020e7d338319bf0e93907 (patch)
treee9b1edb4e28f5f27868000490ca3a879bdf09c87 /gcc/cpplib.h
parent2e76d35c7c6d9da8bbe0743362f43699cb384b56 (diff)
downloadgcc-40c79d58a3f379be9eb020e7d338319bf0e93907.zip
gcc-40c79d58a3f379be9eb020e7d338319bf0e93907.tar.gz
gcc-40c79d58a3f379be9eb020e7d338319bf0e93907.tar.bz2
cpplib.h (struct cpp_options): Change lang_asm to char.
2000-01-11 16:24 -0800 Zack Weinberg <zack@wolery.cumb.org> * cpplib.h (struct cpp_options): Change lang_asm to char. Add lang_fortran. * cppinit.c (builtin_array): Take out __STDC_VERSION__, it's done in cpp_handle_option now. (initialize_builtins): Take out special case code used only by __STDC_VERSION__. (cpp_handle_option): Turn off trigraphs and trigraph warnings if -traditional. Recognize -lang-fortran and set lang_fortran, also turn off cplusplus_comments. (print_help): Document -lang-fortran. * cpplib.c (handle_directive): Ignore `# 123 "file"' if lang_asm. Ignore all directives other than `# 123 "file"' if CPP_PREPROCESSED. (cpp_get_token): If -traditional, don't recognize directives unless the # is in column 1. (parse_string): If lang_fortran or lang_asm, silently terminate strings ('' or "") at end of line. Remove unnecessary braces. From-SVN: r31342
Diffstat (limited to 'gcc/cpplib.h')
-rw-r--r--gcc/cpplib.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h
index f18a61d..a517a26 100644
--- a/gcc/cpplib.h
+++ b/gcc/cpplib.h
@@ -346,10 +346,18 @@ struct cpp_options {
char objc;
- /* Nonzero means this is an assembly file, and allow
- unknown directives, which could be comments. */
+ /* Nonzero means this is an assembly file, so ignore unrecognized
+ directives and the "# 33" form of #line, both of which are
+ probably comments. Also, permit unbalanced ' strings (again,
+ likely to be in comments). */
- int lang_asm;
+ char lang_asm;
+
+ /* Nonzero means this is Fortran, and we don't know where the
+ comments are, so permit unbalanced ' strings. Unlike lang_asm,
+ this does not ignore unrecognized directives. */
+
+ char lang_fortran;
/* Nonzero means turn NOTREACHED into #pragma NOTREACHED etc */