platform/upstream/gcc.git
10 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Jan 2014 14:01:57 +0000 (15:01 +0100)]
[multiple changes]

2014-01-24  Vincent Celier  <celier@adacore.com>

* projects.texi: Document that aggregate projects are only
supported by gprbuild, but not by gnatmake.  Document that the
only attribute Switches in package Binder of aggregate projects
will be ignored if its index is not others.  Document that
attribute Global_Config_File is allowed in package Binder of
aggregate projects.

2014-01-24  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb: Minor code reorganization.
* sem_util.adb: Minor fix of potential latent bug in Is_LHS.

From-SVN: r207029

10 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Jan 2014 14:00:34 +0000 (15:00 +0100)]
[multiple changes]

2014-01-24  Pascal Obry  <obry@adacore.com>

* prj-attr.adb, projects.texi, snames.ads-tmpl: Add Excluded_Patterns
attribute definition.

2014-01-24  Vincent Celier  <celier@adacore.com>

* makeutl.adb (Queue.Insert_No_Roots): In gprbuild, do not put
in the Queue the same source (same path, same multi-source index)
from the same project file, to avoid compiling several times
the same source.

2014-01-24  Eric Botcazou  <ebotcazou@adacore.com>

* einfo.ads (First_Rep_Item): Remove obsolete stuff.
(Has_Gigi_Rep_Item): Likewise.
* sem_prag.adb (Analyze_Pragma) <Pragma_Linker_Section>: Do not set
Has_Gigi_Rep_Item for objects.
* gcc-interface/decl.c (prepend_one_attribute_to): Rename into...
(prepend_one_attribute): ...this.
(prepend_one_attribute_pragma): New function extracted from...
(prepend_attributes): ...here.  Swap the parameters for consistency.
(gnat_to_gnu_entity): Adjust calls to prepend_one_attribute_to and to
prepend_attributes.
<object>: Deal with a pragma Linker_Section on a constant
or variable.  <E_Function>: Deal with a pragma Linker_Section
on a subprogram.
(get_minimal_subprog_decl): Adjust calls to prepend_one_attribute_to.

2014-01-24  Vincent Celier  <celier@adacore.com>

* opt.ads: Minor comment update.

From-SVN: r207028

10 years ago[multiple changes]
Arnaud Charlet [Fri, 24 Jan 2014 11:42:21 +0000 (12:42 +0100)]
[multiple changes]

2014-01-24  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (Analyze_Input_Output): Add missing error check
for junk operand.
* sem_util.adb (Is_Refined_State): Add defense against junk
tree from error.

2014-01-24  Pascal Obry  <obry@adacore.com>

* projects.texi: Removes Build_Slaves attribute documentation.

From-SVN: r207027

10 years ago* gcc.dg/pr59846.c (fn1, fn2): Use ULL suffix.
Marek Polacek [Fri, 24 Jan 2014 10:41:24 +0000 (10:41 +0000)]
* gcc.dg/pr59846.c (fn1, fn2): Use ULL suffix.

From-SVN: r207026

10 years agoGet stack adjustment from push operand in pushsf splitter
H.J. Lu [Fri, 24 Jan 2014 03:38:10 +0000 (03:38 +0000)]
Get stack adjustment from push operand in pushsf splitter

pushsf for -m64/-mx32 looks like

(set (mem:SF (pre_modify:SI (reg/f:SI 7 sp)
    (plus:SI (reg/f:SI 7 sp)
    (const_int -8))))
     (reg:SF 22 xmm1 [orig:84 D.1790 ] [84]))

Stack adjustment is in push operand and it isn't stack register mode size
which may be 4 bytes for -mx32.  This patch gets stack adjustment from
push operand if code of push isn't PRE_DEC.

gcc/

PR target/59929
* config/i386/i386.md (pushsf splitter): Get stack adjustment
from push operand if code of push isn't PRE_DEC.

gcc/testsuite/

PR target/59929
* gcc.target/i386/pr59929.c: New test.

From-SVN: r207023

10 years agore PR target/59909 (Quad memory bootstrap issues on little endian powerpc64 power8...
Michael Meissner [Fri, 24 Jan 2014 01:56:48 +0000 (01:56 +0000)]
re PR target/59909 (Quad memory bootstrap issues on little endian powerpc64 power8 systems)

[gcc]
2014-01-23  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/59909
* doc/invoke.texi (RS/6000 and PowerPC Options): Document
-mquad-memory-atomic.  Update -mquad-memory documentation to say
it is only used for non-atomic loads/stores.

* config/rs6000/predicates.md (quad_int_reg_operand): Allow either
-mquad-memory or -mquad-memory-atomic switches.

* config/rs6000/rs6000-cpus.def (ISA_2_7_MASKS_SERVER): Add
-mquad-memory-atomic to ISA 2.07 support.

* config/rs6000/rs6000.opt (-mquad-memory-atomic): Add new switch
to separate support of normal quad word memory operations (ldq,
stq) from the atomic quad word memory operations.

* config/rs6000/rs6000.c (rs6000_option_override_internal): Add
support to separate non-atomic quad word operations from atomic
quad word operations.  Disable non-atomic quad word operations in
little endian mode so that we don't have to swap words after the
load and before the store.
(quad_load_store_p): Add comment about atomic quad word support.
(rs6000_opt_masks): Add -mquad-memory-atomic to the list of
options printed with -mdebug=reg.

* config/rs6000/rs6000.h (TARGET_SYNC_TI): Use
-mquad-memory-atomic as the test for whether we have quad word
atomic instructions.
(TARGET_SYNC_HI_QI): If either -mquad-memory-atomic,
-mquad-memory, or -mp8-vector are used, allow byte/half-word
atomic operations.

* config/rs6000/sync.md (load_lockedti): Insure that the address
is a proper indexed or indirect address for the lqarx instruction.
On little endian systems, swap the hi/lo registers after the lqarx
instruction.
(load_lockedpti): Use indexed_or_indirect_operand predicate to
insure the address is valid for the lqarx instruction.
(store_conditionalti): Insure that the address is a proper indexed
or indirect address for the stqcrx. instruction.  On little endian
systems, swap the hi/lo registers before doing the stqcrx.
instruction.
(store_conditionalpti): Use indexed_or_indirect_operand predicate to
insure the address is valid for the stqcrx. instruction.

* gcc/config/rs6000/rs6000-c.c (rs6000_target_modify_macros):
Define __QUAD_MEMORY__ and __QUAD_MEMORY_ATOMIC__ based on what
type of quad memory support is available.

[gcc/testsuite]
2014-01-23  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/59909
* gcc.target/powerpc/quad-atomic.c: New file to test power8 quad
word atomic functions at runtime.

From-SVN: r207020

10 years agocompiler: Convert named types before flattening.
Ian Lance Taylor [Fri, 24 Jan 2014 01:01:47 +0000 (01:01 +0000)]
compiler: Convert named types before flattening.

From-SVN: r207018

10 years agoDaily bump.
GCC Administrator [Fri, 24 Jan 2014 00:16:28 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r207015

10 years agoacinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam function.
Bernhard Reutner-Fischer [Thu, 23 Jan 2014 21:17:15 +0000 (22:17 +0100)]
acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam function.

2014-01-23  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
    Steve Ellcey  <sellcey@mips.com>

* acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
function.
* configure.ac: Use GLIBCXX_CHECK_TMPNAM.
* (configure, config.h.in): Regenerate.
* include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM

Co-Authored-By: Steve Ellcey <sellcey@mips.com>
From-SVN: r207009

10 years agore PR c/59846 (Imprecise column number for -Wtype-limits)
Marek Polacek [Thu, 23 Jan 2014 21:01:08 +0000 (21:01 +0000)]
re PR c/59846 (Imprecise column number for -Wtype-limits)

PR c/59846
c-family/
* c-common.c (shorten_compare): Add location_t parameter.
* c-common.h (shorten_binary_op): Adjust declaration.
cp/
* typeck.c (cp_build_binary_op): Pass location to shorten_compare.
c/
* c-typeck.c (parser_build_binary_op): Use location instead of
input_location.
(build_binary_op): Pass location to shorten_compare.
testsuite/
* gcc.dg/pr59846.c: New test.

From-SVN: r207008

10 years agore PR rtl-optimization/59915 (LRA ICE - Repeated looping over subreg reloads (gcc...
Vladimir Makarov [Thu, 23 Jan 2014 20:06:28 +0000 (20:06 +0000)]
re PR rtl-optimization/59915 (LRA ICE - Repeated looping over subreg reloads (gcc.c-torture/compile/simd-3.c))

2014-01-23  Vladimir Makarov  <vmakarov@redhat.com>

PR regression/59915
* lra-constraints.c (simplify_operand_subreg): Spill pseudo if
there is a danger of looping.

From-SVN: r207007

10 years agore PR c/58346 (ICE with SIGFPE at -O1 and above on x86_64-linux-gnu (affecting trunk...
Marek Polacek [Thu, 23 Jan 2014 19:18:49 +0000 (19:18 +0000)]
re PR c/58346 (ICE with SIGFPE at -O1 and above on x86_64-linux-gnu (affecting trunk, 4.8, 4.7, and 4.6))

PR c/58346
c-family/
* c-common.c (pointer_to_zero_sized_aggr_p): New function.
* c-common.h: Declare it.
cp/
* typeck.c (pointer_diff): Give an error on arithmetic on pointer to
an empty aggregate.
c/
* c-typeck.c (pointer_diff): Give an error on arithmetic on pointer to
an empty aggregate.
testsuite/
* c-c++-common/pr58346-1.c: New test.
* c-c++-common/pr58346-2.c: New test.
* c-c++-common/pr58346-3.c: New test.

From-SVN: r207004

10 years agore PR c/59871 (No unused value warning for comma expression)
Marek Polacek [Thu, 23 Jan 2014 19:04:29 +0000 (19:04 +0000)]
re PR c/59871 (No unused value warning for comma expression)

PR c/59871
c/
* c-typeck.c (build_compound_expr): Warn even for right-hand operand
of a comma expression.
(emit_side_effect_warnings): Likewise.
libdecnumber/
* decNumberLocal.h (UBFROMUS, UBFROMUI): Remove last argument.
testsuite/
* gcc.dg/20020220-2.c: Adjust dg-warning message.
* gcc.dg/pr59871.c: New test.

From-SVN: r207002

10 years agore PR c++/55189 (enable -Wreturn-type by default)
Jason Merrill [Thu, 23 Jan 2014 18:54:08 +0000 (13:54 -0500)]
re PR c++/55189 (enable -Wreturn-type by default)

PR c++/55189
* cp-tree.h (struct language_function): Add infinite_loop and
infinite_loops.
(current_function_infinite_loop): New.
* semantics.c (begin_maybe_infinite_loop, end_maybe_infinite_loop)
(break_maybe_infinite_loop): New.
(finish_while_stmt_cond, finish_while_stmt, begin_do_stmt)
(finish_do_stmt, finish_for_cond, finish_for_stmt)
(begin_range_for_stmt): Use them.
* decl.c (finish_function): Don't warn about missing return
if current_function_infinite_loop.
* pt.c (instantiate_decl): Copy current_function_infinite_loop.
* parser.c (cp_parser_jump_statement): Call break_maybe_infinite_loop.

From-SVN: r207001

10 years agocall.c (build_op_delete_call): Use make_tree_vector and release_tree_vector.
Jason Merrill [Thu, 23 Jan 2014 18:53:50 +0000 (13:53 -0500)]
call.c (build_op_delete_call): Use make_tree_vector and release_tree_vector.

* call.c (build_op_delete_call): Use make_tree_vector and
release_tree_vector.

From-SVN: r207000

10 years agore PR libstdc++/59872 (Cannot move std::map with move-only mapped_type)
Jonathan Wakely [Thu, 23 Jan 2014 17:17:04 +0000 (17:17 +0000)]
re PR libstdc++/59872 (Cannot move std::map with move-only mapped_type)

PR libstdc++/59872
* include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
* include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
Likewise.
* include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
Likewise.
* include/bits/stl_set.h (set::operator=(set&&)): Likewise.
* include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
functions to perform moving or copying of elements from rvalue tree.
(_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
(_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
* testsuite/23_containers/map/59872.cc: New.
* testsuite/23_containers/map/56613.cc: Remove duplicate include.

From-SVN: r206994

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Jan 2014 17:06:29 +0000 (18:06 +0100)]
[multiple changes]

2014-01-23  Robert Dewar  <dewar@adacore.com>

* opt.adb (Register_Opt_Config_Switches): Save SPARK_Mode_Pragma
setting.

2014-01-23  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Is_Potentially_Unevaluated): Predicate only
applies to expressions that come from source.
* sem_attr.adb (Analyze_Attribute, case 'Old): Improve error
message.
(Analyze_Attribute, case 'Loop_Entry): Apply SPARK 2014 legality
rule regarding potentially unevaluated expressions, to prefix
of attribute.

From-SVN: r206993

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Jan 2014 17:03:41 +0000 (18:03 +0100)]
[multiple changes]

2014-01-23  Ed Schonberg  <schonberg@adacore.com>

* exp_util.adb (Make_Invqriant_Call): If type of expression is
a private extension, get invariant from base type.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* sem_util.adb, sem_attr.adb: Minor reformatting.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* opt.adb (Save_Opt_Config_Switches): Save SPARK_Mode_Pragma
(Restore_Opt_Config_Switches): Restore SPARK_Mode_Pragma.
* sem.adb (Semantics): Remove save/restore of
SPARK_Mode[_Pragma]. Not needed since already done in
Save/Restore_Opt_Config_Switches.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi, einfo.adb, einfo.ads, sem_prag.adb, gnat_ugn.texi,
freeze.adb, repinfo.adb, aspects.adb, aspects.ads, sem_ch13.adb:
Linker_Section enhancements.

From-SVN: r206992

10 years agore PR c/59825 (Many cilkplus test failures)
Balaji V. Iyer [Thu, 23 Jan 2014 17:00:53 +0000 (17:00 +0000)]
re PR c/59825 (Many cilkplus test failures)

Fix for PR c/59825.
2014-01-23  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        PR c/59825
        * c-array-notation.c (expand_array_notation_exprs): Rewrote this
        function to use walk_tree and moved a lot of its functionality to
        expand_array_notations.
        (expand_array_notations): New function.

From-SVN: r206991

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Jan 2014 16:58:46 +0000 (17:58 +0100)]
[multiple changes]

2014-01-23  Tristan Gingold  <gingold@adacore.com>

* gnat_rm.texi: Minor editing.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* opt.adb (Set_Opt_Config_Switches): Reset SPARK mode for
with'ed internal units.
* sem.adb (Semantics): Save and restore SPARK_Mode[_Pragma].

2014-01-23  Javier Miranda  <miranda@adacore.com>

* lib-xref.adb (Generate_Reference): As part of processing the
"end-of-spec" reference generate an extra reference to the first
private entity of the package.
* xr_tabls.adb (Add_Reference): No action needed for the extra
'E' reference associated; similar to the processing of the
'e' reference.

2014-01-23  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Change "--&pp off" to "--!pp off".

2014-01-23  Ed Schonberg  <schonberg@adacore.com>

* sem_util.ads, sem_util.adb (Is_Potentially_Unevaluated): new
predicate to implement rule given in 6.1.1 (20/3).
* sem_attr.adb (Analyze_Attribute, case 'Old): Reject prefix of
'Old in a postcondition, if it is potentially unevaluated and
it is not an entity name.

From-SVN: r206990

10 years agoMinor editing.
Arnaud Charlet [Thu, 23 Jan 2014 16:56:32 +0000 (17:56 +0100)]
Minor editing.

From-SVN: r206989

10 years agognat_ugn.texi: Document the new "--&pp off" feature of gnatpp.
Bob Duff [Thu, 23 Jan 2014 16:55:46 +0000 (16:55 +0000)]
gnat_ugn.texi: Document the new "--&pp off" feature of gnatpp.

2014-01-23  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Document the new "--&pp off" feature of gnatpp.

From-SVN: r206988

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Jan 2014 16:54:50 +0000 (17:54 +0100)]
[multiple changes]

2014-01-23  Robert Dewar  <dewar@adacore.com>

* gnatlink.adb (Gnatlink): Fix problem of generating bad name
msg on VMS.

2014-01-23  Bob Duff  <duff@adacore.com>

* g-dynhta.ads: Minor comment fix.

2014-01-23  Yannick Moy  <moy@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Inherit SPARK_Mode
from spec on body only when not already inherited on spec. Set
SPARK_Mode from context on body without previous spec. *
* sem_prag.adb (Analyze_Pragma): Check placement of pragma on
library-level entities.  Correct retrieval of entity from
declaration, for cases where the declaration is not a unit.
* sem_ch12.adb (Instantiate_Object): Avoid
calling Is_Volatile_Object on an empty node.

From-SVN: r206987

10 years agognatlink.adb (Gnatlink): Check for suspicious executable file names on windows.
Robert Dewar [Thu, 23 Jan 2014 16:53:34 +0000 (16:53 +0000)]
gnatlink.adb (Gnatlink): Check for suspicious executable file names on windows.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* gnatlink.adb (Gnatlink): Check for suspicious executable file
names on windows.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* a-ngelfu.ads: Remove bad uses of AND which should be AND THEN.
* sem_res.adb (Check_No_Direct_Boolean_Operators): Don't give
style errors in instances.
* g-dynhta.ads (Static_HTable): Comment updates.

From-SVN: r206986

10 years agoprj-conf.adb (Get_Or_Create_Configuration_File): Do not attempt to find a configurati...
Vincent Celier [Thu, 23 Jan 2014 16:52:00 +0000 (16:52 +0000)]
prj-conf.adb (Get_Or_Create_Configuration_File): Do not attempt to find a configuration project file when...

2014-01-23  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Get_Or_Create_Configuration_File): Do not attempt
to find a configuration project file when Config_File_Name is
No_Configuration_File.
* prj-conf.ads (No_Configuration_File): New constant String.
* prj-pars.adb (Parse): Call Get_Or_Create_Configuration_File
with Config_File_Name set to No_Configuration_File, so that
no existing configuration project file will be used, and the
configuration project will be only created in memory when
Add_Default_GNAT_Naming_Scheme is called.
* projects.texi: Minor reformatting.

From-SVN: r206985

10 years agoprj-conf.adb (Get_Or_Create_Configuration_File): Never parse a config project file...
Vincent Celier [Thu, 23 Jan 2014 16:39:02 +0000 (16:39 +0000)]
prj-conf.adb (Get_Or_Create_Configuration_File): Never parse a config project file if On_Load_Config is not null.

2014-01-23  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Get_Or_Create_Configuration_File): Never parse
a config project file if On_Load_Config is not null.
* prj-pars.adb: Minor comment changes.

From-SVN: r206984

10 years agoMinor reformatting.
Arnaud Charlet [Thu, 23 Jan 2014 16:38:09 +0000 (17:38 +0100)]
Minor reformatting.

From-SVN: r206983

10 years agors6000.c (rs6000_option_override_internal): Don't force flag_ira_loop_pressure if...
Pat Haugen [Thu, 23 Jan 2014 16:37:39 +0000 (16:37 +0000)]
rs6000.c (rs6000_option_override_internal): Don't force flag_ira_loop_pressure if set via command line.

* config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
force flag_ira_loop_pressure if set via command line.

From-SVN: r206982

10 years agolib-xref.adb (Output_References): Output progenitors of synchronized tagged types...
Ed Schonberg [Thu, 23 Jan 2014 16:37:31 +0000 (16:37 +0000)]
lib-xref.adb (Output_References): Output progenitors of synchronized tagged types, for source navigation.

2014-01-23  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (Output_References): Output progenitors of
synchronized tagged types, for source navigation.

From-SVN: r206981

10 years ago[multiple changes]
Arnaud Charlet [Thu, 23 Jan 2014 16:36:41 +0000 (17:36 +0100)]
[multiple changes]

2014-01-23  Robert Dewar  <dewar@adacore.com>

* exp_util.adb, sinfo.adb, sinfo.ads, sem.adb, sem_res.adb,
expander.adb, exp_ch11.adb, exp_ch11.ads, sem_ch11.adb, sem_ch11.ads,
sprint.adb, sprint.ads: Remove unused node N_Subprogram_Info.

2014-01-23  Emmanuel Briot  <briot@adacore.com>

* prj-conf.adb (Get_Or_Create_Configuration_File): call
On_Load_Config later.

2014-01-23  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Analyze_Declarations): Do not
generate the spec of the late primitive in ASIS mode. Add two
comments to explain the special cases when the expansion is
not performed.

2014-01-23  Robert Dewar  <dewar@adacore.com>

* sem_util.adb (Note_Possible_Modification): Fix error of
misbehaving for implicit dereference cases in -gnatc mode.

2014-01-23  Emmanuel Briot  <briot@adacore.com>

* prj-pars.adb: Minor reformatting.

From-SVN: r206980

10 years agore PR c++/58980 (ICE with invalid enum declaration)
Paolo Carlini [Thu, 23 Jan 2014 16:31:52 +0000 (16:31 +0000)]
re PR c++/58980 (ICE with invalid enum declaration)

/cp
2014-01-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58980
* parser.c (cp_parser_enum_specifier): Handle TYPENAME_TYPE as
nested_name_specifier.

/testsuite
2014-01-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58980
* g++.dg/parse/enum11.C: New.

From-SVN: r206979

10 years ago[PATCH][AArch64] Vector shift by 64 fix
Alex Velenko [Thu, 23 Jan 2014 16:24:13 +0000 (16:24 +0000)]
[PATCH][AArch64] Vector shift by 64 fix

gcc/

* config/aarch64/aarch64-simd-builtins.def (ashr): DI mode removed.
(ashr_simd): New builtin handling DI mode.
* config/aarch64/aarch64-simd.md (aarch64_ashr_simddi): New pattern.
(aarch64_sshr_simddi): New match pattern.
* config/aarch64/arm_neon.h (vshr_n_s32): Builtin call modified.
(vshrd_n_s64): Likewise.
* config/aarch64/predicates.md (aarch64_shift_imm64_di): New predicate.

gcc/testsuite/

* gcc.target/aarch64/sshr64_1.c: New testcase.

From-SVN: r206978

10 years agomsp430.h (ASM_SPEC): Pass the -mcpu as -mcpu.
Nick Clifton [Thu, 23 Jan 2014 16:16:33 +0000 (16:16 +0000)]
msp430.h (ASM_SPEC): Pass the -mcpu as -mcpu.

* config/msp430/msp430.h (ASM_SPEC): Pass the -mcpu as -mcpu.
(LIB_SPEC): Drop use of memory.ld and peripherals.ld scripts in
favour of mcu specific scripts.
* config/msp430/t-msp430 (MULTILIB_MATCHES): Add more matches for
430x multilibs.

From-SVN: r206977

10 years agoAdded support for Cilk Plus SIMD-enabled functions for C++.
Balaji V. Iyer [Thu, 23 Jan 2014 15:21:42 +0000 (15:21 +0000)]
Added support for Cilk Plus SIMD-enabled functions for C++.

gcc/c/c-parser.c
2014-01-23  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * c-parser.c (c_finish_omp_declare_simd): Made "cilk simd function"
        attribute an attribute without value.

gcc/cp/ChangeLog
2014-01-23  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * parser.c (cp_parser_direct_declarator): When Cilk Plus is enabled
        see if there is an attribute after function decl.  If so, then
        parse them now.
        (cp_parser_late_return_type_opt): Handle parsing of Cilk Plus SIMD
        enabled function late parsing.
        (cp_parser_gnu_attribute_list): Parse all the tokens for the vector
        attribute for a SIMD-enabled function.
        (cp_parser_omp_all_clauses): Skip parsing to the end of pragma when
        the function is used by SIMD-enabled function (indicated by NULL
        pragma token).   Added 3 new clauses: PRAGMA_CILK_CLAUSE_MASK,
        PRAGMA_CILK_CLAUSE_NOMASK and PRAGMA_CILK_CLAUSE_VECTORLENGTH
        (cp_parser_cilk_simd_vectorlength): Modified this function to handle
        vectorlength clause in SIMD-enabled function and #pragma SIMD's
        vectorlength clause.  Added a new bool parameter to differentiate
        between the two.
        (cp_parser_cilk_simd_fn_vector_attrs): New function.
        (is_cilkplus_vector_p): Likewise.
        (cp_parser_late_parsing_elem_fn_info): Likewise.
        (cp_parser_omp_clause_name): Added a check for "mask", "nomask"
        and "vectorlength" clauses when Cilk Plus is enabled.
        (cp_parser_omp_clause_linear): Added a new parameter of type bool
        and emit a sorry message when step size is a parameter.
        * parser.h (cp_parser::cilk_simd_fn_info): New field.
        * decl.c (grokfndecl): Added flag_enable_cilkplus along with
        flag_openmp.
        * pt.c (apply_late_template_attributes): Likewise.

testsuite/ChangeLog
2014-01-23  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * g++.dg/cilk-plus/cilk-plus.exp: Called the C/C++ common tests for
        SIMD enabled function.
        * g++.dg/cilk-plus/ef_test.C: New test.
        * c-c++-common/cilk-plus/ef_error3.c: Made certain messages C specific
        and added C++ ones.
        * c-c++-common/cilk-plus/vlength_errors.c: Added new dg-error tags
        to differenciate C error messages from C++ ones.

From-SVN: r206975

10 years ago[AArch64_BE 4/4] Big-Endian lane numbering fix
James Greenhalgh [Thu, 23 Jan 2014 14:59:20 +0000 (14:59 +0000)]
[AArch64_BE 4/4] Big-Endian lane numbering fix

2014-01-23  James Greenhalgh  <james.greenhalgh@arm.com>
    Alex Velenko  <Alex.Velenko@arm.com>

* config/aarch64/arm_neon.h (vaddv_s8): __LANE0 cleanup.
(vaddv_s16): Likewise.
(vaddv_s32): Likewise.
(vaddv_u8): Likewise.
(vaddv_u16): Likewise.
(vaddv_u32): Likewise.
(vaddvq_s8): Likewise.
(vaddvq_s16): Likewise.
(vaddvq_s32): Likewise.
(vaddvq_s64): Likewise.
(vaddvq_u8): Likewise.
(vaddvq_u16): Likewise.
(vaddvq_u32): Likewise.
(vaddvq_u64): Likewise.
(vaddv_f32): Likewise.
(vaddvq_f32): Likewise.
(vaddvq_f64): Likewise.
(vmaxv_f32): Likewise.
(vmaxv_s8): Likewise.
(vmaxv_s16): Likewise.
(vmaxv_s32): Likewise.
(vmaxv_u8): Likewise.
(vmaxv_u16): Likewise.
(vmaxv_u32): Likewise.
(vmaxvq_f32): Likewise.
(vmaxvq_f64): Likewise.
(vmaxvq_s8): Likewise.
(vmaxvq_s16): Likewise.
(vmaxvq_s32): Likewise.
(vmaxvq_u8): Likewise.
(vmaxvq_u16): Likewise.
(vmaxvq_u32): Likewise.
(vmaxnmv_f32): Likewise.
(vmaxnmvq_f32): Likewise.
(vmaxnmvq_f64): Likewise.
(vminv_f32): Likewise.
(vminv_s8): Likewise.
(vminv_s16): Likewise.
(vminv_s32): Likewise.
(vminv_u8): Likewise.
(vminv_u16): Likewise.
(vminv_u32): Likewise.
(vminvq_f32): Likewise.
(vminvq_f64): Likewise.
(vminvq_s8): Likewise.
(vminvq_s16): Likewise.
(vminvq_s32): Likewise.
(vminvq_u8): Likewise.
(vminvq_u16): Likewise.
(vminvq_u32): Likewise.
(vminnmv_f32): Likewise.
(vminnmvq_f32): Likewise.
(vminnmvq_f64): Likewise.

Co-Authored-By: Alex Velenko <Alex.Velenko@arm.com>
From-SVN: r206973

10 years ago[AArch64_BE 3/4] Big-Endian lane numbering fix
James Greenhalgh [Thu, 23 Jan 2014 14:56:50 +0000 (14:56 +0000)]
[AArch64_BE 3/4] Big-Endian lane numbering fix

2014-01-23  James Greenhalgh  <james.greenhalgh@arm.com>

* config/aarch64/aarch64-simd.md
(aarch64_dup_lane<mode>): Correct lane number on big-endian.
(aarch64_dup_lane_<vswap_widthi_name><mode>): Likewise.
(*aarch64_mul3_elt<mode>): Likewise.
(*aarch64_mul3_elt<vswap_width_name><mode>): Likewise.
(*aarch64_mul3_elt_to_64v2df): Likewise.
(*aarch64_mla_elt<mode>): Likewise.
(*aarch64_mla_elt_<vswap_width_name><mode>): Likewise.
(*aarch64_mls_elt<mode>): Likewise.
(*aarch64_mls_elt_<vswap_width_name><mode>): Likewise.
(*aarch64_fma4_elt<mode>): Likewise.
(*aarch64_fma4_elt_<vswap_width_name><mode>): Likewise.
(*aarch64_fma4_elt_to_64v2df): Likewise.
(*aarch64_fnma4_elt<mode>): Likewise.
(*aarch64_fnma4_elt_<vswap_width_name><mode>): Likewise.
(*aarch64_fnma4_elt_to_64v2df): Likewise.
(aarch64_sq<r>dmulh_lane<mode>): Likewise.
(aarch64_sq<r>dmulh_laneq<mode>): Likewise.
(aarch64_sqdml<SBINQOPS:as>l_lane<mode>_internal): Likewise.
(aarch64_sqdml<SBINQOPS:as>l_lane<mode>_internal): Likewise.
(aarch64_sqdml<SBINQOPS:as>l2_lane<mode>_internal): Likewise.
(aarch64_sqdmull_lane<mode>_internal): Likewise.
(aarch64_sqdmull2_lane<mode>_internal): Likewise.

From-SVN: r206972

10 years ago[AArch64_BE 2/4] Big-Endian lane numbering fix
Alex Velenko [Thu, 23 Jan 2014 14:48:40 +0000 (14:48 +0000)]
[AArch64_BE 2/4] Big-Endian lane numbering fix

2013-01-23  Alex Velenko  <Alex.Velenko@arm.com>

* config/aarch64/aarch64-simd.md
(aarch64_be_checked_get_lane<mode>): New define_expand.
* config/aarch64/aarch64-simd-builtins.def
(BUILTIN_VALL (GETLANE, be_checked_get_lane, 0):
New builtin definition.
* config/aarch64/arm_neon.h: (__aarch64_vget_lane_any):
Use new safe be builtin.

From-SVN: r206970

10 years ago[AArch64_BE 1/4] Big-Endian lane numbering fix
Alex Velenko [Thu, 23 Jan 2014 14:46:31 +0000 (14:46 +0000)]
[AArch64_BE 1/4] Big-Endian lane numbering fix

[gcc/]
2014-01-23  Alex Velenko  <Alex.Velenko@arm.com>

* config/aarch64/aarch64-simd.md (aarch64_be_ld1<mode>):
New define_insn.
(aarch64_be_st1<mode>): Likewise.
(aarch_ld1<VALL:mode>): Define_expand modified.
(aarch_st1<VALL:mode>): Likewise.
* config/aarch64/aarch64.md (UNSPEC_LD1): New unspec definition.
(UNSPEC_ST1): Likewise.

[gcc/testsuite/]
2014-01-23  Alex Velenko  <Alex.Velenko@arm.com>

* gcc.target/aarch64/vld1-vst1_1.c: New test_case.

From-SVN: r206968

10 years agomicroblaze.md: Add trap insn and attribute
David Holsgrove [Thu, 23 Jan 2014 14:37:44 +0000 (14:37 +0000)]
microblaze.md: Add trap insn and attribute

2014-01-23  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/microblaze.md: Add trap insn and attribute

From-SVN: r206967

10 years agore PR sanitizer/57316 (build failure in libsanitizer)
Yury Gribov [Thu, 23 Jan 2014 14:32:05 +0000 (14:32 +0000)]
re PR sanitizer/57316 (build failure in libsanitizer)

2014-01-23  Yury Gribov  <y.gribov@samsung.com>
    Jakub Jelinek  <jakub@redhat.com>

PR sanitizer/57316
* configure.ac: Check for missing syscalls.
* Makefile.am: Likewise.
* configure: Regenerate.
* Makefile.in: Regenerate.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r206966

10 years agore PR middle-end/58809 (ICE with complex variable in OpenMP reduction clause)
Jakub Jelinek [Thu, 23 Jan 2014 13:32:19 +0000 (14:32 +0100)]
re PR middle-end/58809 (ICE with complex variable in OpenMP reduction clause)

PR middle-end/58809
* c-typeck.c (c_finish_omp_clause): Reject MIN_EXPR, MAX_EXPR,
BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.

* semantics.c (finish_omp_reduction_clause): Reject
BIT_AND_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR on COMPLEX_TYPEs.

* c-c++-common/gomp/pr58809.c: New test.

From-SVN: r206962

10 years agore PR testsuite/59897 (FAIL: c-c++-common/asan/use-after-return-1.c -O* output...
Dominique d'Humieres [Thu, 23 Jan 2014 12:48:25 +0000 (14:48 +0200)]
re PR testsuite/59897 (FAIL: c-c++-common/asan/use-after-return-1.c  -O*  output pattern test, is 1: 0x2285020)

2014-01-23  Dominique Dhumieres  <dominiq@lps.ens.fr>

        PR sanitizer/59897
        * c-c++-common/asan/use-after-return-1.c: Fixed
        to pass on darwin.

From-SVN: r206961

10 years agofaq.xml (a-how_to_set_paths): Expand FAQ answer.
Jonathan Wakely [Thu, 23 Jan 2014 12:29:40 +0000 (12:29 +0000)]
faq.xml (a-how_to_set_paths): Expand FAQ answer.

* doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
* doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.

From-SVN: r206960

10 years agoavx512fintrin.h (_mm512_kmov): New.
Kirill Yukhin [Thu, 23 Jan 2014 09:25:11 +0000 (09:25 +0000)]
avx512fintrin.h (_mm512_kmov): New.

gcc/
* config/i386/avx512fintrin.h (_mm512_kmov): New.
* config/i386/i386.c (IX86_BUILTIN_KMOV16): Ditto.
(__builtin_ia32_kmov16): Ditto.
* config/i386/i386.md (UNSPEC_KMOV): New.
(kmovw): Ditto.

testsuite/gcc/
* gcc.target/i386/avx512f-kmovw-1.c: New.

Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
From-SVN: r206958

10 years agoPR preprocessor/58580 - preprocessor goes OOM with warning for zero literals
Dodji Seketeli [Thu, 23 Jan 2014 09:13:08 +0000 (09:13 +0000)]
PR preprocessor/58580 - preprocessor goes OOM with warning for zero literals

In this problem report, the compiler is fed a (bogus) translation unit
in which some literals contain bytes whose value is zero.  The
preprocessor detects that and proceeds to emit diagnostics for that
king of bogus literals.  But then when the diagnostics machinery
re-reads the input file again to display the bogus literals with a
caret, it attempts to calculate the length of each of the lines it got
using fgets.  The line length calculation is done using strlen.  But
that doesn't work well when the content of the line can have several
zero bytes.  The result is that the read_line never sees the end of
the line because strlen repeatedly reports that the line ends before
the end-of-line character; so read_line thinks its buffer for reading
the line is too small; it thus increases the buffer, leading to a huge
memory consumption and disaster.

Here is what this patch does.

location_get_source_line is modified to return the length of a source
line that can now contain bytes with zero value.
diagnostic_show_locus() is then modified to consider that a line can
have characters of value zero, and so just shows a white space when
instructed to display one of these characters.

Additionally location_get_source_line is modified to avoid re-reading
each and every line from the beginning of the file until it reaches
the line number N that it is instructed to get; this was leading to
annoying quadratic behaviour when reading adjacent lines near the end
of (big) files.  So a cache is now associated to the file opened in
text mode.  When the content of the file is read, that content is
stashed in the file cache.  That file cache is searched for line
delimiters.  A number of line positions are saved in the cache and a
number of file caches are kept in memory.  That way when
location_get_source_line is asked to read line N + 1, it just has to
start reading from line N that it has already read.

libcpp/ChangeLog:

* include/line-map.h (linemap_get_file_highest_location): Declare
new function.
* line-map.c (linemap_get_file_highest_location): Define it.

gcc/ChangeLog:

* input.h (location_get_source_line): Take an additional line_size
parameter.
(void diagnostics_file_cache_fini): Declare new function.
* input.c (struct fcache): New type.
(fcache_tab_size, fcache_buffer_size, fcache_line_record_size):
New static constants.
(diagnostic_file_cache_init, total_lines_num)
(lookup_file_in_cache_tab, evicted_cache_tab_entry)
(add_file_to_cache_tab, lookup_or_add_file_to_cache_tab)
(needs_read, needs_grow, maybe_grow, read_data, maybe_read_data)
(get_next_line, read_next_line, goto_next_line, read_line_num):
New static function definitions.
(diagnostic_file_cache_fini): New function.
(location_get_source_line): Take an additional output line_len
parameter.  Re-write using lookup_or_add_file_to_cache_tab and
read_line_num.
* diagnostic.c (diagnostic_finish): Call
diagnostic_file_cache_fini.
(adjust_line): Take an additional input parameter for the length
of the line, rather than calculating it with strlen.
(diagnostic_show_locus): Adjust the use of
location_get_source_line and adjust_line with respect to their new
signature.  While displaying a line now, do not stop at the first
null byte.  Rather, display the zero byte as a space and keep
going until we reach the size of the line.
* Makefile.in: Add vec.o to OBJS-libcommon

gcc/testsuite/ChangeLog:

* c-c++-common/cpp/warning-zero-in-literals-1.c: New test file.

Signed-off-by: Dodji Seketeli <dodji@seketeli.org>
From-SVN: r206957

10 years agoavx512fintrin.h (_mm512_loadu_si512): Rename.
Kirill Yukhin [Thu, 23 Jan 2014 09:11:09 +0000 (09:11 +0000)]
avx512fintrin.h (_mm512_loadu_si512): Rename.

gcc/
        * config/i386/avx512fintrin.h (_mm512_loadu_si512): Rename.
        (_mm512_storeu_si512): Ditto.

testsuite/gcc/
        * gcc.target/i386/avx512f-vmovdqu32-1.c: Fix intrinsic name.
        * gcc.target/i386/avx512f-vmovdqu32-2.c: Ditto.
        * gcc.target/i386/avx512f-vpcmpd-2.c: Ditto.
        * gcc.target/i386/avx512f-vpcmpq-2.c: Ditto.
        * gcc.target/i386/avx512f-vpcmpud-2.c: Ditto.
        * gcc.target/i386/avx512f-vpcmpuq-2.c: Ditto.

From-SVN: r206956

10 years agore PR target/52125 (Problems with LO16 asm operands on MIPS)
Richard Sandiford [Thu, 23 Jan 2014 08:24:38 +0000 (08:24 +0000)]
re PR target/52125 (Problems with LO16 asm operands on MIPS)

gcc/
PR target/52125
* rtl.h (get_referenced_operands): Declare.
* recog.c (get_referenced_operands): New function.
* config/mips/mips.c (mips_reorg_process_insns): Check which asm
operands have been referenced when recording LO_SUM references.

gcc/testsuite/
PR target/52125
* gcc.dg/pr48774.c: Remove skip for mips_rel.
* gcc.target/mips/pr52125.c: New test.

From-SVN: r206955

10 years agomicroblaze.md: Correct bswaphi2 insn.
David Holsgrove [Thu, 23 Jan 2014 01:29:15 +0000 (01:29 +0000)]
microblaze.md: Correct bswaphi2 insn.

2014-01-22  David Holsgrove <david.holsgrove@xilinx.com>

* config/microblaze/microblaze.md: Correct bswaphi2 insn.

From-SVN: r206952

10 years agoDaily bump.
GCC Administrator [Thu, 23 Jan 2014 00:16:31 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r206950

10 years agox86-tune.def (X86_TUNE_ACCUMULATE_OUTGOING_ARGS): Enable for generic and recent AMD...
Jan Hubicka [Thu, 23 Jan 2014 00:12:56 +0000 (01:12 +0100)]
x86-tune.def (X86_TUNE_ACCUMULATE_OUTGOING_ARGS): Enable for generic and recent AMD targets.

* config/i386/x86-tune.def (X86_TUNE_ACCUMULATE_OUTGOING_ARGS):
Enable for generic and recent AMD targets.

From-SVN: r206947

10 years agoPR libstdc++/58764 (again)
Jonathan Wakely [Wed, 22 Jan 2014 23:50:58 +0000 (23:50 +0000)]
PR libstdc++/58764 (again)

PR libstdc++/58764 (again)
* include/bits/stl_list.h (list): Make default constructor's exception
specification conditional.
* include/bits/stl_vector.h (vector): Likewise.
* testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
to default constructor.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r206946

10 years agore PR c/59891 (ICE on invalid code (with div-by-zero) at all optimization levels...
Marek Polacek [Wed, 22 Jan 2014 22:15:12 +0000 (22:15 +0000)]
re PR c/59891 (ICE on invalid code (with div-by-zero) at all optimization levels on x86_64-linux-gnu)

PR c/59891
c/
* c-typeck.c (build_conditional_expr): Call c_fully_fold instead
of remove_c_maybe_const_expr on op1 and op2.
testsuite/
* gcc.dg/torture/pr59891.c: New test.

From-SVN: r206944

10 years agocombine-stack-adj.c (combine_stack_adjustments_for_block): Remove ARG_SIZE note when...
Jan Hubicka [Wed, 22 Jan 2014 22:05:23 +0000 (23:05 +0100)]
combine-stack-adj.c (combine_stack_adjustments_for_block): Remove ARG_SIZE note when adjustment was eliminated.

* combine-stack-adj.c (combine_stack_adjustments_for_block): Remove
ARG_SIZE note when adjustment was eliminated.

From-SVN: r206943

10 years agore PR tree-optimization/59597 (Performance degradation on Coremark after r205074)
Jeff Law [Wed, 22 Jan 2014 21:27:38 +0000 (14:27 -0700)]
re PR tree-optimization/59597 (Performance degradation on Coremark after r205074)

PR tree-optimization/59597
* tree-ssa-threadupdate.c (dump_jump_thread_path): Move to earlier
in file.  Accept new argument REGISTERING and use it to modify
dump output appropriately.
(register_jump_thread): Corresponding changes.
(mark_threaded_blocks): Reinstate code to cancel unprofitable
thread paths involving joiner blocks.  Add code to dump cancelled
jump threading paths.

PR tree-optimization/59597
* gcc.dg/tree-ssa/pr59597.c: New test.

From-SVN: r206941

10 years agore PR libstdc++/58764 ([lwg/2193] error: converting to ‘const std::vector<std::basic_...
Jonathan Wakely [Wed, 22 Jan 2014 19:46:44 +0000 (19:46 +0000)]
re PR libstdc++/58764 ([lwg/2193] error: converting to â€˜const std::vector<std::basic_string<char> >’ from initializer list would use explicit constructor)

PR libstdc++/58764
* include/bits/stl_deque.h (deque::deque(const allocator_type&):
Split into separate default constructor and constructor taking
allocator.
* include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
* include/bits/stl_vector.h (vector::vector(const allocator_type&):
Likewise.
* include/debug/deque (deque::deque(const allocator_type&)): Likewise.
* include/debug/list (list::list(const _Allocator&)): Likewise.
* include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
Likewise.
* include/debug/multimap.h
(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
* include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
Likewise.
* include/debug/multiset.h
(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
* include/debug/vector (vector::vector(const allocator_type&)):
Likewise.
* include/profile/deque (deque::deque(const _Allocator&)): Likewise.
* include/profile/list (list::list(const _Allocator&)): Likewise.
* include/profile/map.h
(map::map(const _Compare&, const _Allocator&)): Likewise.
* include/profile/multimap.h
(multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
* include/profile/set.h
(set::set(const _Compare&, const _Allocator&)): Likewise.
* include/profile/multiset.h
(multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
* include/profile/vector (vector::vector(const _Allocator&)):
Likewise.
* testsuite/23_containers/deque/58764.cc: New.
* testsuite/23_containers/list/58764.cc: New.
* testsuite/23_containers/map/58764.cc: New.
* testsuite/23_containers/multimap/58764.cc: New.
* testsuite/23_containers/set/58764.cc: New.
* testsuite/23_containers/multiset/58764.cc: New.
* testsuite/23_containers/vector/58764.cc: New.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r206939

10 years agore PR rtl-optimization/59477 (ICE: in assign_by_spills, at lra-assigns.c:1281 with -O)
Vladimir Makarov [Wed, 22 Jan 2014 19:38:47 +0000 (19:38 +0000)]
re PR rtl-optimization/59477 (ICE: in assign_by_spills, at lra-assigns.c:1281 with -O)

2014-01-22  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59477
* lra-constraints.c (inherit_in_ebb): Process call for living hard
regs.  Update reloads_num and potential_reload_hard_regs for all
insns.

2014-01-22  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59477
* g++.dg/pr59477.C: New.

From-SVN: r206938

10 years agolibgo/configure: Test for gold with gccgo -Wl,--help, not ld --help.
Ian Lance Taylor [Wed, 22 Jan 2014 19:10:47 +0000 (19:10 +0000)]
libgo/configure: Test for gold with gccgo -Wl,--help, not ld --help.

From-SVN: r206937

10 years agopr44194-1.c: Match "insn " and "insn:", but not "insn/f".
Richard Sandiford [Wed, 22 Jan 2014 18:45:05 +0000 (18:45 +0000)]
pr44194-1.c: Match "insn " and "insn:", but not "insn/f".

gcc/testsuite/
* gcc.dg/pr44194-1.c: Match "insn " and "insn:", but not "insn/f".

From-SVN: r206936

10 years agore PR c++/59482 (A friend class cannot inherit a private nested class)
Ville Voutilainen [Wed, 22 Jan 2014 18:08:01 +0000 (20:08 +0200)]
re PR c++/59482 (A friend class cannot inherit a private nested class)

/cp
2014-01-22  Ville Voutilainen  <ville.voutilainen@gmail.com>

PR c++/59482
* parser.c (cp_parser_class_head): Push the class before parsing
the base-clause, pop after it.

/testsuite
2014-01-22  Ville Voutilainen  <ville.voutilainen@gmail.com>

PR c++/59482
* g++.dg/pr59482.C: New.

From-SVN: r206933

10 years agoi386-interix.h (i386_pe_unique_section): Don't use PARAMS.
Tom Tromey [Wed, 22 Jan 2014 17:10:10 +0000 (17:10 +0000)]
i386-interix.h (i386_pe_unique_section): Don't use PARAMS.

* config/i386/i386-interix.h (i386_pe_unique_section): Don't use
PARAMS.
* config/cr16/cr16-protos.h (notice_update_cc): Don't use PARAMS.

From-SVN: r206932

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 17:04:57 +0000 (18:04 +0100)]
[multiple changes]

2014-01-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Helper): A subprogram
body generated for an expression function within a protected body
needs a set of renaming declarations if the expression function
comes from source.

2014-01-22  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (Get_Type_Reference): In semantics-only mode,
list interface progenitor of a tagged concurrent type, for better
source navigation.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* lib.adb (In_Extended_Main_Code_Unit): Return False for
Standard_Location.
(In_Extended_Main_Source_Unit): Return False for Standard_Location.
* lib.ads (In_Extended_Main_Code_Unit): Add documentation on
treatment of Slocs No_Location and Standard_Location.
* restrict.adb (Check_Restriction_No_Dependence): Explicitly
check for entity with Standard_Location Sloc, rather than relying
on Lib routines to do that.
* sem_res.adb (Resolve_Call): Implement SPARK_05 restriction
that a call cannot occur before a later occuring body within
the same unit.

From-SVN: r206931

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 16:53:24 +0000 (17:53 +0100)]
[multiple changes]

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* rtsfind.adb: Update comment.

2014-01-22  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_aux.ads, sem_aux.adb (Is_Body): New routine.
* sem_ch3.adb (Analyze_Declarations): Add local variable
Body_Seen. Generate the spec of a late controlled
primitive body that is about to freeze its related type.
(Handle_Late_Controlled_Primitive): New routine.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* a-stream.adb: Minor reformatting.

2014-01-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (From_Actual_Package): Introduce a recursive
sub-procedure Declared_In_Actual to handle properly the visibility
of actuals in actual packages, that are themselves actuals to a
actual package of the current instance. This mimics properly the
visibility of formals of formal packages declared with a box,
within the corresponding generic unit.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* checks.adb: Do not assume that a volatile variable is valid.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* g-catiio.ads (Image, Value): Clarify that these functions
operate in the local time zone.  Minor documentation update.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* csets.adb, csets.ads, opt.ads: Minor documentation fixes.

From-SVN: r206930

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 16:47:20 +0000 (17:47 +0100)]
[multiple changes]

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_aux.adb, sem_aux.ads, sem_ch3.adb (Has_Unconstrained_Elements):
Moved to sem_aux.adb.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* vms_data.ads: Minor reformatting.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* debug.adb: Document messages affected by -gnatd.E including
the new ones that relate to late definition of equality.
* sem_ch6.adb (Check_Untagged_Equality): In Ada 2012 mode, if
debug flag -gnatd.E is set, then generate warnings rather than
errors.
(Check_Untagged_Equality): In earlier versions of Ada,
generate warnings if Warn_On_Ada_2012_Incompatibility flag is set.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (Usage_Error): Output additional messages for
unconstrained OUT parameters lacking an input dependency.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_ch4.adb: Minor reformatting.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* restrict.ads: Minor reformatting.
* sem_res.adb (Resolve_Call): Check for SPARK_05 restriction that
forbids a call from within a subprogram to the same subprogram.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* a-stream.ads (Read_SEA, Write_SEA): New subprograms, optimized
stream attributes for Stream_Element_Array.
* a-stream.adb (Read_SEA, Write_SEA): Bodies for the above.
* rtsfind.adb (Check_CRT): Do not reject a reference to an entity
defined in the current scope.

From-SVN: r206929

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 16:42:55 +0000 (17:42 +0100)]
[multiple changes]

2014-01-22  Robert Dewar  <dewar@adacore.com>

* debug.adb, exp_ch4.adb, erroutc.adb: Minor reformatting.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* sem_ch7.adb, sem_ch8.adb, exp_ch3.adb: Minor reformatting.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): For a constant
declaration initialized with a function call, whose type
has variable size, need to remove side effects so that the
initialization expression becomes a dereference of a temporary
reference to the function result.

From-SVN: r206928

10 years agoerrout.adb (Initialize): Remove trick to add dummy entry in Warnings table.
Yannick Moy [Wed, 22 Jan 2014 16:40:30 +0000 (16:40 +0000)]
errout.adb (Initialize): Remove trick to add dummy entry in Warnings table.

2014-01-22  Yannick Moy  <moy@adacore.com>

* errout.adb (Initialize): Remove trick to add dummy entry
in Warnings table.
* erroutc.adb (Set_Warnings_Mode_Off,
Set_Warnings_Mode_On): Do nothing if warnings are suppressed by
command line switch.
* opt.ads (Warning_Mode): Document behavior
wrt pragma Warnings, in normal mode and in GNATprove_Mode.

From-SVN: r206927

10 years agoinsert-vsx-be-order.c: New.
William Schmidt [Wed, 22 Jan 2014 16:10:07 +0000 (16:10 +0000)]
insert-vsx-be-order.c: New.

2014-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/insert-vsx-be-order.c: New.
* gcc.dg/vmx/extract-vsx.c: New.
* gcc.dg/vmx/extract-vsx-be-order.c: New.
* gcc.dg/vmx/insert-vsx.c: New.

From-SVN: r206926

10 years agoinsert-vsx-be-order.c: New.
William Schmidt [Wed, 22 Jan 2014 16:08:55 +0000 (16:08 +0000)]
insert-vsx-be-order.c: New.

2014-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/insert-vsx-be-order.c: New.
* gcc.dg/vmx/extract-vsx.c: New.
* gcc.dg/vmx/extract-vsx-be-order.c: New.
* gcc.dg/vmx/insert-vsx.c: New.

From-SVN: r206925

10 years ago* include/bits/stl_deque.h (_Deque_impl): Move comment.
Jonathan Wakely [Wed, 22 Jan 2014 14:34:39 +0000 (14:34 +0000)]
* include/bits/stl_deque.h (_Deque_impl): Move comment.

From-SVN: r206924

10 years agosem_ch3.adb, [...]: Minor reformatting.
Robert Dewar [Wed, 22 Jan 2014 14:24:03 +0000 (14:24 +0000)]
sem_ch3.adb, [...]: Minor reformatting.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, errout.adb, erroutc.adb: Minor reformatting.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Check_Pool_Size_Clash): New procedure
(Analyze_Attribute_Definition_Clause, case Storage_Pool): call
Check_Pool_Size_Clash (Analyze_Attribute_Definition_Clause,
case Storage_Size): call Check_Pool_Size_Clash.

From-SVN: r206923

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 14:06:41 +0000 (15:06 +0100)]
[multiple changes]

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, exp_util.adb, sem_dim.adb, sem_elab.adb, sem_ch8.adb,
sem_eval.ads: Minor reformatting.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* sem_eval.adb (Compile_Time_Known_Bounds): Return False for
Any_Composite to prevent cascaded errors.

2014-01-22  Yannick Moy  <moy@adacore.com>

* errout.adb (Initialize): Do not insert special entry in Warnings
table in GNATprove_Mode.
* erroutc.adb (Set_Warnings_Mode_On): Add info in Warnings table in
GNATprove_Mode.
* gnat1drv.adb (Adjust_Global_Switches): Do not suppress frontend
warnings anymore.

From-SVN: r206922

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 14:02:27 +0000 (15:02 +0100)]
[multiple changes]

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (Analyze_Initializes_In_Decl_Part): Handle null
initializes case.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* snames.ads-tmpl: Update header.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* exp_util.adb (Insert_Actions): When inserting actions on a
short circuit operator that has already been analyzed, do not park
actions in node; instead introduce an N_Expression_With_Actions
and insert actions immediately.
Add guard for unexpected case of climbing up through statement
in Actions list of an N_Expression_With_Actions.
* sem_elab.adb (Insert_Elab_Check): Remove complex
specialized circuitry for the case where the context is already
analyzed, as it is not needed and introduces irregularities in
finalization. Instead rely on the above change to Insert_Actions
to ensure that late insertion on short circuit operators works
as expected.

2014-01-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Operator_Check): Improve error message when an
operand of concatenation is an access type.

2014-01-22  Thomas Quinot  <quinot@adacore.com>

* sem_dim.adb (Analyze_Dimension_Identifier): Add guard against
cascaded error.

2014-01-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Find_Selected_Component): Handle properly the case
of an expanded name in a proper body, whose prefix is a package
in the context of the proper body, when there is a homonym of
the package declared in the parent unit.

From-SVN: r206921

10 years agosem_warn.adb (Check_Use_Clause): Don't give no entities used msg if errors found.
Robert Dewar [Wed, 22 Jan 2014 11:18:34 +0000 (11:18 +0000)]
sem_warn.adb (Check_Use_Clause): Don't give no entities used msg if errors found.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* sem_warn.adb (Check_Use_Clause): Don't give no entities used
msg if errors found.
(Check_One_Unit): Same change.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* ug_words: Add missing/wrong entries for VMS warning switches.
* sem_prag.adb (Check_Duplicate_Pragma): Avoid flagging parent type.

From-SVN: r206920

10 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Jan 2014 11:17:01 +0000 (12:17 +0100)]
[multiple changes]

2014-01-22  Jerome Guitton  <guitton@adacore.com>

* mlib-tgt-specific-vxworks.adb (Get_Target_Suffix): Replace xscale by
arm.

2014-01-22  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi, gnat_ugn.texi: Document passive task optimization

From-SVN: r206919

10 years ago* gcc-interface/Makefile.in: Minor fixes.
Eric Botcazou [Wed, 22 Jan 2014 09:15:03 +0000 (09:15 +0000)]
* gcc-interface/Makefile.in: Minor fixes.

From-SVN: r206918

10 years agoDaily bump.
GCC Administrator [Wed, 22 Jan 2014 00:17:09 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r206914

10 years agoMAINTAINERS: Update my email address.
John David Anglin [Tue, 21 Jan 2014 23:33:07 +0000 (23:33 +0000)]
MAINTAINERS: Update my email address.

* MAINTAINERS: Update my email address.

From-SVN: r206911

10 years agore PR rtl-optimization/59896 (Bootstrap: Thumb-1 LRA unable to generate reloads for...
Vladimir Makarov [Tue, 21 Jan 2014 21:26:33 +0000 (21:26 +0000)]
re PR rtl-optimization/59896 (Bootstrap: Thumb-1 LRA unable to generate reloads for jump_insn)

2014-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59896
* lra-constraints.c (process_alt_operands): Check unused note for
matched operands of insn with no output reloads.

2014-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59896
* gcc.target/arm/pr59896.c: New.

From-SVN: r206908

10 years agomips.c (mips_move_to_gpr_cost): Add M16_REGS case.
Richard Sandiford [Tue, 21 Jan 2014 20:49:17 +0000 (20:49 +0000)]
mips.c (mips_move_to_gpr_cost): Add M16_REGS case.

gcc/
* config/mips/mips.c (mips_move_to_gpr_cost): Add M16_REGS case.
(mips_move_from_gpr_cost): Likewise.

From-SVN: r206907

10 years agoregex.tcc: Remove incorrect `nosubs` handling.
Tim Shen [Tue, 21 Jan 2014 19:54:03 +0000 (19:54 +0000)]
regex.tcc: Remove incorrect `nosubs` handling.

2014-01-21  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.tcc: Remove incorrect `nosubs` handling.
* include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
* testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.

From-SVN: r206906

10 years agore PR libstdc++/56267 (unordered containers require Assignable hash function)
Jonathan Wakely [Tue, 21 Jan 2014 19:38:35 +0000 (19:38 +0000)]
re PR libstdc++/56267 (unordered containers require Assignable hash function)

PR libstdc++/56267
* include/bits/hashtable.h (__cache_default): Do not depend on
whether the hash function is DefaultConstructible or CopyAssignable.
(_Hashtable): Adjust static assertions.
* doc/xml/manual/containers.xml (containers.unordered.cache): Update.
* testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
dg-error line number.
* testsuite/23_containers/unordered_set/
not_default_constructible_hash_neg.cc: Remove.

From-SVN: r206904

10 years agoFix typo.
Sterling Augustine [Tue, 21 Jan 2014 19:30:08 +0000 (19:30 +0000)]
Fix typo.

From-SVN: r206900

10 years agore PR rtl-optimization/59858 (ICE: assign_by_spills, at lra-assigns.c:1283)
Vladimir Makarov [Tue, 21 Jan 2014 19:15:40 +0000 (19:15 +0000)]
re PR rtl-optimization/59858 (ICE: assign_by_spills, at lra-assigns.c:1283)

2014-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59858
* lra-constraints.c (SMALL_REGISTER_CLASS_P): Use
ira_class_hard_regs_num.
(process_alt_operands): Increase reject for dying matched operand.

2014-01-21  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59858
* gcc.target/arm/pr59858.c: New.

From-SVN: r206897

10 years agore PR target/59003 (profiledbootstrap miscompiles gcc during stagefeedback --with...
Jakub Jelinek [Tue, 21 Jan 2014 19:12:06 +0000 (20:12 +0100)]
re PR target/59003 (profiledbootstrap miscompiles gcc during stagefeedback --with-tune=amdfam10)

PR target/59003
* config/i386/i386.c (expand_small_movmem_or_setmem): If mode is
smaller than size, perform several stores or loads and stores
at dst + count - size to store or copy all of size bytes, rather
than just last modesize bytes.

* gcc.dg/tree-prof/pr59003.c: New test.

From-SVN: r206896

10 years agoconfig.host (tmake_file): add t-slibgcc-libgcc for xtensa*-*-linux*.
Baruch Siach [Tue, 21 Jan 2014 19:06:32 +0000 (19:06 +0000)]
config.host (tmake_file): add t-slibgcc-libgcc for xtensa*-*-linux*.

libgcc/
* config.host (tmake_file): add t-slibgcc-libgcc for xtensa*-*-linux*.

From-SVN: r206895

10 years agoFix ChangeLog entry, moving it from top-level ChangeLog to
Ian Lance Taylor [Tue, 21 Jan 2014 17:04:12 +0000 (17:04 +0000)]
Fix ChangeLog entry, moving it from top-level ChangeLog to
gcc/ChangeLog.

From-SVN: r206893

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:33:09 +0000 (17:33 +0100)]
[multiple changes]

2014-01-21  Robert Dewar  <dewar@adacore.com>

* par-ch4.adb (P_If_Expression): Rewritten to improve error recovery.
* par-ch5.adb (P_Condition): New version with expression prescanned.
* par.adb (P_Condition): New version with expression prescanned.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document that Allow_Integer_Address is ignored
if Address is not a private type.
* sem_prag.adb (Analyze_Pragma, case Allow_Integer_Address):
Ignore pragma if System.Address is not a private type.

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* namet.ads (Name_Len): Initialize to 0 to avoid accessing an
uninitialized value.

From-SVN: r206892

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:31:21 +0000 (17:31 +0100)]
[multiple changes]

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* gnat_rm.texi (Scalar_Storage_Order): Update documentation.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Set_Instance_Env): In Ada 2012 mode, preserve
the value of Assertions_Enabled flag when compiling an instance of
an internal unit. This facilitates the use of pre/postconditions
in generic internal units, such as the new elementary function
libraries.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* exp_aggr.adb: Minor reformatting.
* sem_attr.adb: Minor reformatting.
* sem_res.adb: Minor comment addition.
* einfo.adb: Minor comment updates.
* freeze.adb: Minor reformatting and code reorganization.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* par-ch4.adb (P_If_Expression): Handle more gracefully an
elsif clause that does not have an else part.

From-SVN: r206891

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:29:08 +0000 (17:29 +0100)]
[multiple changes]

2014-01-21  Robert Dewar  <dewar@adacore.com>

* checks.adb, sem_util.ads, sem_ch4.adb: Minor reformatting.

2014-01-21  Pascal Obry  <obry@adacore.com>

* projects.texi: Minor typo fix.

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Check_Component_Storage_Order): If a record type
has an explicit Scalar_Storage_Order attribute definition clause,
reject any component that itself is of a composite type and does
not have one.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Generate_Parent_Reference): Make public so it
can be used to generate proper cross-reference information for
the parent units of proper bodies.

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* gcc-interface/decl.c (gnat_to_gnu_entity): For a modular
type that represents a bit packed array type, propagate the
reverse storage order flag to the generated wrapper record.
* exp_pakd.adb (Expand_Packed_Element_Set,
Expand_Packed_Element_Reference): No byte swapping required in
the front-end for the case of a reverse storage order array,
as this is now handled uniformly in the back-end.  However we
still need to swap back an extracted element if it is itself a
nested composite with reverse storage order.

From-SVN: r206890

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:24:37 +0000 (17:24 +0100)]
[multiple changes]

2014-01-21  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_External_Property): Add processing for "others".
(Analyze_Pragma): Update the grammar of pragma Abstract_State to
include "others".

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* gnat_ugn.texi: Minor updates.

From-SVN: r206889

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:22:17 +0000 (17:22 +0100)]
[multiple changes]

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* exp_pakd.adb: Update comment, minor reformatting.

2014-01-21  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch3.adb (Analyze_Variable_Contract): Trigger the volatile
object check when SPARK_Mode is on.
* sem_ch6.adb (Process_Formals): Trigger the volatile object
check when SPARK_Mode is on.
* sem_ch12.adb (Instantiate_Object): Trigger the volatile object
check when SPARK_Mode is on.
* sem_ch13.adb (Analyze_Aspect_Specifications): Insert the
corresponding pragma of aspect SPARK_Mode in the visible
declarations of a package declaration.
* sem_prag.adb (Analyze_Pragma): Trigger the volatile object
check when SPARK_Mode is on.
* sem_res.adb (Resolve_Actuals): Trigger the volatile object
check when SPARK_Mode is on.
(Resolve_Entity_Name): Trigger
the volatile object check when SPARK_Mode is on.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* a-except-2005.adb: Minor reformatting

From-SVN: r206888

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:20:24 +0000 (17:20 +0100)]
[multiple changes]

2014-01-21  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_prag.adb, sem_prag.ads, sem_ch12.adb, sem_res.adb,
sem_ch6.adb, a-except-2005.adb: Minor reformatting.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): When a class-wide
object is declared, it is rewritten as a renaming of an dynamic
expression that wraps the initial value.  The renaming declaration
is first given an internal name, to prevent collisions with the
entity already declared, and then the name is modified to reflect
the original one. the modification of the name must preserve
the source location of the original, to prevent spurious errors
when compiling with style checks if the declaration involves
more than one entity.

From-SVN: r206887

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 16:16:43 +0000 (17:16 +0100)]
[multiple changes]

2014-01-21  Hristian Kirtchev  <kirtchev@adacore.com>

* aspects.adb Add entries for Async_Readers, Async_Writers,
Effective_Reads and Effective_Writes in table Canonical_Aspect.
* aspects.ads Add entries for Async_Readers, Async_Writers,
Effective_Reads and Effective_Writes in tables Aspect_Id,
Aspect_Names, Aspect_Delay and Implementation_Defined_Aspect.
* atree.adb (Ekind_In): New version with 8 parameters.
(Node34): New routine.
(Set_Node34): New routine.
* atree.ads (Ekind_In): New version with 8 parameters.
(Node34): New routine.
(Set_Node34): New routine.
* einfo.adb Contract is now Node34.
(Contract): Update the assertion and node usage.
(Get_Pragma): Include pragmas Async_Readers, Async_Writers,
Effective_Reads and Effective_Writes.
(Set_Contract): Update the assertion and node usage.
(Write_Field24_Name): Remove the output for a contract.
(Write_Field34_Name): Add output for a contract.
* einfo.ads Contract is now Node34. Update the comment on
attribute usage and related node structures.
(Get_Pragma): Update the comment on usage.
* par-prag.adb (Prag): Pragmas Async_Readers, Async_Writers,
Effective_Reads and Effective_Writes do not require special
processing by the parser.
* sem_ch3.adb (Analyze_Variable_Contract): New routine.
(Analyze_Declarations): Analyze the contract of a variable at
the end of the declarative region.
(Analyze_Object_Declaration): Create a contract for a variable.
* sem_ch6.adb (Analyze_Subprogram_Contract): Update the retrieval
of classification pragmas.
(Process_Formals): Detect an illegal
use of a volatile object as a formal in a function.
* sem_ch12.adb (Instantiate_Object): Detect an illegal use of
a volatile object as an actual in generic instantiation.
* sem_prag.adb Add entries for Async_Readers, Async_Writers,
Effective_Reads and Effective_Writes in table Sig_Flags.
(Analyze_External_State_In_Decl_Part): New routine.
(Analyze_Global_Item): Detect an illegal use of a volatile object
as a global item of a function.
(Analyze_Pragma): Reimplement
pragma Abstract_State. Add support for pragmas Async_Readers,
Async_Writers, Effective_Reads and Effective_Writes.
(Check_External_Properties): New routine.
* sem_prag.ads (Analyze_External_State_In_Decl_Part): New routine.
(Check_External_Properties): New routine.
* sem_res.adb (Resolve_Actuals): Detect an illegal use of a
volatile object as an actual in a call.
(Resolve_Entity_Name):
Add local variables Par, Prev and Usage_OK. Detect illegal
contexts of volatile objects.
* sem_util.adb (Add_Contract_Item): Add support for
pragmas associated with the contract of a variable.
(Async_Readers_Enabled): New routine.
(Async_Writers_Enabled): New routine.
(Effective_Reads_Enabled): New routine.
(Effective_Writes_Enabled): New routine.
(Has_Enabled_Property):
New routine.
(Is_Unchecked_Conversion_Instance): New routine.
(Is_Volatile_Object): Add support for entities that may denote
a volatile object.
* sem_util.ads (Add_Contract_Item): Update the
comment on usage.
(Async_Readers_Enabled): New routine.
(Async_Writers_Enabled): New routine.
(Effective_Reads_Enabled): New routine.
(Effective_Writes_Enabled): New routine.
(Is_Unchecked_Conversion_Instance): New routine.
* sinfo.ads Update the comment on the structure of N_Contract.
* snames.ads-tmpl Add predefined names for Async_Readers,
Async_Writers, Effective_Reads and Effective_Writes. Add
pragma ids for Async_Readers, Async_Writers, Effective_Reads
and Effective_Writes.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Eval_Op_Expon): Use CRT_Safe_Compile_Time_Known_Value
* sem_eval.adb (Compile_Time_Known_Value): Remove special
handling of CRT mode (CRT_Safe_Compile_Time_Known_Value): New
function (Eval_Op_Expon): Add CRT_Safe in call to Test_Foldable
(Test_Foldable): Add CRT_Safe parameter
* sem_eval.ads (Compile_Time_Known_Value): Remove special
handling of CRT mode.
(CRT_Safe_Compile_Time_Known_Value): New function.

From-SVN: r206886

10 years agosem_prag.adb (Analyze_Pragma, [...]): Fix problem with pragma or aspect that applies...
Robert Dewar [Tue, 21 Jan 2014 16:13:56 +0000 (16:13 +0000)]
sem_prag.adb (Analyze_Pragma, [...]): Fix problem with pragma or aspect that applies to package spec or subprogram spec.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (Analyze_Pragma, case SPARK_Mode): Fix problem
with pragma or aspect that applies to package spec or subprogram
spec.

From-SVN: r206885

10 years agoinclude
Tom Tromey [Tue, 21 Jan 2014 15:09:10 +0000 (15:09 +0000)]
include
* ansidecl.h (ANSI_PROTOTYPES, PTRCONST, LONG_DOUBLE, PARAMS)
(VPARAMS, VA_START, VA_OPEN, VA_CLOSE, VA_FIXEDARG, CONST)
(VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, AND, DOTS)
(NOARGS): Don't define.
* libiberty.h (expandargv, writeargv): Don't use PARAMS.
libiberty
* _doprint.c (checkit): Use stdarg, not VA_* macros.
* asprintf.c (asprintf): Use stdarg, not VA_* macros.
* concat.c (concat_length, concat_copy, concat_copy2, concat)
(reconcat): Use stdarg, not VA_* macros.
* snprintf.c (snprintf): Use stdarg, not VA_* macros.
* vasprintf.c (checkit): Use stdarg, not VA_* macros.
* vsnprintf.c (checkit): Use stdarg, not VA_* macros.

From-SVN: r206881

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 12:02:54 +0000 (13:02 +0100)]
[multiple changes]

2014-01-21  Robert Dewar  <dewar@adacore.com>

* exp_aggr.adb: Minor reformatting.

2014-01-21  Johannes Kanig  <kanig@adacore.com>

* gnat1drv.adb (Gnat1drv) remove obsolete reference to -gnatd.H.

2014-01-21  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Document the "checks" attribute in gnat2xml.

2014-01-21  Steve Baird  <baird@adacore.com>

* gnat_rm.texi: Improve description of SPARK_Mode pragma.

2014-01-21  Vincent Celier  <celier@adacore.com>

* prj-part.adb (Parse_Single_Project): Accept to extend a project
if it has only be imported by an project being extended. When a
project that has only been imported by a project being extended
is imported by another project that is not being extended,
reset the previous indication, so that it will be an error if
this project is extended later.
* prj-tree.adb (Create_Project): Include component From_Extended
in table Projects_HT
* prj-tree.ads (Project_Name_And_Node): New Boolean component
From_Extended

2014-01-21  Robert Dewar  <dewar@adacore.com>

* atree.ads, atree.adb: Add Node33 and Set_Node33.
* einfo.ads, einfo.adb (SPARK_Pragma): New field (SPARK_Aux_Pragma):
New field (SPARK_Pragma_Inherited): New flag
(SPARK_Aux_Pragma_Inherited): New flag (SPARK_Mode_Pragmas):
Removed.
* lib.ads, lib.adb: Remove SPARK_Mode_Pragma, no longer used.
* opt.ads (SPARK_Mode_Pragma): New global variable.
* sem.ads: Add Save_SPARK_Mode_Pragma field to Scope_Stack_Entry.
* sem_ch3.adb: Use new SPARK_Mode data structures.
* sem_ch6.adb: Set SPARK_Mode fields in subprogram specs and bodies.
* sem_ch7.adb: Set SPARK_Mode fields in package spec and body entities.
* sem_ch8.adb (Push_Scope): Save SPARK_Mode_Pragma.
(Pop_Scope): Restore SPARK_Mode_Pragma.
* sem_prag.adb (Analyze_Pragma, case SPARK_Mode): Rewrite for
new data structures.

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* back_end.adb: Undo previous change, not needed. Minor reformatting.

From-SVN: r206879

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 11:58:20 +0000 (12:58 +0100)]
[multiple changes]

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* exp_ch5.adb: Fix comment.
* switch-c.adb: Minor comment update.
* exp_ch3.adb: Minor reformatting.

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* back_end.adb (Scan_Compiler_Arguments): Do not store object
filename in gnatprove mode.

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* sinfo.ads (No_Ctrl_Actions): Clarify documentation (flag also
suppresses usage of primitive _assign for tagged types).
* exp_aggr.adb (Build_Array_Aggr_Code.Gen_Assign): Set
No_Ctrl_Actions for a tagged type that does not require
finalization, as we want to disable usage of _assign (which
may cause undesirable discriminant checks on an uninitialized,
invalid target).

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb: Reject invariant'class on completion.

From-SVN: r206878

10 years ago* mklog: Avoid adding falsely changed functions to ChangeLog.
Tatiana Udalova [Tue, 21 Jan 2014 10:07:22 +0000 (16:07 +0600)]
* mklog: Avoid adding falsely changed functions to ChangeLog.

From-SVN: r206875

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 08:01:05 +0000 (09:01 +0100)]
[multiple changes]

2014-01-21  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Build_Init_Procedure): For
derivations of interfaces, do not move the the initialization
of the _parent field since such assignment is not generated.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Rewrite_Renamed_Operator): Do not replace entity
with the operator it renames if we are within an expression of
a pre/postcondition, because the expression will be reanalyzed
at a later point, and the analysis of the renaming may affect
the visibility of the operator when in an instance.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* sinfo.ads, sinfo.adb: Change Do_Discriminant_Check to use new Flag1.
Add this flag to type conversion nodes and assignment nodes.
* treepr.adb: Deal properly with Flag 1,2,3.
* treeprs.adt: Minor comment update.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* sem_eval.adb (Compile_Time_Known_Value): Add Ignore_CRT
parameter.
* sem_eval.ads (Compile_Time_Known_Value): Add Ignore_CRT
parameter, completely rewrite spec.

2014-01-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Install_Withed_Unit): If the unit is a subprogram
instance that is inlined, it may have been rewritten as a wrapper
package. In that case the unit that must be made visible is the
related instance of the package.

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* exp_ch9.adb (Expand_N_Selective_Accept.Add_Accept): Refine
previous change in codepeer mode.

From-SVN: r206874

10 years ago[multiple changes]
Arnaud Charlet [Tue, 21 Jan 2014 07:57:53 +0000 (08:57 +0100)]
[multiple changes]

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* exp_ch9.adb (Expand_N_Selective_Accept.Add_Accept): Always add
call to Abort_Undefer, as expected by the runtime.
* s-tasren.adb (Local_Complete_Rendezvous): Replace
Defer_Abort_Nestable by Defer_Abort, since we do not expect abort to be
deferred at this point. Update comments.

2014-01-21  Thomas Quinot  <quinot@adacore.com>

* exp_ch4.adb, exp_ch5.adb, checks.adb: Minor reformatting.

2014-01-21  Arnaud Charlet  <charlet@adacore.com>

* switch-c.adb, usage.adb, gnat_ugn.texi: Mark -gnates as internal,
remove from doc.

From-SVN: r206873

10 years agoswitch-c.adb, [...]: Minor reformatting.
Robert Dewar [Tue, 21 Jan 2014 07:54:56 +0000 (07:54 +0000)]
switch-c.adb, [...]: Minor reformatting.

2014-01-21  Robert Dewar  <dewar@adacore.com>

* switch-c.adb, usage.adb, atree.adb, atree.ads: Minor reformatting.

From-SVN: r206872