1. 29 Apr, 2011 13 commits
    • re PR libfortran/48488 (Wrong default format for real numbers) · f4c31037
      2011-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/48488
      	PR libgfortran/48602
      	PR libgfortran/48615
      	PR libgfortran/48684
      	PR libgfortran/48787
      	* gfortran.dg/fmt_g.f: Adjust test.
      	* gfortran.dg/fmt_g0_1.f08: Adjust test.
      	* gfortran.dg/round_3.f08: New test.
      	* gfortran.dg/namelist_print_1.f: Adjust test.
      	* gfortran.dg/char4_iunit_1.f03: Adjust test.
      	* gfortran.dg/f2003_io_5.f03: Adjust test.
      	* gfortran.dg/coarray_15.f90: Adjust test.
      	* gfortran.dg/namelist_65.f90: Adjust test.
      	* gfortran.dg/fmt_cache_1.f: Adjust test.
      	* gfortran.dg/char4_iunit_2.f03: Adjust test.
      	* gfortran.dg/real_const_3.f90: Adjust test.
      
      From-SVN: r173168
      Jerry DeLisle committed
    • builtins.c (fold_builtin_classify_type): Use integer_type_node for the type of the result. · 45a2c477
      2011-04-29  Richard Guenther  <rguenther@suse.de>
      
      	* builtins.c (fold_builtin_classify_type): Use integer_type_node
      	for the type of the result.
      	(fold_builtin_isascii): Likewise.
      	(fold_builtin_toascii): Use integer_type_node where appropriate.
      	(fold_builtin_logb): Likewise.
      	(fold_builtin_frexp): Likewise.
      	(fold_builtin_strstr): Likewise.
      	(fold_builtin_strpbrk): Likewise.
      	(fold_builtin_fputs): Likewise.
      	(fold_builtin_sprintf): Likewise.
      	(fold_builtin_snprintf): Likewise.
      	(fold_builtin_printf): Likewise.
      	(do_mpfr_remquo): Use a proper type for the assigned constant.
      	(do_mpfr_lgamma_r): Likewise.
      	* dwarf2out.c (resolve_one_addr): Use size_int.
      	* except.c (init_eh): Likewise.
      	(assign_filter_values): Use integer_type_node for filter values.
      	(sjlj_emit_dispatch_table): Use integer_type_node for dispatch
      	indices.
      	* tree-cfg.c (move_stmt_eh_region_tree_nr): Use integer_type_node
      	for EH region numbers.
      	* tree-vrp.c (simplify_div_or_mod_using_ranges): Use integer_type_node
      	for the shift amount.
      
      From-SVN: r173167
      Richard Guenther committed
    • re PR libfortran/48488 (Wrong default format for real numbers) · a3f02fe4
      2011-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      	    Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libgfortran/48488
      	PR libgfortran/48602
      	PR libgfortran/48615
      	PR libgfortran/48684
      	PR libgfortran/48787
      	* io/write.c (write_d, write_e, write_f, write_en,
      	write_es): Add precision compemsation parameter to call.
      	(set_fnode_default): Adjust default widths to assure
      	round trip on write and read. (write_real): Adjust call to write_float.
      	(write_real_g0): Calculate compensation for extra precision and adjust
      	call to write_float. 
      	* io/write_float.def (output_float_FMT_G_): Use volatile rather than
      	asm volatile to avoid optimization issue. Correctly calculate the
      	number of blanks (nb) to be appended and simplify calculation logic.
      	(write_float): Increase MIN_FIELD_WIDTH by one to accomodate the new
      	default widths. Eliminate the code that attempted to reduce the
      	the precision used in later sprintf functions.  Add call parameter to
      	compensate for extra precision.
      
      Co-Authored-By: Janne Blomqvist <jb@gcc.gnu.org>
      
      From-SVN: r173166
      Jerry DeLisle committed
    • expr.h (expand_shift): Rename to ... · eb6c3df1
      2011-04-29  Richard Guenther  <rguenther@suse.de>
      
      	* expr.h (expand_shift): Rename to ...
      	(expand_variable_shift): ... this.
      	(expand_shift): Take a constant shift amount.
      	* expmed.c (expand_shift): Rename to ...
      	(expand_variable_shift): ... this.
      	(expand_shift): New wrapper around expand_variable_shift.
      	* expr.c (convert_move, emit_group_load_1, emit_group_store,
      	optimize_bitfield_assignment_op, store_field, expand_expr_real_2,
      	expand_expr_real_1, reduce_to_bit_field_precision): Adjust.
      	* expmed.c (store_fixed_bit_field, extract_bit_field_1,
      	extract_fixed_bit_field, extract_split_bit_field, expand_mult_const,
      	expand_mult, expand_widening_mult, expand_mult_highpart_adjust,
      	extract_high_half, expand_sdiv_pow2, expand_divmod, emit_cstore,
      	emit_store_flag_1, emit_store_flag): Likewise.
      	* builtins.c (expand_builtin_signbit): Likewise.
      	* calls.c (load_register_parameters): Likewise.
      	* function.c (assign_parm_setup_block): Likewise.
      	* lower-subreg.c (resolve_shift_zext): Likewise.
      	* optabs.c (widen_bswap, expand_abs_nojump,
      	expand_one_cmpl_abs_nojump, expand_float): Likewise.
      	* spu/spu.c (spu_expand_extv): Likewise.
      	* sparc/sparc.c (sparc32_initialize_trampoline): Likewise.
      
      From-SVN: r173157
      Richard Guenther committed
    • tree-inline.c (remap_eh_region_tree_nr): Use integer_type_node for the remapped region number. · 9f616812
      2011-04-29  Richard Guenther  <rguenther@suse.de>
      
      	* tree-inline.c (remap_eh_region_tree_nr): Use integer_type_node
      	for the remapped region number.
      	* predict.c (build_predict_expr): Use integer_type_node for the
      	predict kind.
      	* fold-const.c (fold_binary_loc): Use integer_type_node for
      	the shift amount.  Use a proper type for the PLUS_EXPR operand.
      
      From-SVN: r173156
      Richard Guenther committed
    • lto-streamer.c (lto_streamer_cache_insert_1): Accept to override other trees that just builtins. · b823cdfe
      	* lto-streamer.c (lto_streamer_cache_insert_1): Accept to override
      	other trees that just builtins.
      	(lto_record_common_node): Don't leave NULL TYPE_CANONICAL.
      
      lto/
      	* lto.c (toplevel): Include tree-flow.h.
      	(lto_read_in_decl_state): Don't merge types here.
      	(tree_with_vars): New static hash table.
      	(remember_with_vars): New static functions.
      	(LTO_FIXUP_TYPE): New macro.
      	(lto_ft_common, lto_ft_decl_minimal, lto_ft_decl_common,
      	lto_ft_decl_with_vis, lto_ft_decl_non_common, lto_ft_function,
      	lto_ft_field_decl, lto_ft_type, lto_ft_binfo, lto_ft_constructor,
      	lto_ft_expr, lto_fixup_types, uniquify_nodes): New static functions.
      	(lto_read_decls): Uniquify while reading in trees.
      	(lto_fixup_data_t, LTO_FIXUP_SUBTREE,
      	LTO_REGISTER_TYPE_AND_FIXUP_SUBTREE, no_fixup_p, lto_fixup_common,
      	lto_fixup_decl_minimal, lto_fixup_decl_common, lto_fixup_decl_with_vis,
      	lto_fixup_decl_non_common, lto_fixup_function, lto_fixup_field_decl,
      	lto_fixup_type, lto_fixup_binfo, lto_fixup_constructor,
      	lto_fixup_tree): Remove.
      	(lto_fixup_state): Remove data argument.  Use
      	lto_symtab_prevailing_decl.
      	(LTO_SET_PREVAIL, LTO_NO_PREVAIL): New macros.
      	(lto_fixup_prevailing_decls): New function.
      	(lto_fixup_state_aux): Argument aux is unused.
      	(lto_fixup_decls): Don't allocate pointer sets, don't use
      	lto_fixup_tree, use lto_fixup_prevailing_decls.
      	(read_cgraph_and_symbols): Allocate and remove tree_with_vars.
      	* Make-lang.in (lto/lto.o): Depend on $(TREE_FLOW_H).
      
      From-SVN: r173155
      Michael Matz committed
    • misc.c (gnat_handle_option): Set warn_maybe_uninitialized. · fa5e5a76
      ada/
      	* gcc-interface/misc.c (gnat_handle_option): Set
      	warn_maybe_uninitialized.
      
      fortran/
      	* options.c (options.c): Set warn_maybe_uninitialized.
      
      From-SVN: r173154
      Michael Matz committed
    • tree-nested.c (get_trampoline_type): Use size_int. · 413581ba
      2011-04-29  Richard Guenther  <rguenther@suse.de>
      
      	* tree-nested.c (get_trampoline_type): Use size_int.
      	(get_nl_goto_field): Likewise.
      	* tree-eh.c (lower_try_finally_switch): Use integer_type_node
      	for all indexes.
      	(lower_eh_constructs_2): Likewise.
      	(lower_resx): Likewise.
      	(lower_eh_dispatch): Likewise.
      	* tree-mudflap.c (mf_build_string): Use size_int.
      	(mudflap_register_call): Use integer_type_node for the flag.
      	(mudflap_enqueue_constant): Use size_int.
      	* tree-chrec.c (reset_evolution_in_loop): Copy CHREC_VAR
      	instead of rebuilding it.
      
      From-SVN: r173153
      Richard Guenther committed
    • tree-ssa-structalias.c (get_fi_for_callee): Restructure. · 5c04e9f4
      2011-04-29  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-structalias.c (get_fi_for_callee): Restructure.
      	Handle OBJ_TYPE_REF.
      	(find_func_aliases_for_call): Use it more consistently.
      
      From-SVN: r173152
      Richard Guenther committed
    • osf.S (UA_SI, [...]): Define. · 9d9305ea
      	* src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE):
      	Define.
      	Use them to handle ELF vs. ECOFF differences.
      	[__osf__] (_GLOBAL__F_ffi_call_osf): Define.
      
      From-SVN: r173151
      Rainer Orth committed
    • haifa-sched.c (last_nondebug_scheduled_insn): New. · 5c24671b
      * haifa-sched.c (last_nondebug_scheduled_insn): New.
      (rank_for_schedule): Use it.
      (schedule_block): Set it.
      
      From-SVN: r173150
      Alexandre Oliva committed
    • split checksum into cfg checksum and line checksum · 10adac51
      From-SVN: r173147
      Xinliang David Li committed
    • Daily bump. · 112cee35
      From-SVN: r173146
      GCC Administrator committed
  2. 28 Apr, 2011 27 commits
    • rs6000.c (rs6000_delegitimize_address): Handle unspec plus offset. · 5d6358a5
      	* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
      	unspec plus offset.  Tidy macho code.
      
      From-SVN: r173141
      Alan Modra committed
    • cgraphunit.c (cgraph_preserve_function_body_p): Accept a cgraph node instead of a decl. · 85ad2ef5
      2011-04-29  Martin Jambor  <mjambor@suse.cz>
      
      	* cgraphunit.c (cgraph_preserve_function_body_p): Accept a cgraph
      	node instead of a decl.  Update all callers.
      	* cgraph.h: Update declaration.
      
      From-SVN: r173138
      Martin Jambor committed
    • update changelog #2 · 74c810bd
      From-SVN: r173135
      Michael Meissner committed
    • re PR tree-optimization/48765 (ICE in vect_transform_stmt) · 437f4a00
      
              PR tree-optimization/48765
              * tree-vectorizer.h (vect_make_slp_decision): Return bool.
              * tree-vect-loop.c (vect_analyze_loop_operations): Add new
              argument to indicate if loop aware SLP is being used.  Scan
              the statements and update the vectorization factor
              according to the type of
              vectorization before statement analysis.
              (vect_analyze_loop_2): Get a return value from
              vect_make_slp_decision, pass it to 
              vect_analyze_loop_operations.
              (vectorizable_reduction): Set number of copies to 1 in case of
              pure SLP statement.
              * tree-vect-stmts.c (vectorizable_conversion,
              vectorizable_assignment, vectorizable_shift,
              vectorizable_operation, vectorizable_type_demotion,
              vectorizable_type_promotion, vectorizable_store,
              vectorizable_load): Likewise.
              (vectorizable_condition): Move the check that it is not SLP
              vectorization before the number of copies check.
              * tree-vect-slp.c (vect_make_slp_decision): Return TRUE if
              decided to vectorize the loop using SLP.
      
      From-SVN: r173132
      Ira Rosen committed
    • update changelog · 45540bcf
      From-SVN: r173128
      Michael Meissner committed
    • re PR tree-optimization/48775 (gcc.dg/pr48616.c FAILs on Tru64 UNIX) · 2e23f6d9
      	PR tree-optimization/48775
      	* gcc.dg/pr48616.c: Also add -fno-common on alpha*-dec-osf*.
      
      From-SVN: r173125
      Rainer Orth committed
    • re PR c++/48798 (CV-qualified base class erroneously forbidden) · 546a4197
      /cp
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48798
      	* semantics.c (finish_base_specifier): cv-qualified base class
      	is fine, per DR 484.
      
      /testsuite
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48798
      	* g++.dg/inherit/pr48798.C: New.
      	* g++.old-deja/g++.other/base1.C: Adjust.
      
      From-SVN: r173124
      Paolo Carlini committed
    • re PR c++/48656 ([C++0x] cannot call member function without object) · f62cd409
      Fix PR c++/48656
      
      gcc/cp/
      
      	* semantics.c (finish_call_expr): Don't forget BASELINK nodes when
      	considering call expressions involving a member function.
      
      gcc/testsuite/
      
      	* gcc/testsuite/g++.dg/template/inherit7.C: New test case.
      
      From-SVN: r173123
      Dodji Seketeli committed
    • re PR middle-end/48597 (x86-64 unwind register save location misses half-register write?) · c6fc44f3
      	PR middle-end/48597
      	* final.c (final_scan_insn): Call dwarf2out_frame_debug even for
      	inline asm.
      
      From-SVN: r173120
      Jakub Jelinek committed
    • * config.gcc (*-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | · 6c0170ea
      	*-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
      	(i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
      	i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
      	x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
      	linux*.h headers.
      	* config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
      	Define.
      	* config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
      	* config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
      	* config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
      	* config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
      	undefine.
      	* config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
      	REG_NAME.
      	* config/i386/linux.h (REG_NAME): Don't define.
      	* config/i386/linux64.h (REG_NAME): Don't define.
      	* config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
      	Undefine before defining.
      
      From-SVN: r173119
      Joseph Myers committed
    • configure.ac (*-*-dragonfly*, [...]): Remove cases in libgcj-disabling case statement. · fddf9ee7
      	* configure.ac (*-*-dragonfly*, *-*-freebsd*, *-*-netbsd*,
      	alpha*-dec-osf*, alpha*-*-linux*, alpha*-*-*, sh-*-linux*,
      	arm-*-elf* | arm*-*-eabi*, arm*-*-linux-gnueabi, frv-*-*): Remove
      	cases in libgcj-disabling case statement.
      	(hppa*64*-*-linux*): Set unsupported_languages instead of
      	disabling target-zlib.
      	(hppa*64*-*-*): Restrict case in libgcj-disabling case statement
      	to hppa*64*-*-hpux*.
      	(hppa*-*-*): Restrict case in libgcj-disabling case statement to
      	hppa*-*-hpux*.
      	(ia64*-*-elf*, ia64*-**-hpux*, i[[3456789]]86-*-elf,
      	i[[3456789]]86-*-linux*, *-*-cygwin*, i[[3456789]]86-*-interix*,
      	i[[3456789]]86-*-solaris2*, m32r-*-*, m68k-*-elf*, m68*-*-* |
      	fido-*-*, powerpc-*-eabi, powerpc-*-eabi* | powerpcle-*-eabi* |
      	powerpc-*-rtems*, mips*-*-linux*, mips*-*-*, sh-*-* | sh64-*-*,
      	sparc-*-elf*, sparc64-*-elf*, sparc-*-solaris* |
      	sparc64-*-solaris* | sparcv9-*-solaris*, *-*-linux* | *-*-gnu* |
      	*-*-k*bsd*-gnu | *-*-kopensolaris*-gnu, *-*-*): Remove cases in
      	libgcj-disabling case statement.
      	* configure: Regenerate.
      
      From-SVN: r173118
      Joseph Myers committed
    • ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names array. · 970dabbd
      
      	* ipa-inline-analysis.c (will_be_nonconstant_predicate): Take nonconstant_names
      	array.
      	(estimate_function_body_sizes): Build nonconstant_names array; handle
      	BUILT_IN_CONSTANT_P.
      
      From-SVN: r173070
      Jan Hubicka committed
    • configure.ac: Disable Java for targets not supporting libffi. · 80f81134
      	* configure.ac: Disable Java for targets not supporting libffi.
      	(*-*-chorusos, *-*-kaos*, am33_2.0-*-linux*, sh*-*-pe|mips*-*-pe):
      	Remove cases in Java-disabling statement.
      	(*arm-wince-pe): Change to arm-wince-pe.
      	(arc-*-*, arm-*-coff, arm-*-pe*, arm-*-riscix*, avr-*-*): Remove
      	cases in Java-disabling statement.
      	(bfin-*-*): Don't disable Java again.
      	(c4x-*-* | tic4x-*-*, tic54x-*-*, cr16-*-*, d10v-*-*, d30v-*-*,
      	fr30-*-elf*, moxie-*-*, h8300*-*-*, h8500-*-*, hppa1.1-*-osf* |
      	hppa1.1-*-bsd*, hppa*-*-*elf* | hppa*-*-lites* | hppa*-*-openbsd*,
      	hppa*-*-pro*, i960-*-*, i[[3456789]]86-*-coff,
      	i[[3456789]]86-*-pe, i[[3456789]]86-*-sco3.2v5*,
      	i[[3456789]]86-*-sco*, i[[3456789]]86-*-sysv4*,
      	i[[3456789]]86-*-beos*, i[[3456789]]86-*-rdos*,
      	m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*): Remove cases in
      	Java-disabling statement.
      	(mmix-*-*): Don't disable Java again.
      	(mt-*-*, powerpc*-*-winnt* | powerpc*-*-pe*, powerpcle-*-solaris*,
      	powerpc-*-beos*, rs6000-*-lynxos*, rs6000-*-*, m68k-apollo-*,
      	microblaze*, mips*-sde-elf*, mips*-*-irix5*, mips*-*-bsd*,
      	sparclet-*-aout* | sparc86x-*-*, sparclite-*-*, sparc-*-sunos4*,
      	tic6x-*-*, v810-*-*, vax-*-*): Remove cases in Java-disabling
      	statement.
      	* configure: Regenerate.
      
      From-SVN: r173069
      Joseph Myers committed
    • configure.ac: Separate cases disabling Java and Java libraries from general case over targets. · 2909494b
      	* configure.ac: Separate cases disabling Java and Java libraries
      	from general case over targets.
      	* configure: Regenerate.
      
      From-SVN: r173068
      Joseph Myers committed
    • re PR bootstrap/48804 (Bootstrap compare failure) · 8d3e3924
      2011-04-28  Richard Guenther  <rguenther@suse.de>
      
      	PR bootstrap/48804
      	Revert
      	2011-04-28  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-structalias.c (solve_constraints): Build succ graph
      	as late as possible.
      
      From-SVN: r173067
      Richard Guenther committed
    • 2011-04-28 Paolo Carlini <paolo.carlini@oracle.com> · df9cb15f
      	Revert unintended changes to include/parallel files.
      
      From-SVN: r173066
      Paolo Carlini committed
    • re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's) · 9f1163b1
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/48760
      	* include/std/complex (complex<float>::complex(float, float),
      	complex<double>::complex(double, double),
      	complex<long double>::complex(long double, long double)): Use
      	list-initialization in C++0x mode, initialize in the body in
      	C++03 mode.
      	* testsuite/26_numerics/complex/cons/48760.cc: New.
      	* testsuite/26_numerics/complex/cons/48760_c++0x.cc: Likewise.
      
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/std/bitset (_Base_bitset(unsigned long long)): Minor
      	tweak, remove redundant round braces.
      
      From-SVN: r173065
      Paolo Carlini committed
    • re PR tree-optimization/40052 (missed optimizations on (extended) logical types: (x | 1) --> 1) · 6ecde111
      2011-04-28  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/40052
      	PR tree-optimization/15347
      	* gcc.dg/tree-ssa/vrp57.c: New testcase.
      	* gcc.dg/pr15347.c: Likewise.
      
      From-SVN: r173064
      Richard Guenther committed
    • re PR c++/48530 ([C++0x][SFINAE] Hard errors with deleted d'tors) · a6343f61
      /cp
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48530
      	* tree.c (build_cplus_new): Check build_target_expr return
      	value for error_mark_node.
      
      /testsuite
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48530
      	* g++.dg/cpp0x/sfinae18.C: New.
      
      From-SVN: r173063
      Paolo Carlini committed
    • re PR c++/48771 ([C++0x] is_literal_type incorrect for references to non-literal types) · 83b6b866
      /cp
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48771
      	* semantics.c (literal_type_p): Reference types are literal types,
      	per the FDIS.
      	(valid_type_in_constexpr_fundecl_p): Remove.
      	(is_valid_constexpr_fn): Adjust.
      
      /testsuite
      2011-04-28  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48771
      	* g++.dg/ext/is_literal_type1.C: New.
      
      From-SVN: r173062
      Paolo Carlini committed
    • tree-ssa-structalias.c (dump_constraint): Don't end the line. · 8576f20a
      2011-04-28  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-structalias.c (dump_constraint): Don't end the line.
      	(debug_constraint): Do it here.
      	(dump_constraints): And here.
      	(rewrite_constraints): And here.
      	(dump_constraint_edge): Remove.
      	(dump_constraint_graph): Rewrite to produce DOT output.
      	(solve_constraints): Build succ graph as late as possible.
      	Dump constraint graphs before and after solving.
      
      From-SVN: r173061
      Richard Guenther committed
    • tree-ssa-structalias.c (find_func_aliases_for_builtin_call): New function split out from ... · e38811ce
      2011-04-28  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
      	New function split out from ...
      	(find_func_aliases): ... here.  Call it.
      	(find_func_aliases_for_call): Likewise.
      
      From-SVN: r173060
      Richard Guenther committed
    • re PR fortran/48112 (generic interface to external function in module) · a300121e
      2011-04-28  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48112
              * resolve.c (resolve_fl_var_and_proc): Print diagnostic of
              function results only once.
              (resolve_symbol): Always resolve function results.
      
              PR fortran/48279
              * expr.c (gfc_check_vardef_context): Fix handling of generic
              EXPR_FUNCTION.
              * interface.c (check_interface0): Reject internal functions
              in generic interfaces, unless -std=gnu.
      
      2011-04-28  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48112
              PR fortran/48279
              * gfortran.dg/interface_35.f90: New.
              * gfortran.dg/erfc_scaled_1.f90: Don't compile with -pedantic.
              * gfortran.dg/func_result_6.f90: Add dg-warning.
              * gfortran.dg/bessel_1.f90: Ditto.
              * gfortran.dg/hypot_1.f90: Ditto.
              * gfortran.dg/proc_ptr_comp_20.f90: Ditto.
              * gfortran.dg/proc_ptr_comp_21.f90: Ditto.
              * gfortran.dg/interface_assignment_4.f90: Ditto.
      
      From-SVN: r173059
      Tobias Burnus committed
    • re PR libstdc++/48760 (std::complex constructor buggy in the face of NaN's) · 77a30e9a
      	PR libstdc++/48760
      	Implement list-initialization of _Complex.
      	* decl.c (reshape_init_r): Allow {real,imag} for _Complex.
      	(check_initializer): Likewise.
      	* call.c (build_complex_conv): New.
      	(implicit_conversion): Call it.
      	(convert_like_real): Handle it.
      	* typeck2.c (check_narrowing): Handle it.
      
      From-SVN: r173058
      Jason Merrill committed
    • init.c (build_vec_delete_1): Look for sfk_deleting_destructor to decide whether to delete. · e79a6b40
      	* init.c (build_vec_delete_1): Look for sfk_deleting_destructor to
      	decide whether to delete.
      	(build_vec_init): Pass sfk_complete_destructor.
      
      From-SVN: r173057
      Jason Merrill committed
    • re PR c++/40975 (ICE in copy_tree_r on array new) · c12ff9d8
      	PR c++/40975
      	* cp-tree.def (VEC_INIT_EXPR): Add third operand.
      	* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
      	* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
      	* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
      	(build_vec_init_elt): Don't expect an array type.
      	(build_array_copy): Adjust.
      	* init.c (perform_member_init): Adjust.
      	(build_new_1): Use build_vec_init_expr.
      
      From-SVN: r173056
      Jason Merrill committed
    • internal-fn.h (internal_fn_name_array): Declare. · fbaf0d0c
      	* internal-fn.h (internal_fn_name_array): Declare.
      	(internal_fn_flags_array): Likewise.
      
      From-SVN: r173055
      Gabriel Dos Reis committed