tree declarator;
tree declspecs;
{
- tree decl = start_decl (declarator, declspecs, 0);
+ tree decl = start_decl (declarator, declspecs, 0, NULLT, NULLT);
finish_decl (decl, NULLT, NULLT);
return decl;
}
decl_spec = tree_cons (NULLT, class_decl,
build_tree_list (NULLT,
ridpointers[(int) RID_STATIC]));
- decl = start_decl (decl_expr, decl_spec, 1);
+ decl = start_decl (decl_expr, decl_spec, 1, NULLT, NULLT);
end_temporary_allocation ();
/* Barf! Make sure this decl will end up at the global binding level. */
"defs");
chainon (field_decl_chain, field_decl);
- finish_struct (objc_symtab_template, field_decl_chain);
+ finish_struct (objc_symtab_template, field_decl_chain, NULLT);
}
/* Create the initial value for the `defs' field of _objc_symtab.
sc_spec = build_tree_list (NULLT, ridpointers[(int) RID_STATIC]);
UOBJC_SYMBOLS_decl = start_decl (get_identifier ("_OBJC_SYMBOLS"),
- tree_cons (NULLT, objc_symtab_template, sc_spec), 1);
+ tree_cons (NULLT, objc_symtab_template, sc_spec), 1,
+ NULLT, NULLT);
end_temporary_allocation (); /* start_decl trying to be smart about inits */
TREE_USED (UOBJC_SYMBOLS_decl) = 1;
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_module_template, field_decl_chain);
+ finish_struct (objc_module_template, field_decl_chain, NULLT);
/* create an instance of "objc_module" */
build_tree_list (NULLT, ridpointers[(int) RID_STATIC]));
UOBJC_MODULES_decl = start_decl (get_identifier ("_OBJC_MODULES"),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation (); /* start_decl trying to be smart about inits */
DECL_IGNORED_P (UOBJC_MODULES_decl) = 1;
decl_spec = tree_cons (NULLT, build_pointer_type (void_type_node),
build_tree_list (NULLT,
ridpointers[(int) RID_STATIC]));
- decl = start_decl (expr_decl, decl_spec, 1);
+ decl = start_decl (expr_decl, decl_spec, 1, NULLT, NULLT);
end_temporary_allocation ();
/* Output {class_name, ...}. */
decl_spec = tree_cons (NULLT, build_pointer_type (void_type_node),
build_tree_list (NULLT,
ridpointers[(int) RID_STATIC]));
- static_instances_decl = start_decl (expr_decl, decl_spec, 1);
+ static_instances_decl = start_decl (expr_decl, decl_spec, 1, NULLT, NULLT);
end_temporary_allocation ();
expr = build_constructor (TREE_TYPE (static_instances_decl),
nreverse (decls));
sc_spec = tree_cons (NULLT, ridpointers[(int) RID_STATIC], NULLT);
decl_specs = tree_cons (NULLT, ridpointers[(int) RID_CHAR], sc_spec);
expr_decl = build_nt (ARRAY_REF, DECL_NAME (decl), NULLT);
- decl = start_decl (expr_decl, decl_specs, 1);
+ decl = start_decl (expr_decl, decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
string_expr = my_build_string (IDENTIFIER_LENGTH (string) + 1,
IDENTIFIER_POINTER (string));
sc_spec = tree_cons (NULLT, ridpointers[(int) RID_STATIC], NULLT);
decl_specs = tree_cons (NULLT, ridpointers[(int) RID_CHAR], sc_spec);
expr_decl = build_nt (ARRAY_REF, DECL_NAME (decl), NULLT);
- decl = start_decl (expr_decl, decl_specs, 1);
+ decl = start_decl (expr_decl, decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
string_expr = my_build_string (IDENTIFIER_LENGTH (string) + 1,
IDENTIFIER_POINTER (string));
sc_spec = tree_cons (NULLT, ridpointers[(int) RID_STATIC], NULLT);
decl_specs = tree_cons (NULLT, ridpointers[(int) RID_CHAR], sc_spec);
expr_decl = build_nt (ARRAY_REF, DECL_NAME (decl), NULLT);
- decl = start_decl (expr_decl, decl_specs, 1);
+ decl = start_decl (expr_decl, decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
string_expr = my_build_string (IDENTIFIER_LENGTH (string) + 1,
IDENTIFIER_POINTER (string));
/* the `decl' that is returned from start_decl is the one that we
forward declared in `build_selector_reference' */
- decl = start_decl (var_decl, decl_specs, 1);
+ decl = start_decl (var_decl, decl_specs, 1, NULLT, NULLT);
}
/* add one for the '\0' character */
ivar_context = build_ivar_chain (class, 0);
- finish_struct (uprivate_record, ivar_context);
+ finish_struct (uprivate_record, ivar_context, NULLT);
CLASS_STATIC_TEMPLATE (class) = uprivate_record;
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- return finish_struct (template, field_decl_chain);
+ return finish_struct (template, field_decl_chain, NULLT);
}
static tree
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_ivar_list_record, field_decl_chain);
+ finish_struct (objc_ivar_list_record, field_decl_chain, NULLT);
return objc_ivar_list_record;
}
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (proto_record, field_decl_chain);
+ finish_struct (proto_record, field_decl_chain, NULLT);
return proto_record;
}
decl_specs = tree_cons (NULLT, type, sc_spec);
decl = start_decl (synth_id_with_class_suffix (name, proto),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
initlist = build_tree_list (NULLT, build_int_2 (size, 0));
decl_specs = tree_cons (NULLT, objc_protocol_template, sc_spec);
decl = start_decl (synth_id_with_class_suffix ("_OBJC_PROTOCOL", p),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
protocol_name_expr = add_objc_string (PROTOCOL_NAME (p), class_names);
;
chainon (field_decl_chain, field_decl);
- finish_struct (objc_category_template, field_decl_chain);
+ finish_struct (objc_category_template, field_decl_chain, NULLT);
}
/* struct objc_selector {
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_selector_template, field_decl_chain);
+ finish_struct (objc_selector_template, field_decl_chain, NULLT);
}
/* struct objc_class {
chainon (field_decl_chain, field_decl);
- finish_struct (objc_class_template, field_decl_chain);
+ finish_struct (objc_class_template, field_decl_chain, NULLT);
}
/* Generate appropriate forward declarations for an implementation. */
field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (record, field_decl_chain);
+ finish_struct (record, field_decl_chain, NULLT);
/* `struct objc_super *' */
super_type = groktypename (build_tree_list (build_tree_list (NULLT, record),
decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_ivar_record, field_decl_chain);
+ finish_struct (objc_ivar_record, field_decl_chain, NULLT);
return objc_ivar_record;
}
field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_ivar_list_record, field_decl_chain);
+ finish_struct (objc_ivar_list_record, field_decl_chain, NULLT);
return objc_ivar_list_record;
}
field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (objc_ivar_list_record, field_decl_chain);
+ finish_struct (objc_ivar_list_record, field_decl_chain, NULLT);
return objc_ivar_list_record;
}
decl_specs = tree_cons (NULLT, type, sc_spec);
decl = start_decl (synth_id_with_class_suffix (name, implementation_context),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
initlist = build_tree_list (NULLT, build_int_2 (size, 0));
field_decl = grokfield (input_filename, lineno, field_decl, decl_specs, NULLT);
chainon (field_decl_chain, field_decl);
- finish_struct (_SLT_record, field_decl_chain);
+ finish_struct (_SLT_record, field_decl_chain, NULLT);
return _SLT_record;
}
decl_specs = tree_cons (NULLT, type, sc_spec);
decl = start_decl (synth_id_with_class_suffix (name, implementation_context),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
initlist = build_tree_list (NULLT, build_int_2 (0, 0));
expr_decl = build1 (INDIRECT_REF, NULLT, expr_decl);
- refs_decl = start_decl (expr_decl, decl_specs, 1);
+ refs_decl = start_decl (expr_decl, decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
finish_decl (refs_decl, build_constructor (TREE_TYPE (refs_decl),
decl = start_decl (synth_id_with_class_suffix ("_OBJC_CATEGORY",
implementation_context),
- decl_specs, 1);
+ decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
initlist = build_category_initializer (TREE_TYPE (decl),
sc_spec = build_tree_list (NULLT, ridpointers[(int) RID_STATIC]);
decl_specs = tree_cons (NULLT, objc_class_template, sc_spec);
- decl = start_decl (DECL_NAME (UOBJC_METACLASS_decl), decl_specs, 1);
+ decl = start_decl (DECL_NAME (UOBJC_METACLASS_decl), decl_specs, 1,
+ NULLT, NULLT);
end_temporary_allocation ();
initlist
/* static struct objc_class _OBJC_CLASS_Foo={ ... }; */
- decl = start_decl (DECL_NAME (UOBJC_CLASS_decl), decl_specs, 1);
+ decl = start_decl (DECL_NAME (UOBJC_CLASS_decl), decl_specs, 1,
+ NULLT, NULLT);
end_temporary_allocation ();
initlist
if (!TYPE_FIELDS (record))
{
- finish_struct (record, build_ivar_chain (class, 0));
+ finish_struct (record, build_ivar_chain (class, 0), NULLT);
CLASS_STATIC_TEMPLATE (class) = record;
/* mark this record as a class template - for static typing */
UOBJC_SUPER_decl = start_decl (get_identifier (UTAG_SUPER),
build_tree_list (NULLT,
objc_super_template),
- 0);
+ 0, NULLT, NULLT);
finish_decl (UOBJC_SUPER_decl, NULLT, NULLT);
/* the `decl' that is returned from start_decl is the one that we
forward declared in `build_class_reference'. */
- decl = start_decl (name, decl_specs, 1);
+ decl = start_decl (name, decl_specs, 1, NULLT, NULLT);
end_temporary_allocation ();
finish_decl (decl, expr, NULLT);
return;