gcc/cp
	PR c/60189
	* parser.c (cp_parser_postfix_expression): Move handling of cilk_sync
	from here to...
	(cp_parser_statement): ...here. Make sure only semicolon can go after
	Cilk_sync.

gcc/testsuite
	PR c++/60189
	* c-c++-common/cilk-plus/CK/invalid_sync.cÑ: New test.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210678 138bc75d-0d04-0410-961f-82ee72b054a4
	PR middle-end/61252
	* omp-low.c (handle_simd_reference): New function.
	(lower_rec_input_clauses): Use it.  Defer adding reference
	initialization even for reduction without placeholder if in simd,
	handle it properly later on.

	* testsuite/libgomp.c++/simd-9.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210679 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
        PR target/54236
        * config/sh/sh.md (*addc_r_1): Rename to addc_t_r.  Remove empty
        constraints.
        (*addc_r_t): Add new insn_and_split.

gcc/testsuite/
        PR target/54236
        * gcc.target/sh/pr54236-3.c: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210682 138bc75d-0d04-0410-961f-82ee72b054a4
Stop the cfglayout code from failing an assert when called from hw-doloop.

	* cfgrtl.c (cfg_layout_initialize): Weaken assert to only trigger if
	flag_reorder_blocks_and_partition.
	* hw-doloop.c (reorg_loops): Avoid reordering if that flag is set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210683 138bc75d-0d04-0410-961f-82ee72b054a4
Make the Blackfin port build again.

	* config/bfin/bfin.c (split_load_immediate): Use gen_int_mode in a few
	more places.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210684 138bc75d-0d04-0410-961f-82ee72b054a4
    Improve reload code generation by ignoring init insns for reloads.

    	* reload1.c (remove_init_insns, will_delete_init_insn_p): New static
    	functions.
    	(reload, calculate_needs_all_insns, reload_as_needed): Use them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210685 138bc75d-0d04-0410-961f-82ee72b054a4
Fix misapplied ChangeLog patch.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210686 138bc75d-0d04-0410-961f-82ee72b054a4
Amend: yes

* g++.dg/cpp0x/pr61038.C (operator "" _s): Use size_t.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210687 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Robert Dewar  <dewar@adacore.com>

	* einfo.ads (Can_Never_Be_Null): Minor comment update.
	* sem_prag.adb (Check_Arg_Is_Task_Dispatching_Policy): Minor
	error message change.
	* s-arit64.adb ("abs"): New function. Use expression functions
	for the simple conversions and arithmetic.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210688 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Robert Dewar  <dewar@adacore.com>

	* einfo.ads: Minor reformatting.
	* ceinfo.adb: Deal with slight format change of einfo.ads.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb (Analyze_Part_Of): Further work on the proper
	implementation of the SPARK 2014 rule concerning private child
	units (LRM 7.2.6).

2014-05-21  Vincent Celier  <celier@adacore.com>

	* makeusg.adb: Add switch -d to usage.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Find_Actual): If an actual that is the prefix
	of an enclosing prefixed call has been rewritten, use Nkind
	and Sloc to identify the corresponding formal, when handling
	deferred references.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* debug.adb: Document -gnatd.z switch.
	* sem_eval.adb (Why_Non_Static): Test -gnatd.z switch.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210689 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Bob Duff  <duff@adacore.com>

	* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object):
	This was returning False if the Object is a constant view. Fix
	it to return True in that case, because it might be a view of
	a variable.
	(Has_Discriminant_Dependent_Constraint): Fix latent
	bug; this function was crashing when passed a discriminant.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Remove misplaced section that is now obsolete.
	* s-arit64.adb: Minor code reorganization.
	* sem_prag.adb: Minor comment fix (remove erroneous use of the
	term erroneous).

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* g-table.adb, g-dyntab.adb (Reallocate): Fix possible overflow in
	computing new table size.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210690 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb: Code clean up.

2014-05-21  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_ugn.texi: Document -Werror.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210691 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
	* tree.def (VOID_CST): New.
	* tree-core.h (TI_VOID): New.
	* tree.h (void_node): New.
	* tree.c (tree_node_structure_for_code, tree_code_size)
	(iterative_hash_expr): Handle VOID_CST.
	(build_common_tree_nodes): Initialize void_node.

gcc/c-family/
	* c-common.h (CTI_VOID_ZERO, void_zero_node): Delete.
	* c-common.c (c_common_nodes_and_builtins): Don't initialize
	void_zero_node.
	* c-pretty-print.c (pp_c_void_constant): New function.
	(c_pretty_printer::constant, c_pretty_printer::primary_expression)
	(c_pretty_printer::expression): Handle VOID_CST.
	* cilk.c (extract_free_variables): Likewise.
	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift)
	(ubsan_instrument_vla): Use void_node instead of void_zero_node.

gcc/c/
	* c-array-notation.c (expand_array_notations): Use void_node
	instead of void_zero_node.

gcc/cp/
	* cvt.c (convert_to_void): Use void_node instead of void_zero_node.
	* cp-array-notation.c (replace_invariant_exprs): Likewise.
	(expand_array_notation): Handle VOID_CST.
	* error.c (dump_expr): Likewise.
	* cxx-pretty-print.c (cxx_pretty_printer::primary_expression)
	(cxx_pretty_printer::expression): Likewise.
	(pp_cxx_new_expression): Use void_node instead of void_zero_node.
	* decl.c (register_dtor_fn): Likewise.
	* init.c (build_raw_new_expr, build_new_1, build_vec_init)
	(build_delete, push_base_cleanups): Likewise.
	* mangle.c (write_expression): Likewise.
	* semantics.c (finish_break_stmt, empty_expr_stmt_p): Likewise.
	* pt.c (tsubst_decl, tsubst_copy_and_build): Likewise.
	(tsubst, tsubst_copy, build_non_dependent_expr): Handle VOID_CST.
	* tree.c (cp_tree_equal): Likewise.
	(build_dummy_object, is_dummy_object, stabilize_expr): Use void_node
	instead of void_zero_node.
	* typeck.c (check_return_expr): Likewise.
	* typeck2.c (build_functional_cast): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210692 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Clearly document -gnatw.g (GNAT warnings).
	Clearly document -gnatyg (GNAT style switches).
	* usage.adb: Add line line for -gnatw.g (GNAT warnings) More
	detail for line for -gnatyg (GNAT style switches) -gnatw.d/D is
	available for VMS after all.
	* warnsw.adb: Reorganize to eliminate duplicated code
	(Restore_Warnings): Add a couple of missing entries
	(Save_Warnings): Add a couple of missing entries.
	* warnsw.ads: Add missing entries to Warning_Record (not clear
	what the impact is).

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* errout.adb (Set_Msg_Insertion_Warning): Handle ?*? (restriction
	warning) case.
	* errout.ads: Document ?*? (restriction warning) insertion.
	* erroutc.adb (Get_Warning_Tag): Deal with ?*? (restriction
	warning) case.
	* erroutc.ads: Document use of * for restriction warning tag.
	* restrict.adb (Restriction_Msg): Tag with ?*? instead of ??.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch9.adb (Push_Scope_And_Install_Discriminants): Do not
	make discriminants immediately visible when analyzing an aspect
	of a subtype declaration.
	(Uninstall_Discriminants): Do not apply to the entity in a
	subtype declaration.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210693 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  John Marino  <gnugcc@marino.st>

gcc:

	* config.gcc (*-*-dragonfly*): New target.
	* configure.ac: Detect dl_iterate_phdr (*freebsd*, *dragonfly*).
	* configure: Regenerate.
	* config/dragonfly-stdint.h: New.
	* config/dragonfly.h: New.
	* config/dragonfly.opt: New.
	* config/i386/dragonfly.h: New.
	* ginclude/stddef.h: Detect _PTRDIFF_T_DECLARED for DragonFly.

include:

	* liberty.h: Use basename function on DragonFly.

libcilkrts:

	* runtime/os-unix.c (__DragonFly__): New target.

libgcc:

	* config.host (*-*-dragonfly*): New target.
	* crtstuff.c: Make dl_iterate_support generic on *bsd.
	* enable-execute-stack-mprotect.c: Always mprotect on FreeBSD.
	* unwind-dw2-fde-dip.c: Add dl_iterate_phr support for DragonFly.
	* config/i386/dragonfly-unwind.h: New.

libitm:

	* configure.tgt (*-*-dragonfly*): New target.

libstdc++-v3:

	* acinclude.m4 (*-*-dragonfly*): New target.
	* configure: Regenerate.
	* configure.host (*-*-dragonfly*): New target.
	* config/locale/dragonfly/c_locale.cc: New.
	* config/locale/dragonfly/ctype_members.cc: New.
	* config/os/bsd/dragonfly/ctype_base.h: New.
	* config/os/bsd/dragonfly/ctype_configure_char.cc: New.
	* config/os/bsd/dragonfly/ctype_inline.h: New.
	* config/os/bsd/dragonfly/os_defines.h: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210694 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Robert Dewar  <dewar@adacore.com>

	* errout.adb, erroutc.adb, erroutc.ads: Allow warning tag in pragma
	Warnings (Off, string).

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* osint.adb: Fix three error messages to say invalid instead
	of erroneous.
	* par-ch4.adb, exp_aggr.adb, sem_attr.adb, sem_aux.adb, sem_ch3.adb,
	sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_dim.adb, sem_res.adb,
	sem_util.adb, sem_util.ads: Fix incorrect use of erroneous in comments.

2014-05-21  Ed Schonberg  <schonberg@adacore.com>

	* freeze.adb, sem_ch13.adb, sem_ch13.ads, sem_ch9.adb,
	sem_ch9.ads: Move discriminant manipulation routines for analysis of
	aspect specifications from sem_ch9 to sem_ch13, where they belong.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210695 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Robert Dewar  <dewar@adacore.com>

	* stand.adb (Tree_Read): Read missing entities.
	(Tree_Write): Write missing entities.

2014-05-21  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Wordsmithing edits to Coupling Metrics Control
	section in gnatmetric chapter.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* exp_ch6.adb (Expand_Actuals): Spec moved here, since not used
	outside Exp_Ch6 (Expand_Actuals): Deal with proper insertion of
	post-call copy write back (see detailed comment in code).
	* exp_ch6.ads (Expand_Actuals): Moved to body, not used outside
	Exp_Ch6.
	* tbuild.ads: Minor reformatting.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* stand.ads: Add warning about adding new entities and
	Tree_Read/Tree_Write.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb (Set_Entity_With_Checks): Don't complain about
	references to restricted entities within the units in which they
	are declared.

2014-05-21  Robert Dewar  <dewar@adacore.com>

	* gnat1drv.adb (Check_Bad_Body): Use Source_File_Is_Body to
	simplify the needed test, and also deal with failure to catch
	situations with non-standard names.
	* sinput-l.ads, sinput-l.adb (Source_File_Is_No_Body): New function
	(Source_File_Is_Subunit): Removed, no longer used.

2014-05-21  Javier Miranda  <miranda@adacore.com>

	* exp_ch4.adb
	(Expand_Allocator_Expression.Apply_Accessibility_Check): for a
	renaming of an access to interface object there is no need to
	generate extra code to reference the tag.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210696 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Javier Miranda  <miranda@adacore.com>

	* exp_ch4.adb (Expand_Allocator_Expression.Apply_Accessibility_Check):
	Complete previous patch.

2014-05-21  Thomas Quinot  <quinot@adacore.com>

	* g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
	Provide a behaviour more consistent with underlying datagram
	socket: do not attempt to loop over Send_Socket/Receive_Socket
	iterating along the buffer.

2014-05-21  Hristian Kirtchev  <kirtchev@adacore.com>

	* freeze.adb (Freeze_Record_Type): Ensure that a discriminated
	or a tagged type is not labelled as volatile. Ensure that a
	non-volatile type has no volatile components.
	* sem_ch3.adb (Analyze_Object_Contract): Add local constant
	Obj_Typ. Code reformatting.  Ensure that a discriminated or
	tagged object is not labelled as volatile.
	* sem_prag.adb (Process_Atomic_Shared_Volatile): Ensure that
	pragma Volatile applies to a full type declaration or an object
	declaration when SPARK mode is on.

2014-05-21  Sergey Rybin  <rybin@adacore.com frybin>

	* gnat_ugn.texi: For ASIS tools, reword the paragraph about
	providing options needed for compiling the argument source for
	the situation when a project file can be used as a tool parameter.

2014-05-21  Gary Dismukes  <dismukes@adacore.com>

	* gnat_rm.texi: Minor typo fix.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210697 138bc75d-0d04-0410-961f-82ee72b054a4
Previous change (rev 210697) should have mentioned PR ada/9535:
        
        PR ada/9535
        * g-socket.adb (Read and Write for Datagram_Socket_Stream_Type):
        Provide a behaviour more consistent with underlying datagram
        socket: do not attempt to loop over Send_Socket/Receive_Socket
        iterating along the buffer.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210698 138bc75d-0d04-0410-961f-82ee72b054a4
2014-05-21  Javier Miranda  <miranda@adacore.com>

	* sem_ch3.adb (Build_Derived_Record_Type): Initialize Parent_Base
	to the full view of the parent type when processing a derived type
	which is the full view of a private type not defined in a generic
	unit which is derived from a private type with discriminants
	whose full view is a non-tagged record type.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210699 138bc75d-0d04-0410-961f-82ee72b054a4