Commit Graph

131561 Commits

Author SHA1 Message Date
Pascal Obry c3d01e19a3 s-os_lib.ads, [...] (GM_Time_Of): New routine to create an OS_Time from time parts.
2014-07-18  Pascal Obry  <obry@adacore.com>

	* s-os_lib.ads, s-os_lib.adb (GM_Time_Of): New routine to create an
	OS_Time from time parts.
	* adaint.h, adaint.c (__gnat_to_os_time): New routine.

From-SVN: r212788
2014-07-18 11:31:36 +02:00
Arnaud Charlet 6907542db4 [multiple changes]
2014-07-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Try_Container_Indexing): Refine previous patch for
	indexing over containers that are derived types: check whether
	signature of found operation has the correct first parameter
	before retrieving directly a primitive operation.

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

	* sem_attr.adb (Analyze_Attribute, case 'Update): Set
	Do_Range_Check flag on dynamic bounds of a range used in a
	component association in the argument of Update.

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

	* adaint.c: #define _REENTRANT and _THREAD_SAFE in order for
	accesses to errno(3) to be thread safe.

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

	* prj-tree.adb (Imported_Or_Extended_Project_Of): For each non
	limited imported project that is an extending project, return
	a project being extended if it has the expected name.

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

	* s-os_lib.ads, s-os_lib.adb (Set_File_Last_Modify_Time_Stamp): New
	routine to set the last modification time stamp for the given file.
	* gnatchop.adb (File_Time_Stamp): Removed.
	(Write_Unit): Use
	Set_File_Last_Modify_Time_Stamp instead of ad-hoc implementation.

From-SVN: r212787
2014-07-18 11:29:54 +02:00
Ed Schonberg 3f433bc07e sem_aggr.adb (Aggregate_Constraint_Checks): Moved to sem_util.
2014-07-18  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Aggregate_Constraint_Checks): Moved to sem_util.
	* sem_util.ads, sem_util.adb (Aggregate_Constraint_Checks):
	Moved here, so it can be shared with the resolution of 'Update,
	whose argument shares some features with aggregates.
	* sem_attr.adb (Resolve_Attribute, case 'Update): Apply
	Aggregate_Constraint_Checks with the expression of each
	association, so that the Do_Range_Check flag is set when needed.

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

	* sem_ch4.adb (Try_Container_Indexing):  If the container
	type is a derived type, the value of the inherited  aspect is
	the Reference operation declared for the parent type. However,
	Reference is also a primitive operation of the new type, and
	the inherited operation has a different signature. We retrieve
	the right one from the list of primitive operations of the
	derived type.

From-SVN: r212786
2014-07-18 11:27:00 +02:00
Arnaud Charlet 0439c912c3 [multiple changes]
2014-07-18  Vincent Celier  <celier@adacore.com>

	* debug.adb: Update comment.

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

	* exp_util.adb (Needs_Finalization): There is no reason why a
	C type should not benefit from finalization actions.

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

	* s-oscons-tmplt.c (NAME_MAX): Fix definition for Solaris
	(FILENAME_MAX): Remove unneeded definition.

From-SVN: r212785
2014-07-18 11:25:40 +02:00
Robert Dewar 5b89faafa8 exp_attr.adb, debug.adb: Update comments.
2014-07-18  Robert Dewar  <dewar@adacore.com>

	* exp_attr.adb, debug.adb: Update comments.

From-SVN: r212784
2014-07-18 11:24:26 +02:00
Arnaud Charlet c7a7f405b3 [multiple changes]
2014-07-18  Vincent Celier  <celier@adacore.com>

	* par-ch4.adb (Simple_Expression): Add missing style check
	for binary adding operators.
	(Term): Add missing style check for multiplying operators.

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

	* impunit.adb: Minor comment correction.
	* widechar.adb, s-wchcon.ads: Minor comment corrections.

From-SVN: r212783
2014-07-18 11:23:28 +02:00
Arnaud Charlet baa571ab78 [multiple changes]
2014-07-18  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb (Build_Discrete_Static_Predicate): New name
	for Build_Static_Predicate (Build_Predicate_Functions):
	Don't try to build discrete predicate for real type.
	(Build_Predicate_Functions): Report attempt to use
	Static_Predicate function on real type as unimplemented.
	* sem_util.adb (Check_Expression_Against_Static_Predicate):
	Add guard to prevent blow up on predicate for real type.

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

	* einfo.adb (Set_Static_Predicate): Simplify assertion to handle
	properly static predicate on enumeration types and modular types
	(not subtypes).

2014-07-18  Pierre-Marie Derodat  <derodat@adacore.com>

	* scos.ads (SCO_Unit_Table_Entry): Add a field to keep track of
	the corresponding source file index.
	* get_scos.ads (Get_SCOs): Add a default value for it.
	* par_sco.adb (SCO_Record): Fill the corresponding value.
	* scos.h: New.

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

	* a-strunb-shared.adb, s-auxdec.ads, s-rannum.adb, atree.ads,
	urealp.adb, vms_data.ads, lib.ads, s-auxdec-vms_64.ads: Minor
	reformatting.
	* gnat_ugn.texi: Add documentation for new gnatmem switch -t.

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

	* g-sercom.ads (Set): document possible data loss.

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

	* exp_attr.adb (Expand_N_Attribute_Reference, cases Input,
	Output, Read, Write): If the restriction No_Streams is active,
	replace each occurrence of a stream attribute by an explicit
	Raise statement.

From-SVN: r212782
2014-07-18 11:20:28 +02:00
Robert Dewar fc999c5d2e par_sco.adb, [...]: Minor reformatting.
2014-07-18  Robert Dewar  <dewar@adacore.com>

	* par_sco.adb, a-reatim.ads, exp_attr.adb, sem_util.adb: Minor
	reformatting.

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

	* einfo.ads, einfo.adb (Has_Out_Or_In_Out_Parameter): New flag and
	function.
	(Set_Has_Out_Or_In_Out_Parameter): New procedure.
	* sem_ch6.adb (Set_Formal_Mode): Set Has_Out_Or_In_Out_Parameter flag.
	* sem_res.adb (Resolve_Call): Error if call of Ada 2012 function
	with OUT or IN OUT from earlier Ada mode (e.g. Ada 2005)

From-SVN: r212780
2014-07-18 11:14:14 +02:00
Arnaud Charlet b3b26ace90 [multiple changes]
2014-07-18  Robert Dewar  <dewar@adacore.com>

	* bcheck.adb (Check_Consistent_Restrictions):
	Remove obsolete code checking for violation of
	No_Standard_Allocators_After_Elaboration (main program)
	* bindgen.adb (Gen_Adainit): Handle
	No_Standard_Allocators_After_Elaboration
	(Gen_Output_File_Ada): ditto.
	* exp_ch4.adb (Expand_N_Allocator): Handle
	No_Standard_Allocators_After_Elaboration.
	* Makefile.rtl: Add entry for s-elaall
	* rtsfind.ads: Add entry for Check_Standard_Allocator.
	* s-elaall.ads, s-elaall.adb: New files.
	* sem_ch4.adb (Analyze_Allocator): Handle
	No_Standard_Allocators_After_Elaboration.

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

	* lib.adb, lib.ads, lib-writ.adb, lib-writ.ads, ali.adb,
	ali.ads, lib-load.adb: Remove Lib.Has_Allocator and all uses.
	Remove AB parameter from ali files and all uses.
	Remove Allocator_In_Body and all uses.

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

	* g-expect-vms.adb: Add comment.

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

	* par_sco.adb (Is_Logical_Operation): return True for
	N_If_Expression.

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

	* sem_attr.adb (Resolve_Attribute, case 'Update): Do full
	analysis and resolution of each choice in the associations within
	the argument of Update, because they may be variable names.

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

	* exp_attr.adb (Expand_Loop_Entry_Attribute): Insert any condition
	actions before the generated if statement.

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

	* gnat_ugn.texi Enhance the documentation of
	switches -gnateA and -gnateV.

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

	* sem_util.adb (Build_Default_Subtype): Add missing condition
	so that code matches description: use the full view of the base
	only if the base is private and the subtype is not.

From-SVN: r212779
2014-07-18 11:05:04 +02:00
Uros Bizjak 537b531270 configure.tgt (alpha*): Add -mfp-trap-mode=sui to XCFLAGS.
* configure.tgt (alpha*): Add -mfp-trap-mode=sui to XCFLAGS.

From-SVN: r212778
2014-07-18 08:34:20 +02:00
Jan-Benedict Glaw 3caa58223c Move ChangeLog entry to the correct file
From-SVN: r212777
2014-07-18 01:59:03 +00:00
Jan-Benedict Glaw 45befa6e92 mmix.c (mmix_intval): Drop unused automatic variable.
2014-07-18  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/mmix/mmix.c (mmix_intval): Drop unused automatic variable.

From-SVN: r212776
2014-07-18 01:57:18 +00:00
GCC Administrator d8688307cf Daily bump.
From-SVN: r212774
2014-07-18 00:16:52 +00:00
John David Anglin 03cb409757 pa-linux.h (TARGET_OS_CPP_BUILTINS): Remove defines for __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1...
* config/pa/pa-linux.h (TARGET_OS_CPP_BUILTINS): Remove defines for
	__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1, __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2
	and __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
	(HAVE_sync_compare_and_swapqi): Define.
	(HAVE_sync_compare_and_swaphi): Likewise.
	(HAVE_sync_compare_and_swapsi): Likewise.

From-SVN: r212770
2014-07-17 23:44:57 +00:00
John David Anglin a41370902e linux-atomic.c (__sync_lock_release_4): New.
* config/pa/linux-atomic.c (__sync_lock_release_4): New.
	(SYNC_LOCK_RELEASE): Update to use __kernel_cmpxchg for release.
	Don't use SYNC_LOCK_RELEASE for int type.

From-SVN: r212767
2014-07-17 23:18:50 +00:00
Richard Sandiford 1435fa485e p5600.md: Add missing cpu tests.
gcc/
	* config/mips/p5600.md: Add missing cpu tests.

From-SVN: r212765
2014-07-17 20:17:21 +00:00
Richard Sandiford 13caea3d9d umips-lwp-1.c (foo): Use a shift/add sequence involving both inputs rather than a multiplication...
gcc/testsuite/
	* gcc.target/mips/umips-lwp-1.c (foo): Use a shift/add sequence
	involving both inputs rather than a multiplication involving one.
	* gcc.target/mips/umips-lwp-2.c (foo): Likewise.
	* gcc.target/mips/umips-lwp-3.c (foo): Likewise.
	* gcc.target/mips/umips-lwp-4.c (foo): Likewise.

From-SVN: r212763
2014-07-17 19:36:17 +00:00
Paolo Carlini 835dee55a1 re PR c++/50961 (Fails to decay template function properly(?))
/cp
2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/50961
	* call.c (standard_conversion): Use resolve_nondeduced_context
	for type_unknown_p (EXPR) && TREE_CODE (TO) == BOOLEAN_TYPE.

/testsuite
2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/50961
	* g++.dg/template/operator13.C: New.

From-SVN: r212760
2014-07-17 16:22:19 +00:00
Roman Gareev 37738b0fe4 configure.ac: Don't accept isl 0.11.
* configure.ac: Don't accept isl 0.11.
	* configure: Regenerate.

From-SVN: r212758
2014-07-17 15:09:40 +00:00
Kyrylo Tkachov 1f960cedea [AArch64] Implement vfma_f64, vmla_f64, vfms_f64, vmls_f64 intrinsics.
[gcc/]
	* config/aarch64/arm_neon.h (vfma_f64): New intrinsic.
	(vmla_f64): Likewise.
	(vfms_f64): Likewise.
	(vmls_f64): Likewise.

[testsuite/]
	* gcc.target/aarch64/simd/vfma_f64.c: New test.
	* gcc.target/aarch64/simd/vmla_f64.c: Likewise.
	* gcc.target/aarch64/simd/vfms_f64.c: Likewise.
	* gcc.target/aarch64/simd/vmls_f64.c: Likewise.

From-SVN: r212756
2014-07-17 10:56:53 +00:00
Max Ostapenko 0d89417096 bounds-2.c: Change output pattern.
gcc/testsuite/
2014-07-17  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	* c-c++-common/ubsan/bounds-2.c: Change output pattern.
	* c-c++-common/ubsan/bounds-5.c: Likewise.
	* c-c++-common/ubsan/bounds-6.c: Likewise.
	* c-c++-common/ubsan/bounds-7.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-1.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-10.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-3.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-5.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-6.c: Likewise.
	* c-c++-common/ubsan/float-cast-overflow-8.c: Likewise.
	* gcc.dg/ubsan/float-cast-overflow-bf.c: Likewise.
	* g++.dg/ubsan/float-cast-overflow-bf.C: Likewise.

From-SVN: r212755
2014-07-17 13:50:25 +03:00
Kyrylo Tkachov 6ffb7ba3b4 [AArch64][tests] Mark vca*_f* tests variable as volatile.
* gcc.target/aarch64/simd/vcaled_f64.c: Mark expected value volatile.
	* gcc.target/aarch64/simd/vcales_f32.c: Likewise.
	* gcc.target/aarch64/simd/vcaltd_f64.c: Likewise.
	* gcc.target/aarch64/simd/vcalts_f32.c: Likewise.

From-SVN: r212754
2014-07-17 10:40:06 +00:00
Kyrylo Tkachov 61263118ae [AArch64] Handle fcvta[su] and frint in RTX cost function.
* config/aarch64/aarch64.c (aarch64_frint_unspec_p): New function.
	(aarch64_rtx_costs): Handle FIX, UNSIGNED_FIX, UNSPEC.

From-SVN: r212753
2014-07-17 10:37:48 +00:00
Kyrylo Tkachov ec45448361 [AArch64] Fix argument types for some high_lane* intrinsics implemented in assembly.
* config/aarch64/arm_neon.h (vmlal_high_lane_s16): Fix type.
	(vmlal_high_lane_s32): Likewise.
	(vmlal_high_lane_u16): Likewise.
	(vmlal_high_lane_u32): Likewise.
	(vmlsl_high_lane_s16): Likewise.
	(vmlsl_high_lane_s32): Likewise.
	(vmlsl_high_lane_u16): Likewise.
	(vmlsl_high_lane_u32): Likewise.

From-SVN: r212752
2014-07-17 10:35:26 +00:00
Terry Guo 1d61feeb99 types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg.
2014-07-17  Terry Guo  <terry.guo@arm.com>

	* config/arm/types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg.
	(alus_reg): Renamed to alus_sreg.
	* config/arm/arm-fixed.md: Change type of non-dsp instructions
	from alu_reg to alu_sreg.  Change type of dsp instructions from
	alu_reg to alu_dsp_reg.
	* config/arm/thumb1.md: Likewise.
	* config/arm/thumb2.md: Likewise.
	* config/arm/arm.c (cortexa7_older_only): Use new ALU type names.
	* config/arm/arm1020e.md (1020alu_op): Replace alu_reg and alus_reg
	with alu_sreg and alus_sreg.
	* config/arm/arm1026ejs.md (alu_op): Likewise.
	* config/arm/arm1136jfs.md (11_alu_op): Likewise.
	* config/arm/arm926ejs.md (9_alu_op): Likewise.
	* config/arm/fa526.md (526_alu_op): Likewise.
	* config/arm/fa606te.md (606te_alu_op): Likewise.
	* config/arm/fa626te.md (626te_alu_op): Likewise.
	* config/arm/fa726te.md (726te_alu_op): Likewise.
	* config/arm/fmp626.md (mp626_alu_op): Likewise.
	* config/arm/arm.md (core_cycles): Replace alu_reg and alus_reg with
	alu_sreg, alu_dsp_reg and alus_sreg.     
	* config/arm/cortex-a15.md (cortex_a15_alu): Likewise.
	* config/arm/cortex-a5.md (cortex_a5_alu): Likewise.
	* config/arm/cortex-a53.md (cortex_a53_alu): Likewise.
	* config/arm/cortex-a7.md (cortex_a7_alu_sreg): Likewise.
	* config/arm/cortex-a8.md (cortex_a8_alu): Likewise.
	* config/arm/cortex-a9.md (cortex_a9_dp): Likewise.
	* config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
	* config/arm/cortex-r4.md (cortex_r4_alu): Likewise.
	* config/arm/marvell-pj4.md (pj4_alu, pj4_alu_conds): Likewise.
	* config/aarch64/aarch64.md (*addsi3_aarch64, *addsi3_aarch64_uxtw,
	subsi3, *adddi3_aarch64, *subsi3_uxtw, subdi3, absdi2, neg<mode>2,
	*negsi2_uxtw, tlsle_small_<mode>): Rename type alu_reg to alu_sreg.     
	(add<mode>3_compare0, *addsi3_compare0_uxtw, *add<mode>3nr_compare0,
	sub<mode>3_compare0, *compare_neg<mode>, *neg<mode>2_compare0,
	subsi3_compare0_uxtw, *negsi2_compare0_uxtw, *cmp<mode>): Rename type 
	alus_reg to alus_sreg.

From-SVN: r212750
2014-07-17 10:10:50 +00:00
Uros Bizjak 72b9a00b9a c11-atomic-exec-5.c (dg-additional-options): Use -mfp-trap-mode=sui instead of -miee-with-inexact for alpha*-*-*.
* gcc.dg/atomic/c11-atomic-exec-5.c (dg-additional-options): Use
	-mfp-trap-mode=sui instead of -miee-with-inexact for alpha*-*-*.
	* gfortran.dg/ieee/ieee_1.F90 (dg-additional-options): Ditto.

From-SVN: r212748
2014-07-17 11:11:19 +02:00
Andreas Schwab 4b1d78b48a Summary: Generate canonical infinity for the Motorola extended real format
* real.c (encode_ieee_extended_motorola): Clear integer bit in the
infinity format.

From-SVN: r212744
2014-07-17 08:40:15 +00:00
Paolo Carlini cfe309a158 re PR c++/61804 (rejects-valid if parenthesized temporary is incremented)
/cp
2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/61804
	* parser.c (cp_parser_tokens_start_cast_expression): Return -1
	for '++' and '--'.

/testsuite
2014-07-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/61804
	* g++.dg/parse/pr61804.C: New.

From-SVN: r212743
2014-07-17 08:32:18 +00:00
Richard Biener bf95b6295c re PR rtl-optimization/61801 (sched2 miscompiles syscall sequence with -g)
2014-07-17  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/61801
	* sched-deps.c (sched_analyze_2): For ASM_OPERANDS and
	ASM_INPUT don't set reg_pending_barrier if it appears in a
	debug-insn.

From-SVN: r212738
2014-07-17 07:47:19 +00:00
Arnaud Charlet 6782b1ef34 [multiple changes]
2014-07-17  Gary Dismukes  <dismukes@adacore.com>

	* exp_disp.adb: Minor reformatting.
	* exp_disp.adb: Minor code reorganization.

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

	* gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Do not
	require an explicit SSO attribute definition clause on a composite type
	just because one of its components has one.

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

	* sem_attr.adb (Analyze_Attribute, case Loop_Entry): Rewrite
	attribute out of existence if the enclosing pragma is ignored.
	* sem_util.adb: Minor reformatting.

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

	* exp_aggr.adb (Expand_Array_Aggregate): Handle properly an
	array aggregate expanded into assignments when it appears as a
	local declaration in an inlined body.

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

	* init.c [__ANDROID__]: Modify for ZCX.
	* exp_aggr.adb: Minor reformatting
	* sigtramp-armvxw.c, sigtramp-ppcvxw.c: Update comments.

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

	* a-strunb-shared.ads, a-stwiun-shared.ads, a-stzunb-shared.ads,
	exp_ch7.adb, g-pehage.ads, g-socket.ads, gnat_ugn.texi, gnat_ugx.texi,
	scng.adb: Remove incorrect usage "allow to" and "allows to".

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

	* exp_dist.adb: Minor reformatting.

From-SVN: r212737
2014-07-17 09:27:38 +02:00
Arnaud Charlet 6ccdd97705 [multiple changes]
2014-07-17  Bob Duff  <duff@adacore.com>

	* gnat_ugn.texi: Improve documentation of Unrestricted_Access.

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

	* sem_ch13.adb (Build_Invariant_Procedure): Add variable Nam
	(Add_Invariants): Set Nam to Name_Type_Invariant if from aspect.

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

	* exp_pakd.adb (Create_Packed_Array_Type.Install_PAT): For a
	non-bit-packed array, propagate Reverse_Storage_Order to the
	packed array type.

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

	* exp_disp.adb: Fix comment.
	* exp_pakd.adb: Minor reformatting.

From-SVN: r212736
2014-07-17 09:06:05 +02:00
Robert Dewar d8941160a5 bindgen.adb (Gen_Elab_Calls): Skip reference to elab entity if none exists (Gen_Elab_Calls): Complain if...
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* bindgen.adb (Gen_Elab_Calls): Skip reference to elab
	entity if none exists (Gen_Elab_Calls): Complain if clash with
	No_Multiple_Elaboration.
	* s-rident.ads, restrict.ads: Add restriction No_Multiple_Elaboration.
	* sem_util.adb (Build_Elaboration_Entity): Skip building entity
	if not needed.
	* gnat_rm.texi: Document restriction No_Multiple_Elaboration.
	* sem_ch4.adb: Minor comment updates.

From-SVN: r212735
2014-07-17 09:04:32 +02:00
Arnaud Charlet bf561f2ba3 [multiple changes]
2014-07-17  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Buid_Protected_Subprogram_Call): Preserve type
	of function call for later use when shared passive objects
	are involved.

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

	* par-ch13.adb (Get_Aspect_Specifications):
	Catch a case where the argument of SPARK aspect Refined_State
	is not properly parenthesized.

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

	* exp_ch6.adb (Expand_Ctrl_Function_Call): Do not extend
	the lifetime of a reference to an Ada 2012 container element.
	(Is_Element_Reference): New routine.

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

	* ali.ads: Minor comment fix.
	* lib-writ.adb: Minor reformatting.

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

	* sem_ch10.adb (Analyze_Proper_Body): When analyzing a subunit
	in ASIS mode, load another subunit only if it a subunit of the
	current one, not a sibling that has been reached through the
	analysis of an ancestor. This allows the construction of the
	ASIS tree for the subunit even when sibling subunits have errors.

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

	* sem_ch3.adb (Analyze_Declarations): Remove the guard which
	prevents the analysis of various contracts when the associated
	construct is erroneous.
	* sem_util.adb (Save_SPARK_Mode_And_Set): Do not query the
	SPARK_Pragma of an illegal or a partially decorated construct.

From-SVN: r212734
2014-07-17 09:02:51 +02:00
Arnaud Charlet 8a5e4b2a8a [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* s-imguns.ads: Minor reformatting.

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

	* exp_ch7.adb (Build_Finalization_Master): Move all local
	variables to the proper code section. When looking for an existing
	finalization master, inspect the ultimate ancestor type of the
	full view.
	* sem_util.ads, sem_util.adb (Root_Type_Of_Full_View): New routine.

From-SVN: r212733
2014-07-17 09:00:19 +02:00
Arnaud Charlet 52d9ba4d30 [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* aspects.ads, aspects.adb: Add entries for aspect Annotate.
	* gnat_rm.texi: Document Entity argument for pragma Annotate and
	Annotate aspect.
	* sem_ch13.adb (Analyze_Aspect_Specification): Add processing
	for Annotate aspect.
	* sem_prag.adb (Analyze_Pragma, case Annotate): Allow optional
	Entity argument at end.
	* sinfo.ads (N_Aspect_Specification): Add note on Annotate aspect.

2014-07-17  Tristan Gingold  <gingold@adacore.com>

	* s-imguns.ads: Fix minor typo.

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

	* sprint.adb: Minor reformatting.

From-SVN: r212732
2014-07-17 08:58:11 +02:00
Arnaud Charlet b16ffa3332 [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* sprint.adb (Write_Itype): Print proper header for string
	literal subtype.

2014-07-17  Steve Baird  <baird@adacore.com>

	* sinfo.ads, sem_scil.ads: Improve comments, minor reformatting.

From-SVN: r212731
2014-07-17 08:56:06 +02:00
Arnaud Charlet 7b966a9546 [multiple changes]
2014-07-17  Vincent Celier  <celier@adacore.com>

	* gnatbind.adb: Change in message "try ... for more information".

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

	* sprint.adb: Code clean up.

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

	* exp_ch7.adb (Find_Last_Init): Relocate local variables to
	the relevant code section. Add new local constant Obj_Id. When
	a limited controlled object is initialized by a function call,
	the build-in-place object access function call acts as the last
	initialization statement.
	* exp_util.adb (Is_Object_Access_BIP_Func_Call): New routine.
	(Is_Secondary_Stack_BIP_Func_Call): Code reformatting.
	* exp_util.ads (Is_Object_Access_BIP_Func_Call): New routine.

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

	* sem_ch8.adb (Analyze_Generic_Renaming): For generic subprograms,
	propagate intrinsic flag to renamed entity, to allow e.g. renaming
	of Unchecked_Conversion.
	* sem_ch3.adb (Analyze_Declarations): Do not analyze contracts
	if the declaration has errors.

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

	* a-rbtgbk.adb: a-rbtgbk.adb (Generic_Insert_Post): Check whether
	container is busy before checking whether capacity allows for
	a further insertion. Insertion in a busy container that is full
	raises Program_Error rather than Capacity_Error. Previous to that
	patch which exception was raised varied among container types.

From-SVN: r212730
2014-07-17 08:52:30 +02:00
Arnaud Charlet 44ccf4b458 [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* g-comlin.ads, g-comlin.adb: Minor clean up.

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

	* gnat_ugn.texi: Update gnatpp doc.

From-SVN: r212729
2014-07-17 08:49:11 +02:00
Arnaud Charlet bb01279084 [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Document new restriction No_Long_Long_Integers.
	* exp_ch4.adb (Make_Array_Comparison_Op): Add note that we
	could do this by actually expanding a real generic.
	* a-tags.ads: Add comments about performance.
	* sprint.adb (Sprint_Node_Actual, case N_Object_Declaration):
	Print Etype of defining identifier, rather than the object
	definition. More information.

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

	* exp_dist.adb: Minor documentation clarification.

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

	* exp_util.adb (Is_Aliased): Revert previous change.

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

	* g-comlin.adb (Try_Help): New procedure.
	(Getopt): Use new procedure Try_Help.
	* g-comlin.ads (Try_Help): New procedure.

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

	* gnat_ugn.texi: Minor update.

From-SVN: r212728
2014-07-17 08:47:15 +02:00
Robert Dewar ee10c0ec88 gnat_rm.texi: Improve documentation of Unrestricted_Access.
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Improve documentation of Unrestricted_Access.
	* sinfo.ads: Document restriction on aggregates (must expand to
	assignments if one or more assignments needs expansion, e.g. for
	controlled types).
	* sem_ch13.adb: All warning messages regarding bit order should
	be info: messages.
	* gnat_ugn.texi: Minor correction of missing @ on @code

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

	* restrict.ads (Implementation_Restriction): Add No_Long_Long_Integer.
	* s-rident.ads (Partition_Boolean_Restrictions): Add
	No_Long_Long_Integer.
	* sem_ch3.adb (Modular_Type_Declaration): Size must be <=
	Long_Integer'Size if restriction No_Long_Long_Integer is active.
	(Signed_Integer_Type_Declaration): Do not allow Long_Long_Integer
	as the implicit base type for a signed integer type declaration
	if restriction No_Long_Long_Integer is active.
	* sem_util.ads, sem_util.adb (Set_Entity_With_Checks): Include check for
	No_Long_Long_Integer.

From-SVN: r212727
2014-07-17 08:40:45 +02:00
Robert Dewar e80f0cb0b4 sem_ch3.adb, [...]: Remove the word kludge from ada sources.
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, a-ztexio.ads, exp_imgv.adb, casing.adb, casing.ads,
	einfo.ads, checks.adb, sem_ch12.adb, a-textio.ads, freeze.adb,
	repinfo.adb, exp_ch6.adb, sem_ch4.adb, a-witeio.ads, sem_ch8.adb,
	sem_warn.adb, exp_aggr.adb, exp_dist.adb, par-tchk.adb, s-fatgen.adb,
	treepr.adb, lib-xref.adb: Remove the word kludge from ada sources.

From-SVN: r212726
2014-07-17 08:37:45 +02:00
Robert Dewar 2bd67690e9 debug.adb: Remove -gnatdQ.
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* debug.adb: Remove -gnatdQ.
	* exp_disp.adb: Remove -gnatdQ.
	* a-ztenio.ads, a-wtinio.ads, a-wtmoio.ads, a-ztcoau.ads, a-tiinio.ads,
	a-wtfiio.ads, a-timoio.ads, sem_ch12.adb, a-tifiio.ads, a-ztinio.ads,
	rtsfind.adb, rtsfind.ads, a-ztmoio.ads, a-wtdeio.ads, a-ztfiio.ads,
	a-tideio.ads, a-wtflio.ads, a-ztdeio.ads, sem_ch8.adb, a-tiflio.ads,
	sprint.adb, a-ztflio.ads, snames.ads-tmpl, a-wtenio.ads,
	a-tienio.ads: Rename Text_IO_Kludge to Text_IO_Special_Unit.

From-SVN: r212725
2014-07-17 08:35:13 +02:00
Robert Dewar 59f4d03898 back_end.adb: Minor reformatting and comment additions.
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* back_end.adb: Minor reformatting and comment additions.
	* checks.ads, checks.adb (Duplicated_Tag_Checks_Suppressed): New
	function.
	* exp_disp.adb (Make_DT): Use Duplicated_Tag_Checks_Suppressed.
	(Make_VM_TSD): Use Duplicated_Tag_Checks_Suppressed.
	* gnat_rm.texi: Document new check Duplicated_Tag_Checks_Suppressed.
	* gnat_ugn.texi: Additional documentation for Duplicated_Tag_Check.
	* snames.ads-tmpl (Duplicated_Tag_Checks_Suppressed): New check.
	* types.ads (Duplicated_Tag_Checks_Suppressed): New check.

From-SVN: r212724
2014-07-17 08:31:56 +02:00
Arnaud Charlet 26d5fb62ef [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Minor comment updates.

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

	* sem_util.adb (Make_Explicit_Dereference): If the expression
	being dereferenced is a generalized indexing, reset the overloaded
	flag on the generalized indexing call, consistent with the
	resetting of the flag on the original indexed component.

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

	* gnat_ugn.texi: Document advise not to mix -gnatV? and
	optimization.

From-SVN: r212723
2014-07-17 08:30:05 +02:00
Arnaud Charlet c61ef4169e [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* sem_aux.ads: Minor comment addition.

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

	* sem_res.adb (Make_Call_Into_Operator): If the call is already
	a rewriting of an operator node, there are no actuals to be
	propagated from original node to rewritten node when in ASIS mode.

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

	* sem_ch6.adb (Analyze_Subprogram_Body_Contract,
	Analyze_Subprogram_Contract): Add new local variable Mode. Save
	and restore the SPARK mode of the related construct in a
	stack-like fashion.
	* sem_ch7.adb (Analyze_Package_Body_Contract,
	Analyze_Package_Contract): Add new local variable Mode. Save and
	restore the SPARK mode of the related construct in a stack-like fashion.
	* sem_util.adb Remove with and use clause for Opt.
	(Restore_SPARK_Mode): New routine.
	(Save_SPARK_Mode_And_Set): New routine.
	* sem_util.ads Add with and use clause for Opt.
	(Restore_SPARK_Mode): New routine.
	(Save_SPARK_Mode_And_Set): New routine.

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

	* exp_util.adb (Is_Aliased): Transient objects
	within an expression with actions cannot be considered aliased.

From-SVN: r212721
2014-07-17 08:22:32 +02:00
Arnaud Charlet 3629577991 [multiple changes]
2014-07-17  Thomas Quinot  <quinot@adacore.com>

	* sem.ads (Scope_Stack_Entry): Reorganize storage of action lists;
	introduce a new list (cleanup actions) for each (transient) scope.
	* sinfo.ads, sinfo.adb (Cleanup_Actions): New attribute for
	N_Block_Statement
	* exp_ch7.ads (Store_Cleanup_Actions_In_Scope): New subprogram.
	* exp_ch7.adb (Store_Actions_In_Scope): New subprogram, common
	processing for Store_xxx_Actions_In_Scope.
	(Build_Cleanup_Statements): Allow for a list of additional
	cleanup statements to be passed by the caller.
	(Expand_Cleanup_Actions): Take custom cleanup actions associated
	with an N_Block_Statement into account.
	(Insert_Actions_In_Scope_Around): Account for Scope_Stack_Entry
	reorganization (refactoring only, no behaviour change).
	(Make_Transient_Block): Add assertion to ensure that the current
	scope is indeed a block (namely, the entity for the transient
	block being constructed syntactically, which has already been
	established as a scope).  If cleanup actions are present in the
	transient scope, transfer them now to the transient block.
	* exp_ch6.adb (Expand_Protected_Subprogram_Call): Freeze the
	called function while it is still present as the name in a call
	in the tree. This may not be the case later on if the call is
	rewritten into a transient block.
	* exp_smem.adb (Add_Shared_Var_Lock_Procs): The post-actions
	inserted after calling a protected operation on a shared passive
	protected must be performed in a block finalizer, not just
	inserted in the tree, so that they are executed even in case of
	a normal (RETURN) or abnormal (exception) transfer of control
	outside of the current scope.
	* exp_smem.ads (Add_Shared_Var_Lock_Procs): Update documentation
	* sem_ch8.adb, expander.adb, exp_ch11.adb: Adjust for
	Scope_Stack_Entry reorganization.

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

	* exp_disp.adb (Make_DT, Make_VM_TSD): Do not omit Check_TSD
	call for types that do not have an explicit attribute definition
	clause for External_Tag, as their default tag may clash with an
	explicit tag defined for some other type.

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

	* exp_util.adb (Is_Controlled_Function_Call): Recognize a
	controlled function call with multiple actual parameters that
	appears in Object.Operation form.

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

	* einfo.ads, einfo.adb (Has_External_Tag_Rep_Clause): Remove
	entity flag.
	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
	External_Tag): No need to set entity flag.
	* sem_aux.ads, sem_aux.adb (Has_External_Tag_Rep_Clause):
	Reimplement correctly in terms of Has_Rep_Item.

From-SVN: r212719
2014-07-17 08:19:52 +02:00
Thomas Quinot f65c67d340 exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped): Start examining the tree at the node passed to Establish_Transient_Scope (not...
2014-07-17  Thomas Quinot  <quinot@adacore.com>

	* exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped):
	Start examining the tree at the node passed to
	Establish_Transient_Scope (not its parent).
	* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
	The access type for the variable storing the reference to
	the call must be declared and frozen prior to establishing a
	transient scope.
	* exp_ch9.adb: Minor reformatting.

From-SVN: r212718
2014-07-17 08:16:25 +02:00
Arnaud Charlet a1d3851bcd [multiple changes]
2014-07-17  Pascal Obry  <obry@adacore.com>

	* s-os_lib.ads: Minor comment update.

2014-07-17  Tristan Gingold  <gingold@adacore.com>

	* sysdep.c: Add ATTRIBUTE_UNUSED to avoid warnings.  Fix some
	indentation.
	* socket.c: Remove #warning to avoid warning.
	* expect.c: Indent some preprocessor directives to clarify
	nested if.  Do not use wait.h on PikeOS.  Add ATTRIBUTE_UNUSED
	to remove warnings.
	* env.c: Fix indentation.  Port to PikeOS.
	* gsocket.h: Port to PikeOS.  Remove #warning.
	* terminals.c: Port to PikeOS.	Fix indentation of the stubs.
	Add ATTRIBUTE_UNUSED to stubs arguments.  Fix return statement
	of stubbed __gnat_setup_parent_communication.
	* adaint.c: Port to PikeOS.  Reindent some preprocessor
	directives to clarify nested if.  Fix indentation.  Add missing
	ATTRIBUTE_UNUSED.

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

	* sem_attr.adb: Minor reformatting.

From-SVN: r212717
2014-07-17 08:14:35 +02:00
Arnaud Charlet d2d8b2a70d [multiple changes]
2014-07-17  Robert Dewar  <dewar@adacore.com>

	* exp_ch7.adb, exp_ch7.ads, sinfo.ads: Minor reformatting.

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

	* sem_case.adb (Check_Choice_Set): If the case expression is the
	expression in a predicate, do not recheck coverage against itself,
	to prevent spurious errors.
	* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Indicate that
	expression comes from an aspect specification, to prevent spurious
	errors when expression is a case expression in a predicate.

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

	* adaint.c, adaint.h (__gnat_set_executable): Add mode parameter.
	* s-os_lib.ads, s-os_lib.adb (Set_Executable): Add Mode parameter.

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

	* gnatchop.adb, make.adb, gnatbind.adb, clean.adb, gprep.adb,
	gnatxref.adb, gnatls.adb, gnatfind.adb, gnatname.adb: Do not output
	the usage for an erroneous invocation of a gnat tool.

From-SVN: r212716
2014-07-17 08:12:09 +02:00
DJ Delorie 3fad4d00ac rx.c (rx_option_override): Fix alignment values.
* config/rx/rx.c (rx_option_override): Fix alignment values.
(rx_align_for_label): Likewise.

From-SVN: r212710
2014-07-16 22:24:58 -04:00