*参照元 [#b80a8668] #backlinks *説明 [#gafc69d4] -パス: [[gcc-8.3/gcc/tree.c]] -FIXME: これは何? --説明 **引数 [#xa7f7e26] -location_t loc -- --[[gcc-8.3/gcc/location_t]] -enum tree_code code -- --[[gcc-8.3/gcc/tree_code]] -tree name -- --[[gcc-8.3/gcc/tree]] -tree type MEM_STAT_DECL -- **返り値 [#h97dc792] -tree -- **参考 [#l25be6d2] *実装 [#baab1195] /* Create a DECL_... node of code CODE, name NAME and data type TYPE. We do NOT enter this node in any sort of symbol table. LOC is the location of the decl. layout_decl is used to set up the decl's storage layout. Other slots are initialized to 0 or null pointers. */ tree build_decl (location_t loc, enum tree_code code, tree name, tree type MEM_STAT_DECL) { tree t; t = make_node (code PASS_MEM_STAT); DECL_SOURCE_LOCATION (t) = loc; - --[[gcc-8.3/gcc/make_node()]] --[[gcc-8.3/gcc/DECL_SOURCE_LOCATION()]] /* if (type == error_mark_node) type = integer_type_node; */ /* That is not done, deliberately, so that having error_mark_node as the type can suppress useless errors in the use of this variable. */ DECL_NAME (t) = name; TREE_TYPE (t) = type; if (code == VAR_DECL || code == PARM_DECL || code == RESULT_DECL) layout_decl (t, 0); return t; } - --[[gcc-8.3/gcc/DECL_NAME()]] --[[gcc-8.3/gcc/TREE_TYPE()]] --[[gcc-8.3/gcc/layout_decl()]] *コメント [#lfce843d]