aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpphash.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cpphash.h')
-rw-r--r--gcc/cpphash.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/cpphash.h b/gcc/cpphash.h
index 5e69c85..547a70c 100644
--- a/gcc/cpphash.h
+++ b/gcc/cpphash.h
@@ -253,6 +253,18 @@ struct spec_nodes
cpp_hashnode *n__VA_ARGS__; /* C99 vararg macros */
};
+/* Encapsulates state used to convert a stream of tokens into a text
+ file. */
+struct printer
+{
+ FILE *outf; /* Stream to write to. */
+ const struct line_map *map; /* Logical to physical line mappings. */
+ const cpp_token *prev; /* Previous token. */
+ const cpp_token *source; /* Source token for spacing. */
+ unsigned int line; /* Line currently being written. */
+ unsigned char printed; /* Nonzero if something output at line. */
+};
+
/* Represents the contents of a file cpplib has read in. */
struct cpp_buffer
{
@@ -419,6 +431,9 @@ struct cpp_reader
preprocessor. */
struct spec_nodes spec_nodes;
+ /* Used when doing preprocessed output. */
+ struct printer print;
+
/* Whether cpplib owns the hashtable. */
unsigned char our_hashtable;