Mercurial > hg > CbC > CbC_gcc
diff gcc/c-common.def @ 55:77e2b8dfacca gcc-4.4.5
update it from 4.4.3 to 4.5.0
author | ryoma <e075725@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 12 Feb 2010 23:39:51 +0900 |
parents | a06113de4d67 |
children |
line wrap: on
line diff
--- a/gcc/c-common.def Sun Feb 07 18:28:00 2010 +0900 +++ b/gcc/c-common.def Fri Feb 12 23:39:51 2010 +0900 @@ -2,7 +2,7 @@ additional tree codes used in the GNU C compiler (see tree.def for the standard codes). Copyright (C) 1987, 1988, 1990, 1993, 1997, 1998, - 1999, 2000, 2001, 2004, 2005, 2007 Free Software Foundation, Inc. + 1999, 2000, 2001, 2004, 2005, 2007, 2009 Free Software Foundation, Inc. Written by Benjamin Chelf <chelf@codesourcery.com> This file is part of GCC. @@ -24,12 +24,27 @@ /* Tree nodes used in the C frontend. These are also shared with the C++ and Objective C frontends. */ -/* A COMPOUND_LITERAL_EXPR represents a C99 compound literal. The - COMPOUND_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", tcc_expression, 1) +/* A C_MAYBE_CONST_EXPR, currently only used for C and Objective C, + tracks information about constancy of an expression and VLA type + sizes or VM expressions from typeof that need to be evaluated + before the main expression. It is used during parsing and removed + in c_fully_fold. C_MAYBE_CONST_EXPR_PRE is the expression to + evaluate first, if not NULL; C_MAYBE_CONST_EXPR_EXPR is the main + expression. If C_MAYBE_CONST_EXPR_INT_OPERANDS is set then the + expression may be used in an unevaluated part of an integer + constant expression, but not in an evaluated part. If + C_MAYBE_CONST_EXPR_NON_CONST is set then the expression contains + something that cannot occur in an evaluated part of a constant + expression (or outside of sizeof in C90 mode); otherwise it does + not. */ +DEFTREECODE (C_MAYBE_CONST_EXPR, "c_maybe_const_expr", tcc_expression, 2) + +/* An EXCESS_PRECISION_EXPR, currently only used for C and Objective + C, represents an expression evaluated in greater range or precision + than its type. The type of the EXCESS_PRECISION_EXPR is the + semantic type while the operand represents what is actually being + evaluated. */ +DEFTREECODE (EXCESS_PRECISION_EXPR, "excess_precision_expr", tcc_expression, 1) /* Local variables: