diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-17 01:18:41 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-17 01:18:41 +0000 |
commit | fccd796a15d21307aa3e51c857a661f630199f2c (patch) | |
tree | b0c444fe54bd3f1b332cc67c0727beaa08189268 /gcc/c-common.def | |
parent | bbf524e73c6d35b120c2424d476aaf4e96814b44 (diff) | |
download | gcc-fccd796a15d21307aa3e51c857a661f630199f2c.tar.gz |
* c-common.def (COMPOUND_LITERAL_EXPR): Contain a DECL_STMT, not
a DECL directly.
* c-common.h (COMPOUND_LITERAL_EXPR_DECL_STMT): New.
(COMPOUND_LITERAL_EXPR_DECL): Adjust definition.
* c-decl.c (build_compound_literal): Put the decl inside a
DECL_STMT.
* doc/c-tree.texi (COMPOUND_LITERAL_EXPR): Update documentation.
Fixes PR c/5105.
testsuite:
* gcc.c-torture/compile/20011217-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48085 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-common.def')
-rw-r--r-- | gcc/c-common.def | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/c-common.def b/gcc/c-common.def index 7840ce81610..d9b14be05a9 100644 --- a/gcc/c-common.def +++ b/gcc/c-common.def @@ -103,7 +103,8 @@ DEFTREECODE (CASE_LABEL, "case_label", 'e', 3) DEFTREECODE (STMT_EXPR, "stmt_expr", 'e', 1) /* A COMPOUND_LITERAL_EXPR represents a C99 compound literal. The - COMPOND_LITERAL_EXPR_DECL is the decl for the anonymous object - represented by the COMPOUND_LITERAL; the DECL_INITIAL of that - decl is the CONSTRUCTOR that initializes the compound literal. */ + COMPOND_LITERAL_EXPR_DECL_STMT is the a DECL_STMT containing the decl + for the anonymous object represented by the COMPOUND_LITERAL; + the DECL_INITIAL of that decl is the CONSTRUCTOR that initializes + the compound literal. */ DEFTREECODE (COMPOUND_LITERAL_EXPR, "compound_literal_expr", 'e', 1) |