1. 26 Feb, 2014 13 commits
    • re PR c++/59231 (gcc misses [-Werror=sign-compare] when inside a template) · ca7e759d
      	PR c++/59231
      	PR c++/11586
      	PR c++/14710
      	PR c++/57132
      gcc/
      	* c-common.c (shorten_compare): Don't check
      	c_inhibit_evaluation_warnings.
      gcc/cp/
      	* pt.c (struct warning_sentinel): New.
      	(tsubst_copy_and_build): Use it instead of
      	c_inhibit_evaluation_warnings.
      
      From-SVN: r208183
      Jason Merrill committed
    • regex.tcc (match_results<>::format, [...]): Update __out after calling std::copy. · 91bb5cd9
      2014-02-26  Tim Shen  <timshen91@gmail.com>
      
      	* include/bits/regex.tcc (match_results<>::format,
      	regex_replace<>): Update __out after calling std::copy.
      	* testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
      	Add testcase.
      	* testsuite/28_regex/match_results/format.cc: Likewise.
      
      From-SVN: r208179
      Tim Shen committed
    • re PR c++/54440 ([c++11] g++ prematurely applying rule that a template parameter… · b0ff7fe1
      re PR c++/54440 ([c++11] g++ prematurely applying rule that a template parameter pack cannot be followed by a template parameter)
      
      	PR c++/54440
      	* pt.c (get_template_parm_index): New.
      	(fixed_parameter_pack_p_1, fixed_parameter_pack_p): New.
      	(process_template_parm): Allow bare packs in template template
      	parm template parms.
      	(coerce_template_parameter_pack): Handle fixed template template
      	parm packs and fixed packs not at the end of the parm list.
      	(coerce_template_parms): Handle template parm packs not at the end
      	of the parm list.
      	(gen_elem_of_pack_expansion_instantiation): Handle a decl expansion.
      
      From-SVN: r208178
      Jason Merrill committed
    • re PR c++/60182 (g++ segfault within template expansion using "using" aliasing) · f3417723
      	PR c++/60182
      	* pt.c (unify): Ignore alias templates when deducing a template
      	template parameter.
      
      From-SVN: r208177
      Jason Merrill committed
    • re PR c++/60345 (r208159 causes Firefox build error) · 1bd3ed56
      	PR c++/60345
      	* g++.dg/conversion/ref1.C: New.
      
      From-SVN: r208176
      Jason Merrill committed
    • re PR c++/60345 (r208159 causes Firefox build error) · 2f75f515
      	PR c++/60345
      	Revert:
      	DR 1571
      	* call.c (reference_binding): Recurse on user-defined conversion.
      	(convert_like_real) [ck_ref_bind]: Explain cv-qual mismatch.
      
      From-SVN: r208175
      Jason Merrill committed
    • re PR bootstrap/60343 (r208155 breaks bootstrap) · bb750f4f
      2014-02-26  Richard Biener  <rguenther@suse.de>
      
      	PR bootstrap/60343
      	* lra-assigns.c (spill_for): Avoid mixed-sign comparison.
      
      From-SVN: r208170
      Richard Biener committed
    • predicates.md (const1256_operand): Remove. · 22c8aab3
      gcc/
      	* common/config/i386/predicates.md (const1256_operand): Remove.
      	(const2356_operand): New.
      	(const_1_to_2_operand): Remove.
      	* config/i386/sse.md (avx512pf_gatherpf<mode>sf): Change hint value.
      	(*avx512pf_gatherpf<mode>sf_mask): Ditto.
      	(*avx512pf_gatherpf<mode>sf): Ditto.
      	(avx512pf_gatherpf<mode>df): Ditto.
      	(*avx512pf_gatherpf<mode>df_mask): Ditto.
      	(*avx512pf_gatherpf<mode>df): Ditto.
      	(avx512pf_scatterpf<mode>sf): Ditto.
      	(*avx512pf_scatterpf<mode>sf_mask): Ditto.
      	(*avx512pf_scatterpf<mode>sf): Ditto.
      	(avx512pf_scatterpf<mode>df): Ditto.
      	(*avx512pf_scatterpf<mode>df_mask): Ditto.
      	(*avx512pf_scatterpf<mode>df): Ditto.
      	* common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0.
      
      gcc/testsuite/
      	* common/config/i386/predicates.md (const1256_operand): Remove.
      	(const2356_operand): New.
      	(const_1_to_2_operand): Remove.
      	* config/i386/sse.md (avx512pf_gatherpf<mode>sf): Change hint value.
      	(*avx512pf_gatherpf<mode>sf_mask): Ditto.
      	(*avx512pf_gatherpf<mode>sf): Ditto.
      	(avx512pf_gatherpf<mode>df): Ditto.
      	(*avx512pf_gatherpf<mode>df_mask): Ditto.
      	(*avx512pf_gatherpf<mode>df): Ditto.
      	(avx512pf_scatterpf<mode>sf): Ditto.
      	(*avx512pf_scatterpf<mode>sf_mask): Ditto.
      	(*avx512pf_scatterpf<mode>sf): Ditto.
      	(avx512pf_scatterpf<mode>df): Ditto.
      	(*avx512pf_scatterpf<mode>df_mask): Ditto.
      	(*avx512pf_scatterpf<mode>df): Ditto.
      	* common/config/i386/xmmintrin.h (_mm_hint): Add _MM_HINT_ET0.
      
      From-SVN: r208169
      Ilya Tocar committed
    • gcc/ · 260d3642
      	* config/i386/avx512fintrin.h (_mm512_testn_epi32_mask),
      	(_mm512_mask_testn_epi32_mask), (_mm512_testn_epi64_mask),
      	(_mm512_mask_testn_epi64_mask): Move to ...
      	* config/i386/avx512cdintrin.h: Here.
      	* config/i386/i386.c (bdesc_args): Change MASK_ISA for testnm.
      	* config/i386/sse.md (avx512f_vmscalef<mode><round_name>): Remove %.
      	(avx512f_scalef<mode><mask_name><round_name>): Ditto.
      	(avx512f_testnm<mode>3<mask_scalar_merge_name>): Change conditon to
      	TARGET_AVX512F from TARGET_AVX512CD.
      
      gcc/testsuite/
      	* gcc.target/i386/avx512cd-vptestnmd-1.c: Change into ...
      	* gcc.target/i386/avx512f-vptestnmd-1.c: This.
      	* gcc.target/i386/avx512cd-vptestnmq-1.c: Change into ...
      	* gcc.target/i386/avx512f-vptestnmq-1.c: This.
      	* gcc.target/i386/avx512cd-vptestnmd-2.c: Change into ...
      	* gcc.target/i386/avx512f-vptestnmd-2.c: This.
      	* gcc.target/i386/avx512cd-vptestnmq-2.c: Change into ...
      	* gcc.target/i386/avx512f-vptestnmq-2.c: This.
      
      From-SVN: r208168
      Ilya Tocar committed
    • re PR ipa/60327 (xalanbmk and dealII ICE in ipa-inline-analysis.c:3555) · 477145c8
      2014-02-26  Richard Biener  <rguenther@suse.de>
      
      	PR ipa/60327
      	* ipa.c (walk_polymorphic_call_targets): Properly guard
      	call to inline_update_overall_summary.
      
      From-SVN: r208167
      Richard Biener committed
    • re PR tree-optimization/60280 (gcc.target/arm/ivopts.c and… · a3afdbb8
      re PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts-2.c failed caused by preserving loop structure.)
      
      
      	PR target/60280
      	* tree-cfgcleanup.c (tree_forwarder_block_p): Protect loop
      	preheaders and latches only if requested.  Fix latch if it
      	is removed.
      	* tree-ssa-dom.c (tree_ssa_dominator_optimize): Set
      	LOOPS_HAVE_PREHEADERS.
      
      	PR target/60280
      	* gnat.dg/renaming5.adb: Change to two expected gotos.
      	* gcc.dg/tree-ssa/pr21559.c: Change back to three expected
      	jump threads.
      	* gcc.dg/tree-prof/update-loopch.c: Check two "Invalid sum"
      	messages for removed basic block.
      	* gcc.dg/tree-ssa/ivopt_1.c: Fix unreliable scanning string.
      	* gcc.dg/tree-ssa/ivopt_2.c: Ditto.
      	* gcc.dg/tree-ssa/ivopt_3.c: Ditto.
      	* gcc.dg/tree-ssa/ivopt_4.c: Ditto.
      
      From-SVN: r208165
      Bin Cheng committed
    • builtins.c (expand_builtin_thread_pointer): Create a new target when the target is NULL. · b8a542c6
      2014-02-25  Andrew Pinski  <apinski@cavium.com>
      
      	* builtins.c (expand_builtin_thread_pointer): Create a new target
      	when the target is NULL.
      
      From-SVN: r208163
      Andrew Pinski committed
    • Daily bump. · fa5d9965
      From-SVN: r208162
      GCC Administrator committed
  2. 25 Feb, 2014 27 commits
    • DR 1571 · be9e97bd
      	DR 1571
      	* call.c (reference_binding): Recurse on user-defined conversion.
      	(convert_like_real) [ck_ref_bind]: Explain cv-qual mismatch.
      
      From-SVN: r208159
      Jason Merrill committed
    • call.c (print_conversion_rejection): Handle n_arg of -2. · 241172a5
      	* call.c (print_conversion_rejection): Handle n_arg of -2.
      	(build_user_type_conversion_1): Pass it.
      
      From-SVN: r208158
      Jason Merrill committed
    • re PR c++/55877 (Anon visibility issues) · 944b63db
      	PR c++/55877
      	* decl2.c (no_linkage_error): Handle C++98 semantics.
      	(reset_type_linkage): Move from decl.c.
      	(reset_type_linkage_1, reset_type_linkage_2, bt_reset_linkage_1)
      	(bt_reset_linkage_2, reset_decl_linkage): New.
      	(tentative_decl_linkage): Factor out of expand_or_defer_fn_1.
      	(cp_write_global_declarations): Move condition into no_linkage_error.
      	* decl.c (grokfndecl, grokvardecl): Use no_linkage_error.
      	* semantics.c (expand_or_defer_fn_1): Factor out
      	tentative_decl_linkage.
      	* cp-tree.h: Adjust.
      
      From-SVN: r208157
      Jason Merrill committed
    • decl2.c (finish_static_data_member_decl): Diagnose static data member in unnamed class. · a6659b55
      	* decl2.c (finish_static_data_member_decl): Diagnose static data
      	member in unnamed class.
      
      From-SVN: r208156
      Jason Merrill committed
    • re PR rtl-optimization/60317 (find_hard_regno_for compile time hog in libvpx) · 88def637
      2014-02-25  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR rtl-optimization/60317
      	* params.def (PARAM_LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
      	* params.h (LRA_MAX_CONSIDERED_RELOAD_PSEUDOS): New.
      	* lra-assigns.c: Include params.h.
      	(spill_for): Use LRA_MAX_CONSIDERED_RELOAD_PSEUDOS as guard for
      	other reload pseudos considerations.
      
      From-SVN: r208155
      Vladimir Makarov committed
    • re PR lto/53808 (Undefined symbol when building a library with lto) · 6e6eaecc
      	PR lto/53808
      	* class.c (clone_function_decl): Call note_vague_linkage_fn for
      	defaulted virtual dtor.
      
      From-SVN: r208153
      Jason Merrill committed
    • DR 1286 PR c++/60328 · d808e92e
      	DR 1286
      	PR c++/60328
      	* pt.c (get_underlying_template): Fix equivalence calculation.
      
      From-SVN: r208152
      Jason Merrill committed
    • 2014-02-25 Doug Rupp <rupp@adacore.com> · 3af78158
              
      	* gcc-interface/Makefile.in (arm-linux):
      	(EH_MECHANISM): Use ARM unwinder (-arm)
      	(LIBGNAT_TARGET_PAIRS: Override defaults with a-exexpr-gcc.adb and
      	s-excmac-arm.ads.
      	(EXTRA_LIBGNAT_OBJS): Add raise-gcc.o
      	(EXTRA_GNATRTL_NONTASKING_OBJS): Add g-cppexc.o s-excmac.o.
      	(arm-wrs-vxworks): Add EH_MECHANISM=-gcc for kernel mode.
      	(EXTRA_LIBGNAT_OBJS): Add sigtramp-armvxw.o
      	Add dependencies for sigtramp-armvxw.o.
      
      From-SVN: r208150
      Doug Rupp committed
    • rtsfind.adb (Is_RTE): Protect against entity with no scope field (previously… · e7ba564f
      rtsfind.adb (Is_RTE): Protect against entity with no scope field (previously this call blew up on the...
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* rtsfind.adb (Is_RTE): Protect against entity with no scope
      	field (previously this call blew up on the Standard entity).
      	* sem_attr.adb (Analyze_Attribute, case Access): Remove
      	test for No_Abort_Statements, this is now handled in
      	Set_Entity_With_Checks.
      	* exp_ch6.adb, sem_ch10.adb, sem_ch4.adb, sem_ch8.adb, sem_res.adb:
      	Change name Set_Entity_With_Style_Check => Set_Entity_With_Checks.
      	* sem_util.ads, sem_util.adb: Change name Set_Entity_With_Style_Check =>
      	Set_Entity_With_Checks.
      	(Set_Entity_With_Checks): Add checks for No_Dynamic_Attachment,
      	Add checks for No_Abort_Statements.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch9.adb (Expand_Entry_Barrier): Add comment that call to
      	Check_Restriction is OK.
      
      From-SVN: r208148
      Robert Dewar committed
    • sem_ch3.adb (Process_Full_View): Better error message when the full view of a… · 2886a495
      sem_ch3.adb (Process_Full_View): Better error message when the full view of a private type without...
      
      2014-02-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Process_Full_View): Better error message when
      	the full view of  a private type without discriminants is an
      	unconstrained type.
      	* sem_ch7.adb (Uninstall_Declarations): Ditto.
      
      From-SVN: r208147
      Ed Schonberg committed
    • [multiple changes] · fb12497d
      2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* sigtramp-armvxw.c: Also restore r0.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* errout.adb (Error_Msg_Internal): Warning_Msg_Char set
      	unconditionally (Set_Msg_Insertion_Warning): Warning_Msg_Char
      	set unconditionally.
      	* erroutc.adb (Get_Warning_Tag): Does not give a leading space
      	any more (Output_Msg_Text): Rewritten with new convention on
      	output of warnings that are treated as errors.
      	* erroutc.ads (Error_Msg_Object): Warn_Chr is always set even
      	if Warn is False.
      	* gnat_rm.texi: Updates to documentation on pragma
      	Warning_As_Error.
      	* warnsw.adb (Set_Dot_Warning_Switch): -gnatw.e should not
      	set Warning_Doc_Switch.
      	* lib-writ.ads: Add documentation note on ALI file generation
      	for C.
      	* exp_ch6.adb (Expand_Call): Remove check for No_Abort_Statements
      	(belongs in Sem).
      	* sem_attr.adb (Resolve_Attribute, case Access):
      	Abort_Task'Access violates the No_Abort_Statements restriction.
      	* sem_res.adb (Resolve_Call): Check restriction
      	No_Abort_Statements for call to Abort_Task or a renaming of it.
      
      From-SVN: r208146
      Arnaud Charlet committed
    • [multiple changes] · 0c3985a9
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb (Array_Type_Declaration): Check for case of using
      	type name as index.
      	* lib.ads: Minor reformatting.
      	* einfo.ads: Minor reformatting.
      
      2014-02-25  Doug Rupp  <rupp@adacore.com>
      
      	* sem_mech.adb (Set_Mechanisms): For convention Fortran on VMS
      	use Short_Descriptor(S) as the argument passing mechanism.
      
      2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* sigtramp-ppcvxw.c (CFI_COMMON_REGS): Also include r0.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* atree.ads (Warnings_Treated_As_Errors): New variable.
      	* errout.adb (Error_Msg_Internal): Set Warn_Err flag in
      	error object (Initialize): Initialize Warnings_As_Errors_Count
      	(Write_Error_Summary): Include count of warnings treated as errors.
      	* erroutc.adb (Warning_Treated_As_Error): New function.
      	(Matches): Function moved to outer level of package.
      	* erroutc.ads (Error_Msg_Object): Add Warn_Err flag.
      	(Warning_Treated_As_Error): New function.
      	* gnat_rm.texi: Document pragma Treat_Warning_As_Error.
      	* opt.adb: Add handling of Warnings_As_Errors_Count[_Config].
      	* opt.ads (Config_Switches_Type): Add entry for
      	Warnings_As_Errors_Count.
      	(Warnings_As_Errors_Count): New variable.
      	(Warnings_As_Errors): New array.
      	* par-prag.adb: Add dummy entry for Warning_As_Error.
      	* sem_prag.adb (Analyze_Pragma): Implement new pragma
      	Warning_As_Error.
      	* snames.ads-tmpl: Add entries for Warning_As_Error pragma.
      
      From-SVN: r208145
      Arnaud Charlet committed
    • [multiple changes] · 5acb4d29
      2014-02-25  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* sigtramp.h: Fix minor inaccuracy.
      
      2014-02-25  Ben Brosgol  <brosgol@adacore.com>
      
      	* gnat_ugn.texi: Added description of kill command.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi (Address_Clauses): Add a section discussing the
      	problem of address clauses causing unexpected initialization,
      	including the effect of Initialize_Scalars.
      
      From-SVN: r208144
      Arnaud Charlet committed
    • [multiple changes] · 80c2c202
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* errout.adb: Various changes for better msgs for anonmous access
      	subprogram types.
      	* erroutc.ads, erroutc.adb (Buffer_Ends_With): Version with character
      	argument.
      	(Buffer_Remove): Version with character argument.
      	* sem_attr.adb (Resolve_Attribute, case Access): Better handling
      	of mismatching conventions for access-to-subprogram case.
      	* sem_prag.adb (Set_Convention_From_Pragma): Deal with anonymous
      	access types in record.
      	* sem_util.ads, sem_util.adb (Set_Convention): Handle anonymous access
      	types, including in records.
      
      2014-02-25  Doug Rupp  <rupp@adacore.com>
      
      	* sigtramp-ppcvxw.c, sigtramp.h, sigtramp-armvxw.c: Comment
      	enhancements and corrections.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: New section "Conventions and Anonymous Access Types"
      
      From-SVN: r208143
      Arnaud Charlet committed
    • [multiple changes] · 7b27e183
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Update "Standard Library Routines" chapter to
      	include all 2012 packages.
      	Add section on pragma Reviewable.
      	* sem_ch5.adb (Diagnose_Non_Variable_Lhs): Avoid wrong msgs if
      	expander off.
      	* exp_ch9.ads, exp_dist.adb, exp_dist.ads: Minor reformatting.
      	* sem_ch6.adb (Assert_False): New function
      	(Check_Statement_Sequence): Call Assert_False to check for
      	pragma Assert (False) which is considered OK block of control
      	for function.
      	* snames.ads-tmpl (Name_False): New entry.
      
      2014-02-25  Doug Rupp  <rupp@adacore.com>
      
      	* init.c (VxWorks Section): Enable sigtramp for ARM.
      	* sigtramp-armvxw.c: New file.
      
      From-SVN: r208142
      Arnaud Charlet committed
    • gnat_rm.texi: First set of documentation additions for predefined RM units. · 9972d439
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: First set of documentation additions for
      	predefined RM units.
      	* checks.adb: Minor reformatting.
      	* sem_elab.adb (Check_Task_Activation): Minor fix to error
      	message.
      	* sem_util.adb: Minor reformatting.
      
      From-SVN: r208141
      Robert Dewar committed
    • [multiple changes] · 592574f5
      2014-02-25  Arnaud Charlet  <charlet@adacore.com>
      
      	* usage.adb (Usage): Add help on -gnateC.
      	* switch-c.adb (Scan_Front_End_Switches): Add handling of -gnateC.
      	* opt.ads (Generate_CodePeer_Messages): New flag.
      	* gnat_ugn.texi: Document new switch -gnateC.
      
      2014-02-25  Ben Brosgol  <brosgol@adacore.com>
      
      	* gnat_rm.texi: Corrected minor typos in Implementation Defined
      	Aspects.
      	* opt.ads: Minor reformatting.
      
      From-SVN: r208140
      Arnaud Charlet committed
    • binde.adb: Change messages to mention -gnatel instead of -gnatwl. · fe2194df
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* binde.adb: Change messages to mention -gnatel instead of -gnatwl.
      	* gnat_ugn.texi: Update documentation of -gnatwl Add documentation
      	of -gnatel/-gnateL.
      	* opt.ads (Warn_Info_Messages): New flag.
      	* sem_elab.adb: Use Elab_Warnings, Elab_Info_Messages to control
      	messages.
      	* sem_prag.adb: Use Elab_Warnings, Elab_Info_Messages to control
      	messages.
      	* switch-m.ad, switch-c.adb: Recognize new -gnatel/EL switches.
      	* usage.adb: Add documentation of -gnatel/-gnateL Update
      	documentation of -gnatwl/-gnatwL.
      	* warnsw.adb: New handling of Elab_Warnings, Elab_Info_Messages
      	* warnsw.ads (Elab_Info_Messages): New field in Warning_Record
      
      From-SVN: r208139
      Robert Dewar committed
    • [multiple changes] · 4c51ff88
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* einfo.ads, einfo.adb (Has_Shift_Operator): New flag.
      	* gnat_rm.texi: Document pragma Provide_Shift_Operators.
      	* interfac.ads: Minor code reorganization (add pragma
      	Compiler_Unit_Warning).
      	* par-prag.adb: Add dummy entry for Provide_Shift_Operators.
      	* sem_ch3.adb (Build_Derived_Numeric_Type): Copy
      	Has_Shift_Operator flag.
      	* sem_intr.adb (Check_Intrinsic_Subprogram): Make sure
      	Check_Shift is always called (Check_Shift): Set Has_Shift_Operator.
      	* sem_prag.adb: Implement pragma Provide_Shift_Operators.
      	* snames.ads-tmpl: Add entries for pragma Provide_Shift_Operators
      	Add entry for Name_Amount.
      	* checks.adb (Selected_Range_Checks): When checking for a null
      	range, make sure we use the base type, and not the subtype for
      	deciding a range is null.
      	* sem_ch5.adb (Analyze_Loop_Parameter_Specification): Check
      	for suspicious loop bound which is outside the range of the
      	loop subtype.
      	* gnat_ugn.texi: Add documentation section "Determining the
      	Chosen Elaboration Order"
      	* sem_ch13.adb (UC_Entry): Add field Act_Unit
      	(Validate_Unchecked_Conversion): Store Act_Unit
      	(Validate_Unchecked_Conversions): Test Warnings_Off in Act_Unit
      	* treepr.adb: Minor reformatting.
      
      2014-02-25  Arnaud Charlet  <charlet@adacore.com>
      
      	* usage.adb: Minor: fix typo.
      
      From-SVN: r208138
      Arnaud Charlet committed
    • lib.ads, [...]: Implement pragma Compiler_Unit_Warning... · 0355e3eb
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* lib.ads, s-bitops.adb, s-bitops.ads, s-conca5.adb, gnat_rm.texi,
      	s-conca5.ads, s-conca7.adb, s-conca7.ads, s-crc32.adb, s-crc32.ads,
      	s-conca9.adb, s-conca9.ads, g-dyntab.adb, s-crtl.ads, g-dyntab.ads,
      	s-excdeb.adb, s-addope.adb, s-addope.ads, s-carun8.adb, s-carun8.ads,
      	g-htable.adb, g-htable.ads, g-hesora.adb, g-hesora.ads, s-conca2.adb,
      	s-conca2.ads, a-comlin.adb, a-chlat1.ads, a-comlin.ads, errout.ads,
      	a-except.adb, s-conca4.adb, a-except.ads, s-conca4.ads, s-conca6.adb,
      	s-conca6.ads, g-spchge.adb, g-spchge.ads, g-u3spch.adb, g-u3spch.ads,
      	a-strhas.ads, restrict.adb, aspects.adb, aspects.ads, s-conca8.adb,
      	s-conca8.ads, back_end.adb, par-prag.adb, g-byorma.adb, g-byorma.ads,
      	a-elchha.adb, a-elchha.ads, g-speche.adb, g-speche.ads, s-casuti.adb,
      	s-assert.adb, s-casuti.ads, s-assert.ads, a-clrefi.adb, a-clrefi.ads,
      	s-conca3.adb, s-conca3.ads, a-ioexce.ads: Implement pragma
      	Compiler_Unit_Warning, change Compiler_Unit everywhere to
      	Compiler_Unit_Warning.
      
      2014-02-25  Sergey Rybin  <rybin@adacore.com frybin>
      
      	* sem_prag.adb (Analyze_Depends_In_Decl_Part): Do not normalize
      	in ASIS mode aggregates that are used as aspect definitions.
      
      From-SVN: r208137
      Arnaud Charlet committed
    • [multiple changes] · e917e3b8
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch7.adb, sem_util.adb, sem_util.ads, exp_ch6.adb: Minor
      	reformatting.
      
      2014-02-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* freeze.adb (Freeze_Entity): If the return type of a function
      	is a limited view, and the non-limited view has not been seen yet,
      	defer freezing to some later point.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch3.adb: Minor reformatting.
      
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* s-excdeb.ads, s-except.ads, s-exctab.adb, s-exctab.ads, s-finmas.ads,
      	s-htable.adb, s-htable.ads, s-imenne.adb, s-imenne.ads, s-imgenu.adb,
      	s-imgenu.ads, s-mastop.adb, s-mastop.ads, s-memory-vms_64.adb,
      	s-memory-vms_64.ads, s-memory.adb, s-memory.ads, s-os_lib.adb,
      	s-os_lib.ads, s-parame.adb, s-parame.ads, s-purexc.ads, s-restri.adb,
      	s-restri.ads, s-rident.ads, s-secsta.adb, s-secsta.ads, s-soflin.adb,
      	s-soflin.ads, s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
      	s-sopco5.adb, s-sopco5.ads, s-spsufi.ads, s-stache.adb, s-stache.ads,
      	s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads, s-strcom.adb,
      	s-strcom.ads, s-strhas.adb, s-string.adb, s-string.ads, s-strops.adb,
      	s-strops.ads, s-ststop.adb, s-ststop.ads, s-traceb.adb, s-traceb.ads,
      	s-traent.adb, s-traent.ads, s-unstyp.ads, s-utf_32.adb, s-utf_32.ads,
      	s-wchcnv.adb, s-wchcnv.ads, s-wchcon.adb, s-wchcon.ads, s-wchjis.adb,
      	s-wchjis.ads, sem_ch11.adb, sem_ch4.adb, sem_ch5.adb, sem_prag.adb,
      	snames.ads-tmpl: Change Compiler_Unit everywhere to
      	Compiler_Unit_Warning.
      
      From-SVN: r208135
      Arnaud Charlet committed
    • exp_ch6.adb (Add_Or_Save_Precondition): New routine. · 5f24a82a
      2014-02-25  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch6.adb (Add_Or_Save_Precondition): New routine.
      	(Collect_Body_Postconditions_In_Decls): New routine.
      	(Collect_Body_Postconditions_Of_Kind): Factor out code. Handle
      	postcondition aspects or pragmas that appear on a subprogram
      	body stub.
      	(Collect_Spec_Preconditions): Factor out code. Handle
      	precondition aspects or pragmas that appear on a subprogram
      	body stub.
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): The analysis of
      	aspects that apply to a subprogram body stub is no longer delayed,
      	the aspects are analyzed on the spot.
      	(SPARK_Aspect_Error):
      	Aspects that apply to a subprogram declaration cannot appear in
      	a subunit.
      	* sem_ch10.adb Remove with and use clause for Sem_Ch13.
      	(Analyze_Proper_Body): Add local variable Comp_Unit. Unum
      	is now a local variable. Code cleanup. Analysis related to
      	the aspects of a subprogram body stub is now carried out by
      	Analyze_Subprogram_Body_Helper. Do not propagate the aspects
      	and/or pragmas of a subprogram body stub to the proper body
      	as this is no longer needed. Do not analyze the aspects of a
      	subprogram stub when the corresponding source unit is missing.
      	(Analyze_Protected_Body_Stub): Flag the illegal use of aspects
      	on a stub.
      	(Analyze_Task_Body_Stub): Flag the illegal use of
      	aspects on a stub.
      	(Optional_Subunit): Add local variable Unum.
      	* sem_ch13.adb (Insert_Delayed_Pragma): Do not analyze a generated
      	pragma when it applies to a subprogram body stub.
      	* sem_prag.adb (Analyze_Pragma): Pragmas Contract_Cases,
      	Depends and Global can now apply to a subprogram body stub as
      	long as it acts as its own spec.
      	(Analyze_Refined_Pragma):
      	Code reformatting. Refinement pragmas cannot apply to a subunit.
      
      From-SVN: r208134
      Hristian Kirtchev committed
    • 2014-02-25 Hristian Kirtchev <kirtchev@adacore.com> · 7edfb4c6
      	* einfo.ads Update the usage of flag
      	Uses_Sec_Stack. Uses_Sec_Stack now applies to E_Loop entities.
      	* exp_ch5.adb (Expand_Iterator_Loop): The temporary for a cursor
      	now starts with the letter 'C'. This makes reading expanded
      	code easier.
      	* exp_ch7.adb (Establish_Transient_Scope): Add local variable
      	Iter_Loop. Signal that an Ada 2012 iterator loop requires
      	secondary stack management when creating a transient scope for
      	an element reference.
      	* exp_util.adb (Process_Statements_For_Controlled_Objects):
      	When wrapping the statements of a loop, pass the E_Loop entity
      	to the wrapping machinery.
      	(Wrap_Statements_In_Block): Add
      	formal parameter Scop along with comment on usage. Add local
      	variables Block_Id, Block_Nod and Iter_Loop. Mark the generated
      	block as requiring secondary stack management when the block is
      	created inside an Ada 2012 iterator loop. This ensures that any
      	reference objects are reclaimed on each iteration of the loop.
      	* sem_ch5.adb (Analyze_Loop_Statement): Mark the generated block
      	tasked with the handling of container iterators as requiring
      	secondary stack management. This ensures that iterators are
      	reclaimed when the loop terminates or is exited in any fashion.
      	* sem_util.adb (Add_Block_Identifier): New routine.
      	(Find_Enclosing_Iterator_Loop): New routine.
      	* sem_util.ads (Add_Block_Identifier): New routine.
      	(Find_Enclosing_Iterator_Loop): New routine.
      
      From-SVN: r208133
      Hristian Kirtchev committed
    • [multiple changes] · bbe9779c
      2014-02-25  Robert Dewar  <dewar@adacore.com>
      
      	* sinfo.ads: Minor reformatting.
      
      2014-02-25  Tristan Gingold  <gingold@adacore.com>
      
      	* s-expllu.ads, s-expuns.ads, s-expmod.ads: Minor comment fix.
      
      2014-02-25  Pascal Obry  <obry@adacore.com>
      
      	* sinput-l.adb, osint.adb, osint.ads: Add Prep_Suffix to factorize code.
      
      From-SVN: r208132
      Arnaud Charlet committed
    • [multiple changes] · 1ae8beef
      2014-02-25  Tristan Gingold  <gingold@adacore.com>
      
      	* sem_ch10.adb: Minor comment fix.
      
      2014-02-25  Bob Duff  <duff@adacore.com>
      
      	* s-tasdeb.adb: Misc cleanup of this package,
      	including printing addresses in hexadecimal.
      	(Write): Fix minor bug when taking 'Address of an empty string.
      
      2014-02-25  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Analyze_Part_Of): Reject state refinement in a
      	public child unit when it does not refer to the abstract state
      	of a public ancestor.
      
      From-SVN: r208131
      Arnaud Charlet committed
    • [multiple changes] · ca11219d
      2014-02-25  Yannick Moy  <moy@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma/Pragma_Validity_Checks): Ignore pragma
      	Validity_Checks in GNATprove and CodePeer modes.
      
      2014-02-25  Pascal Obry  <obry@adacore.com>
      
      	* prj-attr.adb, projects.texi, snames.ads-tmpl: Add package Install's
      	Artifacts attribute.
      
      From-SVN: r208130
      Arnaud Charlet committed