2007-07-04 Douglas Gregor <doug.gregor@gmail.com>
* tree.c (maybe_canonicalize_argtypes): New.
(build_function_type): Set canonical type.
(build_method_type_directly): Ditto.
(reconstruct_complex_type): Rebuild the METHOD_TYPE node
properly.
2007-07-04 Douglas Gregor <doug.gregor@gmail.com>
* decl.c (build_ptrmemfunc_type): Always use structural equality
tests when comparing pointer-to-member-function types, because the
handling of TYPE_GET_PTRMEMFUNC_TYPE currently defeats canonical
types.
From-SVN: r126303
2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32545
* io.c (check_format): Always call gfc_error for errors.
(check_format_string): Change type of this function to try and
return the result of check_format.
(check_io_constraints): Return MATCH_ERROR if check_format_string
returns FAILURE.
2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32612
* decl.c (get_proc_name): Include attr->mod_proc in check for error.
From-SVN: r126295
PR c++/31743
* parser.c (cp_parser_new_type_id): Don't reduce a named array
type to its base type and number of elements here.
* init.c (build_new): Call complete_type_or_else to ensure that the
type is complete and to issue a diagnostic if it is not.
(build_new_1): Don't call complete_type_or_else here.
PR c++/31743
* g++.dg/init/new20.C: New test.
From-SVN: r126292
2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32432
* gfortran.h: Change type of gfc_assign_data_value from void to try.
* data.c (gfc_assign_data_value): Return FAILURE if error found.
* resolve.c (check_data_variable): If gfc_assign_data_value returns
failure, break out of loop and return failure.
From-SVN: r126282
2007-07-02 Christopher D. Rickett <crickett@lanl.gov>
PR fortran/32579
* symbol.c (gen_cptr_param): Generate C_PTR and C_FUNPTR if
necessary.
(build_formal_args): Pass intrinsic module symbol id to
gen_cptr_param.
* gfortran.dg/iso_c_binding_only.f03: Updated test case.
From-SVN: r126280
2007-07-03 Eric Christopher <echristo@apple.com>
* doc/cppopts.texi: Add conflicting option note to -dM.
* doc/invoke.texi: Add note about possible conflicts with
-E for -dCHARS and note that -dM will not produce
any results if there is no machine dependent reorg.
From-SVN: r126278
* configure.ac: Test for .dtprelword support on MIPS.
* configure, config.in: Regenerate.
* config/mips/mips.c (mips_output_dwarf_dtprel): New.
(TARGET_ASM_OUTPUT_DWARF_DTPREL): Define.
From-SVN: r126273
gcc/
2007-07-03 Richard Sandiford <richard@codesourcery.com>
David Ung <davidu@mips.com>
* doc/invoke.texi: Replace -march=24kf with -march=24kf2_1 and
-march=24kx with -march=24kf1_1. Likewise 24ke[fx], 34k[fx]
and 74k[fx]. Document aliases for the new options.
* config/mips/mips.h (PROCESSOR_24KF): Rename to...
(PROCESSOR_24KF2_1): ...this.
(PROCESSOR_24KX): Rename to...
(PROCESSOR_24KF1_1): ...this.
(PROCESSOR_74KF): Rename to...
(PROCESSOR_74KF2_1): ...this.
(PROCESSOR_74KX): Rename to...
(PROCESSOR_74KF1_1): ...this.
(TUNE_74K): Update PROCESSOR_* names.
* config/mips/mips.c (mips_cpu_info): Add 24kf2_1 as a synonym
for 24kf. Add 24kf1_1 and 24kfx as synonyms for 24kx. Likewise
the 24ke*, 34k* and 74k* processors. Update PROCESSOR_* names.
(mips_rtx_cost_data): Update processor names in comments.
(mips_issue_rate): Update PROCESSOR_* names.
* config/mips/mips.md (cpu): Rename 24kf to 24kf2_1, 24kx to
24kf1_1, 74kf to 74kf2_1 and 74kx to 74kf1_1.
* config/mips/24k.md: Rename FPU-related r24k_* insn reservations
to r24kf2_1_*. Rename r24kx_* insn reservations to r24kf1_1_*.
Update cpu attribute names.
(r24k_fpu_iss): Rename this reservation to...
(r24kf2_1_fpu_iss): ...this and update all uses.
(r24kx_fpu_iss): Rename this reservation to...
(r24kf1_1_fpu_iss): ...this and update all uses.
* config/mips/74k.md: Rename FPU-related r74kf_* insn reservations
to r74kf2_1_*. Rename r74kx_* insn reservations to r74kf1_1_*.
Update cpu attribute names.
Co-Authored-By: David Ung <davidu@mips.com>
From-SVN: r126266
2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
* trans-decl.c (gfc_build_builtin_function_decls): Mark
internal_realloc as a malloc function.
libgfortran:
2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
* libgfortran.h: Mark internal_malloc_size as a malloc function.
* runtime/memory.c (internal_realloc_size): Remove.
(internal_realloc): Call realloc directly instead of
internal_realloc_size.
(allocate_size): Remove.
(allocate): Call malloc directly instead of allocate_size, mark as
malloc function.
From-SVN: r126264
2007-07-03 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-sccvn.c (set_ssa_val_to): Check for operand_equal_p
before declaring inequality.
From-SVN: r126252
* combine.c (recog_for_combine): Log the success or failure of
matching new insn patterns against the machine description in
detailed dumps.
From-SVN: r126251
libcpp/ChangeLog:
* include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
Add new constants.
* expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
suffixes. Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
for 'q' or 'Q' suffixes.
gcc/ChangeLog:
* targhooks.h (default_mode_for_suffix): New function declaration.
* targhooks.c (default_mode_for_suffix): New default target hook.
* target.h (struct c): New structure in the targetm struct.
(mode_for_suffix): New target hook as part of struct c.
target-def.h (TARGET_C_MODE_FOR_SUFFIX): Define as
default_mode_for_suffix.
(TARGET_C): New define.
* c-lex.c: Include "target.h".
(interpret_float): Use targetm.c.mode_for_suffix to determine
the mode for a given non-standard suffix.
Makefile.in (c-lex.o): Depend on $(TARGET_H).
* config/i386/i386.c (ix86_c_mode_for_suffix): New static function.
(TARGET_C_MODE_FOR_SUFFIX): Define to ix86_c_mode_for_suffix.
* doc/extend.texi (Floating Types): New node. Document __float80 and
__float128 types. Document 'w', 'W', 'q' and 'Q' suffixes.
testsuite/ChangeLog:
* gcc.dg/const-float80.c : New test.
* gcc.dg/const-float128.c : New test.
* gcc.dg/const-float80-ped.c : New test.
* gcc.dg/const-float128-ped.c : New test.
From-SVN: r126244
2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
Restore collateral damage from ISO C Binding merge.
2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/32456
* io/unit.c (filename_from_unit): Don't use find_unit, instead search
for unit directly.
From-SVN: r126238