1. 31 Jul, 2014 40 commits
    • [AArch64_be] Don't fold reduction intrinsics. · 22756ccf
      gcc/
      
      	* config/aarch64/aarch64-builtins.c
      	(aarch64_gimple_fold_builtin): Don't fold reduction operations for
      	BYTES_BIG_ENDIAN.
      
      From-SVN: r213379
      James Greenhalgh committed
    • [AArch64_be] Fix vec_select hi/lo mask confusions. · 988fa693
      gcc/
      
      	* config/aarch64/aarch64.c (aarch64_simd_vect_par_cnst_half): Vary
      	the generated mask based on BYTES_BIG_ENDIAN.
      	(aarch64_simd_check_vect_par_cnst_half): New.
      	* config/aarch64/aarch64-protos.h
      	(aarch64_simd_check_vect_par_cnst_half): New.
      	* config/aarch64/predicates.md (vect_par_cnst_hi_half): Refactor
      	the check out to aarch64_simd_check_vect_par_cnst_half.
      	(vect_par_cnst_lo_half): Likewise.
      	* config/aarch64/aarch64-simd.md
      	(aarch64_simd_move_hi_quad_<mode>): Always use vec_par_cnst_lo_half.
      	(move_hi_quad_<mode>): Always generate a low mask.
      
      From-SVN: r213378
      James Greenhalgh committed
    • invoke.texi (AVR Options): Add documentation about __AVR_DEVICE_NAME__ built-in macro. · 08938c89
      	* doc/invoke.texi (AVR Options): Add documentation about 
      	__AVR_DEVICE_NAME__ built-in macro.
      
      From-SVN: r213377
      Senthil Kumar Selvaraj committed
    • re PR target/61948 ([ARM] [4.10 regression] ICE with DImode shift by 1 bit (in… · 3290f5e7
      re PR target/61948 ([ARM] [4.10 regression] ICE with DImode shift by 1 bit (in copyprop_hardreg_forward_1))
      
      PR target/61948
      
      gcc/ChangeLog:
      2014-07-29  Charles Baylis  <charles.baylis@linaro.org>
      
      	PR target/61948
      	* config/arm/neon.md (ashldi3_neon): Don't emit arm_ashldi3_1bit unless
      	constraints are satisfied.
      	(<shift>di3_neon): Likewise.
      
      gcc/testsuite/ChangeLog:
      2014-07-29  Charles Baylis  <charles.baylis@linaro.org>
      
              PR target/61948
              * gcc.target/arm/pr61948.c: New test case.
      
      From-SVN: r213376
      Charles Baylis committed
    • re PR tree-optimization/61964 (krb5 database propagation enters infinite loop; reduced test case) · 030e321a
      2014-07-31  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/61964
      	* tree-ssa-tail-merge.c (gimple_equal_p): Handle non-SSA LHS solely
      	by structural equality.
      
      	* gcc.dg/torture/pr61964.c: New testcase.
      
      From-SVN: r213375
      Richard Biener committed
    • utils.c (lookup_and_insert_pad_type): New function extracted from... · 5cb7516d
      2014-07-31  Eric Botcazou  <ebotcazou@adacore.com>
              
              * gcc-interface/utils.c (lookup_and_insert_pad_type): New function
              extracted from...
              (maybe_pad_type): ...here.  Call it to canonicalize the pad type.
              * gcc-interface/gigi.h: Update comment.
      
      From-SVN: r213374
      Eric Botcazou committed
    • [multiple changes] · 6c26bac2
      2014-07-31  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb Remove documentation of -gnatd.k (no longer needed).
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Code cleanup.
      	* inline.ads (Backend_Inlined_Subps): New
      	Elist.	(Backend_Not_Inlined_Subps): New Elist.
      	(Has_Excluded_Declaration): Declaration previously located in
      	* inline.adb (Has_Excluded_Statement): Declaration previously
      	located in inline.adb
      	* inline.adb (Has_Single_Return): Moved out of
      	Build_Body_To_Inline to avoid having duplicated code.
      	(Number_Of_Statements): New subprogram.
      	(Register_Backend_Inlined_Subprogram): New subprogram.
      	(Register_Backend_Not_Inlined_Subprogram): New subprogram.
      	(Add_Inlined_Subprogram): Register backend inlined subprograms and
      	also register subprograms that cannot be inlined by the backend.
      	(Has_Excluded_Declaration): Moved out of Build_Body_To_Inline
      	to avoid having duplicated code.  Replace occurrences of
      	Debug_Flag_Dot_K by Back_End_Inlining.
      	* sem_res.adb (Resolve_Call): Code cleanup.
      	* exp_ch6.adb (Expand_Call): Complete previous patch. Replace
      	occurrence of Debug_Flag_Dot_K by Back_End_Inlining.
      	(List_Inlining_Info): Add listing of subprograms passed to the
      	backend and listing of subprograms that cannot be inlined by
      	the backend.
      	* sem_ch12.adb, sem_ch3.adb Replace occurrences of
      	Debug_Flag_Dot_K by Back_End_Inlining.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* nlists.ads: Minor code fix (remove unwise Inline for
      	List_Length).
      
      From-SVN: r213373
      Arnaud Charlet committed
    • (gnatlib-shared-vms): Remove. · 0c9aebea
      From-SVN: r213372
      Arnaud Charlet committed
    • [multiple changes] · 80211802
      2014-07-31  Arnaud Charlet  <charlet@adacore.com>
      
      	* einfo.adb: Remove VMS specific code.
      	* exp_attr.adb: Remove VAX specific code.
      	* set_targ.adb: Remove handling of VAX_Float.
      	* sem_vfpt.adb: Remove references to Vax_Native.
      	* sem_attr.adb (Is_VAX_Float): Remove ref to VAX_Native.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch4.adb: Minor reformatting.
      
      From-SVN: r213371
      Arnaud Charlet committed
    • trans.c, misc.c: Remove references to VMS. · 3f1be5be
              * gcc-interface/trans.c, gcc-interface/misc.c: Remove references
              to VMS. Misc clean ups.
      
      From-SVN: r213370
      Arnaud Charlet committed
    • cstand.adb, [...]: Remove obsolete VMS-specific code. · ba0c6e47
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* cstand.adb, einfo.adb, einfo.ads, errout.adb, exp_attr.adb,
      	exp_prag.adb, frontend.adb, interfac.ads,
      	par-prag.adb, s-auxdec.ads, s-filofl.ads, s-fishfl.ads, s-fvadfl.ads,
      	s-fvaffl.ads, s-fvagfl.ads, s-vaflop.ads, sem_attr.adb, sem_attr.ads,
      	sem_ch13.adb, sem_ch3.adb, sem_ch8.adb, sem_prag.adb, snames.adb-tmpl,
      	snames.ads-tmpl: Remove obsolete VMS-specific code.
      
      From-SVN: r213369
      Robert Dewar committed
    • [multiple changes] · f9648959
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, sem_ch13.adb: Minor reformatting.
      
      2014-07-31  Arnaud Charlet  <charlet@adacore.com>
      
      	* a-intnam-linux.ads: Minor: update obsolete comments.
      	* s-taasde.adb: Minor: fix comment header.
      
      2014-07-31  Arnaud Charlet  <charlet@adacore.com>
      
      	* s-auxdec-vms-ia64.adb, s-parame-vms-alpha.ads, s-asthan-vms-alpha.adb,
      	s-tpopde-vms.adb, s-mastop-vms.adb, s-tpopde-vms.ads, s-taprop-vms.adb,
      	mlib-tgt-vms_common.adb, mlib-tgt-vms_common.ads, s-inmaop-vms.adb,
      	g-enblsp-vms-alpha.adb, s-ransee-vms.adb, s-osprim-vms.adb,
      	s-osprim-vms.ads, g-socthi-vms.adb, g-socthi-vms.ads, system-vms_64.ads,
      	s-osinte-vms.adb, s-osinte-vms.ads, g-eacodu-vms.adb,
      	s-vaflop-vms-alpha.adb, s-parame-vms-ia64.ads, a-dirval-vms.adb,
      	a-caldel-vms.adb, mlib-tgt-specific-vms-alpha.adb, s-tasdeb-vms.adb,
      	symbols-vms.adb, a-intnam-vms.ads, g-expect-vms.adb,
      	symbols-processing-vms-alpha.adb, mlib-tgt-specific-vms-ia64.adb,
      	s-traent-vms.adb, s-traent-vms.ads, i-cstrea-vms.adb, a-numaux-vms.ads,
      	symbols-processing-vms-ia64.adb, s-interr-vms.adb, s-memory-vms_64.adb,
      	s-memory-vms_64.ads, g-enblsp-vms-ia64.adb, s-taspri-vms.ads,
      	s-auxdec-vms_64.ads, s-intman-vms.adb, s-intman-vms.ads,
      	s-tpopsp-vms.adb, s-asthan-vms-ia64.adb, a-calend-vms.adb,
      	a-calend-vms.ads, system-vms-ia64.ads, s-auxdec-vms-alpha.adb: Removed.
      	* namet.h (Is_Non_Ada_Error): Remove.
      
      From-SVN: r213368
      Arnaud Charlet committed
    • cpp.texi (__SANITIZE_ADDRESS__): Updated description. · fec4842d
      2014-07-31  Yury Gribov  <y.gribov@samsung.com>
      
      	* doc/cpp.texi (__SANITIZE_ADDRESS__): Updated description.
      	* doc/invoke.texi (-fsanitize=kernel-address): Describe new option.
      	* flag-types.h (SANITIZE_USER_ADDRESS, SANITIZE_KERNEL_ADDRESS):
      	New enums.
      	* gcc.c (sanitize_spec_function): Support new option.
      	(SANITIZER_SPEC): Remove now redundant check.
      	* opts.c (common_handle_option): Support new option.
      	(finish_options): Check for incompatibilities.
      	* toplev.c (process_options): Split userspace-specific checks.
      
      From-SVN: r213367
      Yury Gribov committed
    • [multiple changes] · fd7215d7
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* exp_util.adb, lib-writ.adb, sem_ch12.adb, s-direio.adb: Minor
      	reformatting.
      
      2014-07-31  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_attr.adb (Expand_Loop_Entry_Attribute): Update the comment
      	which demonstrates the expansion of while loops subject to
      	attribute 'Loop_Entry. The condition of a while loop along with
      	related condition actions is now wrapped in a function.  Instead
      	of repeating the condition, the expansion now calls the function.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_case.adb (Check_Against_Predicate): Correct off-by-one
      	error when reporting of missing values in a case statement for
      	a type with a static predicate.
      	(Check_Choices): Reject a choice given by a subtype to which a
      	Dynamic_Predicate applies.
      	* sem_ch3.adb (Analyze_Subtype_Declaration): Inherit
      	Has_Dynamic_Predicate_Aspect flag from parent.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): A predicate
      	cannot apply to a subtype of an incomplete type.
      	(Is_Static_Choice): Treat an Others_Clause as static. The
      	staticness of the expression and of the range are checked
      	elsewhere.
      
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* adaint.h (__gnat_ftell64): Added.
      	(__gnat_fseek64): Added.
      	(__int64): Added.
      	* cstreams.c (__int64): Removed.
      
      From-SVN: r213366
      Arnaud Charlet committed
    • [multiple changes] · d1e0e148
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* a-stream.ads (Stream_Element_Offset): Now a signed 64bit type.
      	* i-cstrea.ads, s-crtl.ads (fseek64): Offset is always a 64bit value.
      	(ftell64): Always returns a 64bit value.
      	* cstreams.c (int64): New definition.
      	(_FILE_OFFSET_BITS): Set to 64 to enable 64bit offset support.
      	(__gnat_ftell64): Always returns a 64bit value. The implemenation now
      	uses ftello() on UNIX.
      	(__gnat_fseek64): Offset is always a 64bit value. The
      	implementation now uses fseeko() on UNIX.
      	* a-ststio.adb, s-direio.adb (Set_Position): Simplify code,
      	always use fseek64 to set the offset.
      	(Size): Simplify code, always use fseek64/ftell64.
      	* s-direio.ads (Count): Now an int64.
      	* g-socket.ads (Vector_Element): Adjust definition for Length
      	to be a size_t. This matches the C definition and avoid using
      	a 64bit integer on 32bit platforms now that Count is always 64bit.
      	* g-socthi-mingw.adb (Ada.Streams): Removed as not used anymore.
      	(C_Recvmsg): Change some conversion to account for change in
      	Vector_Element.
      	(C_Sendmsg): Likewise.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* cstand.adb (Create_Standard): Remove handling of -gnatdm flag.
      	* debug.adb: Remove documentation of -gnatdm flag.
      	* gnat1drv.adb (Adjust_Global_Switches): Remove handling of
      	-gnatdm flag.
      
      From-SVN: r213365
      Arnaud Charlet committed
    • [multiple changes] · fce54763
      2014-07-31  Arnaud Charlet  <charlet@adacore.com>
      
      	* lib-writ.adb (Write_Unit_Information): Fix case where U =
      	No_Unit.
      
      2014-07-31  Claire Dross  <dross@adacore.com>
      
      	* exp_util.adb, exp_util.ads
      	(Get_First_Parent_With_External_Axiomatization_For_Entity):
      	New routine to find the first parent of an entity with
      	a pragma Annotate (GNATprove, External_Axiomatization).
      	(Has_Annotate_Pragma_For_External_Axiomatization): New function
      	to check if a package has a pragma Annotate (GNATprove,
      	External_Axiomatization).
      	* einfo.ads, einfo.adb (Is_Generic_Actual_Subprogram): New
      	flag on the entity for the declaration created for a formal
      	subprogram in an instance. This is a renaming declaration,
      	or in GNATprove_Mode the declaration of an expression function
      	that captures the axiomatization of the actual.
      	* sem_ch6.adb (Analyze_Expression_Function): For a
      	Generic_Actual_Subprogram, place body immediately after the
      	declaration because it may be used in a subsequent declaration
      	in the instance.
      	* sem_ch12.adb (Build_Wrapper): Add code to handle instances where
      	the actual is a function, not an operator. Handle functions with
      	one and two parameters and binary and unary operators.
      
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* cstreams.c (__gnat_is_regular_file_fd): Removed.
      	* adaint.c (__gnat_is_regular_file_fd): Added.
      
      From-SVN: r213364
      Arnaud Charlet committed
    • [multiple changes] · 7f3d273a
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* exp_strm.adb: Minor reformatting.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Build_Wrapper): New procedure, subsidiary to
      	Analyze_Associations, to create a wrapper around operators that
      	are actuals to formal subprograms. This is done in GNATProve
      	mode in order to propagate the contracts of the operators to
      	the body of the instance.
      
      From-SVN: r213363
      Arnaud Charlet committed
    • sem_attr.adb (Analyze_Attribute, case 'Old): The reference is legal if within an… · f4510e5e
      sem_attr.adb (Analyze_Attribute, case 'Old): The reference is legal if within an aspect specification for a generic subprogram.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute, case 'Old):  The reference is
      	legal if within an aspect specification for a generic subprogram.
      
      From-SVN: r213362
      Ed Schonberg committed
    • [multiple changes] · d7a93e45
      2014-07-31  Javier Miranda  <miranda@adacore.com>
      
      	* gnat1drv.adb (Back_End_Inlining): Set to false if
      	Suppress_All_Inlining is set.
      	* debug.adb: Adding documentation for -gnatd.z.
      	* inline.adb (Add_Inlined_Body): Extend the -gnatn2
      	processing to -gnatn1 for calls to Inline_Always routines.
      	(Add_Inlined_Subprogram): Remove previous patch.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Check_One_Function): Apply properly the static
      	semantic rules for indexing aspects and the functions they denote.
      
      From-SVN: r213361
      Arnaud Charlet committed
    • [multiple changes] · 16a569d2
      2014-07-31  Javier Miranda  <miranda@adacore.com>
      
      	* debug.adb: Complete documentation of -gnatd.z.
      
      2014-07-31  Bob Duff  <duff@adacore.com>
      
      	* gnat_ugn.texi: Minor doc fixes.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* sem_aggr.adb (Resolve_Array_Aggregate): Fix posting of missing
      	index value.
      
      2014-07-31  Tristan Gingold  <gingold@adacore.com>
      
      	* s-unstyp.ads (Packed_Byte): Make this type universal aliasing.
      	(Packed_Bytes1): Make component aliased.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* s-unstyp.ads, s-fileio.adb: Minor reformatting.
      
      From-SVN: r213360
      Arnaud Charlet committed
    • inline.adb, [...]: Minor reformatting. · c5670cb4
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* inline.adb, gnat1drv.adb, exp_ch6.adb, s-fileio.adb: Minor
      	reformatting.
      
      From-SVN: r213359
      Robert Dewar committed
    • Minor reformatting. · 67b69383
      From-SVN: r213357
      Arnaud Charlet committed
    • utils2.c ((build_binary_op): Don't set TREE_THIS_NOTRAP on array references here... · c1b37eda
      	* gcc-interface/utils2.c ((build_binary_op): Don't set TREE_THIS_NOTRAP
      	on array references here, now done more selectively in trans.c.
      
      From-SVN: r213356
      Eric Botcazou committed
    • misc.c (gnat_init_gcc_fp(): Set flag_errno_math to 0. · 20bebd4c
      2014-07-31  Doug Rupp  <rupp@adacore.com>
                                              
      	* gcc-interface/misc.c (gnat_init_gcc_fp(): Set flag_errno_math to 0.
      
      From-SVN: r213355
      Doug Rupp committed
    • decl.c, [...]: Add handling of Inline_Always pragma. · 384e3fb1
      	* gcc-interface/decl.c, gcc-interface/trans.c,  
      	gcc-interface/gigi.h: Add handling of Inline_Always pragma.  
      
      Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
      
      From-SVN: r213354
      Javier Miranda committed
    • [multiple changes] · f087ea44
      2014-07-31  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_util.adb (Is_Effectively_Volatile): New routine.
      
      2014-07-31  Fedor Rybin  <frybin@adacore.com>
      
      	* gnat_ugn.texi: Document --test-duration option for gnattest.
      
      2014-07-31  Javier Miranda  <miranda@adacore.com>
      
      	* opt.ads (Back_End_Inlining): New variable which controls
      	activation of inlining by back-end expansion.
      	* gnat1drv.adb (Adjust_Global_Switches): Initialize Back_End_Inlining
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Do not build
      	the body to be inlined by the frontend if Back_End_Inlining
      	is enabled.
      	* exp_ch6.adb (Register_Backend_Call): Moved to inline.adb.
      	(Expand_Call): If backend inlining is enabled let the backend to
      	handle inlined subprograms.
      	* inline.ads (Register_Backend_Call): Moved here from exp_ch6
      	* inline.adb (Register_Backend_Call): Moved here from exp_ch6.
      	(Add_Inlined_Subprogram): Add subprograms when Back_End_Inlining is set.
      	(Must_Inline): Do not return Inline_Call if Back_End_Inlining is
      	enabled.
      	* debug.adb Document -gnatd.z
      	* fe.h Import Back_End_Inlining variable.
      	* gcc-interface/utils.c (create_subprog_decl): If Back_End_Inlining is
      	enabled then declare attribute "always inline"
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* a-ngelfu.ads: Minor comment fix.
      
      From-SVN: r213353
      Arnaud Charlet committed
    • [multiple changes] · d780e54f
      2014-07-31  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* freeze.adb (Freeze_Record_Type): Replace all calls to
      	Is_SPARK_Volatile with Is_Effectively_Volatile and update
      	related comments.
      	* sem_ch3.adb (Analyze_Object_Contract, Process_Discriminants):
      	Replace all calls to Is_SPARK_Volatile with
      	Is_Effectively_Volatile and update related comments.
      	* sem_ch5.adb (Analyze_Iterator_Specification,
      	Analyze_Loop_Parameter_Specification): Replace all calls to
      	Is_SPARK_Volatile with Is_Effectively_Volatile and update
      	related comments.
      	* sem_ch6.adb (Process_Formals): Replace all calls to
      	Is_SPARK_Volatile with Is_Effectively_Volatile and update
      	related comments.
      	* sem_ch12.adb (Instantiate_Object): Replace the call to
      	Is_SPARK_Volatile_Object with Is_Effectively_Volatile_Object
      	and update related comment.
      	* sem_prag.adb (Analyze_External_Property_In_Decl_Part,
      	Analyze_Global_Item): Replace all calls to Is_SPARK_Volatile
      	with Is_Effectively_Volatile and update related comments.
      	* sem_res.adb (Resolve_Actuals, Resolve_Entity_Name): Replace
      	all calls to Is_SPARK_Volatile with Is_Effectively_Volatile and
      	update related comments.
      	* sem_util.adb (Has_Enabled_Property,
      	Variable_Has_Enabled_Property): Replace all calls
      	to Is_SPARK_Volatile with Is_Effectively_Volatile and
      	update related comments.
      	(Is_Effectively_Volatile): New routine.
      	(Is_Effectively_Volatile_Object): New routine.
      	(Is_SPARK_Volatile): Removed.
      	(Is_SPARK_Volatile_Object): Removed.
      	* sem_util.ads (Is_Effectively_Volatile): New routine.
      	(Is_Effectively_Volatile_Object): New routine.
      	(Is_SPARK_Volatile): Removed.
      	(Is_SPARK_Volatile_Object): Removed.
      
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* s-fileio.adb (Open): Make sure a shared file gets inserted into
      	the global list atomically. This ensures that the file descriptor
      	won't be freed because another tasks is closing the file.
      
      From-SVN: r213352
      Arnaud Charlet committed
    • sem_ch3.adb (Process_Range_Expr_In_Decl): Add comments on generation of _FIRST… · 16b5e0b7
      sem_ch3.adb (Process_Range_Expr_In_Decl): Add comments on generation of _FIRST and _LAST variables even in GNATprove_Mode.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb (Process_Range_Expr_In_Decl): Add comments on
      	generation of _FIRST and _LAST variables even in GNATprove_Mode.
      	* gnat_ugn.texi: Minor editing.
      	* sem_prag.adb (Ensure_Aggregate_Form): Make sure generated
      	aggregate is marked Comes_From_Source if argument is CFS.
      
      From-SVN: r213351
      Robert Dewar committed
    • [multiple changes] · f15749aa
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* s-fileio.adb: Remove obsolete comment.
      
      2014-07-31  Vincent Celier  <celier@adacore.com>
      
      	* a-strbou.ads ("=" (Bounded_String, Bounded_String): Add
      	overriding keyword before function to avoid error when compiler
      	is called with -gnatyO (check overriding indicators).
      
      2014-07-31  Tucker Taft  <taft@adacore.com>
      
      	* gnat_ugn.texi: Add a paragraph pointing the reader
      	to the "plugins" example.
      
      2014-07-31  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* freeze.adb (Freeze_Expression): Document the
      	purpose of the parent chain traversal.
      
      From-SVN: r213350
      Arnaud Charlet committed
    • [multiple changes] · 396eb900
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* checks.ads, checks.adb (Activate_Overflow_Check): Do not set flag for
      	unconstrained fpt ops.
      
      2014-07-31  Pascal Obry  <obry@adacore.com>
      
      	* s-fileio.adb (Open): Make sure a shared file gets inserted into
      	the global list atomically. This ensures that the file descriptor
      	won't be freed because another tasks is closing the file.
      
      From-SVN: r213349
      Arnaud Charlet committed
    • [multiple changes] · e8cddc3b
      2014-07-31  Vincent Celier  <celier@adacore.com>
      
      	* projects.texi: Minor spelling error fix.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Document No_Elaboration_Code_All restriction.
      	* lib-writ.adb, lib-load.adb: Initialize No_Elab_Code field in unit
      	information.
      	* lib.ads, lib.adb (No_Elab_Code): New field in unit information.
      	* restrict.adb (Process_Restriction_Synonyms): Add handling
      	of No_Elaboration_Code_All.
      	* restrict.ads (Process_Restriction_Synonyms): Now handles
      	No_Elaboration_Code_All.
      	* sem_ch10.adb (Analyze_Context): Enforce transitive with for
      	No_Elaboration_Code_All.
      	* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
      	Handle setting of No_Elab_Code in unit information. Handle
      	No_Elaboration_Code_All.
      	* snames.ads-tmpl (Name_No_Elaboration_Code): New name for
      	pragma processing.
      	(Name_No_Elaboration_Code_All): New name for pragma processing.
      
      2014-07-31  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* exp_aggr.adb (Aggr_Assignment_OK_For_Backend): Reject array
      	types with a null range and use the Esize of the component
      	instead of its RM_Size to identify appropriate values.
      
      2014-07-31  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* freeze.adb Add with and use clause for Aspects.
      	(Freeze_Expression): Emit an error when a volatile constant lacks
      	Boolean aspect Import.
      	(Has_Boolean_Aspect_Import): New routine.
      
      From-SVN: r213347
      Arnaud Charlet committed
    • [multiple changes] · f3296dd3
      2014-07-31  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_util.adb: Minor reformatting.
      
      2014-07-31  Vincent Celier  <celier@adacore.com>
      
      	* errutil.adb (Error_Msg): Make sure that all components of
      	the error message object are initialized.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Try_Container_Indexing): If the container type is
      	class-wide, use specific type to locate iteration primitives.
      	* sem_ch13.adb (Check_Indexing_Functions): Add legality checks for
      	rules in RM 4.1.6 (Illegal_Indexing): New diagnostic procedure.
      	Minor error message reformating.
      	* exp_ch5.adb (Expand_Iterator_Loop): Handle properly Iterator
      	aspect for a derived type.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* debug.adb: Document debug flag d.X.
      
      From-SVN: r213346
      Arnaud Charlet committed
    • sem_util.ads (Find_Specific_Type): Moved here from exp_disp.adb. · 3dddb11e
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.ads (Find_Specific_Type): Moved here from exp_disp.adb.
      	* sem_util.adb (Find_Specific_Type): If type is untagged private,
      	retrieve full view so that primitive operations can be located.
      	* exp_disp.adb Move Find_Specific_Type to sem_util.
      	* exp_ch4.adb (Expand_N_Op_Eq): If operands are class-wide, use
      	Find_Specific_Type to locate primitive equality.
      	* exp_util.adb (Make_CW_Equivalent_Type): A class_wide equivalent
      	type does not require initialization.
      	* exp_attr.adb (Compile_Stream_Body_In_Scope): Within an instance
      	body all visibility is established, and the enclosing package
      	declarations must not be installed.
      
      From-SVN: r213345
      Ed Schonberg committed
    • sem_parg.adb, [...] (Collect_Subprogram_Inputs_Outputs): Make subprogram public. · 9420f51f
      2014-07-31  Yannick Moy  <moy@adacore.com>
      
      	* sem_parg.adb, sem_prag.ads (Collect_Subprogram_Inputs_Outputs):
      	Make subprogram public.
      
      From-SVN: r213344
      Yannick Moy committed
    • * gcc-interface/Makefile.in (s-traceb.o): Adjust rules. · 9697805c
      From-SVN: r213342
      Bob Duff committed
    • [multiple changes] · 022ed178
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch9.adb (Expand_N_Protected_Type_Declaration): New
      	predicate Discriminated_Size, to distinguish between private
      	components that depend on discriminants from those whose size
      	depends on some other non-static expression.
      
      2014-07-31  Nicolas Setton  <setton@adacore.com>
      
      	* g-exptty.adb (Close): Fix binding to Waitpid: use the
      	tty version.
      
      From-SVN: r213341
      Arnaud Charlet committed
    • lto-streamer.h (struct output_block): Remove global. · 936ddf92
      2014-07-31  Richard Biener  <rguenther@suse.de>
      
      	* lto-streamer.h (struct output_block): Remove global.
      	(struct data_in): Remove labels, num_named_labels and
      	num_unnamed_labels.
      	* lto-streamer-in.c (lto_data_in_delete): Do not free labels.
      	* lto-streamer-out.c (produce_asm_for_decls): Do not set global.
      
      From-SVN: r213340
      Richard Biener committed
    • [multiple changes] · 9d827cd5
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Make_Index): Reject properly the use of 'Length
      	in a discrete range, when 'range was probably intended.
      
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.adb, sem_warn.ads (Has_Junk_Name): Moved from body to spec.
      
      From-SVN: r213339
      Arnaud Charlet committed
    • [multiple changes] · 9d2a2071
      2014-07-31  Robert Dewar  <dewar@adacore.com>
      
      	* frontend.adb: Minor reformatting.
      	* sem.adb: Minor reformatting.
      	* sem_ch6.adb (Analyze_Null_Procedure): Set proper sloc for
      	identifiers on rewrite.
      	* par.adb: Minor comment updates.
      	* a-ngelfu.adb (Cos): Minor simplification.
      	* par-ch13.adb (Get_Aspect_Specifications): Improve messages
      	and recovery for bad aspect.
      	* exp_ch3.adb: Code clean up.
      	* sem_util.ads: Minor comment correction.
      	* sem_ch13.adb (Check_Array_Type): Properly handle large types.
      	* sem_ch3.adb: Code clean up.
      	* binderr.ads: Minor comment correction.
      
      2014-07-31  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_disp.adb (Expand_Interface_Conversion): A call whose
      	prefix is a static conversion to an interface type that is not
      	class-wide is not dispatching.
      
      From-SVN: r213338
      Arnaud Charlet committed