1. 15 Jun, 2014 10 commits
    • re PR fortran/28484 ([F03] system_clock with real-type count_rate does not compile) · a416c4c7
      	PR fortran/28484
      	PR fortran/61429
      
      	* check.c (gfc_check_system_clock): Improve checking of arguments.
      	* intrinsic.texi: Update doc of SYSTEM_CLOCK.
      	* iresolve.c (gfc_resolve_system_clock): Choose library function
      	used depending on argument kinds.
      	* trans-decl.c (gfc_build_intrinsic_function_decls): Build
      	decls for system_clock_4 and system_clock_8.
      	* trans-intrinsic.c (conv_intrinsic_system_clock): New function.
      	(gfc_conv_intrinsic_subroutine): Call conv_intrinsic_system_clock.
      	* trans.h (gfor_fndecl_system_clock4, gfor_fndecl_system_clock8):
      	New variables.
      
      	* gfortran.dg/system_clock_1.f90: New file.
      	* gfortran.dg/system_clock_2.f90: New file.
      
      From-SVN: r211686
      Francois-Xavier Coudert committed
    • re PR libfortran/60468 (./fpu-target.h:93:3: error: unknown type name 'choke') · 6faf4751
      	PR libfortran/60468
      	* configure.ac: Include <math.h> when checking for
      	fp_except_t and fp_rnd_t types.
      	* configure: Regenerate.
      
      From-SVN: r211685
      Francois-Xavier Coudert committed
    • df.h (DF_REF_REG_USE_P, [...]): Remove null checks. · 3bb5c996
      gcc/
      	* df.h (DF_REF_REG_USE_P, DF_MWS_REG_USE_P): Remove null checks.
      
      From-SVN: r211684
      Richard Sandiford committed
    • df.h (df_mw_hardreg, [...]): Add a link pointer. · b512946c
      gcc/
      	* df.h (df_mw_hardreg, df_base_ref): Add a link pointer.
      	(df_insn_info): Turn defs, uses, eq_uses and mw_hardregs into linked
      	lists.
      	(df_scan_bb_info): Likewise artificial_defs and artificial_uses.
      	(DF_REF_NEXT_LOC, DF_MWS_NEXT): New macros.
      	(FOR_EACH_INSN_INFO_DEF, FOR_EACH_INSN_INFO_USE)
      	(FOR_EACH_INSN_INFO_EQ_USE, FOR_EACH_INSN_INFO_MW)
      	(FOR_EACH_ARTIFICIAL_USE, FOR_EACH_ARTIFICIAL_DEF)
      	(df_get_artificial_defs, df_get_artificial_uses)
      	(df_single_def, df_single_use): Update accordingly.
      	(df_refs_chain_dump): Take the first element in a linked list as
      	parameter, rather than a pointer to an array of pointers.
      	* df-core.c (df_refs_chain_dump, df_mws_dump): Likewise.
      	* df-problems.c (df_rd_bb_local_compute_process_def): Likewise.
      	(df_chain_create_bb_process_use): Likewise.
      	(df_md_bb_local_compute_process_def): Likewise.
      	* fwprop.c (process_defs, process_uses): Likewise.
      	(register_active_defs, update_uses): Likewise.
      	(forward_propagate_asm): Update for new df_ref linking.
      	* df-scan.c (df_scan_free_ref_vec, df_scan_free_mws_vec): Delete.
      	(df_null_ref_rec, df_null_mw_rec): Likewise.
      	(df_scan_free_internal): Don't free df_ref and df_mw_hardreg lists
      	explicitly.
      	(df_scan_free_bb_info): Remove check for null artificial_defs.
      	(df_install_ref_incremental): Adjust for new df_ref linking.
      	Use a single-element insertion rather than a full sort.
      	(df_ref_chain_delete_du_chain): Take the first element
      	in a linked list as parameter, rather than a pointer to an array of
      	pointers.
      	(df_ref_chain_delete, df_mw_hardreg_chain_delete): Likewise.
      	(df_add_refs_to_table, df_refs_verify, df_mws_verify): Likewise.
      	(df_insn_info_delete): Remove check for null defs and call to
      	df_scan_free_mws_vec.
      	(df_insn_rescan): Initialize df_ref and df_mw_hardreg lists to
      	null rather than df_null_*_rec.
      	(df_insn_rescan_debug_internal): Likewise, and update null
      	checks in the same way.  Remove check for null defs.
      	(df_ref_change_reg_with_loc_1): Fix choice of list for defs.
      	Move a single element rather doing a full sort.
      	(df_mw_hardreg_chain_delete_eq_uses): Adjust for new df_mw_hardreg
      	linking.
      	(df_notes_rescan): Likewise.  Use a merge rather than a full sort.
      	Initialize df_ref and df_mw_hardreg lists to null rather than
      	df_null_*_rec.
      	(df_ref_compare): Take df_refs as parameter, transferring the
      	old interface to...
      	(df_ref_ptr_compare): ...this new function.
      	(df_sort_and_compress_refs): Update accordingly.
      	(df_mw_compare): Take df_mw_hardregs as parameter, transferring the
      	old interface to...
      	(df_mw_ptr_compare): ...this new function.
      	(df_sort_and_compress_mws): Update accordingly.
      	(df_install_refs, df_install_mws): Return a linked list rather than
      	an array of pointers.
      	(df_refs_add_to_chains): Assert that old lists are empty rather
      	than freeing them.
      	(df_insn_refs_verify): Don't handle null defs speciailly.
      	* web.c (union_match_dups): Update for new df_ref linking.
      
      From-SVN: r211683
      Richard Sandiford committed
    • df.h (df_ref_create, [...]): Delete. · 5a474220
      gcc/
      	* df.h (df_ref_create, df_ref_remove): Delete.
      	* df-scan.c (df_ref_create, df_ref_compress_rec): Likewise.
      	(df_ref_remove): Likewise.
      
      From-SVN: r211682
      Richard Sandiford committed
    • df.h (df_single_def, [...]): New functions. · 74e59b6c
      gcc/
      	* df.h (df_single_def, df_single_use): New functions.
      	* ira.c (find_moveable_pseudos): Use them.
      
      From-SVN: r211681
      Richard Sandiford committed
    • df.h (FOR_EACH_INSN_INFO_MW): New macro. · fc8e9f58
      gcc/
      	* df.h (FOR_EACH_INSN_INFO_MW): New macro.
      	* df-problems.c (df_note_bb_compute): Use it.
      	* regstat.c (regstat_bb_compute_ri): Likewise.
      
      From-SVN: r211680
      Richard Sandiford committed
    • df.h (FOR_EACH_ARTIFICIAL_USE, [...]): New macros. · 292321a5
      gcc/
      	* df.h (FOR_EACH_ARTIFICIAL_USE, FOR_EACH_ARTIFICIAL_DEF): New macros.
      	* cse.c (cse_extended_basic_block): Use them.
      	* dce.c (mark_artificial_use): Likewise.
      	* df-problems.c (df_rd_simulate_artificial_defs_at_top): Likewise.
      	(df_lr_bb_local_compute, df_live_bb_local_compute): Likewise.
      	(df_chain_remove_problem, df_chain_bb_dump): Likewise.
      	(df_word_lr_bb_local_compute, df_note_bb_compute): Likewise.
      	(df_simulate_initialize_backwards): Likewise.
      	(df_simulate_finalize_backwards): Likewise.
      	(df_simulate_initialize_forwards): Likewise.
      	(df_md_simulate_artificial_defs_at_top): Likewise.
      	* df-scan.c (df_reorganize_refs_by_reg_by_insn): Likewise.
      	* regrename.c (init_rename_info): Likewise.
      	* regstat.c (regstat_bb_compute_ri): Likewise.
      	(regstat_bb_compute_calls_crossed): Likewise.
      
      From-SVN: r211679
      Richard Sandiford committed
    • df.h (DF_INSN_INFO_MWS, [...]): New macros. · bfac633a
      gcc/
      	* df.h (DF_INSN_INFO_MWS, FOR_EACH_INSN_INFO_DEF): New macros.
      	(FOR_EACH_INSN_INFO_USE, FOR_EACH_INSN_INFO_EQ_USE): Likewise.
      	(FOR_EACH_INSN_DEF, FOR_EACH_INSN_USE, FOR_EACH_INSN_EQ_USE): Likewise.
      	* auto-inc-dec.c (find_inc, merge_in_block): Use them.
      	* combine.c (create_log_links): Likewise.
      	* compare-elim.c (find_flags_uses_in_insn): Likewise.
      	(try_eliminate_compare): Likewise.
      	* cprop.c (make_set_regs_unavailable, mark_oprs_set): Likewise.
      	* dce.c (deletable_insn_p, find_call_stack_args): Likewise.
      	(remove_reg_equal_equiv_notes_for_defs): Likewise.
      	(reset_unmarked_insns_debug_uses, mark_reg_dependencies): Likewise.
      	(word_dce_process_block, dce_process_block): Likewise.
      	* ddg.c (def_has_ccmode_p): Likewise.
      	* df-core.c (df_bb_regno_first_def_find): Likewise.
      	(df_bb_regno_last_def_find, df_find_def, df_find_use): Likewise.
      	* df-problems.c (df_rd_simulate_one_insn): Likewise.
      	(df_lr_bb_local_compute, df_live_bb_local_compute): Likewise.
      	(df_chain_remove_problem, df_chain_insn_top_dump): Likewise.
      	(df_chain_insn_bottom_dump, df_word_lr_bb_local_compute): Likewise.
      	(df_word_lr_simulate_defs, df_word_lr_simulate_uses): Likewise.
      	(df_remove_dead_eq_notes, df_note_bb_compute): Likewise.
      	(df_simulate_find_defs, df_simulate_find_uses): Likewise.
      	(df_simulate_find_noclobber_defs, df_simulate_defs): Likewise.
      	(df_simulate_uses, df_md_simulate_one_insn): Likewise.
      	* df-scan.c (df_reorganize_refs_by_reg_by_insn): Likewise.
      	* fwprop.c (local_ref_killed_between_p): Likewise.
      	(all_uses_available_at, free_load_extend): Likewise.
      	* gcse.c (update_bb_reg_pressure, calculate_bb_reg_pressure): Likewise.
      	* hw-doloop.c (scan_loop): Likewise.
      	* ifcvt.c (dead_or_predicable): Likewise.
      	* init-regs.c (initialize_uninitialized_regs): Likewise.
      	* ira-lives.c (mark_hard_reg_early_clobbers): Likewise.
      	(process_bb_node_lives): Likewise.
      	* ira.c (compute_regs_asm_clobbered, build_insn_chain): Likewise.
      	(find_moveable_pseudos): Likewise.
      	* loop-invariant.c (check_dependencies, record_uses): Likewise.
      	* recog.c (peep2_find_free_register): Likewise.
      	* ree.c (get_defs): Likewise.
      	* regstat.c (regstat_bb_compute_ri): Likewise.
      	(regstat_bb_compute_calls_crossed): Likewise.
      	* sched-deps.c (find_inc, find_mem): Likewise.
      	* sel-sched-ir.c (maybe_downgrade_id_to_use): Likewise.
      	(maybe_downgrade_id_to_use, setup_id_reg_sets): Likewise.
      	* shrink-wrap.c (requires_stack_frame_p): Likewise.
      	(prepare_shrink_wrap): Likewise.
      	* store-motion.c (compute_store_table, build_store_vectors): Likewise.
      	* web.c (union_defs, pass_web::execute): Likewise.
      	* config/i386/i386.c (increase_distance, insn_defines_reg): Likewise.
      	(insn_uses_reg_mem, ix86_ok_to_clobber_flags): Likewise.
      
      From-SVN: r211678
      Richard Sandiford committed
    • Daily bump. · 2c73339a
      From-SVN: r211676
      GCC Administrator committed
  2. 14 Jun, 2014 9 commits
    • re PR c++/33101 ([DR 577] allow typedefs for void in empty parameter list) · 045af2d7
      /cp
      2014-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/33101
      	* decl.c (grokparms): Improve error message about void parameters.
      	* error.c (type_to_string): Fix aka cut off code.
      
      /testsuite
      2014-06-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/33101
      	* g++.dg/other/void3.C: New.
      	* g++.dg/conversion/err-recover1.C: Update.
      
      From-SVN: r211673
      Paolo Carlini committed
    • any (any_cast): Combine duplicate doxygen comments. · fb3bc977
      	* include/experimental/any (any_cast): Combine duplicate doxygen
      	comments.
      	* include/experimental/string_view (basic_string_view): Update
      	doxygen comment.
      	* include/std/bitset (bitset): Move to Doxygen 'utilities' group.
      	* include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
      	(dynamic_bitset): Improve Doxygen comments.
      	* include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
      	comment.
      
      From-SVN: r211672
      Jonathan Wakely committed
    • api.xml: Link to more recent API docs. · 10d43d2f
      	* doc/xml/api.xml: Link to more recent API docs.
      	* include/bits/allocator.h: Fix link in doxygen comment.
      	* include/bits/char_traits.h: Likewise.
      	* include/bits/ios_base.h: Likewise.
      	* include/bits/stl_map.h: Likewise.
      	* include/bits/stl_multimap.h: Likewise.
      	* include/bits/stl_multiset.h: Likewise.
      	* include/bits/stl_set.h: Likewise.
      	* include/bits/unordered_map.h: Likewise.
      	* include/bits/unordered_set.h: Likewise.
      	* include/ext/mt_allocator.h: Likewise.
      	* include/std/fstream: Likewise.
      	* include/std/iosfwd: Likewise.
      	* include/std/ostream: Likewise.
      	* include/std/sstream: Likewise.
      	* include/std/streambuf: Likewise.
      	* doc/html/*: Regenerate.
      
      From-SVN: r211671
      Jonathan Wakely committed
    • user.cfg.in (INPUT): Add C++14 headers. · 00541349
      	* doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
      	* include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
      	warnings.
      	* include/bits/shared_ptr.h (shared_ptr): Likewise.
      	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
      	Likewise.
      	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
      	Likewise.
      	* include/parallel/list_partition.h (__parallel::list_partition):
      	Likewise.
      	* include/std/iomanip (quoted): Likewise.
      	* include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
      
      From-SVN: r211670
      Jonathan Wakely committed
    • status_cxx2014.xml: Update Fundamentals TS status. · e8043fa6
      	* doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
      	* include/Makefile.am: Add new header.
      	* include/Makefile.in: Regenerate.
      	* include/experimental/any: New.
      	* include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
      	constructor.
      	* testsuite/experimental/any/assign/1.cc: New.
      	* testsuite/experimental/any/assign/2.cc: New.
      	* testsuite/experimental/any/cons/1.cc: New.
      	* testsuite/experimental/any/cons/2.cc: New.
      	* testsuite/experimental/any/cons/3.cc: New.
      	* testsuite/experimental/any/misc/any_cast.cc: New.
      	* testsuite/experimental/any/misc/any_cast_neg.cc: New.
      	* testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
      	* testsuite/experimental/any/misc/swap.cc: New.
      	* testsuite/experimental/any/modifiers/1.cc: New.
      	* testsuite/experimental/any/observers/type.cc: New.
      
      From-SVN: r211669
      Jonathan Wakely committed
    • re PR ada/61505 (bootstrap broken by ada/gnat_rm.texi after r211448) · ab938b41
      2014-06-14  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              PR ada/61505
              * gnat_rm.texi: Fix errors with makeinfo 5.1.
      
      From-SVN: r211667
      Bernd Edlinger committed
    • dg-extract-results.py: For Python 3, force sys.stdout to handle surrogate escape sequences. · e6120abe
      contrib/
      	* dg-extract-results.py: For Python 3, force sys.stdout to handle
      	surrogate escape sequences.
      	(safe_open): New function.
      	(output_segment, main): Use it.
      
      From-SVN: r211666
      Richard Sandiford committed
    • re PR ada/61505 (bootstrap broken by ada/gnat_rm.texi after r211448) · 56444a32
              PR ada/61505
              * gnat_rm.texi: Attempt to fix error with makeinfo 5.1
      
      From-SVN: r211665
      Arnaud Charlet committed
    • Daily bump. · 9ca01648
      From-SVN: r211661
      GCC Administrator committed
  3. 13 Jun, 2014 21 commits
    • re PR go/61496 (Many Go tests FAIL with ld warning about go$zerovalue) · bbeaf05d
      	PR go/61496
      	* gospec.c (lang_specific_driver): On Solaris, when not using GNU
      	ld, add -t option to avoid warning about common symbol changing
      	size.
      
      From-SVN: r211658
      Ian Lance Taylor committed
    • lra-assign.c (assign_by_spills): Add code to assign vector regs to inheritance pseudos. · 9afb455c
      2014-06-13  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* lra-assign.c (assign_by_spills): Add code to assign vector regs
      	to inheritance pseudos.
      	* config/i386/i386.c (ix86_spill_class): Add check on NO_REGS.
      
      From-SVN: r211655
      Vladimir Makarov committed
    • re PR testsuite/61415 (PowerPC test gcc.target/powerpc/tfmode_off.c fails if -mlong-double-64) · 8241efd1
      gcc/
      	PR target/61415
      	* config/rs6000/rs6000-builtin.def (BU_MISC_1): Delete.
      	(BU_MISC_2): Rename to ...
      	(BU_LDBL128_2): ... this.
      	* config/rs6000/rs6000.h (RS6000_BTM_LDBL128): New define.
      	(RS6000_BTM_COMMON): Add RS6000_BTM_LDBL128.
      	* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Handle
      	RS6000_BTM_LDBL128.
      	(rs6000_invalid_builtin): Add long double 128-bit builtin support.
      	(rs6000_builtin_mask_names): Add RS6000_BTM_LDBL128.
      	* config/rs6000/rs6000.md (unpacktf_0): Remove define)expand.
      	(unpacktf_1): Likewise.
      	* doc/extend.texi (__builtin_longdouble_dw0): Remove documentation.
      	(__builtin_longdouble_dw1): Likewise.
      	* doc/sourcebuild.texi (longdouble128): Document.
      
      gcc/testsuite/
      	PR target/61415
      	* lib/target-supports.exp (check_effective_target_longdouble128): New.
      	* gcc.target/powerpc/pack02.c: Use it.
      	* gcc.target/powerpc/tfmode_off.c: Likewise.
      
      From-SVN: r211653
      Peter Bergner committed
    • [multiple changes] · c7ece684
      2014-06-13  Jeff Law  <law@redhat.com>
      
      	PR rtl-optimization/61094
      	PR rtl-optimization/61446
      	* ree.c (combine_reaching_defs): Get the mode for the copy from
      	the extension insn rather than the defining insn.
      
      2014-06-13  Ilya Enkovich  <ilya.enkovich@intel.com>
      
      	PR rtl-optimization/61094
      	PR rtl-optimization/61446
      	* gcc.target/i386/pr61446.c : New.
      
      From-SVN: r211649
      Jeff Law committed
    • Emit linkage names for inlined functions. · 8e96d784
      	* dwarf2out.c (add_linkage_name): Emit more linkage name.
      	* g++.dg/debug/dwarf2/cdtor-1.C: Update test result.
      
      From-SVN: r211647
      Dehao Chen committed
    • * config-ml.in: Robustify ac_configure_args parsing. · a10ec8bc
      From-SVN: r211645
      Thomas Schwinge committed
    • Non-host system configuration for linker plugins. · 45b3824d
      	* configure.ac (--enable-linker-plugin-configure-flags)
      	(--enable-linker-plugin-flags): New flags.
      	(configdirs): Conditionally add libiberty-linker-plugin.
      	* configure: Regenerate.
      	* Makefile.def (host_modules): Add libiberty-linker-plugin.
      	(host_modules) <lto-plugin>: Pay attention to
      	@extra_linker_plugin_flags@ and
      	@extra_linker_plugin_configure_flags@.
      	(all-lto-plugin): Also depend on all-libiberty-linker-plugin.
      	* Makefile.in: Regenerate.
      	gcc/
      	* doc/install.texi (--enable-linker-plugin-configure-flags)
      	(--enable-linker-plugin-flags): Document new flags.
      
      From-SVN: r211644
      Thomas Schwinge committed
    • Allow for overriding a module's srcdir. · b6383ab8
      	* Makefile.tpl (configure-[+prefix+][+module+])
      	(configure-stage[+id+]-[+prefix+][+module+]): If specified, use
      	"module_srcdir" instead of "module" for locating a module's srcdir.
      	* Makefile.in: Regenerate.
      
      From-SVN: r211643
      Thomas Schwinge committed
    • Allow overriding the libiberty used for building the LTO plugin. · 2a7a8388
      	lto-plugin/
      	* configure.ac (--with-libiberty): New configure option.
      	* configure: Regenerate.
      	* Makefile.am (libiberty, libiberty_noasan, libiberty_pic): New
      	variables.
      	(liblto_plugin_la_LIBADD, liblto_plugin_la_LDFLAGS)
      	(liblto_plugin_la_DEPENDENCIES): Use them.
      	* Makefile.in: Regenerate.
      
      From-SVN: r211642
      Thomas Schwinge committed
    • re PR ipa/61186 (./g++.dg/ipa/pr52939.C & valgrind & pointer_set_insert) · beb683ab
      2014-06-13  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/61186
      	* ipa-devirt.c (possible_polymorphic_call_targets): Store NULL to
      	cache_token if returning early.
      
      From-SVN: r211641
      Martin Jambor committed
    • re PR go/52583 (Several new go testsuite failues on Solaris) · 2abacbae
      	PR go/52583
      runtime: Stop backtrace at a few recognized functions.
      
      On x86_64 Solaris the makecontext function does not properly
      indicate that it is at the top of the stack.  Attempting to
      unwind the stack past a call to makecontext tends to crash.
      This patch changes libgo to look for certain functions that
      are always found at the top of the stack, and to stop
      unwinding when it reaches one of those functions.  There is
      never anything interesting past these functions--that is,
      there is never any code written by the user.
      
      From-SVN: r211640
      Ian Lance Taylor committed
    • re PR go/61498 (Many 64-bit Go tests SEGV in scanblock) · eec40eac
      	PR go/61498
      runtime: Always set gcnext_sp to pointer-aligned address.
      
      The gcnext_sp field is only used on systems that do not use
      split stacks.  It marks the bottom of the stack for the
      garbage collector.  This change makes sure that the stack
      bottom is always aligned to a pointer value.
      
      Previously the garbage collector would align all the addresses
      that it scanned, but it now expects them to be aligned before
      scanning.
      
      From-SVN: r211639
      Ian Lance Taylor committed
    • rx.h (JUMP_ALIGN): Return the log value if user requested alignment is active. · f6c43824
      	* config/rx/rx.h (JUMP_ALIGN): Return the log value if user
      	requested alignment is active.
      	(LABEL_ALIGN): Likewise.
      	(LOOP_ALIGN): Likewise.
      
      From-SVN: r211638
      Nick Clifton committed
    • [multiple changes] · 783da331
      2014-06-13  Yannick Moy  <moy@adacore.com>
      
      	* exp_attr.adb Typo in comment.
      	* gnat1drv.adb (Adjust_Global_Switches): Force float overflow
      	checking in GNATprove_Mode.
      
      2014-06-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-coinho-shared.adb, a-coinho-shared.ads: Update shared version.
      
      From-SVN: r211629
      Arnaud Charlet committed
    • sem_ch3.adb, [...]: Minor reformatting. · 129bbe43
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, sem_ch9.adb, a-coinho.adb, a-coinho.ads: Minor
      	reformatting.
      
      From-SVN: r211628
      Robert Dewar committed
    • [multiple changes] · aca670a0
      2014-06-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma): Add local
      	variable Missing_Parentheses. Emit an error when a state
      	declaration with options appears without parentheses. Add a
      	guard to prevent a bogus error when a state declaration may be
      	interpreted as an option if a previous declaration with options
      	was not parenthesized.
      
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* checks.adb: Validate_Alignment_Check_Warnings: New procedure
      	(Apply_Address_Clause_Check): Make Aligment_Warnings table entry.
      	* checks.ads (Alignment_Warnings_Record): New type.
      	(Alignment_Warnings): New table
      	(Validate_Alignment_Check_Warnings): New procedure.
      	* errout.adb (Delete_Warning_And_Continuations): New procedure
      	(Error_Msg_Internal): Set Warning_Msg (Delete_Warning): Handle
      	Warnings_Treated_As_Errors (Finalize): Minor reformatting
      	* errout.ads (Warning_Msg): New variable
      	(Delete_Warning_And_Continuations): New procedure
      	* erroutc.adb (Delete_Msg): Handle Warnings_Treated_As_Errors count.
      	* gnat1drv.adb (Post_Compilation_Validation_Checks): New procedure.
      
      2014-06-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* a-coinho.adb, a-coinho.ads: Add Reference machinery.
      
      From-SVN: r211627
      Arnaud Charlet committed
    • [multiple changes] · d2adb45e
      2014-06-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* errout.adb (SPARK_Msg_N): New routine.
      	(SPARK_Msg_NE): New routine.
      	* errout.ads Add a section on SPARK-related error routines.
      	(SPARK_Msg_N): New routine.
      	(SPARK_Msg_NE): New routine.
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Ensure that
      	pragma Abstract_State is always inserted after SPARK_Mode.
      	(Insert_After_SPARK_Mode): New routine.
      	* sem_prag.adb (Analyze_Abstract_State,
      	Analyze_Constituent, Analyze_External_Property,
      	Analyze_External_Property_In_Decl_Part, Analyze_Global_Item,
      	Analyze_Global_List, Analyze_Initialization_Item,
      	Analyze_Initialization_Item_With_Inputs, Analyze_Input_Item,
      	Analyze_Input_List, Analyze_Input_Output, Analyze_Part_Of,
      	Analyze_Pragma, Analyze_Refined_Depends_In_Decl_Part,
      	Analyze_Refined_Global_In_Decl_Part,
      	Analyze_Refined_State_In_Decl_Part, Analyze_Refinement_Clause,
      	Check_Aspect_Specification_Order, Check_Constituent_Usage,
      	Check_Declaration_Order, Check_Dependency_Clause,
      	Check_Duplicate_Mode, Check_Duplicate_Option,
      	Check_Duplicate_Property, Check_External_Properties,
      	Check_External_Property, Check_Function_Return,
      	Check_Matching_Constituent, Check_Matching_State,
      	Check_Mode_Restriction_In_Enclosing_Context,
      	Check_Mode_Restriction_In_Function, Check_Refined_Global_Item,
      	Check_State_And_Constituent_Use, Create_Or_Modify_Clause,
      	Has_Extra_Parentheses, Inconsistent_Mode_Error,
      	Match_Error, Propagate_Part_Of, Report_Extra_Clauses,
      	Report_Extra_Constituents_In_List, Report_Extra_Inputs,
      	Report_Unrefined_States, Report_Unused_Constituents,
      	Report_Unused_States, Role_Error, Usage_Error):
      	Convert Error_Msg_XXX calls to SPARK_Msg_XXX calls
      	to report semantic errors only when SPARK_Mode is on.
      	(Analyze_Depends_In_Decl_Part): Do not check the syntax of
      	pragma Depends explicitly, this is now done by the analysis.
      	(Analyze_Global_In_Decl_List): Do not check the syntax of
      	pragma Global explicitly, this is now done by the analysis.
      	(Analyze_Initializes_In_Decl_Part): Do not check the syntax of
      	pragma Initializes explicitly, this is now done by the analysis.
      	(Analyze_Part_Of): Do not check the syntax of the encapsulating
      	state, this is now done by the analysis.
      	(Analyze_Pragma): Do
      	not check the syntax of a state declaration, this is now done
      	by the analysis.
      	(Analyze_Refined_Depends_In_Decl_Part): Do not
      	check the syntax of pragma Refined_Depends explicitly, this is now
      	done by the analysis.
      	(Analyze_Refined_Global_In_Decl_Part): Do
      	not check the syntax of pragma Refined_Global explicitly, this is
      	now done by the analysis.
      	(Analyze_Refined_State_In_Decl_Part):
      	Do not check the syntax of pragma Refined_State explicitly, this
      	is now done by the analysis.
      	(Check_Dependence_List_Syntax): Removed.
      	(Check_Global_List_Syntax): Removed.
      	(Check_Initialization_List_Syntax): Removed.
      	(Check_Item_Syntax): Removed.
      	(Check_Missing_Part_Of): Do not consider items from an instance.
      	(Check_Refinement_List_Syntax): Removed.
      	(Check_State_Declaration_Syntax): Removed.
      	(Collect_Global_List): Do not raise Program_Error when the input is
      	malformed.
      	(Process_Global_List): Do not raise Program_Error when the input
      	is malformed.
      	* sem_ch13.adb: Minor reformatting.
      2014-06-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Find_Type_Name): Diagnose a private type completion
      	that is an interface definition with an interface list.
      	(Process_Full_View): Move error message on missmatched interfaces
      	between views to the declaration of full view, for clarity.
      	* sem_ch9.adb (Check_Interfaces): Move error message to full view,
      	for clarity.
      
      From-SVN: r211626
      Arnaud Charlet committed
    • tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Rewrite to propagate… · 6aa4c5b6
      tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Rewrite to propagate the VN result into all uses where possible and to remove...
      
      2014-06-13  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
      	Rewrite to propagate the VN result into all uses where
      	possible and to remove stmts becoming dead because of that.
      	(eliminate): Generalize stmt removal handling, remove in
      	reverse dominator order to support proper debug stmt
      	generation.  Update stmts before removing stmts.
      	* tree-ssa-propagate.c (propagate_tree_value): Remove
      	bogus assert.
      
      	* c-c++-common/pr46562-2.c: Adjust.
      	* g++.dg/tree-ssa/pr8781.C: Likewise.
      	* gcc.dg/tree-ssa/ssa-fre-24.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-fre-25.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-fre-32.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-fre-39.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-pre-16.c: Likewise.
      
      From-SVN: r211625
      Richard Biener committed
    • [multiple changes] · 80298c3b
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* exp_attr.adb (Expand_N_Attribute_Reference, case Pred/Succ): Change
      	reason to Overflow.
      
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* makeutl.adb: Minor reformatting.
      
      2014-06-13  Gail Schenker  <schenker@adacore.com>
      
      	* debug.adb, sem_eval.adb (Why_Not_Static): Remove temporary code and
      	associated flag (d.z), no longer needed.
      
      2014-06-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): For Import and
      	Export aspects, do not check whether a corresponding Convention
      	aspect has been specified. Convention is optional in Ada2012,
      	and defaults to Convention_Ada.
      
      From-SVN: r211624
      Arnaud Charlet committed
    • [multiple changes] · 0083dd66
      2014-06-13  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* checks.adb (Apply_Address_Clause_Check): Only issue the new
      	warning if the propagation warning is issued.
      
      2014-06-13  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch4.adb: Minor reformatting.
      
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* exp_attr.adb (Expand_N_Attribute_Reference, case Pred):
      	Handle float range check case (Expand_N_Attribute_Reference,
      	case Succ): Handle float range check case.
      	* sem_attr.adb (Analyze_Attribute, case Pred/Succ): Handle float
      	range check case.
      
      2014-06-13  Vincent Celier  <celier@adacore.com>
      
      	* makeutl.ads (Compute_Builder_Switches): Change name of
      	parameter Root_Environment to Env.
      	* prj-conf.adb (Check_Switches): Call Locate_Runtime with the
      	Env parameter of procedure Get_Or_Create_Configuration_File.
      	(Locate_Runtime): Call Find_Rts_In_Path with the Project_Path
      	of new parameter Env.
      	* prj-conf.ads (Locate_Runtime): New parameter Env of type
      	Prj.Tree.Environment.
      
      2014-06-13  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor comment clarification for Check_Float_Overflow.
      
      From-SVN: r211623
      Arnaud Charlet committed