+2011-01-14 Ben Elliston <bje@au.ibm.com>
+
+ * 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>
+
+ * objc-act.c (objc_demangle): Return immediately if the string is
+ too short. Detect names that do not need demangling, and return
+ them unchanged.
+
+2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Implemented optional properties.
+ * objc-act.h (PROPERTY_OPTIONAL): New.
+ * objc-act.c (objc_add_property_declaration): Set
+ PROPERTY_OPTIONAL if appropriate.
+ (finish_class): When generating definitions of setter and getter
+ methods associated with a property for a protocol, mark them as
+ optional if the property is optional.
+ (maybe_make_artificial_property_decl): Added 'getter_name'
+ argument. Set PROPERTY_OPTIONAL.
+ (objc_maybe_build_component_ref): Updated calls to
+ maybe_make_artificial_property_decl. Added code for optional,
+ readonly properties.
+ (objc_build_class_component_ref): Updated call to
+ maybe_make_artificial_property_decl.
+
+2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-act.c (objc_build_struct): Fixed loops that save and
+ restore TYPE_OBJC_INFO to iterate over all variants of the type; a
+ special case for the current type is then no longer required.
+ Duplicate TYPE_LANG_SPECIFIC for each type before restoring
+ TYPE_OBJC_INFO.
+ (objc_get_protocol_qualified_type): Updated comments.
+
+2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-act.c (objc_build_struct): Install TYPE_OBJC_INTERFACE
+ after finish_struct, not before, otherwise it may be wiped out by
+ it. This fixes spurious warnings when a class has more than 15
+ instance variables.
+
+2010-11-23 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR objc/24358
+ * lang-specs.h: Added objective-c-cpp-output. Mapped .mi to
+ objective-c-cpp-output instead of objc-cpp-output. Print a
+ deprecation note every time objc-cpp-output is requested.
+
+2010-11-22 Joseph Myers <joseph@codesourcery.com>
+
+ * objc-act.c (write_symbols): Don't declare here.
+
+2010-11-22 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR objc/41108
+ * objc-act.c (objc_generate_write_barrier): Added assert to make sure
+ this function is only called with the next runtime.
+
+2010-11-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/46547
+ * objc-act.c (in_late_binary_op): Remove.
+
2010-11-19 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_start_class_interface): Do not warn that class
2010-11-06 Nicola Pero <nicola.pero@meta-innovation.com>
- Fixed using the Objective-C 2.0 syntax with self and super.
+ Fixed using the Objective-C 2.0 dot-syntax with self and super.
* objc-act.c (OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS): New.
(maybe_make_artificial_property_decl): Added 'implementation'
argument. Use OBJC_LOOKUP_NO_INSTANCE_METHODS_OF_ROOT_CLASS when
Move to c-objc-common.h.
\f
-Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright