2014-10-10  Tobias Burnus  <burnus@net-b.de>

gcc/fortran/
        * gfortran.h (gfc_set_implicit_none): Update prototype.
        * symbol.c (gfc_set_implicit_none): Take and
        use error location. Move diagnostic from here to ...
        * decl.c (gfc_match_implicit_none): ... here. And
        update call. Handle empty implicit-none-spec.
        (gfc_match_implicit): Handle statement-separator ";".

gcc/testsuite/
        * gfortran.dg/implicit_16.f90: New.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216057 138bc75d-0d04-0410-961f-82ee72b054a4
	* lra-assigns.c (assign_by_spills): Error out on spill failure.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216059 138bc75d-0d04-0410-961f-82ee72b054a4
	* lra-assigns.c (assign_by_spills): Fix thinko in previous change.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216060 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63476
	* tree-ssa-pre.c (struct bb_bitmap_sets): Add vop_on_exit member.
	(BB_LIVE_VOP_ON_EXIT): New define.
	(create_expression_by_pieces): Assign VUSEs to stmts.
	(compute_avail): Track BB_LIVE_VOP_ON_EXIT.
	(pass_pre::execute): Assert virtual SSA form is up-to-date
	after insertion.

	* g++.dg/torture/pr63476.C: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216065 138bc75d-0d04-0410-961f-82ee72b054a4
	PR fortran/59488
	* trans-openmp.c (gfc_omp_predetermined_sharing): Return
	OMP_CLAUSE_DEFAULT_SHARED for parameters or vtables.

	* gfortran.dg/gomp/pr59488-1.f90: New test.
	* gfortran.dg/gomp/pr59488-2.f90: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216067 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63379
	* tree-vect-slp.c (vect_get_constant_vectors): Do not compute
	a neutral operand for min/max when it is not a reduction chain.

	* gcc.dg/vect/pr63379.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216070 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/63464
	* tree-switch-conversion.c (struct case_bit_test): Remove
	hi and lo fields, add wide_int mask field.
	(emit_case_bit_tests): Add MAXVAL argument, rewrite uses of
	hi/lo fields into wide_int mask operations, optimize by pretending
	minval to be 0 if maxval is small enough.
	(process_switch): Adjust caller.


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

	* exp_util.ads, sem_ch12.adb, exp_util.adb, i-fortra.ads: Minor code
	reorganization.



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

	* sem_ch7.adb, einfo.adb, einfo.ads, sem_prag.adb, sem_ch12.adb,
	freeze.adb, sem_util.adb, sem_res.adb, exp_ch6.adb, exp_ch13.adb,
	sem_ch6.adb, sem_cat.adb, sem_disp.adb
	(Is_Subprogram_Or_Generic_Subprogram): New primitive. Use this primitive
	throughout where appropriate.

2014-10-10  Bob Duff  <duff@adacore.com>

	* a-coinho-shared.ads: Minor reformatting.
	* s-traceb.adb: Minor clean up.

2014-10-10  Robert Dewar  <dewar@adacore.com>

	* ali.adb (Scan_ALI): Read and process new GP flag on ALI P line.
	* ali.ads (GNATprove_Mode): New component in ALI table.
	(GNATprove_Mode_Specified): New global.
	* gnatbind.adb (Gnatbind): Give fatal error if any file compiled
	in GNATProve mode.
	* lib-writ.ads, lib-writ.adb (GP): New flag on P line for
	GNATProve_Mode.

2014-10-10  Javier Miranda  <miranda@adacore.com>

	* exp_ch3.adb (Build_Init_Procedure): Adding assertion.
	(Build_Init_Statement): Ensure that statements
	associated with the parent components are located at the beginning
	of the returned list of statements.

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Inherit_Aspects_At_Freeze_Node): If the full
	view of a private type T that has a type invariant is a scalar
	or constrained array type, the base type created for the full
	view has the same type invariant.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216074 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Implement workaround for ARM Cortex-A53 erratum 835769

	* config/aarch64/aarch64.h (FINAL_PRESCAN_INSN): Define.
	(ADJUST_INSN_LENGTH): Define.
	* config/aarch64/aarch64.opt (mfix-cortex-a53-835769): New option.
	* config/aarch64/aarch64.c (is_mem_p): New function.
	(is_memory_op): Likewise.
	(aarch64_prev_real_insn): Likewise.
	(is_madd_op): Likewise.
	(dep_between_memop_and_curr): Likewise.
	(aarch64_madd_needs_nop): Likewise.
	(aarch64_final_prescan_insn): Likewise.
	* doc/invoke.texi (AArch64 Options): Document -mfix-cortex-a53-835769
	and -mno-fix-cortex-a53-835769 options.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216075 138bc75d-0d04-0410-961f-82ee72b054a4
[AArch64] Add --enable-fix-cortex-a53-835769 configure-time option

	* configure.ac: Add --enable-fix-cortex-a53-835769 option.
	* configure: Regenerate.
	* config/aarch64/aarch64.c (aarch64_override_options): Handle
	TARGET_FIX_ERR_A53_835769_DEFAULT.
	* config/aarch64/aarch64.opt (mfix-cortex-a53-835769): Set Init
	value to 2.
	* doc/install.texi (aarch64*-*-*): Document 
	new --enable-fix-cortex-a53-835769 option.


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

	* exp_ch3.adb (Build_Init_Procedure): Complete the condition of an
	if-stmt to match its current documentation.



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

	* sem_ch13.adb: Minor code reorganization.

2014-10-10  Pat Rogers  <rogers@adacore.com>

	* gnat_rm.texi: Text now indicates pragma No_Run_Time is not
	for users.

2014-10-10  Vadim Godunko  <godunko@adacore.com>

	* a-coinho-shared.adb: Add minor comment.
	* a-stzmap.adb (To_Sequence): Compute size of result array.



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

2014-10-10  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	* lib/asan-dg.exp (asan_link_flags): Save ld_library_path.
	(asan_finish): Remove restore_ld_library_path_env_vars.
	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
	related env variables by calling set_ld_library_path_env_vars.
	* lib/tsan-dg.exp (tsan_link_flags): Save ld_library_path.
	(tsan_finish): Remove restore_ld_library_path_env_vars.
	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
	related env variables by calling set_ld_library_path_env_vars.
	* lib/ubsan-dg.exp (ubsan_link_flags): Save ld_library_path.
	(ubsan_finish): Remove restore_ld_library_path_env_vars.
	Restore ld_library_path with saved value. Restore LD_LIBRARY_PATH
	related env variables by calling set_ld_library_path_env_vars.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216082 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-10  Gary Dismukes  <dismukes@adacore.com>

	* a-coinho-shared.adb: Minor typo fix.
	* prj-env.ads: Minor reformatting.

2014-10-10  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_res.adb (Resolve_String_Literal): Do not
	generate a string literal subtype for the default expression of
	a formal parameter in GNATprove mode.

2014-10-10  Yannick Moy  <moy@adacore.com>

	* errout.adb (SPARK_Msg_N): Issue error unless SPARK_Mode is Off.

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_Formal_Container_Element_Loop): Analyze
	declaration for loop parameter before rest of loop, and set
	entity kind to prevent assignments to it in the user code.
	* sem_ch3.adb (Analyze_Object_Contract): No contracts apply to the
	loop parameter in an element iteration over o formal container.

2014-10-10  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Document use of user-level routines to handle
	e.g. col major arrays.

2014-10-10  Doug Rupp  <rupp@adacore.com>

	* s-osinte-android.adb: Fix misspelling.
	* gsocket.h: Tweak the Android quirks.

2014-10-10  Robert Dewar  <dewar@adacore.com>

	* errout.ads (SPARK_Msg_N): Fix spec to match change in body.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216083 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-10  Yannick Moy  <moy@adacore.com>

	* sem_prag.adb (Analyze_Global_Item): Accept formal objects in Global
	contracts.
	* errout.adb, errout.ads (SPARK_Msg_NE): Issue error unless
	SPARK_Mode is Off.

2014-10-10  Vadim Godunko  <godunko@adacore.com>

	* a-stwima.adb (To_Sequence): Compute size of result array.

2014-10-10  Javier Miranda  <miranda@adacore.com>

	* gnat_ugn.texi (Interfacing with C++ at the Class Level): Update the
	sources of the example to avoid a warning when the Ada files are
	automatically generated by the binding generator.

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Resolve_Attribute, case 'Update): Set
	Do_Range_Check on the expression of a record component
	association when needed, as is done for array components, when
	the corresponding type is a scalar type.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216084 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-10  Gary Dismukes  <dismukes@adacore.com>

	* sinfo.ads, gnat_ugn.texi, a-except.adb, a-except-2005.adb,
	raise-gcc.c Spelling changes (prolog => prologue, epilog => epilogue).

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Is_Wrapped_In_Block): Handle properly blocks that
	contain pragmas generated for loop invariants and type predicates.
	Clarify use of this subprogram.



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

	* exp_intr.adb (Write_Entity_Name): Moved to outer level
	(Write_Entity_Name): Properly handle operator names
	(Expand_Source_Info): New procedure.
	* exp_intr.ads (Add_Source_Info): New procedure.

2014-10-10  Robert Dewar  <dewar@adacore.com>

	* butil.ads: Minor reformatting.
	* sem_ch5.adb: Code clean up.

2014-10-10  Robert Dewar  <dewar@adacore.com>

	* exp_ch11.adb (Expand_N_Raise_Statement): Handle
	Prefix_Exception_Messages.
	* opt.adb: Handle new flags Prefix_Exception_Message[_Config].
	* opt.ads: New flags Prefix_Exception_Message[_Config].
	* par-prag.adb: New dummy entry for pragma Prefix_Exception_Messages.
	* snames.ads-tmpl: Add entries for new pragma Prefix_Exception_Messages.
	* sem_prag.adb: Implement new pragma Prefix_Exception_Messages
	* gnat_rm.texi: Document pragma Prefix_Exception_Messages.



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

	* errout.adb (Adjust_Name_Case): New procedure.
	(Set_Msg_Node): Use Adjust_Name_Case.
	* errout.ads (Adjust_Name_Case): New procedure.
	* exp_intr.adb (Add_Source_Info): Minor code reorganization
	(use Ekind_In).
	(Write_Entity_Name): Use Errout.Adjust_Name_Case.
	* sem_prag.adb (Is_Non_Significant_Pragma_Reference): Review
	and fix up entries in Sig_Flags, and correct logical errors in
	function itself.
	* sprint.adb (Sprint_Node_Actual): Properly print string for
	raise statement.

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): For an object of an
	anonymous array type with delayed aspects, defer freezing of
	type until object itself is frozen.
	* freeze.adb (Freeze_Entity): When freezing an object of an
	anonymous array type with delayed aspects, remove freeze node of
	object after freezing type, to prevent out-of-order elaboration
	in the back-end. The initialization call for the object has
	already been constructed when expanding the object declaration.



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

	* sem_ch13.adb (Analyze_Aspect_Specifications, Library_Unit_Aspects):
	Aspect specification is legal on a local instantiation of a
	library-level generic unit.

2014-10-10  Gary Dismukes  <dismukes@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Set Front_End_Inlining
	if inlining has been enabled via -gnatn and the target is not GCC.

2014-10-10  Ed Schonberg  <schonberg@adacore.com>

	* freeze.adb (Freeze_Entity): Freezing a subprogram does
	not always freeze its profile.	In particular, an attribute
	reference that takes the access type does not freeze the types
	of the formals.



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