1. 20 Feb, 2014 6 commits
    • re PR middle-end/60221 (gcc -fexceptions generates unnecessary cleanup code) · 25fe40b0
      2014-02-20  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/60221
      	* tree-eh.c (execute_cleanup_eh_1): Also cleanup empty EH
      	regions at -O0.
      
      From-SVN: r207937
      Richard Biener committed
    • re PR java/60261 (Weird java install with --enable-version-specific-runtime-libs) · 1f58214a
      2014-02-20  Richard Biener  <rguenther@suse.de>
      
      	PR libjava/60261
      	* configure.ac (dbexecdir): Remove redundant multilib addition.
      	* Makefile.am (gcc_version): Export.
      	* configure: Regenerate.
      	* Makefile.in: Likewise.
      
      From-SVN: r207936
      Richard Biener committed
    • re PR middle-end/58555 (Floating point exception in want_inline_self_recursive_call_p) · bd936951
      
      	PR ipa/58555
      	* ipa-inline-transform.c (clone_inlined_nodes): Add freq_scale parameter
      	specifying the scaling.
      	(inline_call): Update.
      	(want_inline_recursively): Guard division by zero.
      	(recursive_inlining): Update.
      	* ipa-inline.h (clone_inlined_nodes): Update.
      	* testsuite/g++.dg/torture/pr58555.C: New testcase.
      
      From-SVN: r207934
      Jan Hubicka committed
    • re PR target/60204 (struct with __m512i is mishandled in function parameter passing and return) · 3c898e1a
      gcc/
      	PR target/60204
      	* config/i386/i386.c (classify_argument): Pass structures of size
      	64 bytes or less in register.
      
      tessuite/gcc/
      	PR target/60204
      	* gcc.target/x86_64/abi/avx512f/test_passing_structs.c: Update to
      	reflect abi fix.
      	* gcc.target/x86_64/abi/avx512f/test_passing_unions.c: Ditto.
      
      From-SVN: r207933
      Ilya Tocar committed
    • avx512erintrin.h (_mm_rcp28_round_sd): Swap operands. · df62b4af
      gcc/
      	* config/i386/avx512erintrin.h (_mm_rcp28_round_sd): Swap operands.
      	(_mm_rcp28_round_ss): Ditto.
      	(_mm_rsqrt28_round_sd): Ditto.
      	(_mm_rsqrt28_round_ss): Ditto.
      	* config/i386/avx512erintrin.h (_mm_rcp14_round_sd): Ditto.
      	(_mm_rcp14_round_ss): Ditto.
      	(_mm_rsqrt14_round_sd): Ditto.
      	(_mm_rsqrt14_round_ss): Ditto.
      	* config/i386/sse.md (rsqrt14<mode>): Put nonimmediate operand as
      	the first input operand, get rid of match_dup.
      	(avx512er_exp2<mode><mask_name><round_saeonly_name>): Set type
      	attribute to sse.
      	(<mask_codefor>avx512er_rcp28<mode><mask_name><round_saeonly_name>):
      	Ditto.
      	(avx512er_vmrcp28<mode><round_saeonly_name>): Put nonimmediate
      	operand as the first input operand, set type attribute.
      	(<mask_codefor>avx512er_rsqrt28<mode><mask_name><round_saeonly_name>):
      	Set type attribute.
      	(avx512er_vmrsqrt28<mode><round_saeonly_name>): Put nonimmediate
      	operand as the first input operand, set type attribute.
      
      
      testsuite/gcc/
      	* gcc.target/i386/avx512er-vrcp28sd-2.c: Distinguish src1 and src2.
      	* gcc.target/i386/avx512er-vrcp28ss-2.c: Call correct intrinsic.
      	* gcc.target/i386/avx512er-vrsqrt28sd-2.c: Distinguish src1 and src2.
      	* gcc.target/i386/avx512er-vrsqrt28ss-2.c: Ditto.
      	* gcc.target/i386/avx512f-vrcp14sd-2.c: Fix reference calculation.
      	* gcc.target/i386/avx512f-vrcp14ss-2.c: Fix reference calculation.
      
      
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      
      From-SVN: r207932
      Ilya Tocar committed
    • Daily bump. · a13cfd3e
      From-SVN: r207930
      GCC Administrator committed
  2. 19 Feb, 2014 34 commits
    • re PR c/37743 (Bogus printf format warning with __builtin_bswap32.) · cca615af
      	PR c/37743
      	* c-common.c (c_common_nodes_and_builtins): When initializing
      	c_uint{16,32,64}_type_node, also set corresponding
      	uint{16,32,64}_type_node to the same value.
      
      	* g++.dg/ext/builtin-bswap1.C: New test.
      	* c-c++-common/pr37743.c: New test.
      
      From-SVN: r207924
      Jakub Jelinek committed
    • rs6000.c (vspltis_constant): Fix most significant bit of zero. · 9254148e
      2014-02-19  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/rs6000.c (vspltis_constant): Fix most significant
      	bit of zero.
      
      From-SVN: r207919
      Bill Schmidt committed
    • re PR c++/60046 (internal compiler error: in nothrow_spec_p, at cp/except.c:1280) · 55694175
      	PR c++/60046
      	* pt.c (maybe_instantiate_noexcept): Don't instantiate exception
      	spec from template context.
      
      From-SVN: r207917
      Jason Merrill committed
    • c-parser.c (c_parser_declspecs): Replace call to error by error_at. · 1c9f5f33
      	* c-parser.c (c_parser_declspecs): Replace call to error by error_at.
      	(c_parser_parameter_declaration): Likewise.
      
      From-SVN: r207916
      Prathamesh Kulkarni committed
    • re PR debug/56563 (no debuginfo for "explicit" operator) · 128ed090
      	PR debug/56563
      	* cp-objcp-common.c (cp_function_decl_explicit_p): Remove
      	FUNCTION_FIRST_USER_PARMTYPE (decl) != void_list_node check.
      
      From-SVN: r207915
      Jakub Jelinek committed
    • re PR c++/60267 (ICE in c_pp_lookup_pragma, at c-family/c-pragma.c:1232; ICE in… · 4998d666
      re PR c++/60267 (ICE in c_pp_lookup_pragma, at c-family/c-pragma.c:1232; ICE in tsubst_copy, at cp/pt.c:12887)
      
      	PR c++/60267
      	* pt.c (tsubst_expr): Handle ANNOTATE_EXPR.
      
      	* g++.dg/ext/ivdep-1.C: New test.
      
      From-SVN: r207914
      Jakub Jelinek committed
    • Remove TFmode check for X86_64_INTEGER_CLASS · fff91793
      	PR target/60207
      	* config/i386/i386.c (construct_container): Remove TFmode check
      	for X86_64_INTEGER_CLASS.
      
      From-SVN: r207913
      H.J. Lu committed
    • re PR c++/60267 (ICE in c_pp_lookup_pragma, at c-family/c-pragma.c:1232; ICE in… · 28e41874
      re PR c++/60267 (ICE in c_pp_lookup_pragma, at c-family/c-pragma.c:1232; ICE in tsubst_copy, at cp/pt.c:12887)
      
      	PR c++/60267
      	* c-pragma.c (init_pragma): Don't call cpp_register_deferred_pragma
      	for PRAGMA_IVDEP if flag_preprocess_only.
      
      	* gcc.dg/pr60267.c: New test.
      
      From-SVN: r207911
      Jakub Jelinek committed
    • re PR target/59794 (i386 backend fails to detect MMX/SSE/AVX ABI changes) · 6aa5b4b8
      	PR target/59794
      	* config/i386/i386.c (type_natural_mode): Warn for ABI changes
      	only when -Wpsabi is enabled.
      
      testsuite/ChangeLog:
      
      	PR target/59794
      	* gcc.target/i386/pr39162.c: Add dg-prune-output.
      	(dg-options): Remove -Wno-psabi.
      	* gcc.target/i386/59794-2.c: Ditto.
      	* gcc.target/i386/60205-1.c: Ditto.
      	* gcc.target/i386/sse-5.c: Ditto.
      
      From-SVN: r207910
      Uros Bizjak committed
    • pr46966.c: Only run on 32-bit+ targets. · 7531103a
      	* gcc.dg/graphite/pr46966.c: Only run on 32-bit+ targets.
      	* gcc.dg/pr23623.c: Likewise.
      	* gcc.dg/pr48784-1.c: Likewise.
      	* gcc.dg/pr48784-2.c: Likewise.
      	* gcc.dg/pr56997-2.c: Likewise.
      	* gcc.dg/sms-6.c: Likewise.
      	* gcc.dg/torture/pr60183.c: Likewise.
      	* gcc.dg/torture/vec-cvt-1.c: Likewise.
      	* gcc.c-torture/execute/20061220-1.x: New.
      	* gcc.c-torture/execute/pr43220.x: New.
      	* gcc.c-torture/execute/pr51581-1.x: New.
      	* gcc.c-torture/execute/pr51581-2.x: New.
      	* gcc.c-torture/execute/pr58570.x: New.
      	* gcc.c-torture/unsorted/DFcmp.x: New.
      	* gcc.c-torture/unsorted/SFset.x: New.
      
      From-SVN: r207909
      Nick Clifton committed
    • re PR target/59799 (aarch64_pass_by_reference never passes arrays by value,… · aadc1c43
      re PR target/59799 (aarch64_pass_by_reference never passes arrays by value, contrary to ABI documentation)
      
      2014-02-19  Michael Hudson-Doyle  <michael.hudson@linaro.org>
      
      	 PR target/59799
      	* config/aarch64/aarch64.c (aarch64_pass_by_reference): The rules for
      	passing arrays in registers are the same as for structs, so remove the
      	special case for them.
      
      From-SVN: r207908
      Michael Hudson-Doyle committed
    • [multiple changes] · d7cb47b4
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch5.adb, sem_prag.adb, sem_attr.adb: Minor reformatting.
      	* debug.adb: Remove -gnatd.X switch, no longer used.
      	* styleg.adb (Check_Then): Remove check of -gnatd.X, check is
      	now always made.
      
      2014-02-19  Bob Duff  <duff@adacore.com>
      
      	* g-socket.ads: Minor: Correct some comments.
      
      From-SVN: r207907
      Arnaud Charlet committed
    • [multiple changes] · 53f697ee
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch5.adb: Inhibit iterator rewriting in ASIS mode.
      
      2014-02-19  Arnaud Charlet  <charlet@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications): Do not generate
      	an error on out of range priorities if Relaxed_RM_Semantics.
      	* sem_prag.adb (Analyze_Pragma): Ditto.
      
      2014-02-19  Bob Duff  <duff@adacore.com>
      
      	* sem_attr.adb (Resolve_Attribute): Detect the case of F'Access
      	where F denotes the renaming of an enumeration literal, and
      	issue a specialized error message.
      
      From-SVN: r207906
      Arnaud Charlet committed
    • [multiple changes] · 47fb6ca8
      2014-02-19  Matthew Heaney  <heaney@adacore.com>
      
      	* a-chtgop.ads (Checked_Index): New operation.
      	(Next): Changed mode of hash table.
      	* a-chtgop.adb (Adjust, Delete_Node_Sans_Free): Detect tampering
      	(Generic_Read, Reserve_Capacity): Ditto.
      	(Generic_Equal): Detect tampering.
      	(Next): Changed mode of hash table, detect tampering.
      	* a-chtgke.ads (Checked_Index, Checked_Equivalent_Keys): New
      	operation.
      	(Find): Changed mode of hash table.
      	* a-chtgke.adb (Checked_Equivalent_Keys): New operation
      	(Delete_Key_Sans_Free, Generic_Conditional_Insert): Detect
      	tampering.
      	(Find): Changed mode of hash table, check for tampering.
      	(Generic_Replace_Element): Check for tampering.
      	* a-chtgbk.ads (Checked_Index, Checked_Equivalent_Keys): New operation.
      	* a-chtgbk.adb (Checked_Index, Checked_Equivalent_Keys): New
      	operation (Delete_Key_Sans_Free, Generic_Conditional_Insert):
      	Detect tampering.
      	(Find, Generic_Replace_Element): Check for tampering.
      	* a-chtgbo.ads (Checked_Index): New operation.
      	* a-chtgbo.adb (Checked_Index): New operation
      	(Delete_Node_Sans_Free, Generic_Equal): Detect tampering.
      	(Generic_Read, Next): Ditto.
      	* a-cohase.adb, a-cihase.adb (Is_In): Changed mode of hash
      	table (Difference, Intersection): Use variable view of
      	source, detect tampering (Find, Is_Subset, Overlap): Use
      	variable view of container (Symmetric_Difference, Union):
      	Detect tampering (Vet): Use Checked_Index to detect tampering
      	(Constant_Reference, Element, Find): Use variable view of
      	container.
      	(Update_Element_Preserving_Key): Detect tampering.
      	* a-cbhase.adb (Difference, Find, Is_In): Use variable view
      	of container.
      	(Is_Subset): Ditto.
      	(Equivalent_Sets, Overlap): Use Node's Next component.
      	(Vet): Use Checked_Index to detect tampering.
      	(Constant_Reference, Element, Find): Use variable view of container.
      	(Update_Element_Preserving_Key): Detect tampering.
      	* a-cohama.adb, a-cihama.adb, a-cbhama.adb (Constant_Reference,
      	Element, Find): Use variable view of container.
      	(Reference): Rename hash table component.
      	(Vet): Use Checked_Index to detect tampering.
      
      2014-02-19  Arnaud Charlet  <charlet@adacore.com>
      
      	* adabkend.adb (Scan_Compiler_Arguments): Add missing handling
      	of -nostdinc.
      
      2014-02-19  Thomas Quinot  <quinot@adacore.com>
      
      	* tbuild.adb (New_Occurrence_Of, New_Rerefence_To): Guard
      	against calls without Def_Id.
      
      2014-02-19  Claire Dross  <dross@adacore.com>
      
      	* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads,
      	a-cofove.ads: Add global annotations to subprograms.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Initial_Condition_In_Decl_Part): Remove
      	constants Errors, Pack_Id and Pack_Init. Remove variable Vars.
      	Initial_Condition no longer requires the presence of pragma
      	Initialized. Do not try to diagnose whether all variables mentioned in
      	pragma Initializes also appear in Initial_Condition.
      	(Collect_Variables): Removed.
      	(Match_Variable): Removed.
      	(Match_Variables): Removed.
      	(Report_Unused_Variables): Removed.
      
      2014-02-19  Thomas Quinot  <quinot@adacore.com>
      
      	* gnat_rm.texi (pragma Stream_Convert): Minor rewording.
      
      From-SVN: r207905
      Arnaud Charlet committed
    • [multiple changes] · 13f39091
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* sem_util.adb, sem_util.ads, prj-conf.adb, s-os_lib.adb: Minor
      	reformatting.
      
      2014-02-19  Vincent Celier  <celier@adacore.com>
      
      	* prj-part.adb (Parse_Single_Project): Use the fully resolved
      	project path, with all symbolic links resolved, to check if the
      	same project is imported with a different unresolved path.
      	* prj-tree.ads (Project_Name_And_Node): Component Canonical_Path
      	changed to Resolved_Path to reflect that all symbolic links
      	are resolved.
      
      From-SVN: r207904
      Arnaud Charlet committed
    • [multiple changes] · 110e2969
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.ads, sem_util.adb (Get_Cursor_Type): Moved to sem_util
      	from sem_ch13, for use elsewhere.
      	* sem_ch13.adb (Get_Cursor_Type): Moved to sem_util.
      	* sem_ch5.adb (Analyze_Iterator_Specification): Set properly the
      	cursor type on the loop variable when the iteration is over o
      	formal container.
      
      2014-02-19  Vincent Celier  <celier@adacore.com>
      
      	* prj-conf.adb (Add_Default_GNAT_Naming_Scheme): Add declaration
      	for an empty Target (Check_Target): Never fail when an empty
      	target is declared in the configuration project.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Check_Arg_Is_Local_Name): Argument is local if
      	the pragma comes fron a predicate aspect and the context is a
      	record declaration within the scope that declares the type.
      
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor clarifications.
      	* expander.adb, sem_aggr.adb: Add comments.
      
      From-SVN: r207903
      Arnaud Charlet committed
    • expr.c (expand_expr_real_1): For a bit-field destination type... · 322913f8
      	* expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: For a bit-field
      	destination type, extract only the valid bits if the source type is not
      	integral and has a different mode.
      
      From-SVN: r207902
      Eric Botcazou committed
    • [multiple changes] · ffdeb702
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Check_Arg_Is_Local_Name): For an aspect that
      	applies to a subprogram body, the name is the current scope,
      	rather than being declared in the current scope.
      	(Analyze_Pragma, case No_Return): Handle properly a No_Return
      	aspect applied to a subprogram body.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Resolve_Iterable_Operation): Improve resolution
      	of overloaded subprograms, and fix bug in handling of primitive
      	operation Element.
      
      2014-02-19  Pascal Obry  <obry@adacore.com>
      
      	* s-os_lib.adb: Minor reformatting.
      
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* expander.adb (Expand): Do nothing inside generics.
      	* sem_aggr.adb (Aggregate_Constraint_Checks): Do nothing inside
      	generics.
      
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* exp_ch2.adb: Remove useless 'with' of unit Uintp.
      
      From-SVN: r207901
      Arnaud Charlet committed
    • [multiple changes] · edbd98c4
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb, style.adb, sem_prag.adb, sem_ch13.adb: Minor reformatting
      	* a-sequio.adb: Remove useless pragma Extensions_Allowed (no
      	longer needed).
      
      2014-02-19  Claire Dross  <dross@adacore.com>
      
      	* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
      	a-cforse.ads, a-cofove.ads: Add Iterable aspect to formal containers.
      
      From-SVN: r207900
      Arnaud Charlet committed
    • re PR ipa/60243 (IPA is slow on large cgraph tree) · fd9710dc
      2014-02-19  Richard Biener  <rguenther@suse.de>
      
      	PR ipa/60243
      	* tree-inline.c (estimate_num_insns): Avoid calling cgraph_get_node
      	for all calls.
      
      From-SVN: r207899
      Richard Biener committed
    • XFAIL gcc.dg/torture/pr60092.c execution on Solaris 11 · 73cc5f91
      	* gcc.dg/torture/pr60092.c: xfail execution on *-*-solaris2.11* at -O0.
      
      From-SVN: r207898
      Rainer Orth committed
    • re PR fortran/60232 ([OOP] The rank of the element in the structure constructor… · 1251a8be
      re PR fortran/60232 ([OOP] The rank of the element in the structure constructor does not match that of the component)
      
      2014-02-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/60232
      	* expr.c (gfc_get_variable_expr): Don't add REF_ARRAY for dimensionful
      	functions, which are used as procedure pointer target.
      
      
      2014-02-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/60232
      	* gfortran.dg/typebound_proc_33.f90: New.
      
      From-SVN: r207896
      Janus Weil committed
    • [multiple changes] · 476b301a
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch3.adb (Analyze_Declarations): Analyze
      	a package contract at the end of the private declarations (if
      	applicable), otherwise analyze it and the end of the visible
      	declarations.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* style.adb (Missing_Overriding): If subprogram is an
      	instantiation, place warning on the instance node itself,
      	without mention of the original generic. Do not emit message
      	if explicit Ada version is older than the introduction of the
      	overriding indicator.
      
      From-SVN: r207895
      Arnaud Charlet committed
    • [multiple changes] · a6ce7e76
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* gnat_rm.texi: Doc clarifications.
      
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* exp_util.adb (Remove_Side_Effects): Do not remove side-effects
      	inside a generic.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Get_Cursor_Type): Obtain cursor type from
      	specified First primitive, rather than by name.
      	(Validate_Iterable_Aspect, Resolve_Iterable_Operation): Use it,
      	and extend error checking for missing primitives and incorrect
      	signatures.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Check_Pragma_Implemented): Detect additional
      	errors when a Synchronization aspect on an overriding protected
      	operation does not match the given aspect on the overridden
      	operation of an ancestor interface.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Check_Loop_Pragma_Grouping): New routine.
      	(Check_Loop_Pragma_Placement): Update
      	comment on usage. Remove local variables Orig_Stmt and
      	Within_Same_Sequence. Check that the current Loop_Invariant or
      	Loop_Variant pragma is grouped together with other such pragmas.
      	(Is_Loop_Pragma): New routine.
      	(Prev_In_Loop): Removed.
      
      From-SVN: r207894
      Arnaud Charlet committed
    • [multiple changes] · 0b7f0f0e
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* par-ch6.adb (P_Return): For extended return, end column lines
      	up with RETURN.
      	* par.adb: Minor documentation clarification.
      
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb (Check_Loop_Pragma_Placement): Add check
      	that Loop_Invariant and Loop_Variant appear consecutively.
      	* gnat_rm.texi Update documentation of Loop_Invariant and
      	Loop_Variant pragmas.
      
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* debug.adb: Document -gnatd.X.
      	* par-ch5.adb (P_If_Statement): Always check THEN, even if not
      	first token
      	(Check_Then_Column): Ditto.
      	* styleg.adb (Check_Then): Allow THEN on line after IF.
      	(Check_Then): Check THEN placement under control of -gnatd.X
      	* styleg.ads (Check_Then): Now called even if THEN is not first
      	token on line.
      	* stylesw.ads (Style_Check_If_Then_Layout): Document new
      	relaxed rules.
      	* gnat_ugn.texi: For -gnatyi, THEN can now be on line after IF.
      
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* a-cfhama.adb, a-cfhase.adb, a-cforse.adb, a-cofove.adb, a-ngcefu.adb,
      	a-teioed.adb, a-wtedit.adb, a-ztedit.adb, exp_ch5.adb, inline.adb,
      	prj-pp.adb, prj-tree.adb, sem_ch12.adb, sem_ch8.adb,
      	vms_conv.adb: Fix bad layout of IF statements
      
      From-SVN: r207893
      Arnaud Charlet committed
    • exp_util.adb (Side_Effect_Free): Scalar if expressions can be SEF. · e7cff5af
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* exp_util.adb (Side_Effect_Free): Scalar if expressions can be SEF.
      
      From-SVN: r207892
      Robert Dewar committed
    • [multiple changes] · a767d69b
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* exp_util.adb: Update comments.
      
      2014-02-19  Doug Rupp  <rupp@adacore.com>
      
      	* bindgen.adb (Gen_Adainit) [VMS] New global Float_Format.
      	* init.c (__gl_float_format): [VMS] New global.
      	(__gnat_set_features): Call FP_CONTROL to set FPSR for the float
      	representation in effect.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb Add with and use clause for Exp_Prag.
      	(Expand_Contract_Cases): Relocated to Exp_Prag.
      	* exp_ch6.ads (Expand_Contract_Cases): Relocated to Exp_Prag.
      	* exp_prag.adb Add with and use clauses for Checks and Validsw.
      	(Expand_Contract_Cases): Relocated from Exp_Ch6. Update the
      	structure of the expanded code to showcase the evaluation of
      	attribute 'Old prefixes. Add local variable Old_Evals. Expand
      	any attribute 'Old references found within a consequence. Add
      	circuitry to evaluate the prefixes of attribute 'Old that
      	belong to a selected consequence.
      	(Expand_Old_In_Consequence): New routine.
      	* exp_prag.ads (Expand_Contract_Cases): Relocated from Exp_Ch6.
      	* sem_attr.adb (Check_Use_In_Contract_Cases): Warn that a
      	potentially unevaluated prefix is always evaluated.
      
      From-SVN: r207891
      Arnaud Charlet committed
    • [multiple changes] · adb252d8
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* exp_attr.adb (Expand_Min_Max_Attribute): Use Insert_Declaration
      	(Expand_Min_Max_Attribute): Use Matching_Standard_Type.
      	* exp_ch4.adb (Expand_N_Expression_With_Actions): Remove special
      	handling for the case of Modify_Tree_For_C, this approach did
      	not work.
      	* exp_util.adb (Matching_Standard_Type): New function
      	(Side_Effect_Free): New top level functions (from
      	Remove_Side_Effects).
      	* exp_util.ads (Side_Effect_Free): New top level functions
      	(moved from body).
      	* sinfo.ads: Minor comment updates.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch6.adb (Expand_Simple_Function_Return): If return
      	type is unconstrained and uses the secondary stack, mark the
      	enclosing function accordingly, to ensure that the value is not
      	prematurely removed.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* par.adb Alphabetize the routines in Par.Sync.
      	(Resync_Past_Malformed_Aspect): New routine.
      	* par-ch13.adb (Get_Aspect_Specifications): Alphabetize local
      	variables. Code and comment reformatting. Detect missing
      	parentheses on aspects [Refined_]Global and [Refined_]Depends
      	with a non-null definition.
      	* par-sync.adb: Alphabetize all routines in this separate unit.
      	(Resync_Past_Malformed_Aspect): New routine.
      
      From-SVN: r207890
      Arnaud Charlet committed
    • sem_eval.ads, [...] (Subtypes_Statically_Match): Return False if Esize values do not match. · a0367005
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* sem_eval.ads, sem_eval.adb (Subtypes_Statically_Match): Return False
      	if Esize values do not match.
      
      From-SVN: r207889
      Robert Dewar committed
    • [multiple changes] · e03f7ccf
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* sinfo.ads: Minor comment update.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* atree.ads: Minor reformatting (change Entity_Info to Einfo).
      
      2014-02-19  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch7.adb (Find_Node_To_Be_Wrapped): An assignment statement
      	that has the No_Ctrl_Actions flag is a suitable node to be
      	wrapped if the assigned expression has no finalization actions.
      	* sem_eval.adb (Eval_Entity_Name): For a compile time known
      	boolean value, mark the corresponding condition SCO as constant.
      
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* exp_util.adb: Minor reformatting.
      	* exp_util.ads (Matching_Standard_Type): New function.
      	* exp_ch7.adb: Minor reformatting.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Get_Cursor_Type): Use scope of iterable type
      	to find declaration for Cursor, to handle properly the case of
      	a discriminated iterable type.
      
      2014-02-19  Vincent Celier  <celier@adacore.com>
      
      	* gnatcmd.adb (GNATCmd): Always replace the object dirs of
      	imported library projects with the library ALI dirs, when setting
      	the object paths.
      	* prj-env.ads (Ada_Objects_Path): Correct comments about
      	argument Including_Libraries.
      
      From-SVN: r207888
      Arnaud Charlet committed
    • [multiple changes] · 4877d85f
      2014-02-19  Gary Dismukes  <dismukes@adacore.com>
      
      	* gnat_rm.texi: Minor spelling fixes.
      
      2014-02-19  Doug Rupp  <rupp@adacore.com>
      
      	* init.c: Remove unneeded code.
      	* fe.h (Float_Format): New macro
      	* gcc-interface/trans.c (gigi): On VMS, set vms_float_format.
      
      From-SVN: r207887
      Arnaud Charlet committed
    • [multiple changes] · f660fba6
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Check_Refined_Global_Item):
      	A state or variable acts as a constituent only it is part of an
      	encapsulating state and the state has visible refinement.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Analyze_Subprogram_Contract): Do not warn on a
      	postcondition for a function when the expression does not mention
      	'Result but the function has in-out parameters.
      
      2014-02-19  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Add documentation on Value_Size forcing biased
      	representation.
      
      From-SVN: r207886
      Arnaud Charlet committed
    • [multiple changes] · b4f149c2
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* lib-xref.ads Remove the small table of letter and symbol usage as we
      	already have one.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Emit specific error
      	messages depending on the offending misplaced aspect specifications.
      	(Diagnose_Misplaced_Aspect_Specifications): New routine.
      
      2014-02-19  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Get_Cursor): Utility to retrieve cursor type
      	for iterable aspect primitives.
      	(Resolve_Iterable_Operation): Use expected signature of iterable
      	aspect to resolve primitive when overloading is present.
      	(Validate_Iterable_Aspect, Analyze_Aspects_At_Freeze_Point): use it.
      	(Check_Signature): Removed.
      
      From-SVN: r207885
      Arnaud Charlet committed
    • [multiple changes] · ddd2bec5
      2014-02-19  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch10.adb (Analyze_Proper_Body): Issue error on missing
      	subunit in GNATprove_Mode.
      	* sinfo.ads (GNATprove_Mode): Document error issued in GNATprove_Mode.
      
      2014-02-19  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* lib-xref.ads Alphabetize the contents of table
      	Xref_Entity_Letters. Add an entry in table Xref_Entity_Letters
      	for E_Abstract_State. List all letters and symbols in use.
      	* sem_prag.adb (Analyze_Abstract_State): Update all calls
      	to Create_Abstract_State to reflect the new signature.
      	(Create_Abstract_State): Change subprogram profile and update
      	the comment on usage. Use the proper location of the state
      	declaration when creating a new abstract state entity. Do not
      	generate an external name, but simply reuse the name coming from
      	the state declaration.
      
      From-SVN: r207884
      Arnaud Charlet committed