Bill Schmidt [Mon, 3 Mar 2014 20:16:52 +0000 (20:16 +0000)]
rs6000.c (rs6000_preferred_reload_class): Disallow reload of PLUS rtx's outside of GENERAL_REGS or BASE_REGS...
2014-03-03 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (rs6000_preferred_reload_class): Disallow
reload of PLUS rtx's outside of GENERAL_REGS or BASE_REGS; relax
constraint on constants to permit them being loaded into
GENERAL_REGS or BASE_REGS.
From-SVN: r208287
Ian Lance Taylor [Mon, 3 Mar 2014 20:14:52 +0000 (20:14 +0000)]
libgo: Update to Go 1.2.1 release.
From-SVN: r208286
Joseph Myers [Mon, 3 Mar 2014 19:04:36 +0000 (19:04 +0000)]
be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, fi.po, fr.po,
id.po, ja.po, nl.po, pr_BR.po, ru.po, sr.po, sv.po, tr.po, uk.po,
vi.po, zh_CN.po, zh_TW.po: Update.
From-SVN: r208285
Joseph Myers [Mon, 3 Mar 2014 19:03:00 +0000 (19:03 +0000)]
be.po, [...]: Update.
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
zh_TW.po: Update.
From-SVN: r208284
Nick Clifton [Mon, 3 Mar 2014 17:17:49 +0000 (17:17 +0000)]
rl78-real.md (cbranchsi4_real_signed): Add anti-cacnonical alternatives.
* config/rl78/rl78-real.md (cbranchsi4_real_signed): Add
anti-cacnonical alternatives.
(negandhi3_real): New pattern.
* config/rl78/rl78-virt.md (negandhi3_virt): New pattern.
From-SVN: r208282
Senthil Kumar Selvaraj [Mon, 3 Mar 2014 16:04:47 +0000 (16:04 +0000)]
avr-mcus.def: Remove atxmega16x1.
* config/avr/avr-mcus.def: Remove atxmega16x1.
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.
From-SVN: r208281
Kirill Yukhin [Mon, 3 Mar 2014 12:45:59 +0000 (12:45 +0000)]
avx512er-vexp2ps-2.c: Decrease exponent argument to avoid inf values.
gcc/testsuite/
* gcc.target/i386/avx512er-vexp2ps-2.c: Decrease exponent
argument to avoid inf values.
* gcc.target/i386/avx512f-vdivps-2.c: Compare results with
UNION_FP_CHECK machinery.
From-SVN: r208276
Renlin Li [Mon, 3 Mar 2014 12:06:56 +0000 (12:06 +0000)]
validate_memory.h: Move f32in64 and i32in128 cases outside special big-endian processing block.
2014-03-03 Renlin Li <Renlin.Li@arm.com>
* gcc.target/aarch64/aapcs64/validate_memory.h: Move f32in64 and
i32in128 cases outside special big-endian processing block.
From-SVN: r208275
Tobias Grosser [Mon, 3 Mar 2014 11:39:22 +0000 (11:39 +0000)]
re PR tree-optimization/58028 (Several failures in libgomp.graphite after revision 200946)
2014-03-03 Tobias Grosser <tobias@grosser.es>
Mircea Namolaru <mircea.namolaru@inria.fr>
PR tree-optimization/58028
* graphite-clast-to-gimple.c (set_cloog_options): Don't remove
scalar dimensions.
Co-Authored-By: Mircea Namolaru <mircea.namolaru@inria.fr>
From-SVN: r208273
Jakub Jelinek [Mon, 3 Mar 2014 11:12:22 +0000 (12:12 +0100)]
re PR preprocessor/60400 (ICE with trigraphs)
PR preprocessor/60400
* c-c++-common/cpp/pr60400.c: New test.
* c-c++-common/cpp/pr60400-1.h: New file.
* c-c++-common/cpp/pr60400-2.h: New file.
From-SVN: r208272
Jakub Jelinek [Mon, 3 Mar 2014 09:36:44 +0000 (10:36 +0100)]
re PR objc++/60398 (FAIL: obj-c++.dg/invalid-method-2.mm -fgnu-runtime (test for errors, line 10))
PR objc++/60398
* obj-c++.dg/invalid-method-2.mm: Adjust dg-error regexps.
From-SVN: r208270
Ramana Radhakrishnan [Mon, 3 Mar 2014 08:09:14 +0000 (08:09 +0000)]
[ARM] Legitimize addresses for movmisalign<mode> for Neon.
2014-03-03 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/neon.md (*movmisalign<mode>): Legitimize addresses
not handled by recognizers.
From-SVN: r208269
Jakub Jelinek [Mon, 3 Mar 2014 07:27:46 +0000 (08:27 +0100)]
c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
* c-pragma.c (c_pp_lookup_pragma): Handle PRAGMA_CILK_SIMD.
(init_pragma): Call cpp_register_deferred_pragma for PRAGMA_CILK_SIMD
even when flag_preprocess_only.
* c-c++-common/cilk-plus/PS/vectorlength-2.c: New test.
* c-c++-common/cilk-plus/PS/vectorlength-3.c: New test.
From-SVN: r208268
Jakub Jelinek [Mon, 3 Mar 2014 07:25:50 +0000 (08:25 +0100)]
re PR middle-end/60175 (ICE on gcc.dg/asan/nosanitize-and-inline.c)
PR middle-end/60175
* function.c (expand_function_end): Don't emit
clobber_return_register sequence if clobber_after is a BARRIER.
* cfgexpand.c (construct_exit_block): Append instructions before
return_label to prev_bb.
From-SVN: r208267
Bill Schmidt [Mon, 3 Mar 2014 01:33:24 +0000 (01:33 +0000)]
constraints.md: Document reserved use of "wc".
2014-03-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/constraints.md: Document reserved use of "wc".
From-SVN: r208266
GCC Administrator [Mon, 3 Mar 2014 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208265
Jan Hubicka [Sun, 2 Mar 2014 22:19:37 +0000 (23:19 +0100)]
re PR lto/60150 (ICE in function_and_variable_visibility, at ipa.c:1000)
PR ipa/60150
* ipa.c (function_and_variable_visibility): When dissolving comdat
group, also set all symbols to local.
* g++.dg/lto/pr60150.H: New testcase.
* g++.dg/lto/pr60150_0.C: New testcase.
* g++.dg/lto/pr60150_1.C: New testcase.
From-SVN: r208262
Jan Hubicka [Sun, 2 Mar 2014 20:51:48 +0000 (21:51 +0100)]
re PR ipa/60306 (Incorrect devirtualization "pure virtual method called")
PR ipa/60306
Revert:
2013-12-14 Jan Hubicka <jh@suse.cz>
PR middle-end/58477
* ipa-prop.c (stmt_may_be_vtbl_ptr_store): Skip clobbers.
* testsuite/g++.dg/ipa/devirt-29.C: New testcase
From-SVN: r208261
Jon Beniston [Sun, 2 Mar 2014 19:58:24 +0000 (19:58 +0000)]
re PR bootstrap/48230 (bootstrapping gcc-4.6.0-RC-
20110321 fails for lm32-rtems*)
PR bootstrap/48230
PR bootstrap/50927
PR bootstrap/52466
PR target/46898
* config/lm32/lm32.c (lm32_legitimate_constant_p): Remove, as incorrect.
(TARGET_LEGITIMATE_CONSTANT_P): Undefine, as not needed.
* config/lm32/lm32.md (movsi_insn): Add 32-bit immediate support.
(simple_return, *simple_return): New patterns
* config/lm32/predicates.md (movsi_rhs_operand): Remove as obsolete.
* configure.ac (force_sjlj_exceptions): Force sjlj exceptions for lm32.
From-SVN: r208260
Bernd Edlinger [Sun, 2 Mar 2014 18:06:49 +0000 (18:06 +0000)]
re PR fortran/60236 (gfortran.dg/vect/pr32380.f fails on ARM)
2014-03-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR fortran/60236
* gfortran.dg/vect/pr32380.f: Fix expected test results.
From-SVN: r208257
GCC Administrator [Sun, 2 Mar 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208254
Edward Smith-Rowland [Sat, 1 Mar 2014 22:51:25 +0000 (22:51 +0000)]
re PR c++/50025 ([DR 1288] C++0x initialization syntax doesn't work for class members of reference type)
2014-03-01 Edward Smith-Rowland <3dw4rd@verizon.net>
PR c++/50025
* g++.dg/cpp0x/pr50025.C: New.
From-SVN: r208251
Adam Butcher [Sat, 1 Mar 2014 21:28:18 +0000 (21:28 +0000)]
re PR c++/60377 ([c++1y] ICE with invalid function parameter in conjunction with auto parameter)
Fix PR c++/60377.
PR c++/60377
* parser.c (cp_parser_parameter_declaration_clause): Unwind generic
function scope on parse error in function parameter list.
PR c++/60377
* g++.dg/cpp1y/pr60377.C: New testcase.
From-SVN: r208250
Mikael Morin [Sat, 1 Mar 2014 21:14:54 +0000 (21:14 +0000)]
re PR fortran/60341 (ICE compiling Nonmem 6.2.0)
fortran/
PR fortran/60341
* frontend-passes.c (optimize_comparison): Guard two union
accesses with the corresponding tag checks.
testsuite/
PR fortran/60341
* gfortran.dg/str_comp_optimize_1.f90: New test.
From-SVN: r208249
Paolo Carlini [Sat, 1 Mar 2014 21:14:00 +0000 (21:14 +0000)]
method.c (implicitly_declare_fn): Remove redundant DECL_TEMPLATE_RESULT and STRIP_TEMPLATE uses.
/cp
2014-03-01 Paolo Carlini <paolo.carlini@oracle.com>
* method.c (implicitly_declare_fn): Remove redundant
DECL_TEMPLATE_RESULT and STRIP_TEMPLATE uses.
* semantics.c (is_instantiation_of_constexpr): Likewise.
* error.c (dump_function_decl): Likewise.
2014-03-01 Paolo Carlini <paolo.carlini@oracle.com>
* dwarf2out.c (gen_subprogram_die): Tidy.
From-SVN: r208248
Jason Merrill [Sat, 1 Mar 2014 19:40:33 +0000 (14:40 -0500)]
re PR c++/60379 (pugixml build failure caused by r207001)
PR c++/60379
* semantics.c (begin_maybe_infinite_loop): Use
fold_non_dependent_expr_sfinae.
From-SVN: r208247
Jason Merrill [Sat, 1 Mar 2014 14:14:25 +0000 (09:14 -0500)]
re PR c++/58845 (Operator || and && broken for vectors)
PR c++/58845
* typeck.c (cp_build_binary_op): Sorry on vector&&vector.
From-SVN: r208243
Oleg Endo [Sat, 1 Mar 2014 13:16:37 +0000 (13:16 +0000)]
re PR target/60071 ([SH] internal compiler error: in final_scan_insn, at final.c:2963)
PR target/60071
* config/sh/sh.md (*mov_t_msb_neg): Split into ...
(*mov_t_msb_neg_negc): ... this new insn.
PR target/60071
* gcc.c-torture/compile/pr60071.c: New.
From-SVN: r208242
Jason Merrill [Sat, 1 Mar 2014 00:17:09 +0000 (19:17 -0500)]
re PR c++/58678 (pykde4-4.11.2 link error (devirtualization too trigger happy))
PR c++/58678
* ipa-devirt.c (ipa_devirt): Don't choose an implicitly-declared
function.
From-SVN: r208241
GCC Administrator [Sat, 1 Mar 2014 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r208240
Joey Ye [Fri, 28 Feb 2014 21:53:40 +0000 (21:53 +0000)]
re PR libgcc/60166 (ARM default NAN encoding violates EABI)
2014-02-28 Joey Ye <joey.ye@arm.com>
PR libgcc/60166
* config/arm/sfp-machine.h (_FP_NANFRAC_H,
_FP_NANFRAC_S, _FP_NANFRAC_D, _FP_NANFRAC_Q):
Set to zero.
From-SVN: r208229
Janus Weil [Fri, 28 Feb 2014 21:30:04 +0000 (22:30 +0100)]
re PR fortran/60359 ([OOP] symbol `__io_MOD___copy_character_1' is already defined)
2014-02-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/60359
* class.c (find_intrinsic_vtab): Prevent duplicate creation of copy
procedure for characters.
2014-02-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/60359
* gfortran.dg/unlimited_polymorphic_16.f90: New.
From-SVN: r208227
Paolo Carlini [Fri, 28 Feb 2014 20:20:21 +0000 (20:20 +0000)]
re PR c++/58610 ([c++11] ICE with constexpr of class with template constructor)
/cp
2014-02-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58610
* cp-tree.h (DECL_DELETED_FN): Use LANG_DECL_FN_CHECK.
* call.c (print_z_candidate): Remove STRIP_TEMPLATE use.
* lambda.c (maybe_add_lambda_conv_op): Likewise.
/testsuite
2014-02-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58610
* g++.dg/cpp0x/constexpr-ice11.C: New.
From-SVN: r208226
Paolo Carlini [Fri, 28 Feb 2014 16:51:21 +0000 (16:51 +0000)]
re PR c++/60314 ([C++1y] ICE with decltype(auto) when generating debug information)
2014-02-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60314
* dwarf2out.c (is_cxx_auto): Handle decltype(auto).
/testsuite
2014-02-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60314
* g++.dg/cpp1y/auto-fn24.C: New.
From-SVN: r208225
Ian Bolton [Fri, 28 Feb 2014 14:27:08 +0000 (14:27 +0000)]
Define __ARM_NEON for aarch64 by default unless general_regs_only
From-SVN: r208224
Uros Bizjak [Fri, 28 Feb 2014 13:55:32 +0000 (14:55 +0100)]
* ChangeLog: Fix whitespace.
From-SVN: r208223
Richard Biener [Fri, 28 Feb 2014 13:14:23 +0000 (13:14 +0000)]
re PR tree-optimization/60280 (gcc.target/arm/ivopts.c and gcc.target/arm/ivopts-2.c failed caused by preserving loop structure.)
2014-02-28 Richard Biener <rguenther@suse.de>
PR target/60280
* tree-cfgcleanup.c (tree_forwarder_block_p): Restrict
previous fix and only allow to remove trivial pre-headers
and latches. Also honor LOOPS_MAY_HAVE_MULTIPLE_LATCHES.
(remove_forwarder_block): Properly update the latch of
a loop.
From-SVN: r208222
Alexandre Oliva [Fri, 28 Feb 2014 12:57:40 +0000 (12:57 +0000)]
re PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)
PR debug/59992
* cselib.c (cselib_hasher::equal): Special-case VALUE lookup.
(cselib_preserved_hash_table): New.
(preserve_constants_and_equivs): Move preserved vals to it.
(cselib_find_slot): Look it up first.
(cselib_init): Initialize it.
(cselib_finish): Release it.
(dump_cselib_table): Dump it.
From-SVN: r208221
Alexandre Oliva [Fri, 28 Feb 2014 12:57:06 +0000 (12:57 +0000)]
re PR debug/59992 (Compilation of insn-recog.c too slow due to var-tracking)
PR debug/59992
* cselib.c (remove_useless_values): Skip to avoid quadratic
behavior if the condition moved from...
(cselib_process_insn): ... here holds.
From-SVN: r208220
Alexandre Oliva [Fri, 28 Feb 2014 12:45:36 +0000 (12:45 +0000)]
re PR debug/57232 (wcstol.c:213:1: internal compiler error)
PR debug/57232
* var-tracking.c (vt_initialize): Apply the same condition to
preserve the CFA base value.
From-SVN: r208219
Joey Ye [Fri, 28 Feb 2014 12:02:13 +0000 (12:02 +0000)]
PR target/PR60169
2014-02-28 Joey Ye <joey.ye@arm.com>
PR target/PR60169
* config/arm/arm.c (thumb_far_jump_used_p): Don't change
if reload in progress or completed.
testsuite:
* gcc.target/arm/thumb1-far-jump-3.c: New case.
From-SVN: r208217
GCC Administrator [Fri, 28 Feb 2014 00:16:34 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208212
Tobias Burnus [Thu, 27 Feb 2014 23:24:20 +0000 (00:24 +0100)]
re PR middle-end/60147 (ICE with -fdump-tree-original and NAMELIST)
2014-02-28 Tobias Burnus <burnus@net-b.de>
PR middle-end/60147
* tree-pretty-print.c (dump_generic_node, print_declaration):
Handle NAMELIST_DECL.
From-SVN: r208209
Paolo Carlini [Thu, 27 Feb 2014 23:15:20 +0000 (23:15 +0000)]
re PR c++/60253 (ICE passing class object through ellipsis (...))
/cp
2014-02-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60253
* call.c (convert_arg_to_ellipsis): Return error_mark_node after
error_at.
/testsuite
2014-02-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60253
* g++.dg/overload/ellipsis2.C: New.
From-SVN: r208208
H.J. Lu [Thu, 27 Feb 2014 19:54:56 +0000 (19:54 +0000)]
Copy changes from doc/tm.texi to doc/tm.texi.in
* doc/tm.texi.in (Condition Code Status): Update documention for
relative locations of cc0-setter and cc0-user.
From-SVN: r208205
Jeff Law [Thu, 27 Feb 2014 19:28:40 +0000 (12:28 -0700)]
re PR rtl-optimization/52714 (ICE in fixup_reorder_chain, at cfglayout.c:880)
PR rtl-optimization/52714
* combine.c (try_combine): When splitting an unrecognized PARALLEL
into two independent simple sets, if I3 is a jump, ensure the
pattern we place into I3 is a (set (pc) ...)
PR rtl-optimization/52714
* gcc.c-torture/compile/pr52714.c: New test.
From-SVN: r208204
Mikael Pettersson [Thu, 27 Feb 2014 19:02:18 +0000 (20:02 +0100)]
re PR rtl-optimization/49847 (NULL deref in fold_rtx (prev_insn_cc0 == NULL))
PR rtl-optimization/49847
* cse.c (fold_rtx) Handle case where cc0 setter and cc0 user
are in different blocks.
* doc/tm.texi (Condition Code Status): Update documention for
relative locations of cc0-setter and cc0-user.
PR rtl-optimization/49847
* g++.dg/pr49847.C: New test.
Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r208203
Jason Merrill [Thu, 27 Feb 2014 17:06:35 +0000 (12:06 -0500)]
re PR c++/58648 ([c++11] ICE with variadic template)
PR c++/58648
* g++.dg/cpp0x/variadic153.C: New.
From-SVN: r208202
Vladimir Makarov [Thu, 27 Feb 2014 17:06:02 +0000 (17:06 +0000)]
re PR target/59222 (gcc.c-torture/compile/
20050622-1.c ICEs at -O1 and above for aarch64-elf ILP32)
2014-02-27 Vladimir Makarov <vmakarov@redhat.com>
PR target/59222
* lra.c (lra_emit_add): Check SUBREG too.
From-SVN: r208201
Jason Merrill [Thu, 27 Feb 2014 16:20:59 +0000 (11:20 -0500)]
re PR c++/60353 (Firefox build failure #3 caused by r208157)
PR c++/60353
PR c++/55877
* decl2.c (tentative_decl_linkage): Don't mess with functions that
are not yet defined.
From-SVN: r208200
Andreas Schwab [Thu, 27 Feb 2014 11:10:55 +0000 (11:10 +0000)]
m68k.c (m68k_option_override): Disable -flive-range-shrinkage for classic m68k.
* config/m68k/m68k.c (m68k_option_override): Disable
-flive-range-shrinkage for classic m68k.
(m68k_override_options_after_change): Likewise.
From-SVN: r208198
Marek Polacek [Thu, 27 Feb 2014 08:05:21 +0000 (08:05 +0000)]
re PR middle-end/59223 (-Wmaybe-uninitialized and -Wuninitialized relationships)
PR middle-end/59223
* tree-ssa-uninit.c (gate_warn_uninitialized): Run the pass even for
-Wmaybe-uninitialized.
testsuite/
* c-c++-common/pr59223.c: New test.
From-SVN: r208196
GCC Administrator [Thu, 27 Feb 2014 00:17:10 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r208191
Alan Modra [Wed, 26 Feb 2014 22:17:39 +0000 (08:47 +1030)]
correct bug number
From-SVN: r208187
Alan Modra [Wed, 26 Feb 2014 21:57:40 +0000 (08:27 +1030)]
re PR target/57935 (ICE in rs6000_secondary_reload_inner:15181, type = load)
PR target/57935
* reload1.c (emit_input_reload_insns): When reload_override_in,
set old to rl->in_reg when rl->in_reg is a subreg.
From-SVN: r208186
Jason Merrill [Wed, 26 Feb 2014 21:44:48 +0000 (16:44 -0500)]
re PR c++/30301 (Invalid static member of anonymous class or union diagnosed too late)
PR c++/30301
* g++.dg/parse/unnamed2.C: New.
From-SVN: r208185
Jason Merrill [Wed, 26 Feb 2014 21:32:41 +0000 (16:32 -0500)]
re PR c++/60347 (r208153 breaks Firefox build)
PR c++/60347
PR lto/53808
* class.c (clone_function_decl): Don't note_vague_linkage_fn.
* init.c (build_vtbl_address): Do it here.
From-SVN: r208184
Jason Merrill [Wed, 26 Feb 2014 21:28:08 +0000 (16:28 -0500)]
re PR c++/59231 (gcc misses [-Werror=sign-compare] when inside a template)
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
Tim Shen [Wed, 26 Feb 2014 19:45:15 +0000 (19:45 +0000)]
regex.tcc (match_results<>::format, [...]): Update __out after calling std::copy.
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
Jason Merrill [Wed, 26 Feb 2014 17:08:20 +0000 (12:08 -0500)]
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 [Wed, 26 Feb 2014 17:01:12 +0000 (12:01 -0500)]
re PR c++/60182 (g++ segfault within template expansion using "using" aliasing)
PR c++/60182
* pt.c (unify): Ignore alias templates when deducing a template
template parameter.
From-SVN: r208177
Jason Merrill [Wed, 26 Feb 2014 16:51:14 +0000 (11:51 -0500)]
re PR c++/60345 (r208159 causes Firefox build error)
PR c++/60345
* g++.dg/conversion/ref1.C: New.
From-SVN: r208176
Jason Merrill [Wed, 26 Feb 2014 16:48:22 +0000 (11:48 -0500)]
re PR c++/60345 (r208159 causes Firefox build error)
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
Richard Biener [Wed, 26 Feb 2014 10:29:04 +0000 (10:29 +0000)]
re PR bootstrap/60343 (r208155 breaks bootstrap)
2014-02-26 Richard Biener <rguenther@suse.de>
PR bootstrap/60343
* lra-assigns.c (spill_for): Avoid mixed-sign comparison.
From-SVN: r208170
Ilya Tocar [Wed, 26 Feb 2014 09:31:15 +0000 (09:31 +0000)]
predicates.md (const1256_operand): Remove.
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 [Wed, 26 Feb 2014 09:08:45 +0000 (09:08 +0000)]
gcc/
* 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
Richard Biener [Wed, 26 Feb 2014 08:39:48 +0000 (08:39 +0000)]
re PR ipa/60327 (xalanbmk and dealII ICE in ipa-inline-analysis.c:3555)
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
Bin Cheng [Wed, 26 Feb 2014 01:49:35 +0000 (01:49 +0000)]
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
Andrew Pinski [Wed, 26 Feb 2014 00:51:56 +0000 (00:51 +0000)]
builtins.c (expand_builtin_thread_pointer): Create a new target when the target is NULL.
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
GCC Administrator [Wed, 26 Feb 2014 00:16:30 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r208162
Jason Merrill [Tue, 25 Feb 2014 21:27:51 +0000 (16:27 -0500)]
DR 1571
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 [Tue, 25 Feb 2014 21:27:44 +0000 (16:27 -0500)]
call.c (print_conversion_rejection): Handle n_arg of -2.
* call.c (print_conversion_rejection): Handle n_arg of -2.
(build_user_type_conversion_1): Pass it.
From-SVN: r208158
Jason Merrill [Tue, 25 Feb 2014 21:19:06 +0000 (16:19 -0500)]
re PR c++/55877 (Anon visibility issues)
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 [Tue, 25 Feb 2014 21:18:19 +0000 (16:18 -0500)]
decl2.c (finish_static_data_member_decl): Diagnose static data member in unnamed class.
* decl2.c (finish_static_data_member_decl): Diagnose static data
member in unnamed class.
From-SVN: r208156
Vladimir Makarov [Tue, 25 Feb 2014 20:34:44 +0000 (20:34 +0000)]
re PR rtl-optimization/60317 (find_hard_regno_for compile time hog in libvpx)
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
Jason Merrill [Tue, 25 Feb 2014 18:54:48 +0000 (13:54 -0500)]
re PR lto/53808 (Undefined symbol when building a library with lto)
PR lto/53808
* class.c (clone_function_decl): Call note_vague_linkage_fn for
defaulted virtual dtor.
From-SVN: r208153
Jason Merrill [Tue, 25 Feb 2014 18:53:45 +0000 (13:53 -0500)]
DR 1286 PR c++/60328
DR 1286
PR c++/60328
* pt.c (get_underlying_template): Fix equivalence calculation.
From-SVN: r208152
Doug Rupp [Tue, 25 Feb 2014 16:16:27 +0000 (16:16 +0000)]
2014-02-25 Doug Rupp <rupp@adacore.com>
* 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
Eric Botcazou [Tue, 25 Feb 2014 16:14:58 +0000 (16:14 +0000)]
* gcc-interface/trans.c (Pragma_to_gnu): Deal with Warning_As_Error.
From-SVN: r208149
Robert Dewar [Tue, 25 Feb 2014 15:52:52 +0000 (15:52 +0000)]
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
Ed Schonberg [Tue, 25 Feb 2014 15:50:32 +0000 (15:50 +0000)]
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
Arnaud Charlet [Tue, 25 Feb 2014 15:49:45 +0000 (16:49 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 15:48:05 +0000 (16:48 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 15:45:54 +0000 (16:45 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 15:35:36 +0000 (16:35 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 15:30:10 +0000 (16:30 +0100)]
[multiple changes]
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
Robert Dewar [Tue, 25 Feb 2014 15:27:16 +0000 (15:27 +0000)]
gnat_rm.texi: First set of documentation additions for predefined RM units.
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
Arnaud Charlet [Tue, 25 Feb 2014 15:20:43 +0000 (16:20 +0100)]
[multiple changes]
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
Robert Dewar [Tue, 25 Feb 2014 15:19:43 +0000 (15:19 +0000)]
binde.adb: Change messages to mention -gnatel instead of -gnatwl.
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
Arnaud Charlet [Tue, 25 Feb 2014 15:18:38 +0000 (16:18 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 15:15:44 +0000 (16:15 +0100)]
lib.ads, [...]: Implement pragma Compiler_Unit_Warning...
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 [Tue, 25 Feb 2014 15:11:39 +0000 (16:11 +0100)]
[multiple changes]
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
Hristian Kirtchev [Tue, 25 Feb 2014 15:05:39 +0000 (15:05 +0000)]
exp_ch6.adb (Add_Or_Save_Precondition): New routine.
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 [Tue, 25 Feb 2014 15:03:23 +0000 (15:03 +0000)]
2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
* 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
Arnaud Charlet [Tue, 25 Feb 2014 15:02:01 +0000 (16:02 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 14:59:33 +0000 (15:59 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 14:58:29 +0000 (15:58 +0100)]
[multiple changes]
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 [Tue, 25 Feb 2014 14:57:28 +0000 (15:57 +0100)]
[multiple changes]
2014-02-25 Yannick Moy <moy@adacore.com>
* sem_prag.adb: Minor reformatting to get consistent messages.
2014-02-25 Robert Dewar <dewar@adacore.com>
* checks.adb: Minor reformatting.
* sinfo.ads (Do_Range_Check): Document that this flag is never
passed to the back end.
From-SVN: r208129
Arnaud Charlet [Tue, 25 Feb 2014 14:55:43 +0000 (15:55 +0100)]
[multiple changes]
2014-02-25 Yannick Moy <moy@adacore.com>
* sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_prag.adb, sem_attr.adb,
sem_ch6.adb: Remove useless references to SPARK RM in error messages.
2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
* sem_res.adb (Appears_In_Check): New routine.
(Resolve_Entity_Name): Remove local variables Prev and
Usage_OK. Par is now a constant. Remove the parent chain traversal
as the placement of a volatile object with enabled property
Async_Writers and/or Effective_Reads must appear immediately
within a legal construct.
2014-02-25 Hristian Kirtchev <kirtchev@adacore.com>
* checks.adb (Apply_Selected_Range_Checks):
Alphabetize local constants and variables. Add comments.
Always insert a range check that requires runtime evaluation into
the tree.
From-SVN: r208128
Arnaud Charlet [Tue, 25 Feb 2014 14:53:55 +0000 (15:53 +0100)]
[multiple changes]
2014-02-25 Robert Dewar <dewar@adacore.com>
* sem_attr.adb, sem_ch6.adb, par-ch3.adb: Minor reformatting.
2014-02-25 Bob Duff <duff@adacore.com>
* s-tassta.adb (Finalize_Global_Tasks): Limit the number of loop
iterations while waiting for independent tasks to terminate;
if an independent task does not terminate, we do not want to
hang here. In that case, the thread will be terminated when the
process exits.
* s-taprop-linux.adb (Abort_Task): Fix Assert to allow for ESRCH.
2014-02-25 Ed Schonberg <schonberg@adacore.com>
* sem_prag.adb (Check_SPARK_Aspect_For_ASIS): New subprogram,
used to perform pre-analysis of the expression for SPARK
aspects that have a non-standard syntax, such as GLobal and
Initializes. The procedure applies to the original expression
in an aspect specification, prior to the analysis of the
corresponding pragma, in order to provide semantic information
for ASIS navigation purposes.
(Analyze_Global_In_Decl_List, Analyze_Initializes_In_Decl_Part):
Call new subprogram.
From-SVN: r208127