Commit Graph

131541 Commits

Author SHA1 Message Date
Bob Duff 6be44a9ab0 exp_ch9.ads, [...]: Minor comment fixes.
2014-07-30  Bob Duff  <duff@adacore.com>

	* exp_ch9.ads, sem_prag.adb, exp_ch4.adb, sem_ch13.adb: Minor comment
	fixes.
	* treepr.ads, treepr.adb (ppp): Make this debugging routine
	accept any type covered by Union_Id.

From-SVN: r213248
2014-07-30 12:48:49 +02:00
Arnaud Charlet ac072cb2f4 [multiple changes]
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* sem_ch4.adb (Analyze_If_Expression): Resolve condition before
	analyzing branches.
	* sem_eval.adb (Out_Of_Range): Check for statically unevaluated
	expression case.

2014-07-30  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb (Analyze_Aspect, predicate cases): Diagnose use
	of predicate aspect on entity other than a type.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Body_Has_Contract): New predicate to determine
	when a subprogram body without a previous spec cannot be inlined
	in GNATprove mode, because it includes aspects or pragmas that
	generate a SPARK contract clause.
	* inline.adb (Can_Be_Inlined_In_GNATprove_Mode): A subprogram
	instance cannot be inlined.

From-SVN: r213247
2014-07-30 12:47:17 +02:00
Arnaud Charlet cc6f5d75ed [multiple changes]
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* debug.adb: Document that d7 suppresses compilation time output.
	* errout.adb (Write_Header): Include compilation time in
	header output.
	* exp_intr.adb (Expand_Intrinsic_Call): Add
	Compilation_Date/Compilation_Time (Expand_Source_Info): Expand
	Compilation_Date/Compilation_Time.
	* g-souinf.ads (Compilation_Date): New function
	(Compilation_Time): New function.
	* gnat1drv.adb (Gnat1drv): Set Opt.Compilation_Time.
	* gnat_rm.texi (Compilation_Date): New function
	(Compilation_Time): New function.
	* opt.ads (Compilation_Time): New variable.
	* s-os_lib.ads, s-os_lib.adb (Current_Time_String): New function.
	* sem_intr.adb (Compilation_Date): New function.
	(Compilation_Time): New function.
	* snames.ads-tmpl (Name_Compilation_Date): New entry.
	(Name_Compilation_Time): New entry.

2014-07-30  Yannick Moy  <moy@adacore.com>

	* inline.adb: Add comment.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* par-ch4.adb (Is_Parameterless_Attribute): 'Result is a
	parameterless attribute, and a postondition can mention an
	indexed component or a slice whose prefix is an attribute
	reference F'Result.

2014-07-30  Robert Dewar  <dewar@adacore.com>

	* sprint.adb (Sprint_Node_Actual, case Object_Declaration):
	Avoid bomb when printing package Standard.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_elab.adb (Check_Internal_Call_Continue): If an elaboration
	entity is created at this point, ensure that the name of the
	flag is unique, because the subprogram may be overloaded and
	other homonyms may also have elaboration flags created on the fly.

2014-07-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_attr.adb (Analyze_Array_Component_Update): New routine.
	(Analyze_Attribute): Major cleanup of attribute
	'Update. The logic is now split into two distinct routines
	depending on the type of the prefix. The use of <> is now illegal
	in attribute 'Update.
	(Analyze_Record_Component_Update): New routine.
	(Check_Component_Reference): Removed.
	(Resolve_Attribute): Remove the return statement and ??? comment
	following the processing for attribute 'Update. As a result,
	the attribute now freezes its prefix.

2014-07-30  Javier Miranda  <miranda@adacore.com>

	* exp_ch4.adb (Apply_Accessibility_Check): Do
	not call Base_Address() in VM targets.

From-SVN: r213246
2014-07-30 12:45:42 +02:00
Yannick Moy 43478196de gnat1drv.adb (Adjust_Global_Switches): Set Ineffective_Inline_Warnings to True in GNATprove mode.
2014-07-30  Yannick Moy  <moy@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Set
	Ineffective_Inline_Warnings to True in GNATprove mode.
	* inline.adb (Cannot_Inline): Prepare new semantics for GNATprove
	mode of inlining.
	* opt.ads (Ineffective_Inline_Warnings): Add comment that
	describes use in GNATprove mode.
	* sem_prag.adb (Analyze_Pragma|SPARK_Mode): Ignore
	pragma when applied to the special body created for inlining.

From-SVN: r213245
2014-07-30 12:42:06 +02:00
Robert Dewar 662c2ad475 inline.adb, [...]: Minor reformatting.
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* inline.adb, exp_ch4.adb, sinput.adb, sem_ch6.adb, sem_ch13.adb:
	Minor reformatting.

From-SVN: r213244
2014-07-30 12:41:12 +02:00
Arnaud Charlet 4e6768ab35 [multiple changes]
2014-07-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* aspects.ads Add a comment explaining why SPARK 2014 aspects are
	not delayed. Update the delay status of most SPARK 2014 aspects.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Update all calls
	to Decorate_Aspect_And_Pragma and Insert_Delayed_Pragma to refert
	to Decorate and Insert_Pragma. Add various comments concerning
	the delay status of several SPARK 2014 aspects. The insertion
	of Refined_State now uses routine Insert_After_SPARK_Mode.
	(Decorate): New routine.
	(Decorate_Aspect_And_Pragma): Removed.
	(Insert_Delayed_Pragma): Removed.
	(Insert_Pragma): New routine.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* inline.adb (Expand_Inlined_Call): In GNATprove mode, emit
	only a warning, not an error on an attempt to inline a recursive
	subprogram.

From-SVN: r213243
2014-07-30 12:39:31 +02:00
Arnaud Charlet b6c8e5bee7 [multiple changes]
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* g-forstr.adb: Minor code reorganization (use J rather than I
	as a variable name).
	* gnat_rm.texi, sem_prag.adb, sem_util.adb, sem_ch13.adb,
	g-forstr.ads: Minor reformatting.

2014-07-30  Eric Botcazou  <ebotcazou@adacore.com>

	* sprint.adb (Set_Debug_Sloc): Also reset the end location if
	we are debugging the generated code.

2014-07-30  Yannick Moy  <moy@adacore.com>

	* sinput.ads, sinput.adb (Comes_From_Inlined_Body): New function that
	returns True for source pointer for an inlined body.

2014-07-30  Javier Miranda  <miranda@adacore.com>

	* exp_ch4.adb (Apply_Accessibility_Check): Add
	missing calls to Base_Address().

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Hanalyze_Subprogram_Body_Helper): In GNATprove
	mode, subprogram bodies without a previous declaration are also
	candidates for front-end inlining.

From-SVN: r213242
2014-07-30 12:37:41 +02:00
Arnaud Charlet 2f6f828536 [multiple changes]
2014-07-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* aspects.ads Aspects Async_Readers, Async_Writers,
	Effective_Reads and Effective_Writes do not need to be delayed.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Propagate the
	optional Boolean expression when generating the corresponding
	pragma for an external property aspect.
	* sem_prag.adb (Analyze_External_Property_In_Decl_Part): Remove
	local constant Obj. Add local constant Obj_Id. Reimplement the
	check which ensures that the related variable is in fact volatile.
	(Analyze_Pragma): Reimplement the analysis of external property pragmas.
	* sem_util.adb (Is_Enabled): New routine.
	(Variable_Has_Enabled_Property): Reimplement the detection of
	an enabled external property.

2014-07-30  Sergey Rybin  <rybin@adacore.com frybin>

	* gnat_ugn.texi, vms_data.ads: gnatstub: describe generating subunits
	for body stubs.

2014-07-30  Pascal Obry  <obry@adacore.com>

	* g-forstr.adb, g-forstr.ads: New.
	* gnat_rm.texi, impunit.adb Makefile.rtl: Add new unit
	GNAT.Formatted_String.

From-SVN: r213241
2014-07-30 12:29:48 +02:00
Arnaud Charlet ac43e11e23 [multiple changes]
2014-07-30  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_aggr.adb (Aggr_Assignment_OK_For_Backend): New predicate.
	(Expand_Array_Aggregate): Also enable in-place expansion for
	code generated by the compiler.  For an object declaration,
	set the kind of the object in addition to its type.  If an
	in-place assignment is to be generated and it can be directly
	done by the back-end, do not expand the aggregate.
	* fe.h (Is_Others_Aggregate): Declare.
	* gcc-interface/trans.c
	(gnat_to_gnu) <N_Assignment_Statement>: Add support for an
	aggregate with a single Others choice on the RHS by means of
	__builtin_memset.  Tidy up.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* gnat_rm.texi: minor reformatting.

2014-07-30  Yannick Moy  <moy@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Helper_Body): Remove body to inline
	in SPARK_Mode Off.

From-SVN: r213240
2014-07-30 12:23:17 +02:00
Arnaud Charlet eb16ddf8ed [multiple changes]
2014-07-30  Vincent Celier  <celier@adacore.com>

	* prj-strt.adb: Minor comment update.

2014-07-30  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Document additional implementation-defined use
	of Constrained.

From-SVN: r213239
2014-07-30 12:04:05 +02:00
Robert Dewar 66288b9c11 prj-proc.adb, [...]: Update comments.
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* prj-proc.adb, prj-strt.adb: Update comments.

From-SVN: r213238
2014-07-30 12:03:14 +02:00
Arnaud Charlet 12e4e81ea5 [multiple changes]
2014-07-30  Gary Dismukes  <dismukes@adacore.com>

	* sinfo.ads, einfo.ads, checks.ads: Minor typo fix and reformatting.

2014-07-30  Vincent Celier  <celier@adacore.com>

	* prj-proc.adb (Imported_Or_Extended_Project_From): New Boolean
	parameter No_Extending, defaulted to False. When No_Extending
	is True, do not look for an extending project.
	(Expression): For a variable reference that is not for the current
	project, get its Id calling Imported_Or_Extended_Project_From
	with No_Extending set to True.
	* prj-strt.adb (Parse_Variable_Reference): If a referenced
	variable is not found in the current project, check if it is
	defined in one of the projects it extends.

From-SVN: r213237
2014-07-30 12:02:20 +02:00
Arnaud Charlet 79185f5fb0 [multiple changes]
2014-07-30  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb (Predicate_Tests_On_Arguments): Omit tests for
	some additional cases of internally generated routines.

2014-07-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch10.adb (Analyze_Proper_Body): When compiling for ASIS,
	if the compilation unit is a subunit, extend optional processing
	to all subunits of the current one. This allows gnatstub to
	supress generation of spurious bodies.

From-SVN: r213236
2014-07-30 12:00:47 +02:00
Hristian Kirtchev ec62224622 a-cbmutr.adb (Insert_Child): Use local variable First to keep track of the initial element's index within...
2014-07-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-cbmutr.adb (Insert_Child): Use local variable First to keep
	track of the initial element's index within the tree.

From-SVN: r213235
2014-07-30 11:59:29 +02:00
Jan Hubicka 4716657837 Fix changelog from previous commit.
From-SVN: r213234
2014-07-30 07:55:49 +00:00
Jan Hubicka a0fd33735a devirt-34.C: New testcase.
* g++.dg/ipa/devirt-34.C: New testcase.
	* ipa-devirt.c (polymorphic_call_target_d): Rename nonconstruction_targets
	to speculative_targets
	(get_class_context): Fix handling of contextes without outer type;
	avoid matching non-polymorphic types in LTO.
	(possible_polymorphic_call_targets): Trun nonconstruction_targetsp
	parameter to speculative_targetsp; handle speculation.
	(dump_possible_polymorphic_call_targets): Update dumping.

From-SVN: r213232
2014-07-30 07:48:13 +00:00
GCC Administrator bb3ec3881e Daily bump.
From-SVN: r213230
2014-07-30 00:16:39 +00:00
Jonathan Wakely 3e5eda5b4d * python/libstdcxx/v6/printers.py
(SingleObjContainerPrinter._contained): Use compatibility mixin.

From-SVN: r213227
2014-07-29 22:35:57 +01:00
François Dumont 5c7c5f9a88 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
* testsuite/util/testsuite_allocator.h
	(tracker_allocator_counter::allocate): Remove new invocation, only
	collect information.
	(tracker_allocator_counter::deallocate): Remove delete invocation, only
	collect information.
	(check_inconsistent_alloc_value_type): New.
	(tracker_allocator): Transform as a facade for any allocator type.
	(uneq_allocator): Likewise.
	(propagating_allocator): Likewise.
	* testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
	explicitly non propagating allocator.
	* testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
	* testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
	* testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.

From-SVN: r213224
2014-07-29 19:47:19 +00:00
Jonathan Wakely f4081d133f re PR libstdc++/61947 (Ambiguous calls when constructing std::tuple)
PR libstdc++/61947
	* include/std/tuple (_Head_base): Use allocator_arg_t parameters to
	disambiguate unary constructors.
	(_Tuple_impl): Pass allocator_arg_t arguments.
	* testsuite/20_util/tuple/61947.cc: New.
	* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.

From-SVN: r213221
2014-07-29 18:30:34 +01:00
Jonathan Wakely aec20dcf39 re PR libstdc++/61946 (rope construction, passing allocator referenct without const)
PR libstdc++/61946
	* include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
	const allocator_type&)): Pass non-const allocator to
	_S_new_RopeFunction.
	* testsuite/ext/rope/61946.cc: New.

From-SVN: r213220
2014-07-29 18:30:25 +01:00
Olivier Hainque 212c47b4de vxworksae.h (VXWORKS_OVERRIDE_OPTIONS): Define.
2014-07-29  Olivier Hainque  <hainque@adacore.com>

        * config/vxworksae.h (VXWORKS_OVERRIDE_OPTIONS): Define.

From-SVN: r213219
2014-07-29 16:35:24 +00:00
Arnaud Charlet 36a6636545 [multiple changes]
2014-07-29  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-cbmutr.adb (Allocate_Node): Remove the two parameter version.
	(Insert_Child): Add local variable First. Capture the index of the
	first node being created to ensure correct cursor construction
	later on. Use the three parameter version of Allocate_Node
	when creating multiple children as this method allows aspect
	Default_Value to take effect (if applicable).

2014-07-29  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_aggr.adb (Safe_Slice_Assignment): Remove.
	(Expand_Array_Aggregate): For a safe slice assignment, just set
	the target and use the common code path.

From-SVN: r213216
2014-07-29 17:49:30 +02:00
Arnaud Charlet e1ea35da69 Minor doc update.
From-SVN: r213214
2014-07-29 17:23:04 +02:00
H.J. Lu 20e3f942cc Replace strtok with strtoken
PR bootstrap/61914
	* gengtype.c (strtoken): New function.
	(create_user_defined_type): Replace strtok with strtoken.

From-SVN: r213213
2014-07-29 08:19:22 -07:00
Arnaud Charlet b8e6830b34 [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_util.adb, sem_util.ads, sem_res.adb, exp_ch6.adb: Invert
	predicate No_Predicate_Test_On_Arguments, new name is
	Predicate_Tests_On_Arguments (with the opposite sense).

2014-07-29  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_attr.adb (Resolve_Attribute): Clean up the code for
	attribute 'Access. Do not generate an elaboration flag for a
	stand alone expression function. The expression of an expression
	function is now frozen when the expression function appears as
	the prefix of attribute 'Access.
	* sem_ch6.adb (Analyze_Expression_Function): Remove local
	variable New_Decl and update all references to it after the
	rewriting has taken place. Establish the linkages between the
	generated spec and body.

From-SVN: r213212
2014-07-29 17:14:04 +02:00
Arnaud Charlet 094cf3330c [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb (ip, rv): Prevent from being optimized away.
	* gnatls.adb (gnatls): Set E_Fatal exit status if ali file not found.
	* s-imgllb.adb, s-imgllw.adb, s-imgwiu.adb, s-imgbiu.adb: Minor
	reformatting.

2014-07-29  Vincent Celier  <celier@adacore.com>

	* prj-pp.adb: Minor comment update.
	* frontend.adb: If a target dependency info file has been read
	through switch -gnateT= add it to the dependencies of the source
	being compiled.

From-SVN: r213211
2014-07-29 17:12:14 +02:00
Arnaud Charlet 38564f8194 [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, prj.adb: Minor reformatting.

2014-07-29  Vincent Celier  <celier@adacore.com>

	* prj-pp.adb (Pretty_Print.Output_Project_File): New
	procedure to output project file names between quotes without
	concatenation, even if the line is too long.
	(Pretty_Print): Use Output_Project_File for project being extended and
	project imported.

From-SVN: r213210
2014-07-29 17:06:34 +02:00
Arnaud Charlet 5f6fb720bb [multiple changes]
2014-07-29  Vincent Celier  <celier@adacore.com>

	* gnat_ugn.texi: Document that configuration pragmas files are
	added to the dependencies, unless they contain only pragmas
	Source_File_Name_Project.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* frontend.adb: Minor reformatting.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* exp_ch6.adb (Add_Call_By_Copy_Code): Minor reformatting
	(Expand_Actuals): Make sure predicate checks are properly applied
	for the case of OUT or IN OUT parameters.
	* sem_res.adb: Minor reformatting (Resolve_Actuals): Skip
	predicate tests on arguments for Finalize
	* sem_util.adb (No_Predicate_Test_On_Arguments): Returns True
	if predicate tests on subprogram arguments should be skipped.
	* sem_util.ads (No_Predicate_Test_On_Arguments): New function

2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): If there is an address
	clause for the object and the expression is an aggregate, defer
	resolution and expansion of the aggregate until the freeze point
	of the entity.
	* sem_aggr.adb (Resolve_Aggregate): An others_clause is legal if
	the parent node is an N_Reference generated during expansion.

2014-07-29  Vincent Celier  <celier@adacore.com>

	* prj.adb (Add_To_Buffer): Effectively double the size of the buffer.

From-SVN: r213209
2014-07-29 17:02:05 +02:00
Robert Dewar fc27e20e72 frontend.adb, [...]: Minor reformatting and code clean up.
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* frontend.adb, inline.adb, sem_util.adb, sem_res.adb,
	prepcomp.ads: Minor reformatting and code clean up.
	* exp_ch6.adb (Expand_Actuals): Generate predicate test
	unconditionally for case of OUT or IN OUT actual (before this
	was generated only for certain subcases, which is wrong, the
	test is always needed).

From-SVN: r213208
2014-07-29 16:59:26 +02:00
Ed Smith-Rowland 1c4ff014fe PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
2014-07-29  Ed Smith-Rowland  <3dw4rd@verizon.net>

	PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
	* include/bits/random.h (_Adaptor): static_assert for non floating-point
	result type.
	* include/bits/random.tcc (generate_canonical): Ditto.
	* include/ext/random.tcc (hypergeometric_distribution::operator()):
	Use double as a rng result type.
	* testsuite/26_numerics/random/pr60037-neg.cc: New.
	* testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.

From-SVN: r213207
2014-07-29 14:56:45 +00:00
Ed Schonberg f3691f465e sem_ch3.adb: Move Has_Defaulted_Discriminants to sem_util.
2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb: Move Has_Defaulted_Discriminants to sem_util.
	* sem_ch4.adb (Analyze_Allocator): Defer resolution of expression
	until context type is available.
	* sem_res.adb (Resolve_Allocator): In the case of a qualified
	expression, complete resolution of expression.
	(Check_Aliased_Parameter): New procedure within Resolve_Actuals,
	to apply Ada2012 checks on aliased formals, as well as
	accesibility checks when the context of the call is an allocator
	or a qualified expression.
	* sem_util.ads, sem_util.adb (Has_Defaulted_Discriminants):
	Moved here from sem_ch3.
	(Object_Access_Level): Handle properly aliased formals and
	aggregates.
	* exp_ch6.adb (Expand_Call): Remove check on aliased parameters,
	now properly performed in sem_res (Resolve_Actuals,
	Check_Aliased_Parameter).

From-SVN: r213206
2014-07-29 16:56:34 +02:00
Yannick Moy 2d180af122 2014-07-29 Yannick Moy <moy@adacore.com>
* debug.adb Enable GNATprove inlining under debug flag -gnatdQ for now.
	* inline.ads, inline.adb (Can_Be_Inlined_In_GNATprove_Mode): New
	function to decide when a subprogram can be inlined in GNATprove mode.
	(Check_And_Build_Body_To_Inline): Include GNATprove_Mode as a
	condition for possible inlining.
	* sem_ch10.adb (Analyze_Compilation_Unit): Remove special case
	for Inline_Always in GNATprove mode.
	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Build inlined
	body for subprograms in GNATprove mode, under debug flag -gnatdQ.
	* sem_prag.adb Minor change in comments.
	* sem_res.adb (Resolve_Call): Only perform GNATprove inlining
	inside subprograms marked as SPARK_Mode On.
	* sinfo.ads: Minor typo fix.

From-SVN: r213205
2014-07-29 16:55:24 +02:00
Arnaud Charlet 5ae2431279 [multiple changes]
2014-07-29  Vincent Celier  <celier@adacore.com>

	* frontend.adb: Add dependency on gnat.adc when taken into account
	and on non-temporary configuration pragmas files specified in
	switches -gnatec.
	* prepcomp.ads, prepcomp.adb (Add_Dependency): New procedure to add
	dependencies on configuration pragmas files.

2014-07-29  Pat Rogers  <rogers@adacore.com>

	* gnat_ugn.texi: Minor clarification to the explanation for the
	GNATtest -v switch.

From-SVN: r213204
2014-07-29 16:53:10 +02:00
Robert Dewar 3c04da4021 types.ads (Mechanism_Type): Change range back to -18 ..
* types.ads (Mechanism_Type): Change range back to -18 .. Int'Last with 
	documentation that explains the need for this extended range            
	(use by C_Pass_By_Copy).

From-SVN: r213203
2014-07-29 16:51:48 +02:00
Arnaud Charlet 32ccbc2ac6 Remove duplicate entry.
From-SVN: r213202
2014-07-29 16:49:46 +02:00
Arnaud Charlet 09176aea40 [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi, sem_prag.adb: Minor reformatting.

2014-07-29  Sergey Rybin  <rybin@adacore.com frybin>

	* gnat_ugn.texi: gnatmetric: clarify documentation for cyclomatic
	complexity metrics.

2014-07-29  Thomas Quinot  <quinot@adacore.com>

	PR ada/60652
	* s-oscons-tmplt.c: For Linux, define _BSD_SOURCE in order for
	CRTSCTS to be visible.

2014-07-29  Bob Duff  <duff@adacore.com>

	* g-trasym.adb, g-trasym.ads: Code cleanup.

From-SVN: r213201
2014-07-29 16:46:27 +02:00
Doug Rupp 1b4ada8ff0 sigtramp-vxworks.c: Minor reformatting.
2014-07-29  Doug Rupp  <rupp@adacore.com>

	* sigtramp-vxworks.c: Minor reformatting.

From-SVN: r213200
2014-07-29 16:36:25 +02:00
Arnaud Charlet 155562cb3b [multiple changes]
2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* gnat_rm.texi: No doc needed for Ada2012 aspect
	Implicit_dereference.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Attribute_12): New array
	(Analyze_Attribute): Check impl-defined Ada 2012 attributes.
	(Check_Ada_2012_Attribute): Removed.

2014-07-29  Doug Rupp  <rupp@adacore.com>

	* init.c (vxworks6): Call sigtramp for RTP (as well as DKM) for ARM,
	PPC, and e500.
	* sigtramp-vxworks.c: New file.
	* sigtramp-armvxw.c, sigtramp-ppcvxw.c: removed files.

From-SVN: r213199
2014-07-29 16:12:27 +02:00
Ed Schonberg ad8bd3f47c lib-xref.adb (Output_Refs, [...]): For a derived array type...
2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* lib-xref.adb (Output_Refs, Check_Type_Reference): For a
	derived array type, add information about component type, which
	was previously missing in ali file.
	* gnat_rm.texi: Add documentation for Atomic_Always_Lock_Free.

From-SVN: r213198
2014-07-29 16:09:38 +02:00
Arnaud Charlet 422e02cfdf [multiple changes]
2014-07-29  Thomas Quinot  <quinot@adacore.com>

	* sem_ch3.adb (Constrain_Corresponding_Record): For the case
	of the subtype created for a record component, do not mark
	the subtype as frozen. For one thing, this is anomalous (in
	particular, the base type might not itself be frozen yet);
	furthermore, proper freezing of the subtype must happen in any
	case. So, we just mark the subtype as requiring delayed freezing
	(and we'll actually freeze it when generating the init_proc of
	the enclosing record).
	Also change the name of the constrained record subtype (append a
	'C' so that it is clearly different from the unconstrained record
	type, "related_idV") to make debugging easier.
	(Process_Full_View): When creating a full subtype for a pending
	private subtype, re-establish the scope of the private subtype
	so that we get proper visibility on outer discriminants.
	* exp_ch3.adb (Build_Init_Statements): Freeze any component
	subtype that is not frozen yet.

2014-07-29  Vincent Celier  <celier@adacore.com>

	* prj-proc.adb (Recursive_Process): Always initialize the
	environment when the project is an aggregate project, even when
	it is not the root tree.

From-SVN: r213197
2014-07-29 16:08:02 +02:00
Robert Dewar 0677a1c750 exp_ch5.adb, [...]: Minor comment additions.
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* exp_ch5.adb, exp_ch9.adb: Minor comment additions.
	* gnat_rm.texi: Complete list of implementation aspects.
	* aspects.ads: Minor comment clarification.

From-SVN: r213196
2014-07-29 16:06:20 +02:00
Arnaud Charlet a2cc9797df [multiple changes]
2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_N_Assignment_Statement): If the target type
	is a null-excluding access type, do not generate a constraint
	check if Suppress_Assignment_Checks is set on assignment node.
	* exp_ch9.adb (Build_Simple_Entry_Call): If actual is an out
	parameter of a null-excluding access type, there is access check
	on entry, so set Suppress_Assignment_Checks on generated statement
	that assigns actual to parameter block.
	* sinfo.ads: Document additional use of Suppress_Assignment_Checks.

2014-07-29  Javier Miranda  <miranda@adacore.com>

	* types.ads (Kind): Renamed as Rkind to avoid crashing ASIS.
	* exp_ch11.adb, tbuild.adb Update references to Types.Kind

2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* par-ch3.adb (P_Type_Declaration): Create end label for
	limited record declaration, previously omitted.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Complete list of implementation pragmas Add
	dummy sections for impl pragmas needing documentation.

From-SVN: r213195
2014-07-29 16:02:19 +02:00
Arnaud Charlet effdbb7d57 [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Change theta to @ in documentation of aspect
	Dimension_System.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_attr.adb (Uneval_Old_Msg): Flags Uneval_Old_Accept/Warn
	are now on pragma.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Remove setting
	of Uneval_Old_*
	* sem_prag.adb (Analyze_Pragma): Set Uneval_Old_* flags
	* sinfo.ads, sinfo.adb: Move Uneval_Old_Accept/Warn to N_Pragma node.

2014-07-29  Javier Miranda  <miranda@adacore.com>

	* types.ads Update documentation on how to add new reason codes
	for exceptions.
	(RT_Exception_Code): Keep values ordered by their
	reason code.  Required by the .NET backend.
	(RT_CE_Exceptions): Subtype declaration removed.
	(RT_PE_Exceptions): Subtype declaration removed.
	(RT_SE_Exceptions): Subtype declaration removed.
	(Kind): New mapping table of RT_Exception_Codes.
	* exp_ch11.adb (Get_RT_Exception_Entity): Updated to use the
	new mapping table.
	* tbuild.adb (Make_Raise_Storage_Error): Updated to use the new
	mapping table.	(Make_Raise_Program_Error): Updated to use the
	new mapping table.
	(Make_Raise_Storage_Error): Updated to use the new mapping table.
	* a-except.adb Keep Rcheck_CE_xxx entities ordered according to
	their reason code.

From-SVN: r213194
2014-07-29 16:00:06 +02:00
Arnaud Charlet 09d67391ff [multiple changes]
2014-07-29  Thomas Quinot  <quinot@adacore.com>

	* gnat_rm.texi: Document internal attributes used for PolyORB/DSA
	distributed stubs generation.
	* exp_ch3.adb: Minor reformatting.

2014-07-29  Yannick Moy  <moy@adacore.com>

	* sinfo.ads: Document constraint between frontend and GNATprove.

From-SVN: r213193
2014-07-29 15:58:21 +02:00
Robert Dewar c93af80704 a-except.adb: Minor comment clarification.
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* a-except.adb: Minor comment clarification.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Complete list of implementation attributes.
	* snames.ads-tmpl: Clean up list of impl-defined attributes.

From-SVN: r213192
2014-07-29 15:56:59 +02:00
Arnaud Charlet f9e333abc4 [multiple changes]
2014-07-29  Hristian Kirtchev  <kirtchev@adacore.com>

	* freeze.adb (Freeze_Record_Type): Perform various
	volatility-related checks.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_eval.adb: Minor reformatting.

2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb: sem_attr.adb (Access_Attribute): Handle properly
	the case where the attribute reference appears in a nested scope
	from that of the subprogram prefix.
	* sem_attr.adb: Minor reformatting.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Clarify documentation of Initialize_Scalar
	initialization options.

From-SVN: r213191
2014-07-29 15:54:42 +02:00
Arnaud Charlet 87e697202e [multiple changes]
2014-07-29  Robert Dewar  <dewar@adacore.com>

	* sinfo.ads: Minor comment addition.

2014-07-29  Bob Duff  <duff@adacore.com>

	* sem_eval.adb, sem_ch13.adb: Minor reformatting.

From-SVN: r213190
2014-07-29 15:52:53 +02:00
Arnaud Charlet 113a9fb6c6 [multiple changes]
2014-07-29  Doug Rupp  <rupp@adacore.com>

	* init.c: Complete previous change.

2014-07-29  Robert Dewar  <dewar@adacore.com>

	* exp_ch4.adb (Expand_N_If_Expression): Deal with unconstrained
	array case.

2014-07-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Access_Attribute): If the prefix is a subprogram
	and the completion will appear in the same declarative part,
	create elaboration flag.
	* exp_util.adb (Set_Elaboration_Flag): If the subprogram body
	is a completion of a declaration in the same declarative part,
	and the subprogram has had its address taken, add elaboration
	check inside the subprogram body, to detect elaboration errors
	that may occur through indirect calls.

From-SVN: r213189
2014-07-29 15:51:03 +02:00
Nathan Sidwell 1992616143 libgcov.h: Move renaming of entry points to lib gcov specific portion.
libgcc/
	* libgcov.h: Move renaming of entry points to lib gcov specific
	portion.
	(gcov_do_dump): New rename.
	(gcov_rewrite): Remove inline, make HIDDEN.
	* libgcov-driver.c (gcov_clear, gcov_exit): Remove declarations.
	(gcov_exit_compute_summary): Rename to ...
	(compute_summary): ... here.  Add LIST argument.
	(gcov_exit_merge_gcda): Rename to ...
	(merge_one_data): ... here.
	(gcov_exit_write_gcda): Rename to ...
	(write_one_data): ... here.
	(gcov_exit_merge_summary): Rename to ...
	(merge_summary): Add RUN_COUNTED argument.
	(gcov_exit_dump_gcov): Rename to ...
	(dump_one_gcov): Add RUN_COUNTED argument.
	(gcov_do_dump): New function, broken out of ...
	(gcov_exit): ... here.  Call it.

	gcc/
	* gcov-io.c (gcov_var): Make hidden.
	* gcov-tool.c (gcov_list, gcov_exit): Remove declarations.
	(gcov_do_dump): Declare.
	(gcov_output_files): Call gcov_do_dump, not gcov_exit).

From-SVN: r213188
2014-07-29 13:48:38 +00:00