122972 Commits

Author SHA1 Message Date
Arnaud Charlet
2eb8701742 [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* a-cfdlli.ads, g-socket.adb, s-fileio.adb: Minor reformatting.

2013-04-12  Yannick Moy  <moy@adacore.com>

	* sem_attr.adb (Analyze_Attribute): Update analyse of
	Attribute_Old and Attribute_Result so they are allowed in the
	right-hand-side of an association in a Contract_Cases pragma.
	* sem_prag.adb (Analyze_CTC_In_Decl_Part): Add pre-analysis of
	the expressions in a Contract_Cases pragma.

From-SVN: r197905
2013-04-12 15:04:59 +02:00
Arnaud Charlet
9686dbc79e [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* sem.ads, opt.ads: Minor comment edits.
	* sem_warn.adb, sem_ch6.adb: Minor reformatting.

2013-04-12  Claire Dross  <dross@adacore.com>

	* a-cfdlli.adb a-cfdlli.ads (List, Not_No_Element, Iterate,
	Reverse_Iterate, Query_Element, Update_Element, Read, Write): Removed,
	not suitable for formal analysis.

2013-04-12  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb (Analyze_Abstract_State): Use Defining entity
	to locate package entity, which may be a child unit.

2013-04-12  Thomas Quinot  <quinot@adacore.com>

	* g-socket.adb, g-socket.ads (Connect_Socket, version with timeout): If
	the specified timeout is 0, do not attempt to determine whether the
	connection succeeded.

2013-04-12  Doug Rupp  <rupp@adacore.com>

	* s-fileio.adb (Form_RMS Context_Key): Fix some thinkos.

From-SVN: r197904
2013-04-12 15:03:19 +02:00
Arnaud Charlet
7a1f094d68 [multiple changes]
2013-04-12  Doug Rupp  <rupp@adacore.com>

	* s-fileio.adb: Minor reformatting.

2013-04-12  Ed Schonberg  <schonberg@adacore.com>

	* sem_warn.adb (Check_Infinite_Loop_Warning): Do not warn if
	the last statement in the analyzed loop is an unconditional
	exit statement.

From-SVN: r197903
2013-04-12 14:59:15 +02:00
Arnaud Charlet
7f18b29a17 [multiple changes]
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* opt.ads (Style_Check_Main): New switch.
	* sem.adb (Semantics): Set Style_Check flag properly for new
	unit to be analyzed.
	* sem_ch10.adb (Analyze_With_Clause): Don't reset Style_Check,
	the proper setting of this flag is now part of the Semantics
	procedure.
	* switch-c.adb (Scan_Front_End_Switches): Set Style_Check_Main
	for -gnatg and -gnaty

2013-04-12  Doug Rupp  <rupp@adacore.com>

	* s-crtl.ads (fopen, freopen): Add vms_form parameter
	* i-cstrea.ads (fopen, freopen): Likewise.
	* adaint.h (__gnat_fopen, __gnat_freopen): Likewise.
	* adaint.c (__gnat_fopen, __gnat_freopen): Likewise.
	[VMS]: Split out RMS keys and call CRTL function appropriately.
	* s-fileio.adb (Form_VMS_RMS_Keys, Form_RMS_Context_Key): New
	subprograms.
	(Open, Reset): Call Form_VMS_RMS_Keys. Call fopen,freopen with
	vms_form
	* gnat_rm.texi: Document implemented RMS keys.

From-SVN: r197902
2013-04-12 14:58:01 +02:00
Arnaud Charlet
0c68c6135f [multiple changes]
2013-04-12  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications):
	Insert the corresponding pragma for aspect Abstract_State at
	the top of the visible declarations of the related package.
	Previously this was only done when the package is a compilation
	unit.

2013-04-12  Arnaud Charlet  <charlet@adacore.com>

	* gnat_ugn.texi: Further menu clean ups.
	* sem_prag.adb, opt.ads: Minor reformatting.
	* sem_util.ads: Minor comment fix.

From-SVN: r197901
2013-04-12 14:55:34 +02:00
Hristian Kirtchev
fd8b40539c sem_ch13.adb (Analyze_Aspect_Specifications): Aspect Depends is now a delayed aspect.
2013-04-12  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): Aspect
	Depends is now a delayed aspect. The delay is required
	due to the interplay between aspects Depends and Global.
	(Check_Aspect_At_Freeze_Point): Add an entry for aspect Depends.
	* sem_prag.adb: Reformat various error messages.
	(Add_Item): New subsidiary routine.
	(Analyze_Pragma): Add new variables
	Global_Seen, Result_Seen, Subp_Inputs and Subp_Outputs. The
	analysis of pragma Depends now has the capability to check
	the proper mode and usage of subprogram inputs and outputs.
	(Appears_In): New routine.
	(Check_Function_Return): New routine.
	(Check_Mode): New routine.
	(Check_Usage): New routine.
	(Collect_Subprogram_Inputs_Outputs): New routine.

From-SVN: r197900
2013-04-12 14:52:32 +02:00
Arnaud Charlet
c2658843ea [multiple changes]
2013-04-12  Bob Duff  <duff@adacore.com>

	* par-ch7.adb (P_Package): Initialize Sloc in the newly-pushed scope
	stack entry.

2013-04-12  Robert Dewar  <dewar@adacore.com>

	* switch-c.adb: Minor fix to wording of error message for
	-gnatet/eT.

2013-04-12  Robert Dewar  <dewar@adacore.com>

	* impunit.adb: Add s-multip and s-mudido to list of impl defined
	system units.
	* gnat_rm.texi: Add documentation for
	System.Multiprocessors[.Dispatching_Domains].

2013-04-12  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Completion of menu cleanups.

2013-04-12  Arnaud Charlet  <charlet@adacore.com>

	* sem_prag.adb (Diagnose_Multiple_Pragmas): Relax the rules
	in Relaxed_RM_Semantics.

2013-04-12  Arnaud Charlet  <charlet@adacore.com>

	* set_targ.adb (elab code): Add support for non gcc back-ends
	where save_argv is null.

From-SVN: r197899
2013-04-12 14:48:12 +02:00
Robert Dewar
340772c0be gnat1drv.adb (Gnat1drv): Test Target_Dependent_Info_Write_Name.
2013-04-12  Robert Dewar  <dewar@adacore.com>

	* gnat1drv.adb (Gnat1drv): Test Target_Dependent_Info_Write_Name.
	* opt.ads (Target_Dependent_Info_Read): Add _Name, now an access
	type (Target_Dependent_Info_Write): Add _Name, now an access type.
	* set_targ.adb (Write_Target_Dependent_Values): Use name
	from -gnatet switch stored in Target_Dependent_Info_Write_Name
	(Read_Target_Dependent_Values): Use name from -gnateT switch
	stored in Target_Dependent_Info_Read_Name.
	* switch-c.adb: New form of -gnatet and -gnateT switches.
	* usage.adb: New form of -gnatet and -gnateT switches with
	file name.

From-SVN: r197898
2013-04-12 14:44:46 +02:00
Richard Biener
d3afd9aaca tree-pass.h (TODO_do_not_ggc_collect): New.
2013-04-12  Richard Biener  <rguenther@suse.de>

	* tree-pass.h (TODO_do_not_ggc_collect): New.
	* passes.c (execute_one_ipa_transform_pass): Honor
	TODO_do_not_ggc_collect.
	(execute_one_pass): Likewise.

	Revert
	2013-04-10  Richard Biener  <rguenther@suse.de>

	* passes.c (init_optimization_passes): Remove reload pass.
	* ira.c (do_reload): Merge into ...
	(ira): ... this.
	(rest_of_handle_reload): Remove.
	(pass_reload): Likewise.
	* config/i386/i386.c (ix86_option_override): Refer to ira instead
	of reload for vzeroupper pass placement.

	* g++.dg/pr55604.C: Use -fdump-rtl-ira.

From-SVN: r197865
2013-04-12 09:50:28 +00:00
Tobias Burnus
e1e3b9d335 re PR fortran/56845 ([OOP] _vptr not set to declared type for CLASS + SAVE)
2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56845
        * trans-decl.c (gfc_trans_deferred_vars): Restrict
        static CLASS init to SAVE and -fno-automatic.

2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56845
        * gfortran.dg/class_allocate_15.f90: New.

        Revert:
        2013-04-12  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_lib_alloc_2.f90: Update
        scan-tree-dump-times.

From-SVN: r197848
2013-04-12 10:54:15 +02:00
Jakub Jelinek
06f9b387e5 re PR tree-optimization/56918 (incorrect auto-vectorization of array initialization)
PR tree-optimization/56918
	PR tree-optimization/56920
	* fold-const.c (int_const_binop_1): Use op1.mul_with_sign (op2, ...)
	instead of op1 - op2.  Pass 2 * TYPE_PRECISION (type) as second
	argument to rshift method.  For 2 * HOST_BITS_PER_WIDE_INT precision
	use wide_mul_with_sign method.

	* gcc.dg/vect/pr56918.c: New test.
	* gcc.dg/vect/pr56920.c: New test.

From-SVN: r197846
2013-04-12 10:18:59 +02:00
Richard Biener
953094d2f8 gimple.c (is_gimple_constant): Vector CONSTRUCTORs should not be considered a gimple constant.
2013-04-12  Richard Biener  <rguenther@suse.de>

	* gimple.c (is_gimple_constant): Vector CONSTRUCTORs should
	not be considered a gimple constant.

From-SVN: r197845
2013-04-12 07:59:58 +00:00
Tobias Burnus
f118468ab6 re PR fortran/56845 ([OOP] _vptr not set to declared type for CLASS + SAVE)
2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56845
        * trans-decl.c (gfc_trans_deferred_vars): Set _vptr for
        allocatable static BT_CLASS.
        * trans-expr.c (gfc_class_set_static_fields): New function.
        * trans.h (gfc_class_set_static_fields): New prototype.

2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56845
        * gfortran.dg/class_allocate_14.f90: New.
        * gfortran.dg/coarray_lib_alloc_2.f90: Update
        * scan-tree-dump-times.
        * gfortran.dg/coarray_lib_alloc_3.f90: New.

From-SVN: r197844
2013-04-12 09:41:50 +02:00
Marc Glisse
bb50698284 fold-const.c (const_binop): Handle vector shifts by a scalar.
2013-04-12  Marc Glisse  <marc.glisse@inria.fr>

gcc/
	* fold-const.c (const_binop): Handle vector shifts by a scalar.
	(fold_binary_loc): Call const_binop also for mixed vector-scalar
	operations.

gcc/testsuite/
	* gcc.dg/fold-cstvecshift.c: New testcase.

From-SVN: r197843
2013-04-12 07:40:37 +00:00
Jakub Jelinek
f3065bdb6e opts.c: Include diagnostic-color.h.
* opts.c: Include diagnostic-color.h.
	(common_handle_option): Handle OPT_fdiagnostics_color_.
	* Makefile.in (OBJS-libcommon): Add diagnostic-color.o.
	(diagnostic.o, opts.o, pretty-print.o): Depend on diagnostic-color.h.
	(diagnostic-color.o): New.
	* common.opt (fdiagnostics-color, fdiagnostics-color=): New options.
	(diagnostic_color_rule): New enum.
	* dwarf2out.c (gen_producer_string): Don't print -fdiagnostics-color*.
	* langhooks.c (lhd_print_error_function): Add %r "locus" and %R around
	the location string.
	* diagnostic.def: Add 3rd argument to DEFINE_DIAGNOSTIC_KIND macros,
	either NULL, or color kind.
	* diagnostic-color.c: New file.
	* diagnostic-color.h: New file.
	* diagnostic-core.h (DEFINE_DIAGNOSTIC_KIND): Adjust macro for 3
	arguments.
	* doc/invoke.texi (-fdiagnostics-color): Document.
	* pretty-print.h (pp_show_color): Define.
	(struct pretty_print_info): Add show_color field.
	* diagnostic.c: Include diagnostic-color.h.
	(diagnostic_build_prefix): Adjust for 3 argument DEFINE_DIAGNOSTIC_KIND
	macros.  Colorize error:, warning: etc. strings and also the location
	string.
	(diagnostic_show_locus): Colorize the caret line.
	* pretty-print.c: Include diagnostic-color.h.
	(pp_base_format): Handle %r and %R format specifiers.  Colorize strings
	inside of %< %> quotes or quoted through q format modifier.
c-family/
	* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
	gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
	specifiers.
cp/
	* error.c (cp_print_error_function,
	print_instantiation_partial_context_line,
	maybe_print_constexpr_context): Colorize locus strings.

From-SVN: r197842
2013-04-12 08:20:36 +02:00
Jakub Jelinek
4b84d650e8 opts.c: Include diagnostic-color.h.
* opts.c: Include diagnostic-color.h.
	(common_handle_option): Handle OPT_fdiagnostics_color_.
	* Makefile.in (OBJS-libcommon): Add diagnostic-color.o.
	(diagnostic.o, opts.o, pretty-print.o): Depend on diagnostic-color.h.
	(diagnostic-color.o): New.
	* common.opt (fdiagnostics-color, fdiagnostics-color=): New options.
	(diagnostic_color_rule): New enum.
	* dwarf2out.c (gen_producer_string): Don't print -fdiagnostics-color*.
	* langhooks.c (lhd_print_error_function): Add %r "locus" and %R around
	the location string.
	* diagnostic.def: Add 3rd argument to DEFINE_DIAGNOSTIC_KIND macros,
	either NULL, or color kind.
	* diagnostic-color.c: New file.
	* diagnostic-color.h: New file.
	* diagnostic-core.h (DEFINE_DIAGNOSTIC_KIND): Adjust macro for 3
	arguments.
	* doc/invoke.texi (-fdiagnostics-color): Document.
	* pretty-print.h (pp_show_color): Define.
	(struct pretty_print_info): Add show_color field.
	* diagnostic.c: Include diagnostic-color.h.
	(diagnostic_build_prefix): Adjust for 3 argument DEFINE_DIAGNOSTIC_KIND
	macros.  Colorize error:, warning: etc. strings and also the location
	string.
	(diagnostic_show_locus): Colorize the caret line.
	* pretty-print.c: Include diagnostic-color.h.
	(pp_base_format): Handle %r and %R format specifiers.  Colorize strings
	inside of %< %> quotes or quoted through q format modifier.
c-family/
	* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
	gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
	specifiers.
cp/
	* error.c (cp_print_error_function,
	print_instantiation_partial_context_line,
	maybe_print_constexpr_context): Colorize locus strings.

From-SVN: r197841
2013-04-12 08:19:58 +02:00
Andreas Krebbel
067a1e719b ifcvt.c (end_ifcvt_sequence): Mark a and b for unsharing as well.
2013-04-12  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* ifcvt.c (end_ifcvt_sequence): Mark a and b for unsharing as
	well.

From-SVN: r197839
2013-04-12 05:38:27 +00:00
Naveen H.S
b056c91039 aarch64.c (aarch64_select_cc_mode): Allow NEG code in CC_NZ mode.
gcc

2013-04-10   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.c (aarch64_select_cc_mode): Allow NEG
	code in CC_NZ mode.
	* config/aarch64/aarch64.md (*neg_<shift><mode>3_compare0): New
	pattern.

gcc/testsuite

2013-04-10   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* gcc.target/aarch64/negs.c: New.

From-SVN: r197838
2013-04-12 04:19:14 +00:00
GCC Administrator
c030f9b8f4 Daily bump.
From-SVN: r197836
2013-04-12 00:16:45 +00:00
Jason Merrill
b45dc549b0 fix changelog
From-SVN: r197827
2013-04-11 15:53:47 -04:00
Jason Merrill
e59baf0517 re PR c++/52748 ([C++11] N3276 changes to decltype)
PR c++/52748
	* parser.c (complain_flags): New.
	(cp_parser_postfix_expression): Use it.
	(cp_parser_unary_expression): Likewise.
	(cp_parser_binary_expression): Likewise.
	(cp_parser_assignment_expression): Likewise.
	(cp_parser_expression): Likewise.
	(cp_parser_postfix_open_square_expression): Take decltype_p.
	(cp_parser_builtin_offsetof): Adjust.
	(cp_convert_range_for): Pass complain to finish_unary_op_expr.
	* semantics.c (finish_unary_op_expr): Add complain parm.

From-SVN: r197826
2013-04-11 15:51:52 -04:00
Jakub Jelinek
43a8d6ccf2 re PR c++/56895 (ICE: unexpected expression of kind arrow_expr)
PR c++/56895
	* call.c (null_ptr_cst_p): Call fold_non_dependent_expr_sfinae before
	calling maybe_constant_value for C++98.

	* g++.dg/template/arrow4.C: New test.

From-SVN: r197824
2013-04-11 21:42:33 +02:00
Jason Merrill
a2a5f18ea7 re PR c++/56901 (lambda with implicit capture by reference)
PR c++/56901
	* semantics.c (lambda_capture_field_type, lambda_proxy_type):
	Strip references before checking WILDCARD_TYPE_P.

From-SVN: r197819
2013-04-11 12:49:57 -04:00
Marek Polacek
7b55f98f5c re PR tree-optimization/48184 (ICE: SIGFPE (division by zero) in compute_alignments () at final.c:731 with --param align-threshold=0 on basic code)
PR tree-optimization/48184
	* params.def (PARAM_ALIGN_THRESHOLD): Increase the minimum
	value to 1.

From-SVN: r197816
2013-04-11 16:20:26 +00:00
Eric Botcazou
966b587e0b stor-layout.c (skip_simple_constant_arithmetic): Move to...
* stor-layout.c (skip_simple_constant_arithmetic): Move to...
	* tree.c (skip_simple_constant_arithmetic): ...here and make public.
	(skip_simple_arithmetic): Tidy up.
	* tree.h (skip_simple_constant_arithmetic): Declare.
ada/
	* gcc-interface/decl.c (elaborate_expression_1): Skip only constant
	arithmetics when looking for a read-only variable in the expression.

From-SVN: r197815
2013-04-11 16:15:25 +00:00
Paolo Carlini
76545796c5 call.c (build_conditional_expr_1, [...]): Protect error calls with complain & tf_error.
2013-04-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* call.c (build_conditional_expr_1, build_over_call): Protect
	error calls with complain & tf_error.
	* typeck.c (finish_class_member_access_expr, cp_build_binary_op,
	build_x_unary_op, cp_build_unary_op, cp_build_compound_expr,
	build_ptrmemfunc): Likewise.
	(lookup_destructor): Take tsubst_flags_t parameter, adjust.

	* cvt.c (warn_ref_binding): Rename to diagnose_ref_binding.
	(convert_to_reference): Adjust.

From-SVN: r197813
2013-04-11 16:02:00 +00:00
Jason Merrill
ffe0f557a7 pt.c (tsubst_copy): Don't call tsubst for local variables, look them up instead.
* pt.c (tsubst_copy) [VAR_DECL]: Don't call tsubst for
	local variables, look them up instead.
	(tsubst_decl) [VAR_DECL]: Remove handling for anonymous union
	proxies and substitution in unevaluated context.
	(tsubst_expr) [OMP_FOR]: Instantiate OMP_FOR_PRE_BODY
	before the iterators.

From-SVN: r197811
2013-04-11 11:51:40 -04:00
Javier Miranda
0a3763018e check.ads, [...] (Install_Null_Excluding_Check): No check in interface thunks since it is performed at the caller side.
2013-04-11  Javier Miranda  <miranda@adacore.com>
                                  
	* check.ads, exp_ch6.adb (Install_Null_Excluding_Check): No check in    
	interface thunks since it is performed at the caller side.
	(Expand_Simple_Function_Return): No accessibility check needed in thunks
	since the check is done by the target routine.

From-SVN: r197810
2013-04-11 17:26:40 +02:00
Jeff Law
5bfc86d857 Update with PR marker
From-SVN: r197809
2013-04-11 09:22:34 -06:00
Jeff Law
d52901a686 * gcc.dg/tree-ssa/vrp87.c: Do not run test on various targets.
From-SVN: r197808
2013-04-11 09:21:24 -06:00
Naveen H.S
f8bf91abe5 [AArch64] Define REVERSIBLE_CC_MODE.
2013-04-11   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.h (REVERSIBLE_CC_MODE): Define.

From-SVN: r197807
2013-04-11 15:19:10 +00:00
Julian Brown
b6b9af2f11 libgcc/
* config/arm/linux-atomic.c (SUBWORD_SYNC_OP, SUBWORD_VAL_CAS)
	(SUBWORD_TEST_AND_SET): Use signed char/short types instead of
	unsigned char/unsigned short.
	(__sync_val_compare_and_swap_{1,2}): Handle signed argument.

From-SVN: r197806
2013-04-11 14:22:54 +00:00
Richard Biener
1d42c1ec47 tree-vect-loop.c (get_initial_def_for_induction): Properly generate vector constants.
2013-04-11  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop.c (get_initial_def_for_induction): Properly
	generate vector constants.

From-SVN: r197803
2013-04-11 14:03:09 +00:00
Arnaud Charlet
f6fcbc56da Minor editing.
From-SVN: r197802
2013-04-11 15:39:45 +02:00
Arnaud Charlet
088c0a3a4a Minor reformatting.
From-SVN: r197801
2013-04-11 15:39:33 +02:00
Arnaud Charlet
7eb29ac8d3 Update dependencies.
From-SVN: r197800
2013-04-11 15:39:21 +02:00
Ed Schonberg
6188f4bd60 sem_prag.adb (Analyze_Pragma, [...]): pre-analyze expression with type Any_Priority.
2013-04-11  Ed Schonberg  <schonberg@adacore.com>

	* sem_prag.adb (Analyze_Pragma, case Priority): pre-analyze
	expression with type Any_Priority.
	* exp_ch9.adb (Initialize_Protection): Check that the value
	of the priority expression is within the bounds of the proper
	priority type.

From-SVN: r197799
2013-04-11 15:38:22 +02:00
Arnaud Charlet
fce68ebe21 [multiple changes]
2013-04-11  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb, prj-env.adb: Minor reformatting.

2013-04-11  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Clean ups.

2013-04-11  Yannick Moy  <moy@adacore.com>

	* set_targ.adb: Minor comment update.

From-SVN: r197798
2013-04-11 15:37:02 +02:00
Arnaud Charlet
e2441021a8 [multiple changes]
2013-04-11  Pascal Obry  <obry@adacore.com>

	* gnat_ugn.texi: Remove obsolete comment about DLL calling
	convention.

2013-04-11  Javier Miranda  <miranda@adacore.com>

	* exp_ch6.adb (Expand_Call): For the call to the target primitive
	of an interface thunks do not compute the extra actuals; just
	propagate the extra actuals received by the thunk.
	* exp_disp.adb (Expand_Interface_Thunk): Decorate new attribute
	Thunk_Entity.
	* sem_ch6.adb (Create_Extra_Formals): Do not generate extra
	formals in interface thunks whose target primitive has no extra
	formals.

2013-04-11  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Detect
	a renaming by looking at the Renamed_Object attribute.
	(Is_Renaming): Removed.

2013-04-11  Vincent Celier  <celier@adacore.com>

	* prj-env.adb (Initialize_Default_Project_Path): Take
	into account a project path file, specified by environment
	variable GPR_PROJECT_PATH_FILE, before taking into account
	GPR_PROJECT_PATH.
	* projects.texi: Add documentation for GPR_PROJECT_PATH_FILE

2013-04-11  Ed Schonberg  <schonberg@adacore.com>

	* a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
	a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
	a-cfdlli.adb, a-cfdlli.ads, a-cborma.adb, a-cborma.ads, a-cidlli.adb,
	a-cidlli.ads, a-ciormu.adb, a-ciormu.ads, a-cihase.adb, a-cihase.ads,
	a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads, a-cbhama.adb,
	a-cbhama.ads, a-cborse.adb, a-cborse.ads, a-ciorma.adb, a-cobove.adb,
	a-ciorma.ads, a-cobove.ads, a-coormu.adb, a-coormu.ads, a-cohase.adb,
	a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbhase.adb, a-cbhase.ads:
	Move Iterator operations from body to private part of spec.

From-SVN: r197797
2013-04-11 15:33:53 +02:00
Arnaud Charlet
a96157e6ac [multiple changes]
2013-04-11  Eric Botcazou  <ebotcazou@adacore.com>

	* ttypes.ads, get_targ.ads: More minor rewording of comments.

2013-04-11  Johannes Kanig  <kanig@adacore.com>

	* debug.adb: Document use of switch -gnatd.Z.

2013-04-11  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_prag.adb (Analyze_Pragma): Both pragma Depends and Global can now
	support renamings of entire objects. Legal renamings are replaced by
	the object they rename.
	(Is_Renaming): New routine.

2013-04-11  Yannick Moy  <moy@adacore.com>

	* set_targ.adb, opt.ads: Minor changes in comments.

From-SVN: r197795
2013-04-11 15:30:34 +02:00
Arnaud Charlet
88ff8916c7 [multiple changes]
2013-04-11  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Minor clean ups.

2013-04-11  Robert Dewar  <dewar@adacore.com>

	* nlists.ads, nlists.adb, treepr.adb, treepr.ads: Move debugging
	function p from Nlists to Treepr.

2013-04-11  Ed Schonberg  <schonberg@adacore.com>

	* sem_disp.adb (Check_Dispatching_Context): If the context is
	a contract for a null procedure defer error reporting until
	postcondition body is created.
	* exp_ch13.adb (Expand_N_Freeze_Entity): If the entity is a
	null procedure, complete the analysis of its contracts so that
	calls within classwide conditions are properly rewritten as
	dispatching calls.

From-SVN: r197794
2013-04-11 15:28:02 +02:00
Thomas Quinot
327900c7f5 sem_ch10.adb, [...]: Minor reformatting.
2013-04-11  Thomas Quinot  <quinot@adacore.com>

	* sem_ch10.adb, sem_ch12.adb: Minor reformatting.

From-SVN: r197793
2013-04-11 15:26:06 +02:00
Arnaud Charlet
59fad002d5 [multiple changes]
2013-04-11  Robert Dewar  <dewar@adacore.com>

	* exp_attr.adb, sem_res.adb, sem_attr.adb: Minor reformatting.

2013-04-11  Robert Dewar  <dewar@adacore.com>

	* atree.adb, atree.ads (Node31): New function.
	(Set_Node31): New procedure.

2013-04-11  Robert Dewar  <dewar@adacore.com>

	* errout.ads: Minor typo correction.

2013-04-11  Javier Miranda  <miranda@adacore.com>

	* einfo.ad[sb] (Thunk_Entity/Set_Thunk_Entity): New attribute.

From-SVN: r197792
2013-04-11 15:23:39 +02:00
Arnaud Charlet
289a994bb9 [multiple changes]
2013-04-11  Robert Dewar  <dewar@adacore.com>

	* back_end.adb (Register_Back_End_Types): Moved to Get_Targ
	* back_end.ads (C_String): Moved to Get_Targ
	(Register_Type_Proc): Moved to Get_Targ (Register_Back_End_Types):
	Moved to Get_Targ.
	* cstand.adb (Register_Float_Type): New interface
	(Create_Back_End_Float_Types): Use entries in FPT_Mode_Table.
	* get_targ.adb (Register_Back_End_Types): Moved here from
	Back_End.
	* get_targ.ads (C_String): Moved here from Back_End
	(Register_Type_Proc): Moved here from Back_End
	(Register_Back_End_Types): here from Back_End.
	* gnat1drv.adb (GGnat11drv): Add call to
	Write_Target_Dependent_Values;
	* lib-writ.ads, lib-writ.adb (Write_ALI): Remove section writing
	obsolete target dependent info.
	* opt.ads (Generate_Target_Dependent_Info):
	Removed (Target_Dependent_Info_Read): New flag
	(Target_Dependent_Info_Write): New flag
	* output.adb: Minor comment change
	* s-os_lib.ads: Minor reformatting
	* set_targ.ads, set_targ.adb: Minor reformatting.
	* switch-c.adb (Scan_Switches.First_Ptr): New variable
	(Scan_Front_End_Switches): Check -gnatd.b, -gnateT come first
	(Scan_Front_End_Switches): Handle -gnatet, -gnateT
	* ttypes.ads: Remove documentation section on target dependent
	info in ali file Remove four letter codes, no longer used Instead
	of using Get_Targ.Get_xxx, we use Set_Targ.xxx
	* usage.adb: Add usage lines for -gnatet/-gnateT
	* gcc-interface/Make-lang.in: Update dependencies.

2013-04-11  Thomas Quinot  <quinot@adacore.com>

	* sem_ch4.adb: Update documentation.
	* sinfo.ads (N_Expression_With_Actions): Ditto.

2013-04-11  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications):
	Add a guard to prevent the double insertion of the same aspect
	into a rep item list. This previously led to a circularity.

2013-04-11  Ed Schonberg  <schonberg@adacore.com>

	* sem_attr.adb (Eval_Attribute, case 'Access): Reject attribute
	reference if the prefix is the dereference of an anonymous access
	to subprogram type.
	* exp_attr.adb (Expand_N_Attribute_Reference, Access_Cases): Handle
	properly a reference to the current instance of a protected type
	from within a protected subprogram.
	* sem_res.adb (Find_Unique_Access_Type): Treat
	Attribute_Access_Type like Allocator_Type when resolving an
	equality operator.

From-SVN: r197791
2013-04-11 15:21:21 +02:00
Jason Merrill
a26780a30a re PR c++/23055 (overload resolution does not find templated function (zero -> pointer))
PR c++/23055
	* pt.c (uses_deducible_template_parms): New.
	(deducible_array_bound, deducible_expression): New.
	(deducible_template_args): New.
	(unify_one_argument): Call uses_deducible_template_parms.

From-SVN: r197790
2013-04-11 09:17:54 -04:00
Arnaud Charlet
752b81d9c7 [multiple changes]
2013-04-11  Arnaud Charlet  <charlet@adacore.com>

	* xgnatugn.adb: Remove obsolete comments.

2013-04-11  Robert Dewar  <dewar@adacore.com>

	* back_end.ads, back_end.adb: Minor reformatting.
	* set_targ.ads, set_targ.adb: New files.

2013-04-11  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_case.adb (Check_Against_Predicate): New routine.
	(Check_Choices): When the type covered by the list of choices
	is a static subtype with a static predicate, check all choices
	agains the predicate.
	(Issue_Msg): All versions removed.
	(Missing_Choice): New routines.
	* sem_ch4.adb: Code and comment reformatting.
	(Analyze_Case_Expression): Do not check the choices when the case
	expression is being preanalyzed and the type of the expression
	is a subtype with a static predicate.
	(Has_Static_Predicate): New routine.
	* sem_ch13.adb: Code and comment reformatting.	(Build_Range):
	Always build a range even if the low and hi bounds denote the
	same value. This is needed by the machinery in Check_Choices.
	(Build_Static_Predicate): Always build a range even if the low and
	hi bounds denote the same value. This is needed by the machinery
	in Check_Choices.

From-SVN: r197789
2013-04-11 15:10:28 +02:00
Robert Dewar
4b342b91f0 einfo.ads, [...]: Minor reformatting.
2013-04-11  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, sem_util.adb, exp_ch6.adb, xgnatugn.adb: Minor
	reformatting.

From-SVN: r197788
2013-04-11 15:06:57 +02:00
Arnaud Charlet
da1c23dd6f [multiple changes]
2013-04-11  Doug Rupp  <rupp@adacore.com>

	* gnatlink.adb: Fold program basename to lower case on VMS for
	consistency.

2013-04-11  Matthew Heaney  <heaney@adacore.com>

	* a-rbtgbo.adb (Generic_Equal): Initialize Result variable before
	entering loop.

2013-04-11  Arnaud Charlet  <charlet@adacore.com>

	* xgnatugn.adb: Remove dead code (handling of @ifset/@ifclear).

2013-04-11  Arnaud Charlet  <charlet@adacore.com>

	* gnat_ugn.texi: Remove some use of ifset in menus. Not strictly
	needed, and seems to confuse some versions of makeinfo.

2013-04-11  Javier Miranda  <miranda@adacore.com>

	* einfo.adb (Is_Thunk): Remove assertion.
	(Set_Is_Thunk): Add assertion.
	* einfo.ads (Is_Thunk): Complete documentation.
	* exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Code cleanup.
	* exp_ch3.ad[sb] (Is_Variable_Size_Array): Moved to sem_util
	(Is_Variable_Size_Record): Moved to sem_util
	* exp_ch6.adb (Expand_Call): Code cleanup.
	(Expand_N_Extended_Return_Statement): Code cleanup.
	(Expand_Simple_Function_Return): Code cleanup.
	* exp_disp.adb Remove dependency on exp_ch3
	(Expand_Interface_Thunk): Add minimum decoration needed to set
	attribute Is_Thunk.
	* sem_ch3.ad[sb] (Is_Constant_Bound): moved to sem_util
	* sem_util.ad[sb] (Is_Constant_Bound): Moved from
	sem_ch3 (Is_Variable_Size_Array): Moved from exp_ch3
	(Is_Variable_Size_Record): Moved from exp_ch3

From-SVN: r197787
2013-04-11 15:05:15 +02:00
Javier Miranda
f6f4d8d407 exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Do not add cleanup actions in thunks associated with interface types.
2013-04-11  Javier Miranda  <miranda@adacore.com>

	* exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Do
	not add cleanup actions in thunks associated with interface types.
	* exp_ch3.ad[sb] (Is_Variable_Size_Record): Move declaration to
	the package spec.
	* exp_ch4.adb (Tagged_Conversion): Update call to
	Expand_Interface_Conversion since the parameter Is_Static is no
	longer needed.
	* exp_ch6.adb (Expand_N_Extended_Return_Statement): Adding
	assertion to ensure that interface thunks are never handled by
	this routine.
	(Expand_N_Simple_Function_Return): Do not rewrite this statement
	as an extended return statement in interface thunks, and do not
	perform copy in the secondary stack if the return statement is
	located in a thunk.
	* exp_disp.adb (Expand_Dispatching_Call): No longer displace
	the pointer to the returned object in functions returning interface
	types.
	(Expand_Interface_Thunk): For functions returning interface types
	displace the pointer to the returned object.
	(Expand_Interface_Conversion): Remove formal
	Is_Static since this subprogram can now evaluate it locally.
	* sem_ch3.adb (Add_Internal_Interface_Entities): For functions
	propagate the type returned by the covered interface primitive to
	the internal interface entity. Needed by the thunk to generate
	the code which displaces "this" to reference the corresponding
	secondary dispatch table.
	* sem_disp.adb (Propagate_Tag): Update call to
	Expand_Interface_Conversion since the parameter Is_Static is no
	longer needed.
	* sem_res.adb (Resolve_Type_Conversion): Update calls to
	Expand_Interface_Conversion since the parameter Is_Static is no
	longer needed plus code cleanup.

From-SVN: r197786
2013-04-11 15:01:09 +02:00
Arnaud Charlet
03eb6036fc [multiple changes]
2013-04-11  Eric Botcazou  <ebotcazou@adacore.com>

	* init.c (RETURN_ADDR_OFFSET): Delete as unused.

2013-04-11  Robert Dewar  <dewar@adacore.com>

	* a-crbtgk.adb, a-ciorse.adb, a-crbtgo.adb, a-coorse.adb, a-rbtgbo.adb,
	a-cborse.adb, a-rbtgso.adb, exp_ch3.adb: Minor reformatting.

2013-04-11  Yannick Moy  <moy@adacore.com>

	* exp_ch4.adb (Expand_N_Selected_Component): Do not expand
	discriminant check for Unchecked_Union.
	* sem_res.adb (Resolve_Selected_Component): Set flag
	Do_Discriminant_Check even when expansion is not performed.
	* sinfo.ads (Do_Discriminant_Check): Update documentation for the case
	of Unchecked_Union.

2013-04-11  Thomas Quinot  <quinot@adacore.com>

	* sem_ch13.adb (Same_Representation): Two types with different scalar
	storage order never have the same representation.

2013-04-11  Arnaud Charlet  <charlet@adacore.com>

	* xgnatugn.adb (Push_Conditional): Simplify handling,
	no longer need to keep track of "excluding" sections.
	(Currently_Excluding): Removed.
	(Process_Source_File):
	Set unw/vms flag so that texinfo can do the whole handling of
	@ifset/@ifclear sections.  Fix handling of nested @ifset/@ifclear
	sections.
	* gnat_ugn.texi: Add a section on performing unassisted install
	on Windows.

From-SVN: r197785
2013-04-11 14:58:54 +02:00