PR c/46889
* c-decl.c (detect_field_duplicates): Ensure hash is used for
finding duplicates when first field is anonymous.
testsuite:
* gcc.dg/anon-struct-15.c: New test.
From-SVN: r168348
* emit-rtl.c (set_mem_attributes_minus_bitpos): Explicitly derive
default values from MEM mode if no memory attributes are present.
Do not use mode alignment, even on STRICT_ALIGNMENT targets, when
called with an expression (not a type).
From-SVN: r168344
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (upper_128bits_state): Remove comments.
(block_info_def): Add unchanged.
(move_or_delete_vzeroupper_2): Short circuit if upper 128bits
are unchanged in the block.
From-SVN: r168343
gcc/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* config/i386/i386.c (block_info_def): Remove referenced, count
and rescanned.
(move_or_delete_vzeroupper_2): Updated.
(move_or_delete_vzeroupper_1): Rewritten to avoid recursive call.
(rescan_move_or_delete_vzeroupper): Removed.
(move_or_delete_vzeroupper): Repeat processing all basic blocks
until no basic block state is changed to used at exit.
gcc/testsuite/
2010-12-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* gfortran.dg/pr46519-2.f90: New.
From-SVN: r168342
In gcc/objc/:
2010-12-30 Nicola Pero <nicola@nicola.brainstorm.co.uk>
* 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.
In gcc/testsuite/:
2010-12-30 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/attributes/class-attribute-3.m: New.
* objc.dg/attributes/proto-attribute-4.m: New.
* obj-c++.dg/attributes/class-attribute-3.mm: New.
* obj-c++.dg/attributes/proto-attribute-4.mm: New.
From-SVN: r168337
In gcc/objc/:
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".
In gcc/testsuite/:
2010-12-30 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/enhanced-proto-2.m: Updated.
* obj-c++.dg/enhanced-proto-2.mm: Updated.
From-SVN: r168327
In gcc/objc/:
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.
In gcc/testsuite/:
2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/47118
* objc.dg/sync-3.m: New.
* obj-c++.dg/sync-3.mm: New.
From-SVN: r168326
2010-12-29 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c (gfc_code_walker): Handle expressions
in EXEC_CALL, EXEC_ASSIGN_CALL and EXEC_CALL_PPC.
Separate cases in switch statements by blank lines.
2010-12-29 Thomas Koenig <tkoenig@gcc.gnu.org>
* gfortran.dg/character_comparison_7.f90: New test.
From-SVN: r168320
In gcc/c-family/:
2010-12-29 Nicola Pero <nicola@nicola.brainstorm.co.uk>
PR objc/47075
* c-objc.h (objc_finish_message_expr): Added argument to
prototype.
In gcc/objc/:
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.
In gcc/objcp/:
2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objcp-lang.c (objcp_tsubst_copy_and_build): Update call to
objc_finish_message_expr.
In gcc/testsuite/:
2010-12-29 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/47075
* objc.dg/property/at-property-deprecated-1.m: Updated.
* objc.dg/property/at-property-deprecated-2.m: New.
* objc.dg/property/dotsyntax-deprecated-1.m: New.
* obj-c++.dg/property/at-property-deprecated-1.mm: Updated.
* obj-c++.dg/property/at-property-deprecated-2.mm: New.
* obj-c++.dg/property/dotsyntax-deprecated-1.mm: New.
From-SVN: r168315
In gcc/objc/:
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.
In gcc/testsuite/:
2010-12-28 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/47076
* objc.dg/protocol-forward-1.m: New.
* obj-c++.dg/protocol-forward-1.mm: New.
* objc.dg/attributes/proto-attribute-2.m: Updated.
* objc.dg/class-protocol-1.m: Updated.
* obj-c++.dg/attributes/proto-attribute-2.mm: Updated.
* obj-c++.dg/class-protocol-1.mm: Updated.
From-SVN: r168307
2010-12-28 Sebastian Pop <sebastian.pop@amd.com>
* Makefile.in (graphite.o): Add dependence on DIAGNOSTIC_H.
* graphite.c: Include diagnostic.h.
From-SVN: r168297
In gcc/objc/:
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.
In gcc/testsuite/:
2010-12-28 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/class-extension-4.m: New.
* obj-c++.dg/class-extension-4.mm: New.
From-SVN: r168294
In gcc/testsuite/:
2010-12-28 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc/47073
* objc.dg/incomplete-type-1.m: New test.
In gcc/objc/:
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".
From-SVN: r168285
2010-12-26 Martin Jambor <mjambor@suse.cz>
* tree.c (get_binfo_at_offset): Use BINFO_TYPE instead of TREE_TYPE,
compare TYPE_MAIN_VARIANTs of types.
From-SVN: r168255
In gcc/testsuite/:
2010-12-26 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/gnu-api-2-class.m: Updated the test to work with the
Apple runtime as well.
* obj-c++.dg/gnu-api-2-class.mm: Same change.
* objc.dg/gnu-api-2-ivar.m: Same change.
* obj-c++.dg/gnu-api-2-ivar.mm: Same change.
* objc.dg/gnu-api-2-method.m: Same change.
* obj-c++.dg/gnu-api-2-method.mm: Same change.
* objc.dg/gnu-api-2-objc.m: Same change.
* obj-c++.dg/gnu-api-2-objc.mm: Same change.
* objc.dg/gnu-api-2-object.m: Same change.
* obj-c++.dg/gnu-api-2-object.mm: Same change.
* objc.dg/gnu-api-2-property.m: Same change.
* obj-c++.dg/gnu-api-2-property.mm: Same change.
* objc.dg/gnu-api-2-protocol.m: Same change.
* obj-c++.dg/gnu-api-2-protocol.mm: Same change.
* objc.dg/gnu-api-2-objc.m: Also, fixed test for
objc_disposeClassPair not to create a new class pair with the same
name as an existing class, and to test that the class pair is
created correctly.
* obj-c++.dg/gnu-api-2-objc.mm: Same change.
From-SVN: r168252