Georg-Johann Lay [Mon, 7 Jan 2013 15:57:08 +0000 (15:57 +0000)]
PR target/PR54461
PR target/PR54461
* doc/install.texi (Cross-Compiler-Specific Options): Document
--with-avrlibc.
From-SVN: r194978
Tejas Belagod [Mon, 7 Jan 2013 15:39:53 +0000 (15:39 +0000)]
arm_neon.h (vmovn_high_is16, [...]): Fix source operand number and update copyright.
2013-01-07 Tejas Belagod <tejas.belagod@arm.com>
* config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32,
vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64,
vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16,
vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32,
vqmovun_high_s64): Fix source operand number and update copyright.
From-SVN: r194977
Richard Biener [Mon, 7 Jan 2013 15:34:43 +0000 (15:34 +0000)]
re PR tree-optimization/55890 (calling a builtin func through a cast triggers an ICE)
2013-01-07 Richard Biener <rguenther@suse.de>
PR middle-end/55890
* gimple.h (gimple_call_builtin_p): New overload.
* gimple.c (validate_call): New function.
(gimple_call_builtin_p): Likewise.
* tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
Use gimple_call_builtin_p.
(find_func_clobbers): Likewise.
* tree-ssa-strlen.c (adjust_last_stmt): Likewise.
(strlen_optimize_stmt): Likewise.
* gcc.dg/torture/pr55890-1.c: New testcase.
* gcc.dg/torture/pr55890-2.c: Likewise.
From-SVN: r194975
James Greenhalgh [Mon, 7 Jan 2013 15:32:58 +0000 (15:32 +0000)]
[AARCH64] Make argument of ld1 intrinsics const.
gcc/
* config/aarch64/arm_neon.h (vld1_dup_*): Make argument const.
(vld1q_dup_*): Likewise.
(vld1_*): Likewise.
(vld1q_*): Likewise.
(vld1_lane_*): Likewise.
(vld1q_lane_*): Likewise.
From-SVN: r194974
Richard Biener [Mon, 7 Jan 2013 15:28:14 +0000 (15:28 +0000)]
lto-streamer.h (LTO_minor_version): Bump to 2.
2013-01-07 Richard Biener <rguenther@suse.de>
* lto-streamer.h (LTO_minor_version): Bump to 2.
From-SVN: r194973
James Greenhalgh [Mon, 7 Jan 2013 15:22:06 +0000 (15:22 +0000)]
[AARCH64] Add support for vector and scalar floating-point immediate loads.
gcc/
* config/aarch64/aarch64-protos.h
(aarch64_const_double_zero_rtx_p): Rename to...
(aarch64_float_const_zero_rtx_p): ...this.
(aarch64_float_const_representable_p): New.
(aarch64_output_simd_mov_immediate): Likewise.
* config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor
move immediate case.
* config/aarch64/aarch64.c
(aarch64_const_double_zero_rtx_p): Rename to...
(aarch64_float_const_zero_rtx_p): ...this.
(aarch64_print_operand): Allow printing of new constants.
(aarch64_valid_floating_const): New.
(aarch64_legitimate_constant_p): Check for valid floating-point
constants.
(aarch64_simd_valid_immediate): Likewise.
(aarch64_vect_float_const_representable_p): New.
(aarch64_float_const_representable_p): Likewise.
(aarch64_simd_imm_zero_p): Also allow for floating-point 0.0.
(aarch64_output_simd_mov_immediate): New.
* config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative.
(*movdf_aarch64): Likewise.
* config/aarch64/constraints.md (Ufc): New.
(Y): call aarch64_float_const_zero_rtx.
* config/aarch64/predicates.md (aarch64_fp_compare_operand): New.
gcc/testsuite/
* gcc.target/aarch64/fmovd.c: New.
* gcc.target/aarch64/fmovf.c: Likewise.
* gcc.target/aarch64/fmovd-zero.c: Likewise.
* gcc.target/aarch64/fmovf-zero.c: Likewise.
* gcc.target/aarch64/vect-fmovd.c: Likewise.
* gcc.target/aarch64/vect-fmovf.c: Likewise.
* gcc.target/aarch64/vect-fmovd-zero.c: Likewise.
* gcc.target/aarch64/vect-fmovf-zero.c: Likewise.
From-SVN: r194972
Richard Biener [Mon, 7 Jan 2013 14:06:26 +0000 (14:06 +0000)]
re PR tree-optimization/55888 (ICE in bitmap_set_replace_value, at tree-ssa-pre.c:867)
2013-01-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/55888
PR tree-optimization/55862
* tree-ssa-pre.c (phi_translate_1): Revert previous change.
(valid_in_sets): Check if a NAME has a leader in AVAIL_OUT,
not if it is contained therein.
* gcc.dg/torture/pr55888.c: New testcase.
From-SVN: r194971
Georg-Johann Lay [Mon, 7 Jan 2013 13:05:42 +0000 (13:05 +0000)]
t-avr: Typo.
* config/avr/t-avr: Typo.
From-SVN: r194969
Georg-Johann Lay [Mon, 7 Jan 2013 12:45:13 +0000 (12:45 +0000)]
re PR target/55243 (STAMP variable is not defined in t-avr)
PR55243
* config/avr/t-avr: Don't automatically rebuild
$(srcdir)/config/avr/t-multilib
$(srcdir)/config/avr/avr-tables.opt
$(srcdir)/doc/avr-mmcu.texi
(avr-mcus): New phony target to build them on request.
(s-avr-mlib, s-avr-mmcu-texi): Remove.
* avr/avr-mcus.def: Adjust comments.
From-SVN: r194968
Uros Bizjak [Mon, 7 Jan 2013 11:17:00 +0000 (12:17 +0100)]
i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
* config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove.
From-SVN: r194967
Tobias Burnus [Mon, 7 Jan 2013 11:10:53 +0000 (12:10 +0100)]
re PR fortran/55852 (internal compiler error: in gfc_build_intrinsic_call, at fortran/expr.c:4647)
2013-01-07 Tobias Burnus <burnus@net-b.de>
Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55852
* expr.c (gfc_build_intrinsic_call): Avoid clashes
with user's procedures.
* gfortran.h (gfc_build_intrinsic_call): Update prototype.
* simplify.c (gfc_simplify_size): Update call.
* class.c (finalization_scalarizer, finalization_get_offset,
finalizer_insert_packed_call, generate_finalization_wrapper):
Clean up by using gfc_build_intrinsic_call.
2013-01-07 Tobias Burnus <burnus@net-b.de>
PR fortran/55852
* gfortran.dg/intrinsic_size_3.f90: New.
Co-Authored-By: Thomas Koenig <tkoenig@gcc.gnu.org>
From-SVN: r194966
Eric Botcazou [Mon, 7 Jan 2013 10:39:45 +0000 (10:39 +0000)]
decl.c (gnat_to_gnu_entity): Adjust comment about type extension with discriminants.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust
comment about type extension with discriminants.
<E_Record_Subtype>: Remove useless test and reorder conditions.
(elaborate_entity) <E_Record_Subtype>: Likewise.
From-SVN: r194965
Richard Biener [Mon, 7 Jan 2013 10:14:48 +0000 (10:14 +0000)]
re PR ada/864 (--program-suffix is ignored (for ada))
2013-01-04 Richard Biener <rguenther@suse.de>
PR ada/864
* gcc-interface/Make-lang.in (ada.install-common): Always apply
program_transform_name.
From-SVN: r194964
Tobias Burnus [Mon, 7 Jan 2013 08:36:16 +0000 (09:36 +0100)]
re PR fortran/55763 (Issues with some simpler CLASS(*) programs)
2012-01-07 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* resolve.c (resolve_select_type): Reject intrinsic types for
a non-unlimited-polymorphic selector.
2012-01-07 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* gfortran.dg/select_type_32.f90: New.
From-SVN: r194962
Dodji Seketeli [Mon, 7 Jan 2013 08:06:46 +0000 (09:06 +0100)]
PR c++/55311 - Cannot specialize alias template with arg of type array of char
Consider this test case:
1 template <const char *const C, typename T>
2 struct A
3 {};
4
5 struct B {};
6
7 extern constexpr char HELLO_WORLD[] = "hello world";
8
9 A<HELLO_WORLD, B> g; // <-- This works fine
10
11 template <typename T>
12 using PartiallySpecialized = A<HELLO_WORLD, T>; // <-- This fails
13
At line 12 G++ fails to instantiate the alias template that has a
string variable initialized with a string literal, with the error
message:
test.cc:12:46: error: ‘"hello world"’ is not a valid template argument of type ‘const char*’ because ‘"hello world"’ is not a variable
using PartiallySpecialized = A<HELLO_WORLD, T>; // <-- This fails
^
Note that instantiating the template A at line 9 with the same
arguments as in the problematic case above works.
This happens in the context of lookup_template_class_1, when it handles
the alias template instantiation A<HELLO_WORLD, T> and thus passes the
VAR_DECL for HELLO_WORLD to convert_nontype_argument.
Note that from there decay_conversion replaces the the VAR_DECL with
its STRING_CST initializer[1]. Latter on, convert_nontype_argument
checks that the HELLO_WORLD constant it received as argument was
indeed a VAR_DECL:
else
{
tree decl;
decl = ((TREE_CODE (expr) == ADDR_EXPR)
? TREE_OPERAND (expr, 0) : expr);
if (TREE_CODE (decl) != VAR_DECL)
{
error ("%qE is not a valid template argument of type %qT "
"because %qE is not a variable",
expr, type, decl);
return NULL_TREE;
}
But the issue is, that VAR_DECL has been replaced by STRING_CST, so
the last 'if' above fails.
The fix is to teach decay_conversion to return the address of array,
rather than returning its initializer.
Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.
gcc/cp/
PR c++/55311
* pt.c (decay_conversion): Do not return the initializer of an array.
gcc/testsuite/
PR c++/55311
* g++.dg/cpp0x/alias-decl-30.C: New test.
* g++.dg/init/array21.C: New test.
From-SVN: r194961
Dodji Seketeli [Mon, 7 Jan 2013 08:03:33 +0000 (08:03 +0000)]
PR c++/52343 - error with alias template as template template argument
In the example accompanying this patch, check_instantiated_arg tries
to ensure that a non-type template argument should be a constant if it
has integral or enumeration type.
The problem is that an alias template which type-id is, e.g, an
integer, looks like an argument that has integral/enumeration type:
its TREE_TYPE is an integer type. So check_instantiated_arg
mistenkaly barks that this integral non-type argument is not a
constant.
Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.
gcc/cp/
PR c++/52343
* pt.c (check_instantiated_arg): Allow type template arguments.
gcc/testsuite/
PR c++/52343
* g++.dg/cpp0x/alias-decl-29.C: New test.
From-SVN: r194960
Jonathan Wakely [Mon, 7 Jan 2013 00:50:16 +0000 (00:50 +0000)]
re PR libstdc++/55847 (mistake bad_weak_ptr::what() message)
PR libstdc++/55847
* src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
* testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
string.
PR libstdc++/55728
* include/std/functional (bad_function_call::what()): Declare.
* src/c++11/functional.cc (bad_function_call::what()): Define.
* config/abi/pre/gnu.ver (bad_function_call::what()): Export.
* testsuite/20_util/bad_function_call/what.cc: New.
From-SVN: r194958
GCC Administrator [Mon, 7 Jan 2013 00:18:25 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194957
Jonathan Wakely [Sun, 6 Jan 2013 21:58:18 +0000 (21:58 +0000)]
unordered_map.h: Fix typo in comments.
* include/bits/unordered_map.h: Fix typo in comments.
* doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
counts for unordered associative containers.
From-SVN: r194954
Paul Thomas [Sun, 6 Jan 2013 21:32:48 +0000 (21:32 +0000)]
PR fortran/PR53876 PR fortran/PR54990 PR fortran/PR54992
2013-01-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/PR53876
PR fortran/PR54990
PR fortran/PR54992
* trans-array.c (build_array_ref): Check the TYPE_CANONICAL
to see if it is GFC_CLASS_TYPE_P.
* trans-expr.c (gfc_get_vptr_from_expr): The same.
(gfc_conv_class_to_class): If the types are not the same,
cast parmese->expr to the type of ctree.
* trans-types.c (gfc_get_derived_type): GFC_CLASS_TYPE_P of
CLASS components must be set.
2013-01-06 Paul Thomas <pault@gcc.gnu.org>
PR fortran/PR53876
PR fortran/PR54990
PR fortran/PR54992
* gfortran.dg/class_array_15.f03: New test.
From-SVN: r194953
Richard Sandiford [Sun, 6 Jan 2013 21:27:37 +0000 (21:27 +0000)]
file-find.c, [...]: Add FSF as copyright holder.
gcc/
* file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder.
From-SVN: r194952
Jonathan Wakely [Sun, 6 Jan 2013 21:19:39 +0000 (21:19 +0000)]
* doc/xml/manual/abi.xml: Update library and symbol versions.
From-SVN: r194950
Mikael Morin [Sun, 6 Jan 2013 15:50:09 +0000 (15:50 +0000)]
re PR fortran/42769 ([OOP] ICE in resolve_typebound_procedure)
PR fortran/42769
PR fortran/45836
PR fortran/45900
* module.c (read_module): Don't reuse local symtree if the associated
symbol isn't exactly the one wanted. Don't reuse local symtree if it is
ambiguous.
* resolve.c (resolve_call): Use symtree's name instead of symbol's to
lookup the symtree.
PR fortran/42769
PR fortran/45836
PR fortran/45900
* gfortran.dg/use_23.f90: New test.
* gfortran.dg/use_24.f90: New test.
* gfortran.dg/use_25.f90: New test.
* gfortran.dg/use_26.f90: New test.
* gfortran.dg/use_27.f90: New test.
From-SVN: r194949
Tobias Burnus [Sun, 6 Jan 2013 12:43:45 +0000 (13:43 +0100)]
re PR fortran/54678 (second call to get_environment_variable gives valgrind warning with 8-byte integers)
2013-01-06 Tobias Burnus <burnus@net-b.de>
PR fortran/54678
* intrinsics/env.c (get_environment_variable_i8): Don't use
uninitialized variable.
From-SVN: r194948
Eric Botcazou [Sun, 6 Jan 2013 12:37:11 +0000 (12:37 +0000)]
* gnatvsn.ads (Current_Year): Bump to 2013.
From-SVN: r194947
Olivier Hainque [Sun, 6 Jan 2013 12:28:58 +0000 (12:28 +0000)]
decl.c (gnat_to_gnu_field): Emit a specialized diagnostic for component size mismatch wrt volatile requirements.
* gcc-interface/decl.c (gnat_to_gnu_field): Emit a specialized
diagnostic for component size mismatch wrt volatile requirements.
Add a gcc_unreachable() at the end of the checks for size. Split
the check on volatile for positions into one check on atomic and
a subsequent one on volatile.
From-SVN: r194946
Eric Botcazou [Sun, 6 Jan 2013 12:10:06 +0000 (12:10 +0000)]
* gcc-interface/decl.c (elaborate_entity) <E_Record_Type>: Delete.
From-SVN: r194945
Eric Botcazou [Sun, 6 Jan 2013 11:58:36 +0000 (11:58 +0000)]
decl.c (gnat_to_gnu_entity): Do not pack the field of the record type made for a misaligned type.
* gcc-interface/decl.c (gnat_to_gnu_entity) <discrete_type>: Do not
pack the field of the record type made for a misaligned type.
From-SVN: r194942
Richard Sandiford [Sun, 6 Jan 2013 11:53:01 +0000 (11:53 +0000)]
insert_fn_imps.hpp: Fix typo in copyright years.
libstdc++-v3/
* include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
in copyright years.
* testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
From-SVN: r194941
Richard Sandiford [Sun, 6 Jan 2013 11:48:04 +0000 (11:48 +0000)]
gen-mul-tables.cc: Put copyright on one line.
gcc/
* config/tilepro/gen-mul-tables.cc: Put copyright on one line.
From-SVN: r194940
Eric Botcazou [Sun, 6 Jan 2013 11:41:47 +0000 (11:41 +0000)]
decl.c (annotate_value): Be prepared for discriminants inherited from parent record types.
* gcc-interface/decl.c (annotate_value) <COMPONENT_REF>: Be prepared
for discriminants inherited from parent record types.
From-SVN: r194939
GCC Administrator [Sun, 6 Jan 2013 00:18:43 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194936
David Edelsohn [Sat, 5 Jan 2013 14:04:56 +0000 (14:04 +0000)]
aix53.h (LIB_SPEC): Add -lpthreads when compiling to generate profiling.
* config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling
to generate profiling.
* config/rs6000/aix64.h (LIB_SPEC): Same.
From-SVN: r194930
Mikael Morin [Sat, 5 Jan 2013 13:26:48 +0000 (13:26 +0000)]
Add PR reference in ChangeLogs
From-SVN: r194929
Steven G. Kargl [Sat, 5 Jan 2013 13:20:08 +0000 (13:20 +0000)]
re PR fortran/55827 (ICE with multiple fortran modules and character lenght determined by an interfaced pure function)
2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* class.c (gfc_fix_class_refs): Adapt ts initialization for the case
e->symtree == NULL.
* trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* gfortran.dg/use_22.f90: New test.
Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r194928
Tobias Burnus [Sat, 5 Jan 2013 09:11:19 +0000 (10:11 +0100)]
class.c (finalize_component): Used passed offset expr.
2013-01-05 Tobias Burnus <burnus@net-b.de>
* class.c (finalize_component): Used passed offset expr.
(finalization_get_offset): New static function.
(finalizer_insert_packed_call, generate_finalization_wrapper):
Use it to handle noncontiguous arrays.
From-SVN: r194927
GCC Administrator [Sat, 5 Jan 2013 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r194924
Andrew Pinski [Fri, 4 Jan 2013 22:30:37 +0000 (22:30 +0000)]
aarch64.c (aarch64_fixed_condition_code_regs): New function.
2013-01-04 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs):
New function.
(TARGET_FIXED_CONDITION_CODE_REGS): Define.
2013-01-04 Andrew Pinski <apinski@cavium.com>
* gcc.target/aarch64/cmp-1.c: New testcase.
From-SVN: r194920
Tobias Burnus [Fri, 4 Jan 2013 22:16:26 +0000 (23:16 +0100)]
trans.c (gfc_build_final_call): New function.
2013-01-04 Tobias Burnus <burnus@net-b.de>
* trans.c (gfc_build_final_call): New function.
* trans.h (gfc_build_final_call, gfc_conv_scalar_to_descriptor):
New function prototypes.
* trans-expr.c (gfc_conv_scalar_to_descriptor): Renamed from
conv_scalar_to_descriptor, removed static attribute.
(gfc_conv_procedure_call): Honor renaming.
From-SVN: r194919
Tobias Burnus [Fri, 4 Jan 2013 21:51:34 +0000 (22:51 +0100)]
intrinsic.c (add_functions): New internal intrinsic function GFC_PREFIX ("stride").
2013-01-04 Tobias Burnus <burnus@net-b.de>
* intrinsic.c (add_functions): New internal intrinsic
function GFC_PREFIX ("stride").
* gfortran.h (gfc_isym_id): Add GFC_ISYM_STRIDE.
* intrinsic.h (gfc_resolve_stride): New prototypes.
* iresolve.c (gfc_resolve_stride): New function.
* trans-intrinsic.c (conv_intrinsic_stride): New static
function.
(gfc_conv_intrinsic_function): Use it.
From-SVN: r194918
Tobias Burnus [Fri, 4 Jan 2013 21:48:21 +0000 (22:48 +0100)]
class.c (gfc_find_intrinsic_vtab): Add _final component.
2013-01-04 Tobias Burnus <burnus@net-b.de>
* class.c (gfc_find_intrinsic_vtab): Add _final
component.
From-SVN: r194917
Paul Thomas [Fri, 4 Jan 2013 20:50:15 +0000 (20:50 +0000)]
re PR fortran/55172 ([OOP] gfc_variable_attr(): Bad array reference in SELECT TYPE)
2013-01-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55172
* match.c (copy_ts_from_selector_to_associate): Remove call to
gfc_resolve_expr and replace it with explicit setting of the
array reference type.
* resolve.c (resolve_select_type): It is an error if the
selector is coindexed.
2013-01-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55172
* gfortran.dg/select_type_31.f03: New test.
From-SVN: r194916
Ian Lance Taylor [Fri, 4 Jan 2013 19:00:06 +0000 (19:00 +0000)]
re PR other/54800 (libiberty/simple-object-mach-o.c:704: possible optimisation ?)
PR other/54800
* simple-object-mach-o.c (simple_object_mach_o_segment): Don't
bother to zero out a buffer we are about to set anyhow.
From-SVN: r194914
Uros Bizjak [Fri, 4 Jan 2013 18:19:22 +0000 (19:19 +0100)]
i386.c (ix86_legitimize_address): Call convert_to_mode unconditionally.
* config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode
unconditionally.
(ix86_expand_move): Ditto.
(ix86_zero_extend_to_Pmode): Ditto.
(ix86_expand_call): Ditto.
(ix86_expand_special_args_builtin): Ditto.
(ix86_expand_builtin): Ditto.
From-SVN: r194913
Jason Merrill [Fri, 4 Jan 2013 16:50:28 +0000 (11:50 -0500)]
re PR c++/55877 (Anon visibility issues)
PR c++/55877
* decl.c (reset_type_linkage, bt_reset_linkage): New.
(grokdeclarator): Use reset_type_linkage.
* name-lookup.c (binding_table_foreach): Handle null table.
* tree.c (decl_anon_ns_mem_p): Check TYPE_MAIN_DECL, not TYPE_NAME.
From-SVN: r194910
Paolo Carlini [Fri, 4 Jan 2013 15:30:24 +0000 (15:30 +0000)]
PR c++/54526 (again)
/libcpp
2013-01-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54526 (again)
* lex.c (_cpp_lex_direct): In C++11 mode, implement 2.5 p3, bullet 2.
/gcc/cp
2013-01-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54526 (again)
* parser.c (cp_parser_template_id): Revert core of previous change
(keep adjusted inform message).
/gcc/testsuite
2013-01-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54526 (again)
* g++.dg/cpp0x/parse2.C: Extend.
* g++.old-deja/g++.other/crash28.C: Adjust.
From-SVN: r194909
Richard Biener [Fri, 4 Jan 2013 13:28:53 +0000 (13:28 +0000)]
re PR tree-optimization/55862 (ICE in compute_antic, at tree-ssa-pre.c:2495)
2013-01-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/55862
* tree-ssa-pre.c (phi_translate_1): Valueize SSA names after
translating them through PHI nodes.
* gcc.dg/torture/pr55862.c: New testcase.
From-SVN: r194906
Martin Jambor [Fri, 4 Jan 2013 13:20:38 +0000 (14:20 +0100)]
re PR tree-optimization/55755 (Invalid VIEW_CONVERT_EXPR produced by SRA)
2013-01-04 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55755
* tree-sra.c (sra_modify_assign): Do not check that an access has no
children when trying to avoid producing a VIEW_CONVERT_EXPR.
testsuite/
* gcc.dg/torture/pr55755.c: New test.
* gcc.dg/tree-ssa/sra-13.c: Likewise.
* gcc.dg/tree-ssa/pr45144.c: Update.
From-SVN: r194905
Jakub Jelinek [Fri, 4 Jan 2013 12:49:55 +0000 (13:49 +0100)]
Update Copyright years for files modified in 2011 and/or 2012.
From-SVN: r194903
Marek Polacek [Fri, 4 Jan 2013 11:15:55 +0000 (11:15 +0000)]
re PR middle-end/55859 (Mention -Og/-Ofast in "error: argument to '-O' should be a non-negative integer")
PR55859.
From-SVN: r194901
Richard Biener [Fri, 4 Jan 2013 10:45:37 +0000 (10:45 +0000)]
re PR middle-end/55863 (Fails to fold (i + 2) - (i + 1) to 1)
2013-01-04 Richard Biener <rguenther@suse.de>
PR middle-end/55863
* fold-const.c (split_tree): Undo -X - 1 to ~X folding for
reassociation.
* gcc.dg/fold-reassoc-2.c: New testcase.
From-SVN: r194899
Nick Clifton [Fri, 4 Jan 2013 10:21:55 +0000 (10:21 +0000)]
lib1funcs.S: Only provide CALLT support functions if the CALLT instruction is supported.
* config/v850/lib1funcs.S: Only provide CALLT support functions if
the CALLT instruction is supported.
From-SVN: r194898
Arnaud Charlet [Fri, 4 Jan 2013 10:09:29 +0000 (11:09 +0100)]
[multiple changes]
2013-01-04 Robert Dewar <dewar@adacore.com>
* sinfo.ads: Clean up order of N_xxx subtypes
2013-01-04 Vincent Celier <celier@adacore.com>
* prj-conf.adb (Check_Target): Allow --autoconf= with no target.
From-SVN: r194897
Arnaud Charlet [Fri, 4 Jan 2013 10:08:58 +0000 (11:08 +0100)]
[multiple changes]
2013-01-04 Robert Dewar <dewar@adacore.com>
* warnsw.adb: Minor fixes to -gnatw.d handling.
2013-01-04 Robert Dewar <dewar@adacore.com>
* einfo.adb, atree.adb: Enlarge entities to make 63 more flags, 6 more
fields.
2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
* gnat_ugn.texi: Fix typo.
2013-01-04 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Document alignment choice for subtypes.
2013-01-04 Robert Dewar <dewar@adacore.com>
* validsw.ads: Minor fix to comment.
2013-01-04 Doug Rupp <rupp@adacore.com>
* Makefile.rtl (GNATRTL_NONTASKING_OBJS,
GNATRTL_ALTIVEC_OBJS): Factor g-al* objects.
* gcc-interface/Makefile.in (ADA_EXCLUDE_SRCS): Add g-al* sources.
(GNATRTL_ALTIVEC_OBJS): Override to null for VMS.
Rename leon vxworks toolchain as leon-wrs-vxworks.
* gcc-interface/Make-lang.in: Update dependencies
2013-01-04 Pascal Obry <obry@adacore.com>
* prj.ads (For_Each_Source): Add Locally_Removed parameter.
(Source_Iterator): Add Locally_Removed field.
* prj.adb (For_Each_Source): Ignore Locally_Removed files if needed.
(Next): Likewise.
2013-01-04 Robert Dewar <dewar@adacore.com>
* exp_attr.adb: Minor reformatting.
2013-01-04 Robert Dewar <dewar@adacore.com>
* checks.adb (Insert_Valid_Check): Fix handling of renamed
packed array element.
* exp_ch4.adb (Expand_Concatenate): Fix some missing parent
fields in generated code.
* exp_util.adb (Side_Effect_Free): Improve detection of cases
needing renaming.
2013-01-04 Robert Dewar <dewar@adacore.com>
* sinfo.ads: Clean up order of N_xxx subtypes
2013-01-04 Vincent Celier <celier@adacore.com>
* prj-conf.adb (Check_Target): Allow --autoconf= with no target.
From-SVN: r194896
Robert Dewar [Fri, 4 Jan 2013 09:28:49 +0000 (09:28 +0000)]
types.ads, [...]: Minor reformatting.
2013-01-04 Robert Dewar <dewar@adacore.com>
* types.ads, prj-conf.adb, par-tchk.adb: Minor reformatting.
2013-01-04 Robert Dewar <dewar@adacore.com>
* par-ch6.adb (P_Subprogram): Better handling of missing IS
after expression function.
* par-util.adb (No_Constraint): Improve handling to avoid bad warnings.
2013-01-04 Robert Dewar <dewar@adacore.com>
* exp_util.ads, exp_util.adb (Insert_Actions): In expression with
actions case, new actions are appended to the sequence rather than
prepended.
2013-01-04 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Document -gnatw.d/w.D (does no apply in VMS mode).
* usage.adb: Add lines for -gnatw.d/w.D switches.
* warnsw.adb: Minor fixes (some missing cases of setting
Warning_Doc_Switch). Reject -gnatw.d and -gnatw.D in VMS mode.
From-SVN: r194895
Arnaud Charlet [Fri, 4 Jan 2013 09:25:59 +0000 (10:25 +0100)]
[multiple changes]
2013-01-04 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Remove_Side_Effects): Make sure scope suppress
is restored on exit.
2013-01-04 Robert Dewar <dewar@adacore.com>
* usage.adb: Document -gnateF (check overflow for predefined Float).
2013-01-04 Robert Dewar <dewar@adacore.com>
* sem_res.adb (Resolve_Type_Conversion): Remove incorrect
prevention of call to Apply_Type_Conversion_Checks, which resulted
in missing check flags in formal mode.
2013-01-04 Vincent Celier <celier@adacore.com>
* makeutl.ads (Db_Switch_Args): New table used by gprbuild.
* prj-conf.adb (Check_Builder_Switches): Check for switches
--config= (Get_Db_Switches): New procedure to get the --db
switches so that they are used when invoking gprconfig in
auto-configuration.
(Do_Autoconf): When invoking gprconfig, use the --db switches, if any.
From-SVN: r194894
Arnaud Charlet [Fri, 4 Jan 2013 09:24:06 +0000 (10:24 +0100)]
[multiple changes]
2013-01-04 Pascal Obry <obry@adacore.com>
* prj-nmsc.adb: Minor reformatting.
2013-01-04 Vincent Celier <celier@adacore.com>
* makeutl.ads (Root_Environment): New variable, moved rom
gprbuild (Load_Standard_Base): New Boolean variable, moved
from gprbuild.
* prj-conf.adb (Check_Builder_Switches): New procedure to check
for switch --RTS in package Builder. If a runtime specified
by --RTS is a relative path name, but not a base name, then
find the path on the Project Search Path.
(Do_Autoconf): Call Check_Builder_Switches.
(Locate_Runtime): New procedure, moved from gprbuild, to get the
absolute paths of runtimes when they are not specified as a base name.
* prj-conf.ads (Locate_Runtime): New procedure, moved from gprbuild.
From-SVN: r194893
Ed Schonberg [Fri, 4 Jan 2013 09:21:55 +0000 (09:21 +0000)]
sem_ch3.adb (Build_Private_Derived_Type): Set Has_Private_Ancestor on type derived from an untagged private type whose...
2013-01-04 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Build_Private_Derived_Type): Set
Has_Private_Ancestor on type derived from an untagged private
type whose full view has discriminants
* sem_aggr.adb (Resolve_Record_Aggregate): Reject non-extension
aggregate for untagged record type with private ancestor.
From-SVN: r194892
Thomas Quinot [Fri, 4 Jan 2013 09:19:49 +0000 (09:19 +0000)]
sem_elab.adb, [...]: Minor reformatting.
2013-01-04 Thomas Quinot <quinot@adacore.com>
* sem_elab.adb, sem_ch3.adb: Minor reformatting.
From-SVN: r194891
Arnaud Charlet [Fri, 4 Jan 2013 09:18:25 +0000 (10:18 +0100)]
[multiple changes]
2013-01-04 Robert Dewar <dewar@adacore.com>
* table.adb: Minor reformatting.
2013-01-04 Ed Schonberg <schonberg@adacore.com>
* sem_ch10.adb (Check_Redundant_Withs): A with_clause that does
not come from source does not generate a warning for redundant
with_clauses.
2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb, aspects.ads: Add Aspect_Global to all relevant tables.
* par-prag.adb: Add pragma Global to the list of pragmas that
do not need special processing by the parser.
* sem_ch13.adb (Analyze_Aspect_Specifications): Convert aspect
Global into a pragma without any form of legality checks. The
work is done by Analyze_Pragma. The aspect and pragma are both
marked as needing delayed processing. Insert the corresponding
pragma of aspect Abstract_State in the visible declarations of the
related package.
(Check_Aspect_At_Freeze_Point): Aspect Global
does not need processing even though it is marked as delayed.
Alphabetize the list on aspect names.
* sem_prag.adb: Add a value for pragma Global in table Sig_Flags.
(Analyze_Pragma): Add ??? comment about the grammar of pragma
Abstract_State. Move the error location from the pragma to the
state to improve the quality of error placement. Add legality
checks for pragma Global.
* snames.ads-tmpl Add the following specially recognized names
2013-01-04 Eric Botcazou <ebotcazou@adacore.com>
* sem_ch3.adb: Fix minor typo.
2013-01-04 Ed Schonberg <schonberg@adacore.com>
* par-ch13.adb (Aspect_Specifications_Present): In Strict mode,
accept an aspect name followed by a comma, indicating a defaulted
boolean aspect.
From-SVN: r194890
Arnaud Charlet [Fri, 4 Jan 2013 09:14:29 +0000 (10:14 +0100)]
2013-01-04 Joel Brobecker <brobecker@adacore.com brobecker>
* gnat_ugn.texi: Document procedure to codesign GDB on Darwin.
Update doc on gnattest --separates switch.
2013-01-04 Thomas Quinot <quinot@adacore.com>
* s-chepoo.ads: Minor reformatting.
2013-01-04 Arnaud Charlet <charlet@adacore.com>
* usage.adb: Remove mention of -gnatN in usage.
From-SVN: r194889
Robert Dewar [Fri, 4 Jan 2013 09:12:00 +0000 (09:12 +0000)]
exp_prag.adb, [...]: Minor reformatting.
2013-01-04 Robert Dewar <dewar@adacore.com>
* exp_prag.adb, gnatcmd.adb, exp_util.adb, table.adb, sem_prag.adb,
freeze.adb, sem_ch4.adb, sem_warn.adb, opt.ads, exp_aggr.adb,
prj-conf.adb, sem_ch13.adb: Minor reformatting.
From-SVN: r194888
Arnaud Charlet [Fri, 4 Jan 2013 09:08:50 +0000 (10:08 +0100)]
[multiple changes]
2013-01-04 Thomas Quinot <quinot@adacore.com>
* sinfo.ads: Minor documentation update.
2013-01-04 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb, einfo.adb (Analyze_Object_Declaration): Do not set Ekind
before resolving initialization expression.
2013-01-04 Hristian Kirtchev <kirtchev@adacore.com>
* checks.adb (Generate_Index_Checks): Delay the generation of
the check for an indexed component where the prefix mentions
Loop_Entry until the attribute has been properly expanded.
* exp_ch5.adb (Expand_Loop_Entry_Attributes): Perform minor
decoration of the constant that captures the value of Loop_Entry's
prefix at the entry point into a loop. Generate index checks
for an attribute reference that has been transformed into an
indexed component.
2013-01-04 Thomas Quinot <quinot@adacore.com>
* exp_prag.adb, exp_util.adb, exp_util.ads, freeze.adb, exp_aggr.adb,
sem_ch13.adb (Exp_Aggr.Collect_Initialization_Statements): Nothing to
do if Obj is already frozen.
(Exp_Util.Find_Init_Call): Rename to...
(Exp_Util.Remove_Init_Call): New subprogram, renamed from
Find_Init_Call. Remove the initialization call from the enclosing
list if found, and if it is from an Initialization_Statements
attribute, reset it.
(Exp_Util.Append_Freeze_Action): Minor code reorganization.
(Exp_Util.Append_Freeze_Actions): Ensure a freeze node has been
allocated (as is already done in Append_Freeze_Action).
(Freeze.Freeze_Entity): For an object with captured
Initialization_Statements and non-delayed freezeing, unwrap the
initialization statements and insert and them directly in the
enclosing list.
(Sem_Ch13.Check_Address_Clause): For an object
with Initialization_Statements and an address clause, unwrap the
initialization statements when moving them to the freeze actions.
From-SVN: r194887
Tobias Burnus [Fri, 4 Jan 2013 08:59:47 +0000 (09:59 +0100)]
re PR fortran/55763 (Issues with some simpler CLASS(*) programs)
2014-01-04 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* decl.c (gfc_match_null): Parse and reject MOLD.
2014-01-04 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* gfortran.dg/null_7.f90: New.
From-SVN: r194886
Tobias Burnus [Fri, 4 Jan 2013 08:57:58 +0000 (09:57 +0100)]
re PR fortran/55854 (ICE on intent(out) dummy argument with unlimited polymorphic component)
2013-01-03 Tobias Burnus <burnus@net-b.de>
PR fortran/55854
PR fortran/55763
* class.c (gfc_class_null_initializer): Fix finding the vtab.
(gfc_find_intrinsic_vtab): Use BT_VOID for some components.
2013-01-03 Tobias Burnus <burnus@net-b.de>
PR fortran/55854
PR fortran/55763
* gfortran.dg/unlimited_polymorphic_3.f03: Remove invalid code.
* gfortran.dg/unlimited_polymorphic_7.f90: New.
* gfortran.dg/unlimited_polymorphic_8.f90: New.
From-SVN: r194885
John David Anglin [Fri, 4 Jan 2013 04:04:55 +0000 (04:04 +0000)]
Adjust log entry.
From-SVN: r194881
John David Anglin [Fri, 4 Jan 2013 03:55:43 +0000 (03:55 +0000)]
re PR target/53789 (ICE in gen_reg_rtx, at emit-rtl.c:864/865 when compiling GNU MPFR on parisc)
PR target/53789
* config/pa/pa.md (movsi): Revert previous change.
* pa.c (pa_legitimate_constant_p): Reject all TLS symbol references.
From-SVN: r194879
GCC Administrator [Fri, 4 Jan 2013 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194878
Richard Henderson [Thu, 3 Jan 2013 23:26:13 +0000 (15:26 -0800)]
i386: Fix gcc.dg/torture/tls/tls-reload-1.c
* config/i386/i386.c (ix86_expand_move): Always assign to op1
after eliminating TLS symbols.
From-SVN: r194873
Jason Merrill [Thu, 3 Jan 2013 20:36:49 +0000 (15:36 -0500)]
re PR c++/55419 (ICE in gimplify_init_ctor_preeval, at gimplify.c:3587)
PR c++/55419
PR c++/55753
* pt.c (tsubst_copy_and_build) [TARGET_EXPR]: Don't touch
TREE_CONSTANT.
From-SVN: r194870
Jason Merrill [Thu, 3 Jan 2013 20:36:14 +0000 (15:36 -0500)]
re PR c++/55842 (C++11 ICE with boost multi-precision and boost variant)
PR c++/55842
* semantics.c (trait_expr_value): Call maybe_instantiate_noexcept.
From-SVN: r194869
Marc Glisse [Thu, 3 Jan 2013 20:06:49 +0000 (21:06 +0100)]
re PR bootstrap/50167 (gmp memory functions are extern "C" (graphite))
2013-01-03 Marc Glisse <marc.glisse@inria.fr>
PR bootstrap/50167
gcc/
* graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf.
* graphite-poly.c (debug_gmp_value): Likewise.
PR bootstrap/50177
libcpp/
* line-map.c (get_combined_adhoc_loc): Cast from extern "C" type.
(new_linemap): Likewise.
(linemap_enter_macro): Likewise.
From-SVN: r194868
Richard Sandiford [Thu, 3 Jan 2013 18:51:57 +0000 (18:51 +0000)]
tls-reload-1.c (main): Make testing more thorough.
gcc/testsuite/
* gcc.dg/torture/tls/tls-reload-1.c (main): Make testing more thorough.
From-SVN: r194867
Jason Merrill [Thu, 3 Jan 2013 18:34:48 +0000 (13:34 -0500)]
re PR c++/55856 (ICE on tuple with rvalue ref member)
PR c++/55856
* g++.dg/init/array34.C: Check gimple dump, not assembler.
From-SVN: r194866
Jason Merrill [Thu, 3 Jan 2013 18:31:23 +0000 (13:31 -0500)]
re PR c++/55856 (ICE on tuple with rvalue ref member)
PR c++/55856
* semantics.c (build_data_member_initialization): Handle DECL_EXPR.
From-SVN: r194865
Uros Bizjak [Thu, 3 Jan 2013 18:01:20 +0000 (19:01 +0100)]
ChangeLog: Fix.
* ChangeLog: Fix.
* testsuite/ChangeLog: Ditto.
From-SVN: r194863
Uros Bizjak [Thu, 3 Jan 2013 17:16:08 +0000 (18:16 +0100)]
re PR target/55712 (cpuinfo.c doesn't compile for x86-64 with medium memory model)
PR target/55712
* config/i386/i386-c.c (ix86_target_macros_internal): Depending on
selected code model, define __code_mode_small__, __code_model_medium__,
__code_model_large__, __code_model_32__ or __code_model_kernel__.
* config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
xchg temporary register with %k. Declare temporary register as
early clobbered.
[__x86_64__]: For medium and large code models, preserve %rbx register.
From-SVN: r194862
H.J. Lu [Thu, 3 Jan 2013 16:53:54 +0000 (16:53 +0000)]
Fix ChangeLog entry for PR lto/55466
From-SVN: r194861
Jason Merrill [Thu, 3 Jan 2013 16:51:41 +0000 (11:51 -0500)]
re PR c++/53650 (large array causes huge memory use)
PR c++/53650
* call.c (type_has_extended_temps): New.
* cp-tree.h: Declare it.
* decl.c (check_initializer): Use build_aggr_init for arrays
if it is false.
* init.c (build_vec_init): Avoid mixed signed/unsigned arithmetic.
From-SVN: r194860
Richard Biener [Thu, 3 Jan 2013 16:38:29 +0000 (16:38 +0000)]
tree-data-ref.c (dump_conflict_function): Use less vertical spacing.
2013-01-03 Richard Biener <rguenther@suse.de>
* tree-data-ref.c (dump_conflict_function): Use less vertical
spacing.
(dump_subscript): Adjust.
(finalize_ddr_dependent): Do not dump redundant info.
(analyze_siv_subscript): Adjust.
(subscript_dependence_tester): Likewise.
(compute_affine_dependence): Likewise.
From-SVN: r194858
Janus Weil [Thu, 3 Jan 2013 16:14:54 +0000 (17:14 +0100)]
re PR fortran/55855 ([OOP] incorrect warning with procedure pointer component on pointer-valued base object)
2013-01-03 Janus Weil <janus@gcc.gnu.org>
PR fortran/55855
* expr.c (gfc_check_assign): Use 'gfc_expr_attr' to evaluate attributes
of rvalue. Correct hyphenation in error message.
2013-01-03 Janus Weil <janus@gcc.gnu.org>
PR fortran/55855
* gfortran.dg/assignment_1.f90: Modified.
* gfortran.dg/assignment_4.f90: New.
From-SVN: r194857
Richard Biener [Thu, 3 Jan 2013 15:57:15 +0000 (15:57 +0000)]
revert: [multiple changes]
2013-01-03 Richard Biener <rguenther@suse.de>
Revert
2013-01-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/55857
* tree-vect-stmts.c (vectorizable_load): Do not setup
re-alignment for invariant loads.
2013-01-02 Richard Biener <rguenther@suse.de>
* tree-vect-stmts.c (vectorizable_load): When vectorizing an
invariant load do not generate a vector load from the scalar
location.
From-SVN: r194856
David Edelsohn [Thu, 3 Jan 2013 15:17:06 +0000 (15:17 +0000)]
* gcc.dg/torture/tls/tls-reload-1.c: Add tls options.
From-SVN: r194855
Richard Biener [Thu, 3 Jan 2013 14:25:32 +0000 (14:25 +0000)]
tree-vect-loop.c (vect_analyze_loop_form): Clarify reason for not vectorizing.
2013-01-03 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (vect_analyze_loop_form): Clarify reason
for not vectorizing.
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do
not build INDIRECT_REFs, call get_name once only.
(vect_create_data_ref_ptr): Likewise. Dump base object kind
based on DR_BASE_OBJECT, not DR_BASE_ADDRESS.
From-SVN: r194853
Arnaud Charlet [Thu, 3 Jan 2013 13:12:02 +0000 (14:12 +0100)]
[multiple changes]
2013-01-03 Pascal Obry <obry@adacore.com>
* prj-attr.adb, projects.texi, snames.ads-tmpl: Add package remote and
corresponding attibutes.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_aggr.adb: Minor comment improvement.
From-SVN: r194852
Arnaud Charlet [Thu, 3 Jan 2013 13:06:45 +0000 (14:06 +0100)]
[multiple changes]
2013-01-03 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb, aspects.ads: Add Aspect_Abstract_State to all the
relevant tables.
* einfo.ads, einfo.adb: Add Integrity_Level and Refined_State to
the description of fields (Abstract_States): New routine.
(Integrity_Level): New routine.
(Has_Property): New routine.
(Is_Input_State): New routine.
(Is_Null_State): New routine.
(Is_Output_State): New routine.
(Is_Volatile_State): New routine.
(Refined_State): New routine.
(Set_Abstract_States): New routine.
(Set_Integrity_Level): New routine.
(Set_Refined_State): New routine.
(Write_Field8_Name): Add proper output for E_Abstract_State.
(Write_Field9_Name): Add proper output for E_Abstract_State.
(Write_Field25_Name): Add proper output for E_Package.
* lib-xref.ads: Add new letter for an abstract state.
* par-prag.adb: Add pragma Abstract_State to the list of pragma
that do not need special processing by the parser.
* sem_ch13.adb (Analyze_Aspect_Specifications): Convert
aspect Abstract_State into a pragma without any form
of legality checks. The work is done by Analyze_Pragma.
(Check_Aspect_At_Freeze_Point): Aspect Abstract_State does not
require delayed analysis.
* sem_prag.adb: Add a value for pragma Abstract_State in table
Sig_Flags.
(Analyze_Pragma): Add legality checks for pragma
Abstract_State. Analysis of individual states introduces a state
abstraction entity into the visibility chain.
* snames.ads-tmpl: Add new names for abstract state and
integrity. Add new pragma id for abstract state.
2013-01-03 Bob Duff <duff@adacore.com>
* table.adb (Reallocate): Calculate new Length in
Long_Integer to avoid overflow.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb, sinfo.ads, freeze.adb, sem_ch4.adb, exp_aggr.adb
(Sem_Ch3.Analyze_Object_Declaration): Set Ekind early so that
it is set properly when expanding the initialization expression.
(Freeze.Check_Address_Clause): Transfer initialization expression
to an assignment in the freeze actions, so that the object is
initialized only after being elaborated by GIGI.
(Sinfo (comments), Sem_Ch4.Analyze_Expression_With_Actions): Allow
a Null_Statement as the expression in an Expression_With_Actions.
(Exp_Aggr.Collect_Initialization_Statements): New subprogram
shared by expansion of record and array aggregates, used to
capture statements for an aggregate used to initalize an object
into an Expression_With_Actions (which acts as a container for
a list of actions).
(Exp_Aggr.Convert_Aggr_In_Obj_Decl): Use the above to
capture initialization statements, instead of the previously
existing loop which left freeze nodes out of the capturing
construct (causing out of order elaboration crashes in GIGI).
(Exp_Aggr.Expand_Array_Aggregate): Use the above to capture
initialization statements (this was previously not done for
arrays). Also do not unconditionally prevent in place expansion
for an object with address clause.
From-SVN: r194851
Richard Biener [Thu, 3 Jan 2013 12:34:34 +0000 (12:34 +0000)]
re PR tree-optimization/55857 (ICE: verify_ssa failed)
2013-01-03 Richard Biener <rguenther@suse.de>
PR tree-optimization/55857
* tree-vect-stmts.c (vectorizable_load): Do not setup
re-alignment for invariant loads.
* gcc.dg/vect/pr55857-1.c: New testcase.
* gcc.dg/vect/pr55857-2.c: Likewise.
From-SVN: r194850
Arnaud Charlet [Thu, 3 Jan 2013 11:12:15 +0000 (12:12 +0100)]
[multiple changes]
2013-01-03 Thomas Quinot <quinot@adacore.com>
* gnat_rm.texi, freeze.adb (Check_Component_Storage_Order): Check that
a record extension has the same scalar storage order as the parent type.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb: Add comment.
2013-01-03 Vincent Celier <celier@adacore.com>
* prj.adb: Minor spelling error correction in comment.
2013-01-03 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (GNATCmd): If a single main has been specified
as an absolute path, use its simple file name to find specific
switches, instead of the absolute path.
2013-01-03 Javier Miranda <miranda@adacore.com>
* sem_warn.adb (Warn_On_Overlapping_Actuals): For overlapping
parameters that are record types or array types generate warnings
only compiling under -gnatw.i
* opt.ads (Extensions_Allowed): Restore previous documentation.
2013-01-03 Vincent Celier <celier@adacore.com>
* prj-conf.adb (Do_Autoconf): If Target is specified in the
main project, but not on the command line, use the Target in
the project to invoke gprconfig in auto-configuration.
* makeutl.ads (Default_Config_Name): New constant String.
2013-01-03 Arnaud Charlet <charlet@adacore.com>
* usage.adb: Minor: fix typo in usage.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* sem_ch13.adb (Analyze_Record_Representation_Clause): Reject
an illegal component clause for an inherited component in a
record extension.
From-SVN: r194849
Arnaud Charlet [Thu, 3 Jan 2013 11:05:20 +0000 (12:05 +0100)]
[multiple changes]
2013-01-03 Emmanuel Briot <briot@adacore.com>
* xref_lib.adb (Parse_Identifier_Info): Fix handling of arrays, which
have information in the ALI file for both the index and the component
types.
2013-01-03 Emmanuel Briot <briot@adacore.com>
* projects.texi: Fix error in documenting the project path
computed for an aggregate project.
2013-01-03 Javier Miranda <miranda@adacore.com>
* sem_warn.adb (Warn_On_Overlapping_Actuals): Adding documentation
plus restricting the functionality of this routine to cover the
cases described in the Ada 2012 reference manual. The previous
extended support is now available under -gnatX.
* s-tassta.adb (Finalize_Global_Tasks): Addition of a dummy
variable to call Timed_Sleep. Required to avoid warning on
overlapping out-mode actuals.
* opt.ads (Extensions_Allowed): Update documentation.
2013-01-03 Tristan Gingold <gingold@adacore.com>
* s-arit64.ads: Use Multiply_With_Ovflo_Check as __gnat_mulv64.
* arit64.c: Removed
* gcc-interface/Makefile.in: Remove reference to arit64.c.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* checks.adb, checks.ads (Apply_Address_Clause_Check): The check must
be generated at the start of the freeze actions for the entity, not
before (or after) the freeze node.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_aggr.adb (Exp_Aggr.Convert_Aggregate_In_Obj_Decl):
Reorganize code to capture initialization statements in a block,
so that freeze nodes are excluded from the captured block.
From-SVN: r194848
Arnaud Charlet [Thu, 3 Jan 2013 10:58:47 +0000 (11:58 +0100)]
[multiple changes]
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_ch11.adb: Minor reformatting.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_util.adb, einfo.adb, einfo.ads, freeze.adb, exp_aggr.adb,
sem_ch13.adb (Einfo.Initialization_Statements,
Einfo.Set_Initialization_Statements): New entity attribute
for objects.
(Exp_Util.Find_Init_Call): Handle case of an object initialized
by an aggregate converted to a block of assignment statements.
(Freeze.Check_Address_Clause): Do not clear Has_Delayed_Freeze
even for objects that require a constant address, because the
address expression might involve entities that have yet to be
elaborated at the point of the object declaration.
(Exp_Aggr.Convert_Aggregate_In_Obj_Decl): For a type that does
not require a transient scope, capture the assignment statements
in a block so that they can be moved down after elaboration of
an address clause if needed.
(Sem_Ch13.Check_Constant_Address_Clause.Check_Expr_Constants,
case N_Unchecked_Conversion): Do not replace operand subtype with
its base type as this violates a GIGI invariant if the operand
is an identifier (in which case the etype of the identifier
is expected to be equal to that of the denoted entity).
2013-01-03 Javier Miranda <miranda@adacore.com>
* sem_util.ads, sem_util.adb (Denotes_Same_Object): Extend the
functionality of this routine to cover cases described in the Ada 2012
reference manual.
2013-01-03 Ed Schonberg <schonberg@adacore.com>
* sem_elab.adb (Set_Elaboration_Constraint): Handle properly
a 'Access attribute reference when the subprogram is called
Initialize.
2013-01-03 Arnaud Charlet <charlet@adacore.com>
* s-tpobop.adb (PO_Do_Or_Queue): Refine assertion, since a
select statement may be called from a controlled (e.g. Initialize)
operation and have abort always deferred.
From-SVN: r194847
Arnaud Charlet [Thu, 3 Jan 2013 10:55:53 +0000 (11:55 +0100)]
[multiple changes]
2013-01-03 Robert Dewar <dewar@adacore.com>
* sem_ch8.adb, einfo.ads, einfo.adb: Minor code reorganization.
2013-01-03 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb (Make_Controlling_Function_Wrappers): Exclude
internal entities associated with interfaces and add minimum
decoration to the defining entity of the generated wrapper to
allow overriding interface primitives.
* sem_disp.ads (Override_Dispatching_Operation): Addition of a
new formal (Is_Wrapper).
* sem_disp.adb (Override_Dispatching_Operation): When overriding
interface primitives the new formal helps identifying that the
new operation is not fully decorated.
From-SVN: r194846
Arnaud Charlet [Thu, 3 Jan 2013 10:52:31 +0000 (11:52 +0100)]
[multiple changes]
2013-01-03 Thomas Quinot <quinot@adacore.com>
* sem_ch7.adb, sem_ch10.adb, einfo.adb, einfo.ads, sem_ch12.adb,
rtsfind.adb, sem_elab.adb, sem_ch4.adb, sem_ch8.adb
(Einfo.Is_Visible_Child_Unit, Einfo.Set_Is_Visible_Child_Unit):
Rename to Is_Visible_Lib_Unit, Set_Is_Visible_Lib_Unit, and
update spec accordingly (now also applies to root library units).
(Sem_Ch10.Analyze_Subunit.Analyze_Subunit_Context): Toggle above flag
on root library units, not only child units.
(Sem_Ch10.Install[_Limited]_Withed_Unit): Same.
(Sem_Ch10.Remove_Unit_From_Visibility): Reset Is_Visible_Lib_Unit
even for root library units.
(Sem_Ch8.Find_Expanded_Name): A selected component form whose prefix is
Standard is an expanded name for a root library unit.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_ch3.adb: Minor reformatting.
2013-01-03 Olivier Hainque <hainque@adacore.com>
* tracebak.c: Reinstate changes to support ppc-lynx178.
2013-01-03 Ed Schonberg <schonberg@adacore.com>
* atree.ads: Minor reformatting and documentation enhancement.
From-SVN: r194845
Arnaud Charlet [Thu, 3 Jan 2013 10:48:22 +0000 (11:48 +0100)]
Update comments.
From-SVN: r194844
Ed Schonberg [Thu, 3 Jan 2013 10:24:28 +0000 (10:24 +0000)]
exp_ch3.adb (Expand_N_Object_Declaration): If the object has a class-wide type and a renaming declaration is created for it...
2013-01-03 Ed Schonberg <schonberg@adacore.com>
* exp_ch3.adb (Expand_N_Object_Declaration): If the object has
a class-wide type and a renaming declaration is created for it,
preserve entity chain, which already contains generated internal
types. This ensures that freezing actions are properly generated
for all objects declared subsequently in the same scope, and
that debugging information is generated for them.
* sem_util.adb, sem_util.ads (we): New debugging routine, to
display entity chain of a given scope.
From-SVN: r194843
Arnaud Charlet [Thu, 3 Jan 2013 10:09:24 +0000 (11:09 +0100)]
[multiple changes]
2013-01-03 Robert Dewar <dewar@adacore.com>
* exp_intr.adb: Minor reformatting.
2013-01-03 Robert Dewar <dewar@adacore.com>
* einfo.adb: Minor reformatting.
2013-01-03 Pascal Obry <obry@adacore.com>
* adaint.c, adaint.h (__gnat_get_module_name): Removed.
(__gnat_is_module_name_supported): Removed.
* s-win32.ads: Add some needed definitions.
* g-trasym.ads: Update comments.
2013-01-03 Robert Dewar <dewar@adacore.com>
* layout.adb (Set_Composite_Alignment): Fix problems of
interactions with Optimize_Alignment set to Space.
2013-01-03 Thomas Quinot <quinot@adacore.com>
* exp_disp.adb: Minor reformatting.
From-SVN: r194842
Jakub Jelinek [Thu, 3 Jan 2013 09:47:48 +0000 (10:47 +0100)]
ChangeLog rotation.
From-SVN: r194840
Richard Biener [Thu, 3 Jan 2013 09:45:18 +0000 (09:45 +0000)]
re PR lto/55848 (internal compiler error: verify_cgraph_node failed (with `-flto' and `-fopenmp'))
2013-01-03 Richard Biener <rguenther@suse.de>
PR lto/55848
* lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always
prefer a built-in decl.
From-SVN: r194839
Jakub Jelinek [Thu, 3 Jan 2013 09:31:20 +0000 (10:31 +0100)]
gcc.c (process_command): Update copyright notice dates.
* gcc.c (process_command): Update copyright notice dates.
* gcov.c (print_version): Likewise.
* gcov-dump.c (print_version): Likewise.
* gfortranspec.c (lang_specific_driver): Update copyright notice
dates.
* jcf-dump.c (version): Update copyright notice dates.
* mf-runtime.c (__mf_usage): Update copyright notice dates.
* gnu/java/rmi/registry/RegistryImpl.java (version): Update
copyright notice dates.
* tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.
* gnu/gcj/convert/Convert.java (version): Update copyright notice
dates.
* gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.
From-SVN: r194838
Jakub Jelinek [Thu, 3 Jan 2013 09:05:43 +0000 (10:05 +0100)]
re PR rtl-optimization/55838 (ICE in extract_insn (unrecognizable insn) with -O -funroll-loops)
PR rtl-optimization/55838
* loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
iv0.step, iv1.step and step.
* gcc.dg/pr55838.c: New test.
From-SVN: r194837
Jakub Jelinek [Thu, 3 Jan 2013 09:02:41 +0000 (10:02 +0100)]
re PR middle-end/55832 (ICE in fold_convert_loc, at fold-const.c:1967)
PR tree-optimization/55832
* fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and
ABS_EXPR<x> < 0 folding use constant_boolean_node instead of
integer_{one,zero}_node.
* gcc.c-torture/compile/pr55832.c: New test.
Co-Authored-By: Marc Glisse <marc.glisse@inria.fr>
From-SVN: r194836