* gcc-interface/decl.c (substitute_in_type): Do not deal with
LANG_TYPE, METHOD_TYPE or OFFSET_TYPE.
* gcc-interface/utils.c (handle_vector_size_attribute): Do not deal
with METHOD_TYPE or OFFSET_TYPE.
From-SVN: r168381
PR target/47084
* config/mn10300/linux.h (PRINT_OPERAND): Update for name changes
to mn10300_print_operand / mn10300_print_operand_address.
From-SVN: r168378
gcc/
2010-12-15 Ken Werner <ken.werner@de.ibm.com>
* config/arm/sync.md (sync_clobber, sync_t2_reqd): New code attribute.
(arm_sync_old_<sync_optab>si, arm_sync_old_<sync_optab><mode>): Use
the sync_clobber and sync_t2_reqd code attributes.
* config/arm/arm.c (arm_output_sync_loop): Reverse the operation if
the t2 argument is NULL.
From-SVN: r168375
2010-12-31 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/47065
* frontend-passes.c (count_arglist): Static variable to
count the nesting of argument lists.
(optimize_code): Set count_arglist to 1 if within a call
statement, to 0 otherwise.
(optimize_trim): New function.
(optimize_expr): Adjust count_arglist. Call optimize_trim.
2010-12-31 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/47065
* gfortran.dg/trim_optimize_3.f90: New test.
* gfortran.dg/trim_optimize_4.f90: New test.
From-SVN: r168367
2010-12-31 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45338
* resolve.c (resolve_operator): Mark function for user-defined
operator as referenced.
2010-12-31 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45338
* gfortran.dg/userdef_operator_2.f90: New test case.
From-SVN: r168366
2010-12-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/46971
* gfortran.h (gfc_hash_value): Add prototype.
* class.c (get_unique_type_string): Check if proc_name is present and
make sure string contains an underscore.
(get_unique_hashed_string): New function which creates a hashed string
if the given unique string is too long.
(gfc_hash_value): Moved here from decl.c, renamed and simplified.
(gfc_build_class_symbol, gfc_find_derived_vtab): Use hashed strings.
* decl.c (hash_value): Moved to class.c.
(gfc_match_derived_decl): Renamed 'hash_value'.
2010-12-31 Janus Weil <janus@gcc.gnu.org>
PR fortran/46971
* gfortran.dg/class_33.f90: New.
From-SVN: r168363
In gcc/objc/:
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.
In gcc/testsuite/:
2010-12-30 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/method-conflict-3.m: New.
* objc.dg/method-conflict-4.m: New.
* obj-c++.dg/method-conflict-3.m: New.
* obj-c++.dg/method-conflict-4.mm: New.
From-SVN: r168356
In gcc/objc/:
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. When
In gcc/testsuite/:
2010-12-30 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/class-extension-3.m: Updated.
* objc.dg/method-1.m: Updated.
* objc.dg/method-conflict-1.m: New.
* objc.dg/method-conflict-2.m: New.
* obj-c++.dg/class-extension-3.mm: Updated.
* obj-c++.dg/method-8.mm: Updated.
* obj-c++.dg/method-conflict-1.mm: New.
* obj-c++.dg/method-conflict-2.mm: New.
From-SVN: r168350
PR target/47097
* config/i386/lynx.h (DBX_REGISTER_NUMBER): Add cast to avoid
mixing signed and unsigned types in conditional expression.
From-SVN: r168349
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