diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-15 22:27:07 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-15 22:27:07 +0000 |
commit | 204ca66e9757c09e16bd375a5831abafc1c8f111 (patch) | |
tree | 9dec30bd55dcecc61d1bc99e776548971a77e3dd /gcc/c-common.def | |
parent | c4f51a023e85088c707d57342fa4a08ebfbc5f9e (diff) | |
download | gcc-204ca66e9757c09e16bd375a5831abafc1c8f111.tar.gz |
* c-common.def (FILE_STMT): New code.
* c-common.c (statement_code_p): It's a statement.
* c-common.h (stmt_tree_s): Add x_last_filename.
(FILE_STMT_FILENAME_NODE, FILE_STMT_FILENAME): New macros.
(last_expr_filename): New macro.
* c-semantics.c (begin_stmt_tree): Initialize it.
(add_stmt): If the filename changed, also insert a
FILE_STMT.
(expand_stmt): Handle seeing one.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48881 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-common.def')
-rw-r--r-- | gcc/c-common.def | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/c-common.def b/gcc/c-common.def index 2f14cf2ceaf..d59a151680e 100644 --- a/gcc/c-common.def +++ b/gcc/c-common.def @@ -92,6 +92,10 @@ DEFTREECODE (ASM_STMT, "asm_stmt", 'e', 5) variables declared in this scope. */ DEFTREECODE (SCOPE_STMT, "scope_stmt", 'e', 1) +/* A FILE_STMT marks the spot where a function changes files. It has no + other semantics. FILE_STMT_FILENAME gives the name. */ +DEFTREECODE (FILE_STMT, "file_stmt", 'e', 1) + /* Used to represent a CASE_LABEL. The operands are CASE_LOW and CASE_HIGH, respectively. If CASE_LOW is NULL_TREE, the label is a 'default' label. If CASE_HIGH is NULL_TREE, the label is a normal case @@ -108,3 +112,9 @@ DEFTREECODE (STMT_EXPR, "stmt_expr", 'e', 1) the DECL_INITIAL of that decl is the CONSTRUCTOR that initializes the compound literal. */ DEFTREECODE (COMPOUND_LITERAL_EXPR, "compound_literal_expr", 'e', 1) + +/* +Local variables: +mode:c +End: +*/ |