re PR c++/62127 (ICE with VLA in constructor)
[official-gcc.git] / gcc / treestruct.def
blob7d620fbacd380709d363cbe0ed92d5e2a3a02196
1 /* This file contains the definitions for the tree structure
2 enumeration used in GCC.
4 Copyright (C) 2005-2014 Free Software Foundation, Inc.
6 This file is part of GCC.
8 GCC is free software; you can redistribute it and/or modify it under
9 the terms of the GNU General Public License as published by the Free
10 Software Foundation; either version 3, or (at your option) any later
11 version.
13 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
14 WARRANTY; without even the implied warranty of MERCHANTABILITY or
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16 for more details.
18 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */
22 /* The format of this file is
24 DEFTREESTRUCT(enumeration value, printable name).
26 Each enumeration value should correspond with a single member of
27 union tree_node.
29 These enumerator values are used in order to distinguish members of
30 union tree_node for garbage collection purposes, as well as
31 specifying what structures contain what other structures in the
32 tree_contains_struct array. */
33 DEFTREESTRUCT(TS_BASE, "base")
34 DEFTREESTRUCT(TS_TYPED, "typed")
35 DEFTREESTRUCT(TS_COMMON, "common")
36 DEFTREESTRUCT(TS_INT_CST, "integer cst")
37 DEFTREESTRUCT(TS_REAL_CST, "real cst")
38 DEFTREESTRUCT(TS_FIXED_CST, "fixed cst")
39 DEFTREESTRUCT(TS_VECTOR, "vector")
40 DEFTREESTRUCT(TS_STRING, "string")
41 DEFTREESTRUCT(TS_COMPLEX, "complex")
42 DEFTREESTRUCT(TS_IDENTIFIER, "identifier")
43 DEFTREESTRUCT(TS_DECL_MINIMAL, "decl minimal")
44 DEFTREESTRUCT(TS_DECL_COMMON, "decl common")
45 DEFTREESTRUCT(TS_DECL_WRTL, "decl with RTL")
46 DEFTREESTRUCT(TS_DECL_NON_COMMON, "decl non-common")
47 DEFTREESTRUCT(TS_DECL_WITH_VIS, "decl with visibility")
48 DEFTREESTRUCT(TS_FIELD_DECL, "field decl")
49 DEFTREESTRUCT(TS_VAR_DECL, "var decl")
50 DEFTREESTRUCT(TS_PARM_DECL, "parm decl")
51 DEFTREESTRUCT(TS_LABEL_DECL, "label decl")
52 DEFTREESTRUCT(TS_RESULT_DECL, "result decl")
53 DEFTREESTRUCT(TS_CONST_DECL, "const decl")
54 DEFTREESTRUCT(TS_TYPE_DECL, "type decl")
55 DEFTREESTRUCT(TS_FUNCTION_DECL, "function decl")
56 DEFTREESTRUCT(TS_TRANSLATION_UNIT_DECL, "translation-unit decl")
57 DEFTREESTRUCT(TS_TYPE_COMMON, "type common")
58 DEFTREESTRUCT(TS_TYPE_WITH_LANG_SPECIFIC, "type with lang-specific")
59 DEFTREESTRUCT(TS_TYPE_NON_COMMON, "type non-common")
60 DEFTREESTRUCT(TS_LIST, "list")
61 DEFTREESTRUCT(TS_VEC, "vec")
62 DEFTREESTRUCT(TS_EXP, "exp")
63 DEFTREESTRUCT(TS_SSA_NAME, "ssa name")
64 DEFTREESTRUCT(TS_BLOCK, "block")
65 DEFTREESTRUCT(TS_BINFO, "binfo")
66 DEFTREESTRUCT(TS_STATEMENT_LIST, "statement list")
67 DEFTREESTRUCT(TS_CONSTRUCTOR, "constructor")
68 DEFTREESTRUCT(TS_OMP_CLAUSE, "omp clause")
69 DEFTREESTRUCT(TS_OPTIMIZATION, "optimization options")
70 DEFTREESTRUCT(TS_TARGET_OPTION, "target options")