2015-12-04  Release Manager

	* GCC 5.3.0 released.

2015-07-16  Release Manager

	* GCC 5.2.0 released.

2015-04-22  Release Manager

	* GCC 5.1.0 released.

2015-01-09  Michael Collison  <michael.collison@linaro.org>

	* objc-act.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
	input.h, alias.h, symtab.h, options, fold-const.h,
	wide-int.h, and inchash.h due to flattening of tree.h.
	* objc-encoding.c: Ditto.
	* objc-gnu-runtime-abi-01.c: Ditto.
	* objc-lang.c: Ditto.
	* objc-map.c: Ditto.
	* objc-next-runtime-abi-01.c: Ditto.
	* objc-next-runtime-abi-02.c: Ditto.
	* objc-runtime-shared-support.c: Ditto.

2015-01-05  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2014-10-28  Andrew MacLeod  <amacleod@redhat.com>

	* objc-act.c: Adjust include files.

2014-10-22  Alan Modra  <amodra@gmail.com>

	* objc-encoding.c (encode_array): Cast result of obstack_base.
	(encode_type): Likewise.

2014-10-16  Andrew MacLeod  <amacleod@redhat.com>

	* objc-act.c: Adjust include files.

2014-10-12  Trevor Saunders  <tsaunders@mozilla.com>

	* objc-act.c: use hash_table instead of hashtab.

2014-09-15  Jakub Jelinek  <jakub@redhat.com>

	* Make-lang.in (check_objc_parallelize): Change to just an upper
	bound number.

2014-07-14  Jan Hubicka  <hubicka@ucw.cz>

	* objc-act.c (objc_common_tree_size): New function.
	* objc-act.h (KEYWORD_KEY_NAME, KEYWORD_ARG_NAME): Add type
	checking.
	(INSTANCE_METHOD_OR_CLASS_METHOD_DECL_CHECK): New macro.
	(METHOD_SEL_NAME, METHOD_SEL_ARGS, METHOD_ADD_ARGS,
	METHOD_ADD_ARGS_ELLIPSIS_P, METHOD_DEFINITION, METHOD_ENCODING,
	METHOD_TYPE_ATTRIBUTES, METHOD_PROPERTY_CONTEXT): Add type checking.
	(METHOD_SEL_ARGS): Use decl_common.size instead of
	decl_non_common.result.
	(PROPERTY_NAME, PROPERTY_GETTER_NAME, PROPERTY_SETTER_NAME,
	PROPERTY_READONLY, PROPERTY_NONATOMIC, PROPERTY_ASSIGN_SEMANTICS,
	PROPERTY_IVAR_NAME, PROPERTY_DYNAMIC, PROPERTY_HAS_NO_GETTER,
	PROPERTY_HAS_NO_SETTER, PROPERTY_OPTIONAL): Add type checking.
	(objc_common_tree_size): Declare.
	* objc-lang.c (LANG_HOOKS_TREE_SIZE): New macro.

2014-06-24  Jan Hubicka  <hubicka@ucw.cz>

	* objc-act.c (objc_xref_basetypes): Set TYPE_BINFO of type variants,
	too.

2014-06-24  Trevor Saunders  <tsaunders@mozilla.com>

	* objc-act.c: Adjust.

2014-05-17  Trevor Saunders  <tsaunders@mozilla.com>

	* objc-act.c (objc_build_string_object): Adjust.
	(continue_class): Likewise.
	* objc-act.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Likewise.
	* objc-map.c (objc_map_alloc_ggc): Likewise.
	(objc_map_private_resize): Likewise.
	* objc-next-runtime-abi-02.c (objc_next_runtime_abi_02_init):
	Likewise.
	(hash_name_enter): Likewise.

2014-05-06  Kenneth Zadeck  <zadeck@naturalbridge.com>
	    Mike Stump  <mikestump@comcast.net>
	    Richard Sandiford  <rdsandiford@googlemail.com>

	* objc-act.c: Include wide-int.h.
	(objc_decl_method_attributes): Use wide-int interfaces.

2014-04-24  Dimitris Papavasiliou  <dpapavas@gmail.com>

	PR objc/56044
	* objc-act.c (objc_ivar_visibility, objc_default_ivar_visibility): Add.
	(objc_init): Initialize objc_default_ivar_visibility.
	(objc_start_class_interface): Use objc_default_ivar_visibility.
	(objc_start_class_implementation): Likewise.
	(objc_lookup_ivar): Implement -fno-local-ivars.

2014-01-31  Marek Polacek  <polacek@redhat.com>

	PR c/59963
	* objc-next-runtime-abi-02.c (build_throw_stmt): Pass vNULL to
	build_function_call_vec.
	(finish_catch): Likewise.
	(next_runtime_abi_02_get_class_reference): Likewise.
	* objc-next-runtime-abi-01.c (build_objc_method_call): Pass vNULL to
	build_function_call_vec.
	(build_throw_stmt): Likewise.
	* objc-gnu-runtime-abi-01.c: (build_objc_method_call): Pass vNULL to
	build_function_call_vec.
	(build_throw_stmt): Likewise.

2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>

	Update copyright years

2013-12-04  Joseph Myers  <joseph@codesourcery.com>

	PR c/52023
	* objc-act.c (objc_synthesize_getter): Update calls to
	c_sizeof_or_alignof_type.

2013-11-22  Andrew MacLeod  <amacleod@redhat.com>

	* objc/objc-act.c: Add required include files from gimple.h.

2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>

	* objc-encoding.c: Replace tree_low_cst (..., 1) with tree_to_uhwi
	throughout.

2013-11-18  Richard Sandiford  <rdsandiford@googlemail.com>

	* objc-next-runtime-abi-02.c: Replace tree_low_cst (..., 0) with
	tree_to_shwi throughout.

2013-11-14  Andrew MacLeod  <amacleod@redhat.com>

	* objc-act.c: Include only gimplify.h and gimple.h as needed.

2013-11-14  Diego Novillo  <dnovillo@google.com>

	* objc-act.c: Include stringpool.h.
	Include stor-layout.h.
	Include attribs.h.
	* objc-encoding.c: Include stringpool.h.
	Include stor-layout.h.
	* objc-gnu-runtime-abi-01.c: Include stringpool.h.
	* objc-next-runtime-abi-01.c:
	Include stringpool.h.
	* objc-next-runtime-abi-02.c: Include stringpool.h.
	* objc-runtime-shared-support.c: Include stringpool.h.

2013-11-12  Andrew MacLeod  <amacleod@redhat.com>

	* objc-act.c: Include gimplify.h.

2013-11-07  Andrew MacLeod  <amacleod@redhat.com>

	* objc-act.c (objc_push_parm): Handle atomic qualifier.

2013-09-25  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in (START_HDRS, cc1obj-checksum.o, objc/objc-lang.o)
	(objc/objc-runtime-shared-support.o)
	(objc/objc-gnu-runtime-abi-01.o, objc/objc-next-runtime-abi-01.o)
	(objc/objc-next-runtime-abi-02.o, objc/objc-act.o)
	(objc/objc-encoding.o, objc/objc-map.o): Remove.

2013-09-14  Iain Sandoe  <iain@codesourcery.com>

	PR target/48094
	* objc-next-runtime-abi-01.c (generate_objc_image_info): Remove.
	(objc_generate_v1_next_metadata): Remove generation of ImageInfo.
	* objc-next-runtime-abi-02.c (generate_v2_objc_image_info): Remove.
	(objc_generate_v2_next_metadata): Remove generation of ImageInfo.

2013-07-21   OndÅej BÃ­lka  <neleai@seznam.cz>

	* objc-act.c: Fix typos.
	* objc-encoding.c: Likewise.
	* objc-gnu-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-02.c: Likewise.

2013-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* objc-next-runtime-abi-02.c (build_v2_build_objc_method_call):
	Fix build_conditional_expr call.

2013-05-16  Jason Merrill  <jason@redhat.com>

	* Make-lang.in (cc1obj$(exeext)): Use link mutex.

2012-11-20  Diego Novillo  <dnovillo@google.com>

	* objc-act.c: Replace all vec<T, A>() initializers with vNULL.

2012-11-16  Diego Novillo  <dnovillo@google.com>

	Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)

	* objc-act.c: Use new vec API in vec.h.
	* objc-act.h: Likewise.
	* objc-gnu-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-02.c: Likewise.
	* objc-runtime-hooks.h: Likewise.
	* objc-runtime-shared-support.c: Likewise.
	* objc-runtime-shared-support.h: Likewise.

2012-10-01  Lawrence Crowl  <crowl@google.com>

	* Make-lang.in (OBJC_OBJS): Add dependence on hash-table.o.
	(objc-act.o): Add dependence on hash-table.h.
	* objc-act.c (objc_detect_field_duplicates): Change to new type-safe
	hash table.

2012-06-29  Steven Bosscher  <steven@gcc.gnu.org>

	* Make-ang.in: Adjust for move of C front-end files.
	* config-lang.in: Likewise.
	* objc-encoding.c: Look for cp-tree.h in cp/, and for c-tree.h
	and c-lang.h in c/.
	* objc-runtime-shared-support.c: Likewise.
	* objc-next-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-02.c: Likewise.
	* objc-gnu-runtime-abi-01.c: Likewise.
	* objc-act.c: Likewise.
	* objc-lang.c: Likewise.

2012-06-19  Steven Bosscher  <steven@gcc.gnu.org>

	* objc-next-runtime-abi-01.c: Do not include tm.h and output.h.
	Include c-family/c-target.h.
	(handle_next_class_ref): Rewrite to emit top-level asm statements.
	(handle_next_impent): Likewise.
	* objc/Make-lang.in: Fix dependencies for objc-next-runtime-abi-01.o.

2012-05-31  Steven Bosscher  <steven@gcc.gnu.org>

	* objc-act.c: Do not include output.h.

2012-05-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR objc++/53388
	* objc-act.c (objc_get_class_reference, objc_build_message_expr):
	Use build_min_nt_loc.

2012-04-20  Jan Hubicka  <jh@suse.cz>

	* objc-act.c (mark_referenced_methods); Use
	cgraph_mark_force_output_node.

2012-03-21  Steven Bosscher  <steven@gcc.gnu.org>

	* objc-act (objc_build_ivar_assignment): Do not call assemble_external.
	(objc_build_global_assignment): Likewise.
	(objc_build_strong_cast_assignment): Likewise.
	* objc-next-runtime-abi-01.c: Cleanup commented-out assemble_external.
	* objc-next-runtime-abi-02.c: Likewise.
	* objc-gnu-runtime-abi-01.c: Likewise.

2012-03-05  Jason Merrill  <jason@redhat.com>

	* objc-map.c (objc_map_private_resize, objc_map_alloc_ggc): Don't
	call _stat functions without MEM_STAT_INFO.

2011-11-12  Iain Sandoe  <iains@gcc.gnu.org>

	* objc-next-runtime-abi-01.c (objc_eh_personality): Use gcc personality
	for Objective-C m32.

2011-10-29  Iain Sandoe  <iains@gcc.gnu.org>

	PR target/47997
	* objc-act.c (objc_build_string_object): Remove redundant second
	call to fix_string_type ().  Add a checking assert that we are,
	indeed, passed a STRING_CST.

2011-10-18  Mikael Pettersson  <mikpe@it.uu.se>

	PR objc/50743
	* objc-act.c (check_duplicates): Cast TREE_VEC_LENGTH result to
	size_t to avoid signed/unsigned
	comparison.
	(insert_method_into_method_map): Likewise.

2011-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-map.h: New file.
	* objc-map.c: New file.
	* config-lang.in (gtfiles): Added objc-map.h.
	* Make-lang.in (OBJC_OBJS): Added objc-map.o.
	(objc/objc-map.o): New rule.
	(objc/objc-act.o): Depend on objc/objc-map.h.
	* objc-next-runtime-abi-02.c: Added a TODO comment.
	* objc-act.c: Include objc-map.h.
	(nst_method_hash_list, cls_method_hash_list): Removed.
	(instance_method_map, class_method_map): New.
	(cls_name_hash_list, als_name_hash_list): Removed.
	(class_name_map, alias_name_map): Removed.
	(ivar_offset_hash_list): Removed.
	(hash_class_name_enter, hash_class_name_lookup, hash_enter,
	hash_lookup, hash_add_attr, add_method_to_hash_list): Removed.
	(interface_hash_init): New.
	(objc_init): Call interface_hash_init.
	(objc_write_global_declarations): Iterate over class_method_map
	and instance_method_map instead of cls_method_hash_list and
	nst_method_hash_list.
	(objc_declare_alias): Use alias_name_map instead of
	cls_name_hash_list.
	(objc_is_class_name): Use class_name_map and alias_name_map
	instead of cls_name_hash_list and als_name_hash_list.
	(interface_tuple, interface_htab, hash_interface, eq_interface):
	Removed.
	(interface_map): New.
	(add_class): Renamed to add_interface.  Use interface_map instead
	of interface_htab.
	(lookup_interface): Use interface_map instead of interface_htab.
	(check_duplicates): Changed first argument to be a tree,
	potentially a TREE_VEC, instead of a hash.  Changed implementation
	to match.
	(lookup_method_in_hash_lists): Use class_method_map and
	instance_method_map instead of cls_method_hash_list and
	nst_method_hash_list.
	(objc_build_selector_expr): Likewise.
	(hash_func): Removed.
	(hash_init): Create instance_method_map, class_method_map,
	class_name_map, and alias_name_map.  Do not create
	nst_method_hash_list, cls_method_hash_list, cls_name_hash_list,
	als_name_hash_list, and ivar_offset_hash_list.
	(insert_method_into_method_map): New.
	(objc_add_method): Use insert_method_into_method_map instead of
	add_method_to_hash_list.
	(start_class): Call add_interface instead of add_class.
	* objc-act.h (cls_name_hash_list, als_name_hash_list,
	nst_method_hash_list, cls_method_hash_list): Removed.

2011-10-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* objc-next-runtime-abi-01.c (objc_build_exc_ptr): Delete old
	interface with two parallel arrays to hold standard builtin
	declarations, and replace it with a function based interface that
	can support creating builtins on the fly in the future.  Change
	all uses, and poison the old names.  Make sure 0 is not a
	legitimate builtin index.
	* objc-next-runtime-abi-02.c (objc_build_exc_ptr): Ditto.
	* objc-gnu-runtime-abi-01.c (objc_build_exc_ptr): Ditto.

2011-07-19  Richard Guenther  <rguenther@suse.de>

	* objc-next-runtime-abi-02.c (objc_v2_build_ivar_ref):
	Use fold_build_pointer_plus.
	(objc2_build_ehtype_initializer): Likewise.

2011-07-11  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-encoding.h (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(encode_field_decl): Updated prototype to return a tree and take a
	single tree argument.  Updated comments.
	* objc-encoding.c (util_obstack, util_firstobj): Made static.
	(objc_encoding_init): New.
	(encode_field_decl): Existing function renamed to encode_field and
	made static.  New encode_field_decl wrapper function added.
	(encode_aggregate_fields): Update call to encode_field_decl to
	call encode_field.
	* objc-next-runtime-abi-02.c (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(build_v2_ivar_list_initializer): Updated call to
	encode_field_decl.
	* objc-runtime-shared-support.c (obstack.h): Do not include.
	(util_obstack, util_firstobj): Do not declare.
	(build_ivar_list_initializer): Updated call to encode_field_decl.
	* objc-act.c (objc_init): Use objc_encoding_init.
	* Make-lang.in (objc/objc-runtime-shared-support.o): Do not depend
	on OBSTACK_H.
	(objc/objc-gnu-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-02.o): Likewise.
	(objc/objc-act.o): Likewise.

2011-07-04  Nicola Pero  <nicola.pero@meta-innovation.com>

	Refactored encoding code into objc-encoding.h and objc-encoding.c.
	* objc-act.c (util_obstack, util_firstobj, encode_type_qualifiers,
	encode_type, generating_instance_variables, objc_method_parm_type,
	objc_encoded_type_size, encode_method_prototype,
	objc_build_encode_expr, pointee_is_readonly, encode_pointer,
	encode_array, encode_vector, encode_aggregate_fields,
	encode_aggregate_within, encode_next_bitfield,
	encode_gnu_bitfield, encode_field_decl,
	objc_v2_encode_property_attr): Moved to objc-encoding.h and
	objc-encoding.c.  No change in the actual code.
	Include objc-encoding.h.
	(objc_init): Added TODO.
	(objc_build_property_setter_name): Made non-static so it can be
	called from objc-encoding.c.
	* objc-act.h (OBJC_ENCODE_INLINE_DEFS,
	OBJC_ENCODE_DONT_INLINE_DEFS): Moved to objc-encoding.h.
	* objc-runtime-shared-support.h (objc_v2_encode_property_attr,
	encode_method_prototype, encode_field_decl,
	generating_instance_variables): Moved to objc-encoding.h.
	(objc_build_property_setter_name): Declare.
	* objc-encoding.c: New.
	* objc-encoding.h: New.
	* objc-gnu-runtime-abi-01.c: Include objc-encoding.h.
	* objc-next-runtime-abi-01.c: Likewise.
	* objc-next-runtime-abi-02.c: Likewise.
	* objc-runtime-shared-support.c: Likewise.
	* Make-lang.in (OBJC_OBJS): Added objc-encoding.o.
	(objc/objc-lang.o): Reordered dependencies.
	(objc/objc-runtime-shared-support.o): Reordered dependencies.
	Added dependencies on objc-encoding.h and on $(GGC_H),
	$(DIAGNOSTIC_CORE_H), $(FLAGS_H) and input.h.
	(objc/objc-gnu-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-01.o): Likewise.
	(objc/objc-next-runtime-abi-02.o): Likewise.
	(objc/objc-act.o): Reordered dependencies.  Added dependency on
	objc-encoding.h.
	(objc/objc-encoding.o): New rule.

	* objc-encoding.c (encode_type): Use "%<%T%>" format when printing
	warning "unknown type %<%T%> found during Objective-C encoding"
	instead of using gen_type_name.

2011-06-05  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (receiver_is_class_object): Expanded comment.
	(objc_finish_message_expr): Likewise.

2011-06-02  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/48539
	* objc-act.c (objc_finish_message_expr): Warn if messaging a class
	that was only declared using @class without an @interface.  Warn
	if messaging an instance of a class that was only declared using
	@class without an @interface, unless the receiver was also typed
	with a protocol list.

2011-06-01  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_decl_method_attributes): Implement nonnull
	attribute for Objective-C methods.

2011-05-21  Nicola Pero  <nicola.pero@meta-innovation.com>

	* config-lang.in (gtfiles): Updated order of files to fix building
	when the gcc/cp directory is missing, as in the case of some
	release tarballs.

2011-05-20  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-act.c (objc_compare_types): Use function_args_iterator
	instead of TYPE_ARG_TYPES to compare function argument types.

2011-05-13  Toon Moene  <toon@moene.org>

	* objc-next-runtime-abi-02.c (newabi_append_ro):
	Add const qualifier to constant variable pointer declaration.

2011-05-11  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-act.h (CLASS_NAME, CLASS_SUPER_NAME): Use proper accessors.
	(CLASS_NST_METHODS, CLASS_CLS_METHODS): Likewise.
	(PROTOCOL_NAME, PROTOCOL_NST_METHODS, PROTOCOL_CLS_METHODS): Likewise.

2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-runtime-shared-support.h (get_arg_type_list): Delete.
	(build_function_type_for_method): Declare.
	* objc-runtime-hooks.h (struct _objc_runtime_hooks_r): Change
	type of get_arg_type_base_list field.
	* objc-act.h (OBJC_VOID_AT_END): Delete.
	* objc-act.c (get_arg_type_list): Delete.
	(build_function_type_for_method): New function.
	(objc_decl_method_attributes): Call build_function_type_for_method.
	(really_start_method): Likewise.
	* objc-gnu-runtime-abi-01.c
	(gnu_runtime_abi_01_get_type_arg_list_base): Change prototype and
	adjust function accordingly.  Update header comment.
	(build_objc_method_call): Call build_function_type_for_method.
	* objc-next-runtime-abi-01.c
	(next_runtime_abi_01_get_type_arg_list_base): Change prototype and
	adjust function accordingly.  Update header comment.
	(build_objc_method_call): Call build_function_type_for_method.
	* objc-next-runtime-abi-02.c
	(next_runtime_abi_02_get_type_arg_list_base): Change prototype and
	adjust function accordingly.  Update header comment.
	(objc_copy_to_temp_side_effect_params): Take fntype instead of a
	typelist.  Use function_args_iterator for traversing fntype.
	(build_v2_build_objc_method_call): Adjust call to it.
	Call build_function_type_for_method

2011-05-05  Joseph Myers  <joseph@codesourcery.com>

	* objc-act.c (objc_start_method_definition): Add parameter expr.
	Update call to start_method_def.
	(objc_generate_cxx_ctor_or_dtor, objc_synthesize_getter,
	objc_synthesize_setter) Update calls to
	objc_start_method_definition.
	(objc_get_parm_info): Add parameter expr.  Update call to
	get_parm_info.
	(start_method_def): Add parameter expr.  Update call to
	objc_get_parm_info.
	* objc-gnu-runtime-abi-01.c (build_module_initializer_routine):
	Update call to objc_get_parm_info.
	* objc-runtime-shared-support.h (objc_get_parm_info): Add extra
	parameter.

2011-04-26  Jason Merrill  <jason@redhat.com>

	* objc-act.c (objc_fold_objc_type_ref): Remove.
	* objc-act.h: Remove prototype.

2011-04-21  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-act.c (synth_module_prologue): Call build_function_type_list
	instead of build_function_type.
	* objc-next-runtime-abi-02.c (next_runtime_02_initialize):
	Likewise.

2011-04-15  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (ivar_of_class): New.
	(objc_is_public): Use ivar_of_class.

2011-04-15  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_get_interface_ivars): Removed.
	(objc_detect_field_duplicates): New.
	(hash_instance_variable): New.
	(eq_instance_variable): New.

2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_declare_protocols): Renamed to
	objc_declare_protocol.  Changed first argument to be an identifier
	instead of a tree chain of identifiers, so that callers don't have
	to create a temporary tree chain.

2011-04-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_declare_class): Changed to take a single
	identifier as argument instead of a tree list.  This means callers
	don't have to build temporary tree lists to call this function.
	(synth_module_prologue): Updated calls to objc_declare_class.

2011-04-13  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (build_keyword_selector): Use get_identifier_with_length
	instead of get_identifier.

2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-lang.c (objc_init_ts): Move code for this function...
	* objc-act.c (objc_common_init_ts): ...here. Define.
	* objc-act.h (objc_common_init_ts): Declare.

2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_build_message_expr): Accept two arguments
	instead of one so that callers can simply pass the arguments
	without having to create a temporary chain to hold them.

2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (comp_proto_with_proto): Do not create and use
	inefficient temporary argument lists.  Compare the arguments
	directly.  (match_proto_with_proto): Removed; incorporated into
	comp_proto_with_proto ().

2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (printable_ivar_name): New.
	(add_instance_variable): Call printable_ivar_name() when an error
	message needs to be printed.  Do not prepare the instance variable
	for printing unless there is an actual error.

2011-04-12  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_is_class_name, objc_is_id): For efficiency,
	avoid calling identifier_global_value() multiple times.

2011-04-12  Martin Jambor  <mjambor@suse.cz>

	* objc-act.c (mark_referenced_methods): Call cgraph_get_create_node
	instead of cgraph_node.

2011-04-06  Joseph Myers  <joseph@codesourcery.com>

	* objc-act.c: Include c-target.h instead of target.h.
	* Make-lang.in (objc/objc-act.o): Update dependencies.

2011-03-06  Joseph Myers  <joseph@codesourcery.com>

	* lang-specs.h: Match -save-temps* instead of -save-temps.

2011-02-26  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_v2_encode_prop_attr): Rewritten.

2011-02-23  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (build_private_template): Do not copy the
	CLASS_HAS_EXCEPTION_ATTR from the class to the struct.
	* objc-act.h (CLASS_HAS_EXCEPTION_ATTR): Define using
	TYPE_LANG_SLOT_0.

2011-02-22  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47832
	* objc-act.c (flexible_array_type_p): New.
	(add_instance_variable): Produce an error if an instance variable
	uses flexible array members.
	(encode_array): Do not emit an error if encoding a flexible array
	type while generating instance variables.

2011-02-21  Mike Stump  <mikestump@comcast.net>

	* Make-lang.in (check_objc_parallelize): Refine for 4 processor
	machines.

2011-02-20  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-gnu-runtime-abi-01.c (TARGET_64BIT): Removed.  Removed
	usage of padding fields.  Do not include tm.h.
	* objc-act.c (objc_write_global_declaration): Set input_location
	to BUILTINS_LOCATION while generating runtime metadata.

2011-01-20  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47784
	* objc-act.c (objc_maybe_build_modify_expr): If 'rhs' has side
	effects, do not use a temporary variable.

2011-01-19  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-next-runtime-abi-01.c: Updated comments.
	* objc-next-runtime-abi-02.c: Same.

2011-01-19  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_init, generate_struct_by_value_array): Updated
	comments.

2011-01-19  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c: Updated comments.
	* objc-next-runtime-abi-02.c: Same.
	* objc-runtime-shared-support.c: Same.
	* objc-runtime-hooks.h: Same.
	* objc-act.h: Same.
	* objc-gnu-runtime-abi-01.c: Same.

2011-01-19  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-gnu-runtime-abi-01.c (objc_generate_v1_gnu_metadata): Do
	not generate metadata if there is nothing to put into it.

2011-02-17  Iain Sandoe  <iains@gcc.gnu.org>

	* config-lang.in (gtfiles): Updated.
	* Make-lang.in (START_HDRS): New.
	(OBJC_OBJS): Added new object files.
	(objc/objc-act.o): Updated prerequisites.
	(objc/objc-lang.o): Updated prerequisites.
	(objc/objc-runtime-shared-support.o): New.
	(objc/objc-gnu-runtime-abi-01.o): New.
	(objc/objc-next-runtime-abi-01.o): New.
	(objc/objc-next-runtime-abi-02.o): New.
	* objc-runtime-hooks.h: New.
	* objc-runtime-shared-support.h: New.
	* objc-runtime-shared-support.c: New.
	* objc-gnu-runtime-abi-01.c: New.
	* objc-next-metadata-tags.h: New.
	* objc-next-runtime-abi-01.c: New.
	* objc-next-runtime-abi-02.c: New.
	* objc-lang.c: Include c-lang.h.
	(LANG_HOOKS_EH_PERSONALITY): Removed.
	* objc-act.h: Moved many declarations and code from objc-act.c
	into objc-act.h to make them available outside objc-act.c.
	(objc_eh_runtime_type): Removed.
	(objc_eh_personality): Removed.
	(CLASS_HAS_EXCEPTION_ATTR): New.
	(OCTI_SUPER_SUPERFIELD_ID): New.
	(OCTI_V1_PROP_LIST_TEMPL): New.
	(OCTI_V1_PROP_NAME_ATTR_CHAIN): New.
	(super_superclassfield_id): New.
	(objc_prop_list_ptr): New.
	(prop_names_attr_chain): New.
	* objc-act.c: Include new runtime headers.  Moved many #defines
	and declarations into objc-act.h and
	objc-runtime-shared-support.h.  Made some corresponding functions
	non-static, and moved some others into
	objc-runtime-shared-support.c.  Moved metadata generation code
	into the new runtime hook files.
	(ivar_offset_hash_list): New.
	(objc_init): Call generate_struct_value_by_array() before doing
	any runtime initialization.  Create the appropriate runtime hook
	structures.
	(init_objc): Removed.  Code moved directly into objc_init.
	(finish_objc): Removed.  Code moved directly into
	objc_write_global_declarations.
	(objc_write_global_declarations): Do the warn_selector checks
	before emitting metadata.  Use a runtime hook to emit the
	metadata.  Do not emit the metadata or do -gen-decls processing if
	-fsyntax-only or we are producing a PCH.
	(build_objc_exception_stuff): Renamed to
	build_common_objc_exception_stuff.  Remove TREE_NOTHROW flag from
	objc_exception_throw_decl.
	(synth_module_prologue): Call runtime initialize hook instead of
	building runtime declarations here.  Use the
	default_constant_string_class_name runtime hook to set the
	constant string class name.
	(objc_build_string_object): Call the setup_const_string_class_decl
	runtime hook instead of setup_string_decl.  Call the
	build_const_string_constructor runtime hook instead of building
	the string object here.
	(get_objc_string_decl): Added prop_names_attr case.  Removed
	gcc_unreachable() at the end.
	(objc_begin_catch_clause): Distinguish between @catch (...) and
	@catch (id x).  Call the begin_catch runtime hook instead of
	building the CATCH_EXPR here.
	(objc_finish_catch_clause): Call the finish_catch runtime hook
	instead of adding the catch here.
	(objc_finish_try_stmt): Call the finish_try_stmt runtime hook
	instead of doing it here.
	(objc_build_throw_stmt): Bail out early for error_mark_node.  Call
	the build_exc_ptr runtime hook instead of objc_build_exc_ptr.
	Call the build_throw_stmt runtime hook instead of building the
	throw call here.
	(objc_generate_cxx_cdtors): Set has_cxx_cdtors for the GNU runtime
	as well.
	(get_arg_type_list): Call the get_arg_type_list_base runtime hook
	instead of building the list of arguments here.
	(receiver_is_class_object): Call the receiver_is_class_object
	runtime hook instead of doing the check here.  Call the
	tag_getclass runtime hook instead of using TAG_GETCLASS.
	(objc_finish_message_expr): Call the build_objc_method_call
	runtime hook.
	(objc_build_protocol_expr): Call the get_protocol_reference
	runtime hook.
	(objc_build_selector_expr): Call the build_selector_reference
	runtime hook.
	(build_ivar_reference): Call the build_ivar_reference runtime
	hook.
	(hash_init): Set up ivar_offset_hash_list.
	(start_class): Recognize the objc_exception attribute and store
	it.
	(continue_class): Use the class_decl and metaclass_decl runtime
	hooks.
	(build_objc_property_accessor_helpers): Renamed to
	build_common_objc_property_accessor_helpers.  Do not build
	objc_copyStruct_decl, objc_getPropertyStruct_decl and
	objc_setPropertyStruct_decl.
	(objc_synthesize_getter): Check what struct setter/getter helper
	is available instead of checking the type of runtime.
	(get_super_receiver): Use the super_superclassfield_ident runtime
	hook.  Added assert.  Use the get_class_super_ref and
	get_category_super_ref runtime hooks.
	(objc_v2_encode_prop_attr): New.

2011-01-17  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47314
	* objc-act.c (finish_objc): When calling check_duplicates to check
	duplicated instance methods, set 'is_class' to 0, not 1.

2011-01-14  Ben Elliston  <bje@au.ibm.com>

	PR 19162
	* objc-act.c (generate_struct_by_value_array): Do not output a
	definition for struct_forward_array.

2011-01-08  Iain Sandoe  <iains@gcc.gnu.org>

	* objc-act.c (objc_finish_foreach_loop): Mark collection expression
	as read.

2011-01-02  H.J. Lu  <hongjiu.lu@intel.com>

	* objc-act.c (check_that_protocol_is_defined): Fix a typo.

2011-01-02  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (check_that_protocol_is_defined): New.
	(lookup_protocol): Call check_that_protocol_is_defined.

2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_types_are_equivalent): Fixed comparing protocol
	lists.  Check them two-ways to fix comparisons when one protocol
	implements the other one, or when one list contains duplicated
	protocols.

2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_add_method): When emitting an error because a
	method with the same name but conflicting types is found in the
	same class or category interface, print a note with the location
	of the original method.  Also, improved the error message to
	clearly state that the conflict is due to conflicting types, and
	produce it for protocols as well.  Emit an error if two identical
	methods are declared in a protocol, but one is @required and the
	other one is @optional.

2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (start_class): Warn when a class attribute is
	ignored.
	(objc_declare_protocols): Warn when a protocol attribute in a
	protocol forward-declaration is ignored.
	(start_protocol): Warn when a protocol attribute is ignored.

2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_set_method_opt): Tidy up error messages.  In
	particular, explicitly mention whether the error is due to the
	@optional or @required keyword instead of mentioning
	"@optional/@required".

2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47118
	* objc-act.c (objc_build_synchronized): Check the argument of
	@synchronized and emit an appropriate error if it is not a valid
	Objective-C object.  Deal gracefully with that case.  Updated
	comments and variable names.

2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47075
	* objc-act.h (PROPERTY_REF_DEPRECATED_GETTER): New.
	* objc-tree.def (PROPERTY_REF): Increased the number of operands
	from 3 to 4.
	* objc-act.c (objc_finish_message_expr): Added optional argument
	allowing to return the deprecated method prototype for deprecated
	methods, instead of immediately emitting the deprecation warning.
	(objc_maybe_build_component_ref): Do not warn for a deprecated
	property.  When building the getter call, get the deprecated
	method prototype from objc_finish_message_expr() and put it into
	the PROPERTY_REF.
	(objc_build_class_component_ref): Same change.
	(finish_class): Mark the getter and setter as deprecated if they
	are generated from a deprecated property.
	(objc_gimplify_property_ref): If the getter is deprecated, emit a
	deprecation warning.
	(objc_build_setter_call, objc_build_message_expr,
	objc_finish_foreach_loop): Updated call to
	objc_finish_message_expr.

2010-12-28  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47076
	* objc-act.c (lookup_protocol): Added 'definition_required'
	argument.  If 'definition_required', and the protocol is not
	defined, emit a warning.
	(objc_declare_protocols): Updated call to lookup_protocol.
	(start_protocol): Same change.
	(check_protocol_recursively): Same change.
	(objc_build_protocol_expr): Same change.
	(lookup_and_install_protocols): Added definition_required argument.
	Pass it to lookup_protocol.
	(objc_get_protocol_qualified_type): Updated call to
	lookup_and_install_protocols.
	(start_class): Updated calls to lookup_and_install_protocols; pass
	true to 'definition_required' to get the warnings.
	(start_protocol): Updated calls to lookup_and_install_protocols.

2010-12-28  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_start_category_interface): Produce an error if
	a class extension is found after the class @implementation.

2010-12-28  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/47073
	* objc-act.c (encode_method_prototype): Fixed both location and
	format string of error "type %qT does not have a known size".

2010-12-26  Nicola Pero  <nicola.pero@meta-innovation.com>

	* config-lang.in (gtfiles): Added c-family/c-cppbuiltin.c.

2010-12-22  Nathan Froyd  <froydnj@codesourcery.com>

	* objc-act.c (next_sjlj_build_enter_and_setjmp): Use prototype_p.

2010-12-18  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_init): Call using_eh_for_cleanups.
	(objc_init_exceptions): Renamed to objc_maybe_warn_exceptions.  Do
	not call using_eh_for_cleanups.
	(objc_begin_try_stmt): Do not call objc_init_exceptions.
	(objc_build_throw_stmt): Updated call to
	objc_maybe_warn_exceptions.

2010-12-18  Iain Sandoe  <iains@gcc.gnu.org>

	* objc/objc-act.c (objc_eh_personality): Select personality name on
	runtime.
	(objc_init_exceptions): New.
	(objc_begin_try_stmt): Use objc_init_exceptions.
	(objc_build_throw_stmt): Likewise.

2010-12-10  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_in_class_extension): New.
	(objc_start_category_interface): If -fobjc-std=objc1
	was specified, produce an error if a class extension is used.
	(objc_finish_interface): Reset objc_in_class_extension to false.
	(objc_add_property_declaration): Allow a class extension to extend
	readonly properties in the main @interface to be readwrite.
	(start_class): Added code to deal with class extensions.  In that
	case, return the existing interface after adding any additional
	protocols to it and setting objc_in_class_extension to true.
	(continue_class): If in a class extension, do not generate the
	instance variable template.

2010-12-08  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_build_throw_stmt): Check that the argument of
	@throw is an object and emit an error if not.

2010-12-08  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_finish_foreach_loop): Use error_at() instead of
	error() when printing an error about the iterating variable or
	collection not being an object.

2010-12-06  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_finish_foreach_loop): Mark the
	object_expression as used.

2010-12-06  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c: Include c-family/c-objc.h.
	* objc-lang.c: Same change.
	* Make-lang.in (objc/objc-act.o): Depend on
	c-family/c-objc.h.
	(objc/objc-lang.o): Same change.
	* config-lang.in (gtfiles): Added c-family/c-objc.h.

2010-12-02  Joseph Myers  <joseph@codesourcery.com>

	* lang-specs.h: Don't handle -ftraditional.

2010-12-02  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_build_throw_stmt): Return error_mark_node and
	not NULL_TREE when a @throw is used outside of a @catch block.

2010-11-30  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_build_volatilized_type): Removed.
	(objc_non_volatilized_type): Removed.
	(objc_type_quals_match): Removed.
	(local_variables_to_volatilize): New.
	(objc_volatilize_decl): Add the decl to volatilize to
	local_variables_to_volatilize, but don't volatilize it yet.
	(objc_finish_function): New.
	* objc-act.h (local_variables_to_volatilize): New.

2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>
	    Mike Stump  <mikestump@comcast.net>

	Allow 'make check-objc -j2'
	* Make-lang.in (lang_checks_parallelized): New.
	(check_objc_parallelize): New.

2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (start_class): When a class is reimplemented,
	generate an error and avoid adding the class to the list of
	implemented classes again, but do not return error_mark_node.

2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_maybe_build_component_ref): Removed TODO.

2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_eh_runtime_type): Avoid ICE if error_mark_node
	is passed as argument.
	(objc_begin_catch_clause): Added code to deal with an
	error_mark_node or NULL_TREE argument.  Improved checks for
	invalid arguments.  Added code to traverse typedefs.

2010-11-29  Nicola Pero  <nicola.pero@meta-innovation.com>

