gcc.git
10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:49:11 +0000 (08:49 +0200)]
[multiple changes]

2014-07-17  Robert Dewar  <dewar@adacore.com>

* g-comlin.ads, g-comlin.adb: Minor clean up.

2014-07-17  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Update gnatpp doc.

From-SVN: r212729

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:47:15 +0000 (08:47 +0200)]
[multiple changes]

2014-07-17  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document new restriction No_Long_Long_Integers.
* exp_ch4.adb (Make_Array_Comparison_Op): Add note that we
could do this by actually expanding a real generic.
* a-tags.ads: Add comments about performance.
* sprint.adb (Sprint_Node_Actual, case N_Object_Declaration):
Print Etype of defining identifier, rather than the object
definition. More information.

2014-07-17  Thomas Quinot  <quinot@adacore.com>

* exp_dist.adb: Minor documentation clarification.

2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Is_Aliased): Revert previous change.

2014-07-17  Vincent Celier  <celier@adacore.com>

* g-comlin.adb (Try_Help): New procedure.
(Getopt): Use new procedure Try_Help.
* g-comlin.ads (Try_Help): New procedure.

2014-07-17  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Minor update.

From-SVN: r212728

10 years agognat_rm.texi: Improve documentation of Unrestricted_Access.
Robert Dewar [Thu, 17 Jul 2014 06:40:45 +0000 (06:40 +0000)]
gnat_rm.texi: Improve documentation of Unrestricted_Access.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Improve documentation of Unrestricted_Access.
* sinfo.ads: Document restriction on aggregates (must expand to
assignments if one or more assignments needs expansion, e.g. for
controlled types).
* sem_ch13.adb: All warning messages regarding bit order should
be info: messages.
* gnat_ugn.texi: Minor correction of missing @ on @code

2014-07-17  Robert Dewar  <dewar@adacore.com>

* restrict.ads (Implementation_Restriction): Add No_Long_Long_Integer.
* s-rident.ads (Partition_Boolean_Restrictions): Add
No_Long_Long_Integer.
* sem_ch3.adb (Modular_Type_Declaration): Size must be <=
Long_Integer'Size if restriction No_Long_Long_Integer is active.
(Signed_Integer_Type_Declaration): Do not allow Long_Long_Integer
as the implicit base type for a signed integer type declaration
if restriction No_Long_Long_Integer is active.
* sem_util.ads, sem_util.adb (Set_Entity_With_Checks): Include check for
No_Long_Long_Integer.

From-SVN: r212727

10 years agosem_ch3.adb, [...]: Remove the word kludge from ada sources.
Robert Dewar [Thu, 17 Jul 2014 06:37:45 +0000 (06:37 +0000)]
sem_ch3.adb, [...]: Remove the word kludge from ada sources.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, a-ztexio.ads, exp_imgv.adb, casing.adb, casing.ads,
einfo.ads, checks.adb, sem_ch12.adb, a-textio.ads, freeze.adb,
repinfo.adb, exp_ch6.adb, sem_ch4.adb, a-witeio.ads, sem_ch8.adb,
sem_warn.adb, exp_aggr.adb, exp_dist.adb, par-tchk.adb, s-fatgen.adb,
treepr.adb, lib-xref.adb: Remove the word kludge from ada sources.

From-SVN: r212726

10 years agodebug.adb: Remove -gnatdQ.
Robert Dewar [Thu, 17 Jul 2014 06:35:13 +0000 (06:35 +0000)]
debug.adb: Remove -gnatdQ.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* debug.adb: Remove -gnatdQ.
* exp_disp.adb: Remove -gnatdQ.
* a-ztenio.ads, a-wtinio.ads, a-wtmoio.ads, a-ztcoau.ads, a-tiinio.ads,
a-wtfiio.ads, a-timoio.ads, sem_ch12.adb, a-tifiio.ads, a-ztinio.ads,
rtsfind.adb, rtsfind.ads, a-ztmoio.ads, a-wtdeio.ads, a-ztfiio.ads,
a-tideio.ads, a-wtflio.ads, a-ztdeio.ads, sem_ch8.adb, a-tiflio.ads,
sprint.adb, a-ztflio.ads, snames.ads-tmpl, a-wtenio.ads,
a-tienio.ads: Rename Text_IO_Kludge to Text_IO_Special_Unit.

From-SVN: r212725

10 years agoback_end.adb: Minor reformatting and comment additions.
Robert Dewar [Thu, 17 Jul 2014 06:31:56 +0000 (06:31 +0000)]
back_end.adb: Minor reformatting and comment additions.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* back_end.adb: Minor reformatting and comment additions.
* checks.ads, checks.adb (Duplicated_Tag_Checks_Suppressed): New
function.
* exp_disp.adb (Make_DT): Use Duplicated_Tag_Checks_Suppressed.
(Make_VM_TSD): Use Duplicated_Tag_Checks_Suppressed.
* gnat_rm.texi: Document new check Duplicated_Tag_Checks_Suppressed.
* gnat_ugn.texi: Additional documentation for Duplicated_Tag_Check.
* snames.ads-tmpl (Duplicated_Tag_Checks_Suppressed): New check.
* types.ads (Duplicated_Tag_Checks_Suppressed): New check.

From-SVN: r212724

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:30:05 +0000 (08:30 +0200)]
[multiple changes]

2014-07-17  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Minor comment updates.

2014-07-17  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Make_Explicit_Dereference): If the expression
being dereferenced is a generalized indexing, reset the overloaded
flag on the generalized indexing call, consistent with the
resetting of the flag on the original indexed component.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Document advise not to mix -gnatV? and
optimization.

From-SVN: r212723

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:22:32 +0000 (08:22 +0200)]
[multiple changes]

2014-07-17  Robert Dewar  <dewar@adacore.com>

* sem_aux.ads: Minor comment addition.

2014-07-17  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Make_Call_Into_Operator): If the call is already
a rewriting of an operator node, there are no actuals to be
propagated from original node to rewritten node when in ASIS mode.

2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body_Contract,
Analyze_Subprogram_Contract): Add new local variable Mode. Save
and restore the SPARK mode of the related construct in a
stack-like fashion.
* sem_ch7.adb (Analyze_Package_Body_Contract,
Analyze_Package_Contract): Add new local variable Mode. Save and
restore the SPARK mode of the related construct in a stack-like fashion.
* sem_util.adb Remove with and use clause for Opt.
(Restore_SPARK_Mode): New routine.
(Save_SPARK_Mode_And_Set): New routine.
* sem_util.ads Add with and use clause for Opt.
(Restore_SPARK_Mode): New routine.
(Save_SPARK_Mode_And_Set): New routine.

2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Is_Aliased): Transient objects
within an expression with actions cannot be considered aliased.

From-SVN: r212721

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:19:52 +0000 (08:19 +0200)]
[multiple changes]

2014-07-17  Thomas Quinot  <quinot@adacore.com>

* sem.ads (Scope_Stack_Entry): Reorganize storage of action lists;
introduce a new list (cleanup actions) for each (transient) scope.
* sinfo.ads, sinfo.adb (Cleanup_Actions): New attribute for
N_Block_Statement
* exp_ch7.ads (Store_Cleanup_Actions_In_Scope): New subprogram.
* exp_ch7.adb (Store_Actions_In_Scope): New subprogram, common
processing for Store_xxx_Actions_In_Scope.
(Build_Cleanup_Statements): Allow for a list of additional
cleanup statements to be passed by the caller.
(Expand_Cleanup_Actions): Take custom cleanup actions associated
with an N_Block_Statement into account.
(Insert_Actions_In_Scope_Around): Account for Scope_Stack_Entry
reorganization (refactoring only, no behaviour change).
(Make_Transient_Block): Add assertion to ensure that the current
scope is indeed a block (namely, the entity for the transient
block being constructed syntactically, which has already been
established as a scope).  If cleanup actions are present in the
transient scope, transfer them now to the transient block.
* exp_ch6.adb (Expand_Protected_Subprogram_Call): Freeze the
called function while it is still present as the name in a call
in the tree. This may not be the case later on if the call is
rewritten into a transient block.
* exp_smem.adb (Add_Shared_Var_Lock_Procs): The post-actions
inserted after calling a protected operation on a shared passive
protected must be performed in a block finalizer, not just
inserted in the tree, so that they are executed even in case of
a normal (RETURN) or abnormal (exception) transfer of control
outside of the current scope.
* exp_smem.ads (Add_Shared_Var_Lock_Procs): Update documentation
* sem_ch8.adb, expander.adb, exp_ch11.adb: Adjust for
Scope_Stack_Entry reorganization.

2014-07-17  Thomas Quinot  <quinot@adacore.com>

* exp_disp.adb (Make_DT, Make_VM_TSD): Do not omit Check_TSD
call for types that do not have an explicit attribute definition
clause for External_Tag, as their default tag may clash with an
explicit tag defined for some other type.

2014-07-17  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Is_Controlled_Function_Call): Recognize a
controlled function call with multiple actual parameters that
appears in Object.Operation form.

2014-07-17  Thomas Quinot  <quinot@adacore.com>

* einfo.ads, einfo.adb (Has_External_Tag_Rep_Clause): Remove
entity flag.
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
External_Tag): No need to set entity flag.
* sem_aux.ads, sem_aux.adb (Has_External_Tag_Rep_Clause):
Reimplement correctly in terms of Has_Rep_Item.

From-SVN: r212719

10 years agoexp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped): Start examining...
Thomas Quinot [Thu, 17 Jul 2014 06:16:25 +0000 (06:16 +0000)]
exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped): Start examining the tree at the node passed to Establish_Transient_Scope (not...

2014-07-17  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb (Establish_Transient_Scope.Find_Node_To_Be_Wrapped):
Start examining the tree at the node passed to
Establish_Transient_Scope (not its parent).
* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
The access type for the variable storing the reference to
the call must be declared and frozen prior to establishing a
transient scope.
* exp_ch9.adb: Minor reformatting.

From-SVN: r212718

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:14:35 +0000 (08:14 +0200)]
[multiple changes]

2014-07-17  Pascal Obry  <obry@adacore.com>

* s-os_lib.ads: Minor comment update.

2014-07-17  Tristan Gingold  <gingold@adacore.com>

* sysdep.c: Add ATTRIBUTE_UNUSED to avoid warnings.  Fix some
indentation.
* socket.c: Remove #warning to avoid warning.
* expect.c: Indent some preprocessor directives to clarify
nested if.  Do not use wait.h on PikeOS.  Add ATTRIBUTE_UNUSED
to remove warnings.
* env.c: Fix indentation.  Port to PikeOS.
* gsocket.h: Port to PikeOS.  Remove #warning.
* terminals.c: Port to PikeOS. Fix indentation of the stubs.
Add ATTRIBUTE_UNUSED to stubs arguments.  Fix return statement
of stubbed __gnat_setup_parent_communication.
* adaint.c: Port to PikeOS.  Reindent some preprocessor
directives to clarify nested if.  Fix indentation.  Add missing
ATTRIBUTE_UNUSED.

2014-07-17  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb: Minor reformatting.

From-SVN: r212717

10 years ago[multiple changes]
Arnaud Charlet [Thu, 17 Jul 2014 06:12:09 +0000 (08:12 +0200)]
[multiple changes]

2014-07-17  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb, exp_ch7.ads, sinfo.ads: Minor reformatting.

2014-07-17  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb (Check_Choice_Set): If the case expression is the
expression in a predicate, do not recheck coverage against itself,
to prevent spurious errors.
* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Indicate that
expression comes from an aspect specification, to prevent spurious
errors when expression is a case expression in a predicate.

2014-07-17  Pascal Obry  <obry@adacore.com>

* adaint.c, adaint.h (__gnat_set_executable): Add mode parameter.
* s-os_lib.ads, s-os_lib.adb (Set_Executable): Add Mode parameter.

2014-07-17  Vincent Celier  <celier@adacore.com>

* gnatchop.adb, make.adb, gnatbind.adb, clean.adb, gprep.adb,
gnatxref.adb, gnatls.adb, gnatfind.adb, gnatname.adb: Do not output
the usage for an erroneous invocation of a gnat tool.

From-SVN: r212716

10 years agorx.c (rx_option_override): Fix alignment values.
DJ Delorie [Thu, 17 Jul 2014 02:24:58 +0000 (22:24 -0400)]
rx.c (rx_option_override): Fix alignment values.

* config/rx/rx.c (rx_option_override): Fix alignment values.
(rx_align_for_label): Likewise.

From-SVN: r212710

10 years agoTweak date last change.
Hans-Peter Nilsson [Thu, 17 Jul 2014 02:05:08 +0000 (02:05 +0000)]
Tweak date last change.

From-SVN: r212709

10 years agore PR target/61737 (ICE when building libgcc for cris cross-compiler)
Hans-Peter Nilsson [Thu, 17 Jul 2014 02:03:52 +0000 (02:03 +0000)]
re PR target/61737 (ICE when building libgcc for cris cross-compiler)

PR target/61737.
* config/cris/cris.c (TARGET_LEGITIMATE_CONSTANT_P)
(TARGET_CANNOT_FORCE_CONST_MEM): Define.
(cris_cannot_force_const_mem, cris_legitimate_constant_p): New
functions.
(cris_print_index, cris_print_operand, cris_constant_index_p)
(cris_side_effect_mode_ok): Replace CONSTANT_P with CRIS_CONSTANT_P.
(cris_address_cost): Ditto last CONSTANT_P.
(cris_symbol_type_of): Rename from cris_pic_symbol_type_of.  All
        callers changed.  Yield cris_offsettable_symbol for non-PIC
        constant symbolic expressions including labels.  Yield cris_unspec
for all unspecs.
(cris_expand_pic_call_address): New parameter MARKERP.  Set its
        target to pic_offset_table_rtx for calls that will likely go
        through PLT, const0_rtx when they can't.  All callers changed.
Assert flag_pic.  Use CONSTANT_P, not CONSTANT_ADDRESS_P, for
symbolic expressions to be PICified.  Remove second, redundant,
assert on can_create_pseudo_p returning non-zero.  Use
replace_equiv_address_nv, not replace_equiv_address, for final
operand update.
* config/cris/cris.md ("movsi"): Move variable t to pattern
toplevel. Adjust assert for new cris_symbol_type member.  Use
CONSTANT_P instead of CONSTANT_ADDRESS_P.
("*movsi_internal") <case 9>: Make check for valid unspec operands
for lapc stricter.
<case CRIS_UNSPEC_PCREL, CRIS_UNSPEC_PLT_PCREL>: Clear condition
codes.
("call", "call_value"): Use second incoming operand as a marker
for pic-offset-table-register being used.
("*expanded_call_non_v32", "*expanded_call_v32")
        ("*expanded_call_value_non_v32", "*expanded_call_value_v32"): For
second incoming operand to CALL, match cris_call_type_marker.
("*expanded_call_value_side"): Ditto.  Disable before
reload_completed.
("*expanded_call_side"): Ditto.  Fix typo in comment.
(moverside, movemside peepholes): Check for CRIS_CONSTANT_P, not
CONSTANT_P.
* config/cris/predicates.md ("cris_call_type_marker"): New predicate.
* config/cris/cris.h (CRIS_CONSTANT_P): New macro.
(enum cris_symbol_type): Rename from cris_pic_symbol_type.  All
        users changed.  Add members cris_offsettable_symbol and
cris_unspec.
(cris_symbol_type): Rename from cris_pic_symbol_type.
* config/cris/constraints.md ("T"): Use CRIS_CONSTANT_P, not
        just CONSTANT_P.
* config/cris/cris-protos.h (cris_symbol_type_of,
cris_expand_pic_call_address): Adjust prototypes.
(cris_legitimate_constant_p): New prototype.

From-SVN: r212708

10 years agoconfig.gcc (crisv32-*-linux* | cris-*-linux*): Do not override an existing tmake_file.
Hans-Peter Nilsson [Thu, 17 Jul 2014 02:03:11 +0000 (02:03 +0000)]
config.gcc (crisv32-*-linux* | cris-*-linux*): Do not override an existing tmake_file.

* config.gcc (crisv32-*-linux* | cris-*-linux*): Do not override
an existing tmake_file.  Don't add t-slibgcc and t-linux.

From-SVN: r212707

10 years agore PR c++/61623 (ICE: verify_symtab failed: Two symbols with same comdat_group are...
Jason Merrill [Thu, 17 Jul 2014 00:34:02 +0000 (20:34 -0400)]
re PR c++/61623 (ICE: verify_symtab failed: Two symbols with same comdat_group are not linked by the same_comdat_group list.)

PR c++/61623
* symtab.c (symtab_remove_from_same_comdat_group): Also
set_comdat_group to NULL_TREE.
(verify_symtab): Fix diagnostic.

From-SVN: r212705

10 years agoDaily bump.
GCC Administrator [Thu, 17 Jul 2014 00:16:41 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r212704

10 years agore PR target/61662 (Incorrect value calculated for _lrotl on LLP64 systems)
David Wohlferd [Wed, 16 Jul 2014 22:01:41 +0000 (22:01 +0000)]
re PR target/61662 (Incorrect value calculated for _lrotl on LLP64 systems)

PR target/61662
* config/i386/ia32intrin.h: Use __LP64__ to determine size of long.

From-SVN: r212699

10 years agoavr-mcus.def: Add new avrxmega2 devices (atxmega8e5, atxmega16e5, atxmega32c3, atxmeg...
Denis Chertykov [Wed, 16 Jul 2014 17:43:43 +0000 (21:43 +0400)]
avr-mcus.def: Add new avrxmega2 devices (atxmega8e5, atxmega16e5, atxmega32c3, atxmega32d3).

* config/avr/avr-mcus.def: Add new avrxmega2 devices (atxmega8e5,
atxmega16e5, atxmega32c3, atxmega32d3).
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

From-SVN: r212693

10 years agoavr-mcus.def: Add new avr5 devices (ata5702m322...
Denis Chertykov [Wed, 16 Jul 2014 17:40:55 +0000 (21:40 +0400)]
avr-mcus.def: Add new avr5 devices (ata5702m322...

* config/avr/avr-mcus.def: Add new avr5 devices (ata5702m322,
atmega325pa, atmega64hve2, atmega644rfr2), avr51 devices (atmega128rfr2=
,
atmega1284rfr2) and avr6 devices (atmega256rfr2, atmega2564rfr2).
* config/avr/avr-tables.opt: Regenerate.
* config/avr/t-multilib: Regenerate.
* doc/avr-mmcu.texi: Regenerate.

From-SVN: r212692

10 years agoavr-mmcu.texi: Regenerate.
Denis Chertykov [Wed, 16 Jul 2014 16:40:45 +0000 (20:40 +0400)]
avr-mmcu.texi: Regenerate.

* doc/avr-mmcu.texi: Regenerate. (Forgotten commit)

From-SVN: r212684

10 years agoalignment2.ads, [...]: Update test case.
Arnaud Charlet [Wed, 16 Jul 2014 15:54:47 +0000 (15:54 +0000)]
alignment2.ads, [...]: Update test case.

* gnat.db/specs/alignment2.ads, gnat.db/specs/size_clause1.ads,
gnat.db/specs/size_clause2.ads: Update test case.

From-SVN: r212676

10 years agorandom: Minor formatting and cosmetic tweaks.
Paolo Carlini [Wed, 16 Jul 2014 15:47:26 +0000 (15:47 +0000)]
random: Minor formatting and cosmetic tweaks.

2014-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

* include/ext/random: Minor formatting and cosmetic tweaks.
(uniform_on_sphere_distribution<>::operator==
(const uniform_on_sphere_distribution&,
const uniform_on_sphere_distribution&)): Compare the _M_nds.
(uniform_on_sphere_distribution<>::reset): Reset _M_nd.
(operator!=(const uniform_on_sphere_distribution&,
const uniform_on_sphere_distribution&)): Adjust.
* include/ext/random.tcc: Minor cosmetc tweaks.

From-SVN: r212674

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:51:47 +0000 (16:51 +0200)]
[multiple changes]

2014-07-16  Vincent Celier  <celier@adacore.com>

* gnatls.adb: Get the target parameters only if -nostdinc was
not specified.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* checks.adb (Insert_Valid_Check): If the expression is a packed
component of a modular type of the right size the data is always
valid. This os particularly useful if the component is part of
a volatile variable.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi, sinfo.ads, freeze.adb, exp_aggr.adb: Minor reformatting

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.ads: Minor documentation fix.

From-SVN: r212663

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:47:48 +0000 (16:47 +0200)]
[multiple changes]

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Find_Type_Name): Diagnose properly
a private extension completion that is an interface definition
with an interface list.

2014-07-16  Arnaud Charlet  <charlet@adacore.com>

* gnatls.adb (Gnatls): Code clean ups.

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* sinfo.ads, sinfo.adb (N_Compound_Statement): New node kind.
* sem.adb (Analyze): Handle N_Compound_Statement.
* sprint.adb (Sprint_Node_Actual): Ditto.
* sem_ch5.ads, sem_ch5.adb (Analyze_Compound_Statement): New
procedure to handle N_Compound_Statement.
* exp_aggr.adb (Collect_Initialization_Statements):
Use a proper compound statement node, instead of a bogus
expression-with-actions with a NULL statement as its expression,
to wrap collected initialization statements.
* freeze.ads, freeze.adb
(Explode_Initialization_Compound_Statement): New public procedure,
lifted from Freeze_Entity.
(Freeze_Entity): When freezing
an object with captured initialization statements and without
delayed freezing, explode compount statement.
* sem_ch4.adb (Analyze_Expression_With_Actions): Remove special
case that used to handle bogus EWAs with NULL statement as
the expression.
* exp_ch13.adb (Expand_N_Freeze_Entity): For an object with
delayed freezing and captured initialization statements, explode
compound statement.

From-SVN: r212662

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:41:29 +0000 (16:41 +0200)]
[multiple changes]

2014-07-16  Gary Dismukes  <dismukes@adacore.com>

* g-rewdat.adb, g-rewdat.ads: Minor reformatting.

2014-07-16  Doug Rupp  <rupp@adacore.com>

* s-interr-hwint.adb: Casing error on parameter.

2014-07-16  Pascal Obry  <obry@adacore.com>

* Makefile.rtl: Add g-rewdat.o dependencies in
GNATRTL_NONTASKING_OBJS.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb: Code clean up.

From-SVN: r212660

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:39:51 +0000 (16:39 +0200)]
[multiple changes]

2014-07-16  Vincent Celier  <celier@adacore.com>

* make.adb: Do not read gnat.adc when gnatmake is invoked
with -gnatA.

2014-07-16  Pascal Obry  <obry@adacore.com>

* gnat_rm.texi, impunit.adb, g-rewdat.adb, g-rewdat.ads: Initial
implementation of GNAT.Rewrite_Data.

From-SVN: r212659

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:37:34 +0000 (16:37 +0200)]
[multiple changes]

2014-07-16  Vincent Celier  <celier@adacore.com>

* gnatls.adb (Normalize): New function.
(Gnatls): Get the target parameters. On targets other than VMS,
normalize the path names in the source search path, the object search
path and the project search path.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_case.adb: Avoid self-checking of case expressions in
dynamic predicates.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document effect of Suppress_Initialization on tags and
discriminants.

From-SVN: r212658

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:35:34 +0000 (16:35 +0200)]
[multiple changes]

2014-07-16  Eric Botcazou  <ebotcazou@adacore.com>

* switch-b.adb (Scan_Binder_Switches): Add missing guard.

2014-07-16  Ben Brosgol  <brosgol@adacore.com>

* gnat_ugn.texi: Fix typo.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Case_Expression): Do not expand case
expression if it is the specification of a subtype predicate:
it will be expanded when the return statement is analyzed, or
when a static predicate is transformed into a static expression
for evaluation by the front-end.
* sem_ch13.adb (Get_RList): If the expression for a static
predicate is a case expression, extract the alternatives of the
branches with a True value to create the required statically
evaluable expression.

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* exp_prag.adb (Expand_Pragma_Check): Use the location of the
expression, not the location of the aspect, for all generated
code, so that in particular the call to raise_assert_failure
gets the sloc of the associated condition.
* exp_ch6.adb
(Expand_Subprogram_Contract.Build_Postconditions_Procedure):
Set an explicit End_Label on the handled sequence of statements
for the _Postconditions procedure so that the implicit return
statement does not erroneously get associated with code generated
for the last condition in postconditions.

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* ug_words: Fix name of VMS synonym for -gnatw.z (SIZE_ALIGNMENT,
not SIZE_ALIGN) and -gnatw.Z (NOSIZE_ALIGNMENT, not NOSIZE_ALIGN).
* vms_data.ads: Add missing spaces in VMS synonyms for -gnatw.z /
-gnatw.Z.

From-SVN: r212657

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:33:11 +0000 (16:33 +0200)]
[multiple changes]

2014-07-16  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_prag.adb, sem_util.adb, sem_res.adb, sem_ch13.adb:
Minor code reorganization (use Is_Access_Type, not in Access_Kind).
* exp_ch3.adb: Minor code reorganization, use Is_Access_Type,
not in Access_Kind.
* par-ch4.adb (At_Start_Of_Attribute): New function
(P_Simple_Expression): Better msg for bad attribute prefix.
* scans.ads: Minor reformatting.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Resolve_Attribute, case 'Update): If choice is a
static constant, check that in belongs to the corresponding index
subtype, to produce the proer warning when expansion is disabled.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* freeze.adb (Freeze_Entity): Warn on incompatible size/alignment.
* gnat_ugn.texi: Document -gnatw.z and -gnatw.Z.
* ug_words: VMS synonyms (WARNINGS=[NO]SIZE_ALIGN) for -gnatw.z/-gnatw.Z
* usage.adb: Add lines for -gnatw.z/-gnatw.Z.
* vms_data.ads: VMS synonyms (WARNINGS=[NO]SIZE_ALIGN) for
-gnatw.z/-gnatw.Z
* warnsw.adb: Set Warn_On_Size_Alignment appropriately.
* warnsw.ads (Warn_On_Size_Alignment): New flag Minor
reformatting.

From-SVN: r212656

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:29:36 +0000 (16:29 +0200)]
[multiple changes]

2014-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Declarations): Reinstate the check on
a hook object to ensure that the related transient declaration
is finalizable.
* exp_util.adb (Is_Aliased): Do not consider expresison with
actions as a special context.
(Requires_Cleanup_Actions): Reinstate the check on a hook object to
ensure that the related transient declaration is finalizable.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* checks.ads, checks.adb (Allocation_Checks_Suppressed): New function.
* snames.ads-tmpl: Add Allocation_Check to list of check names.
* types.ads: Add Allocation_Check to list of check names.

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb (Enter_Name): replace bogus test for presence of
Corresponding_Remote_Type with correct test on Ekind.
* sem_res.adb (Valid_Conversion): ditto; also clarify validity
of calls to Corresponding_ Remote_Type (documentation fix).

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document illegal case of Unrestricted_Access.
* sem_attr.adb (Analyze_Access_Attribute): Set_Non_Aliased_Prefix
where it applies.
(Resolve_Attribute, case Access): Flag illegal Unrestricted_Access use.
* sinfo.ads, sinfo.adb (Non_Aliased_Prefix): New flag.

From-SVN: r212655

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:26:47 +0000 (16:26 +0200)]
[multiple changes]

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Document binder switch -Ra.
* gnatbind.adb (List_Closure_Display): Implement -Ra switch
(List_Closure_All).
* opt.ads (List_Closure_All): New switch.
* switch-b.adb (Scan_Binder_Switches): Recognize -Ra to set
List_Closure_All.

2014-07-16  Ben Brosgol  <brosgol@adacore.com>

* gnat_rm.texi: Minor edits, to make case consistent in names
of types and fields.

From-SVN: r212654

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:25:29 +0000 (16:25 +0200)]
[multiple changes]

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document erroneous mixing of thin pointers and
unrestricted access
* gnat_ugn.texi: Add note on size of access types about thin
pointers and the use of attribute Unrestricted_Access.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* a-cbdlli.ads, a-cbdlli.adb, a-cbhama.ads, a-cbhama.adb,
* a-cbhase.ads, a-cbhase.adb, a-cborma.ads, a-cborma.adb,
* a-cborse.ads, a-cborse.adb, a-cobove.ads a-cobove.adb: Add Control
machinery to detect tampering on bounded vectors.

From-SVN: r212653

10 years agoMAINTAINERS (Write After Approval): Add myself.
Adhemerval Zanella [Wed, 16 Jul 2014 14:23:03 +0000 (14:23 +0000)]
MAINTAINERS (Write After Approval): Add myself.

2014-07-16  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r212652

10 years agognat_rm.texi: Document that leading/trailing asterisks are now implied for the patter...
Robert Dewar [Wed, 16 Jul 2014 14:21:34 +0000 (14:21 +0000)]
gnat_rm.texi: Document that leading/trailing asterisks are now implied for the pattern match...

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Document that leading/trailing asterisks are
now implied for the pattern match string for pragma Warnings
and Warning_As_Error.
* sem_prag.adb (Acquire_Warning_Match_String): New procedure.
(Analyze_Pragma, case Warning_As_Error): Call
Acquire_Warning_Match_String.
(Analyze_Pragma, case Warnings): Call Acquire_Warning_Match_String.

From-SVN: r212651

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:19:43 +0000 (16:19 +0200)]
[multiple changes]

2014-07-16  Bob Duff  <duff@adacore.com>

* gnat_ugn.texi: Document need for project file
for --incremental switch for gnat2xml.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Fix example of non-packable components in packed
records section.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* s-tpoben.adb, s-tasren.adb, s-interr.adb, s-interr-hwint.adb,
s-shasto.adb, s-interr-vms.adb, s-interr-sigaction.adb: Avoid use of
upper case in exception messages.

From-SVN: r212650

10 years agosnames.ads-tmpl, [...]: Same_Storage attribute is renamed Has_Same_Storage.
Robert Dewar [Wed, 16 Jul 2014 14:06:44 +0000 (14:06 +0000)]
snames.ads-tmpl, [...]: Same_Storage attribute is renamed Has_Same_Storage.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* snames.ads-tmpl, sem_attr.adb, exp_attr.adb: Same_Storage attribute
is renamed Has_Same_Storage.
* gnat_rm.texi: Document missing SPARK pragmas and attributes.
* sem_prag.adb: Minor comment fix (use LOCAL_NAME in syntax
descriptions).

From-SVN: r212649

10 years agoexp_util.adb, [...]: Minor reformatting.
Robert Dewar [Wed, 16 Jul 2014 14:03:00 +0000 (14:03 +0000)]
exp_util.adb, [...]: Minor reformatting.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* exp_util.adb, sem_attr.adb, exp_ch4.adb, a-cohase.ads,
a-coinho-shared.adb, a-coinho-shared.ads: Minor reformatting.

2014-07-16  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add note that integrated
preprocessing cannot be applied to configuration pragma files.

From-SVN: r212648

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:01:46 +0000 (16:01 +0200)]
[multiple changes]

2014-07-16  Yannick Moy  <moy@adacore.com>

* sem_attr.adb (Analyze_Attribute/cases Pred
and Succ): Always enable range check on fixed-point types if
not suppressed for the type.

2014-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_util.adb (State_Has_Enabled_Property):
Account for an external property denoted by an others choice.

From-SVN: r212647

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 14:00:46 +0000 (16:00 +0200)]
[multiple changes]

2014-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.ads, exp_ch4.adb (Find_Hook_Context): Relocated to Exp_Util.
* exp_ch7.adb (Process_Declarations): There is no need to check
that a transient object being hooked is controlled as it would
not have been hooked in the first place.
* exp_ch9.adb Remove with and use clause for Exp_Ch4.
* exp_util.adb (Find_Hook_Context): Relocated from Exp_Ch4.
(Is_Aliased): A renaming of a transient controlled object is
not considered aliasing when it occurs within an expression
with actions.
(Requires_Cleanup_Actions): There is no need to
check that a transient object being hooked is controlled as it
would not have been hooked in the first place.
* exp_util.ads (Find_Hook_Context): Relocated from Exp_Ch4.

2014-07-16  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch13.adb (Insert_After_SPARK_Mode): Moved to
the outer level of routine Analyze_Aspect_Specifications. Ensure
that the corresponding pragmas of aspects Initial_Condition and
Initializes are inserted after pragma SPARK_Mode.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Analyze_Attribute, case 'Update): Handle
properly a choice list with more than one choice, where each
is an aggregate denoting a sequence of array indices for a
multidimentional array. For SPARK use.

From-SVN: r212646

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 13:57:28 +0000 (15:57 +0200)]
[multiple changes]

2014-07-16  Vadim Godunko  <godunko@adacore.com>

* a-coinho-shared.adb (Adjust): Create
copy of internal shared object and element when source container
is locked.
(Copy): Likewise.
(Query_Element): Likewise.
(Update_Element): Likewise.
(Constant_Reference): Likewise. Raise Constraint_Error on attempt
to get reference for empty holder.
(Reference): Likewise.

2014-07-16  Thomas Quinot  <quinot@adacore.com>

* exp_ch4.adb (Find_Hook_Context): New subprogram, extracted
from Process_Transient_Oject.
* exp_ch4.ads: Ditto.
* exp_ch9.adb (Build_Class_Wide_Master): Insert the _master
declaration as an action on the topmost enclosing expression,
not on a possibly conditional subexpreession.

From-SVN: r212645

10 years agoa-coinho.adb, [...]: Fix parameter mode of Update_Element.
Vadim Godunko [Wed, 16 Jul 2014 13:54:43 +0000 (13:54 +0000)]
a-coinho.adb, [...]: Fix parameter mode of Update_Element.

2014-07-16  Vadim Godunko  <godunko@adacore.com>

* a-coinho.adb, a-coinho-shared.adb, a-coinho.ads, a-coinho-shared.ads:
Fix parameter mode of Update_Element.

From-SVN: r212644

10 years ago[multiple changes]
Arnaud Charlet [Wed, 16 Jul 2014 13:53:37 +0000 (15:53 +0200)]
[multiple changes]

2014-07-16  Robert Dewar  <dewar@adacore.com>

* a-coinho.adb, a-coinho-shared.adb, a-coinho-shared.ads: Minor
reformatting.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* a-cohase.ads: Type Iterator must be controlled, so that the
tampering bit is properly set through an iteration.
* a-cohase.adb: Add Finalize operation for type Iterator.

From-SVN: r212643

10 years agoa-coinho-shared.adb, [...]: Proper structures for tampering checks.
Ed Schonberg [Wed, 16 Jul 2014 13:52:30 +0000 (13:52 +0000)]
a-coinho-shared.adb, [...]: Proper structures for tampering checks.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* a-coinho-shared.adb, a-coinho-shared.ads: Proper structures for
tampering checks.

From-SVN: r212642

10 years agoa-coinho-shared.adb: Fix spurious accessibility check.
Ed Schonberg [Wed, 16 Jul 2014 13:49:23 +0000 (13:49 +0000)]
a-coinho-shared.adb: Fix spurious accessibility check.

2014-07-16  Ed Schonberg  <schonberg@adacore.com>

* a-coinho-shared.adb: Fix spurious accessibility check.

From-SVN: r212641

10 years agoPR preprocessor/60723 - missing system-ness marks for macro tokens
Dodji Seketeli [Wed, 16 Jul 2014 10:33:36 +0000 (10:33 +0000)]
PR preprocessor/60723 - missing system-ness marks for macro tokens

When a system macro is expanded in a non-system file during
out-of-line preprocessing, it can happen that the preprocessor forgets
to emit line markers to express the system-ness status of tokens that
come after the expansion of the macro.

That can lead to situations where the entire non-system file can be
considered as being a system file and thus have its warnings be
discarded during the compilation of the resulting preprocessed file.

My understanding is that this is due to the preprocessor not
systematically detecting (and reporting) the change in system-ness of
tokens.

And this is what this patch does.  Each time the system-ness of a
given token is different from the previous token that was emitted by
the preprocessor, it emits a line marker for the sole purpose of
marking the new system-ness of the subsequent tokens to come.

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

gcc/c-family/ChangeLog:
* c-ppoutput.c (struct print::prev_was_system_token): New data
member.
(init_pp_output): Initialize it.
(maybe_print_line_1, maybe_print_line, print_line_1, print_line)
(do_line_change): Return a flag saying if a line marker was
emitted or not.
(scan_translation_unit): Detect if the system-ness of the token we
are about to emit is different from the one of the previously
emitted token.  If so, emit a line marker.  Avoid emitting useless
adjacent line markers.  Avoid emitting line markers for tokens
originating from the expansion of built-in macros.
(scan_translation_unit_directives_only): Adjust.

gcc/testsuite/ChangeLog:
* gcc.dg/cpp/syshdr{4,5}.{c,h}: New test files.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
Signed-off-by: Dodji Seketeli <dodji@redhat.com>
From-SVN: r212638

10 years agoSupport location tracking for built-in macro tokens
Dodji Seketeli [Wed, 16 Jul 2014 10:33:27 +0000 (10:33 +0000)]
Support location tracking for built-in macro tokens

When a built-in macro is expanded, the location of the token in the
epansion list is the location of the expansion point of the built-in
macro.

This patch creates a virtual location for that token instead,
effectively tracking locations of tokens resulting from built-in macro
tokens.

libcpp/
* include/line-map.h (line_maps::builtin_location): New data
member.
(line_map_init): Add a new parameter to initialize the new
line_maps::builtin_location data member.
* line-map.c (linemap_init): Initialize the
line_maps::builtin_location data member.
* macro.c (builtin_macro): Create a macro map and track the token
resulting from the expansion of a built-in macro.
gcc/
* input.h (is_location_from_builtin_token): New function
declaration.
* input.c (is_location_from_builtin_token): New function
definition.
* toplev.c (general_init): Tell libcpp what the pre-defined
spelling location for built-in tokens is.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
From-SVN: r212637

10 years ago2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Wed, 16 Jul 2014 09:03:31 +0000 (09:03 +0000)]
2014-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

* Minor ChangeLog adjustments.

From-SVN: r212584

10 years agoomp-low.c (create_omp_child_function): Don't set DECL_NAMELESS on the FUNCTION_DECL.
Jakub Jelinek [Wed, 16 Jul 2014 08:31:22 +0000 (10:31 +0200)]
omp-low.c (create_omp_child_function): Don't set DECL_NAMELESS on the FUNCTION_DECL.

* omp-low.c (create_omp_child_function): Don't set DECL_NAMELESS
on the FUNCTION_DECL.

From-SVN: r212582

10 years agore PR web/61782 (always_inline incorrectly documented)
Richard Biener [Wed, 16 Jul 2014 07:53:59 +0000 (07:53 +0000)]
re PR web/61782 (always_inline incorrectly documented)

2014-07-16  Richard Biener  <rguenther@suse.de>

PR other/61782
* doc/extend.texi (always_inline): Clarify.

From-SVN: r212581

10 years agoDaily bump.
GCC Administrator [Wed, 16 Jul 2014 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r212579

10 years agore PR c++/61811 (Firefox LTO build error due to undefined symbols)
Jason Merrill [Tue, 15 Jul 2014 21:38:48 +0000 (17:38 -0400)]
re PR c++/61811 (Firefox LTO build error due to undefined symbols)

PR c++/61811
* decl2.c (maybe_emit_vtables): Return true for -fuse-all-virtuals.

From-SVN: r212576

10 years agoinvoke.texi (Link Options): Document -z option.
Eric Christopher [Tue, 15 Jul 2014 21:32:05 +0000 (21:32 +0000)]
invoke.texi (Link Options): Document -z option.

2014-07-15  Eric Christopher  <echristo@gmail.com>

        * doc/invoke.texi (Link Options): Document -z option.

From-SVN: r212575

10 years agore PR c++/60848 (Crash while experimenting with c++-0x initializer lists)
Jason Merrill [Tue, 15 Jul 2014 19:16:29 +0000 (15:16 -0400)]
re PR c++/60848 (Crash while experimenting with c++-0x initializer lists)

PR c++/60848
PR c++/61723
* call.c (is_std_init_list): Don't check CLASSTYPE_TEMPLATE_INFO.
* class.c (finish_struct): Reject invalid definition of
std::initializer_list.

From-SVN: r212574

10 years ago* gfortran.dg/ieee/ieee_1.F90: Revert rename.
Uros Bizjak [Tue, 15 Jul 2014 18:46:50 +0000 (20:46 +0200)]
* gfortran.dg/ieee/ieee_1.F90: Revert rename.

From-SVN: r212573

10 years agorounding_1.f90: Rename from ieee_rounding_1.f90.
Uros Bizjak [Tue, 15 Jul 2014 16:12:38 +0000 (18:12 +0200)]
rounding_1.f90: Rename from ieee_rounding_1.f90.

* gfortran.dg/ieee/rounding_1.f90: Rename from ieee_rounding_1.f90.
* gfortran.dg/ieee/ieee_1.f90: Rename from ieee_1.F90.
(dg-additional-options): Add -mieee-with-inexact for alpha*-*-*.

From-SVN: r212570

10 years agoalpha.c (alpha_atomic_assign_expand_fenv): New.
Uros Bizjak [Tue, 15 Jul 2014 16:03:07 +0000 (18:03 +0200)]
alpha.c (alpha_atomic_assign_expand_fenv): New.

* config/alpha/alpha.c (alpha_atomic_assign_expand_fenv): New.
(TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.

testsuite/ChangeLog:

* lib/target-supports.exp (check_effective_target_fenv_exceptions):
Add IEEE options to compile flags.
* gcc.dg/atomic/c11-atomic-exec-5.c: Ditto.  Add -mieee-with-inexact
additional option and lower ITER_COUNT to 100 for alpha*-*-* targets.

From-SVN: r212568

10 years ago* fold-const.c (fold_checksum_tree): Fix typo in previous patch.
Jan Hubicka [Tue, 15 Jul 2014 15:49:11 +0000 (17:49 +0200)]
* fold-const.c (fold_checksum_tree): Fix typo in previous patch.

From-SVN: r212566

10 years agoChange an assignment to an assert.
Bernd Schmidt [Tue, 15 Jul 2014 14:30:44 +0000 (14:30 +0000)]
Change an assignment to an assert.

* asan.c (asan_finish_file): Use varpool_finalize_decl instead of
varpool_assemble_decl.
* varpool.c (varpool_assemble_decl): Assert that node->definition is
true.

From-SVN: r212564

10 years agore PR rtl-optimization/61772 (RTL if-conversion removes asm volatile goto)
Michael Matz [Tue, 15 Jul 2014 14:11:06 +0000 (14:11 +0000)]
re PR rtl-optimization/61772 (RTL if-conversion removes asm volatile goto)

        PR rtl-optimization/61772
        * ifcvt.c (dead_or_predicable): Check jump to be free of side
        effects.

testsuite/
        * gcc.dg/torture/pr61772.c: New test.

From-SVN: r212563

10 years agocall.c (convert_like_real): Call print_z_candidate and inform only if permerror retur...
Paolo Carlini [Tue, 15 Jul 2014 13:41:58 +0000 (13:41 +0000)]
call.c (convert_like_real): Call print_z_candidate and inform only if permerror returns true.

2014-07-15  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (convert_like_real): Call print_z_candidate and inform only
if permerror returns true.

From-SVN: r212560

10 years agoopts.c (default_options_table): Disable bit-ccp at -Og.
Richard Biener [Tue, 15 Jul 2014 13:13:39 +0000 (13:13 +0000)]
opts.c (default_options_table): Disable bit-ccp at -Og.

2014-07-15  Richard Biener  <rguenther@suse.de>

* opts.c (default_options_table): Disable bit-ccp at -Og.

From-SVN: r212559

10 years agoprinters.py (SingleObjContainerPrinter): New base class for experimental::any and...
Jonathan Wakely [Tue, 15 Jul 2014 12:00:18 +0000 (13:00 +0100)]
printers.py (SingleObjContainerPrinter): New base class for experimental::any and experimental::optional printers.

* python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
base class for experimental::any and experimental::optional printers.
(StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
New printers for Fundamentals TS types.
* testsuite/libstdc++-prettyprinters/libfundts.cc: New.

From-SVN: r212556

10 years agoprinters.py (TemplateTypePrinter): Add type printer for class templates.
Jonathan Wakely [Tue, 15 Jul 2014 12:00:12 +0000 (13:00 +0100)]
printers.py (TemplateTypePrinter): Add type printer for class templates.

* python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
printer for class templates.
(register_type_printers): Use TemplateTypePrinter for containers
and other class templates with default template arguments.
* testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.

From-SVN: r212555

10 years agoc-ubsan.c (ubsan_instrument_bounds): Don't instrument if TYPE_MAX_VALUE is NULL.
Marek Polacek [Tue, 15 Jul 2014 11:06:07 +0000 (11:06 +0000)]
c-ubsan.c (ubsan_instrument_bounds): Don't instrument if TYPE_MAX_VALUE is NULL.

* c-ubsan.c (ubsan_instrument_bounds): Don't instrument if
TYPE_MAX_VALUE is NULL.

* gcc.dg/ubsan/bounds-1.c: New test.

From-SVN: r212552

10 years agofold-const.c (fold_checksum_tree): Move checking of DECL_RESULT.
Jan Hubicka [Tue, 15 Jul 2014 10:51:45 +0000 (12:51 +0200)]
fold-const.c (fold_checksum_tree): Move checking of DECL_RESULT.

* fold-const.c (fold_checksum_tree): Move checking of
DECL_RESULT.

From-SVN: r212550

10 years agotree.c (tree_code_size): Add TRANSLATION_UNIT_DECL, NAMESPACE_DECL, IMPORTED_DECL...
Jan Hubicka [Tue, 15 Jul 2014 10:17:32 +0000 (12:17 +0200)]
tree.c (tree_code_size): Add TRANSLATION_UNIT_DECL, NAMESPACE_DECL, IMPORTED_DECL and NAMELIST_DECL...

* tree.c (tree_code_size): Add TRANSLATION_UNIT_DECL,
NAMESPACE_DECL, IMPORTED_DECL and NAMELIST_DECL;
call langhook for unknown declaration.
(find_decls_types_r): Do not walk DECL_ARGUMENT_FLD.
* tree.h (DECL_ARGUMENTS): Update.
* print-tree.c (print_node): Update.
* tree-core.h (tree_decl_non_common): Remove arguments.
(tree_function_decl): Add arguments.

* class.c (build_clone): Do not clear assembler names of
templates.
* decl.c (cp_tree_node_structure): Add TEMPLATE_DECL.
* cp-objcp-common.c (cp_tree_size): Add TEMPLATE_DECL
as a special case return sizeof (struct tree_decl_non_common)
for other decls.
(cp_common_init_ts): Do not initialize NAMESPACE_DECL;
initialize TEMPLATE_DECL as MARK_TS_DECL_COMMON.
* cp/cp-tree.h (tree_template_decl): New structure.
(cp_tree_node_structure_enum): Add TS_CP_TEMPLATE_DECL.
(union cp_lang_tree_node): Add template_decl.
(DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT): Update.

* lto/lto.c (mentions_vars_p_decl_non_common): Skip
DECL_ARGUMENT_FLD.
mentions_vars_p_function): Do DECL_ARGUMENTS.
(lto_fixup_prevailing_decls): Update.

* objc-act.c (objc_common_tree_size): New function.
* objc-act.h (KEYWORD_KEY_NAME, KEYWORD_ARG_NAME): Add type
checking.
(INSTANCE_METHOD_OR_CLASS_METHOD_DECL_CHECK): New macro.
(METHOD_SEL_NAME, METHOD_SEL_ARGS, METHOD_ADD_ARGS,
  METHOD_ADD_ARGS_ELLIPSIS_P, METHOD_DEFINITION, METHOD_ENCODING,
METHOD_TYPE_ATTRIBUTES, METHOD_PROPERTY_CONTEXT): Add type checking.
(METHOD_SEL_ARGS): Use decl_common.size instead of
decl_non_common.result.
(PROPERTY_NAME, PROPERTY_GETTER_NAME, PROPERTY_SETTER_NAME,
PROPERTY_READONLY, PROPERTY_NONATOMIC, PROPERTY_ASSIGN_SEMANTICS,
PROPERTY_IVAR_NAME, PROPERTY_DYNAMIC, PROPERTY_HAS_NO_GETTER,
PROPERTY_HAS_NO_SETTER, PROPERTY_OPTIONAL): Add type checking.
(objc_common_tree_size): Declare.
* objc/objc-lang.c (LANG_HOOKS_TREE_SIZE): New macro.

From-SVN: r212549

10 years agosymbol.c (check_conflict): Add codimension conflict with pointer; fix cray-pointee...
Tobias Burnus [Tue, 15 Jul 2014 05:36:35 +0000 (07:36 +0200)]
symbol.c (check_conflict): Add codimension conflict with pointer; fix cray-pointee check.

2014-06-15  Tobias Burnus  <burnus@net-b.de>

gcc/fortran/
        * symbol.c (check_conflict): Add codimension conflict with
        pointer; fix cray-pointee check.

gcc/testsuite/
        * gfortran.dg/coarray_34.f90: New.
        * gfortran.dg/coarray_6.f90: Update test case.

From-SVN: r212540

10 years agore PR libstdc++/61720 (std::regex_search matches incorrectly)
Tim Shen [Tue, 15 Jul 2014 04:28:51 +0000 (04:28 +0000)]
re PR libstdc++/61720 (std::regex_search matches incorrectly)

PR libstdc++/61720
* include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
Clear match queue for next use.
* testsuite/28_regex/algorithms/regex_search/61720.cc: New file.

From-SVN: r212539

10 years agoDaily bump.
GCC Administrator [Tue, 15 Jul 2014 00:16:49 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r212537

10 years agotrans-intrinsic.c (conv_intrinsic_atomic_ref): Fix handling for kind mismatch with...
Tobias Burnus [Mon, 14 Jul 2014 20:40:12 +0000 (22:40 +0200)]
trans-intrinsic.c (conv_intrinsic_atomic_ref): Fix handling for kind mismatch with -fcoarray=lib.

2014-06-14  Tobias Burnus  <burnus@net-b.de>

        * trans-intrinsic.c (conv_intrinsic_atomic_ref): Fix handling
        for kind mismatch with -fcoarray=lib.

From-SVN: r212525

10 years agore PR c++/61445 ([C++11] ice in instantiate_decl at cp/pt.c:19770)
Jason Merrill [Mon, 14 Jul 2014 20:39:35 +0000 (16:39 -0400)]
re PR c++/61445 ([C++11] ice in instantiate_decl at cp/pt.c:19770)

PR c++/61445
PR c++/56947
* pt.c (instantiate_decl): Don't check defer_ok for local class
members.

From-SVN: r212524

10 years ago* aarch64.md (add_losym_<mode>): Set type to alu_imm.
Richard Earnshaw [Mon, 14 Jul 2014 14:31:10 +0000 (14:31 +0000)]
* aarch64.md (add_losym_<mode>): Set type to alu_imm.

From-SVN: r212522

10 years agore PR c/61779 (gcc -Og fails with impossible constraint on legal C code)
Richard Biener [Mon, 14 Jul 2014 13:52:38 +0000 (13:52 +0000)]
re PR c/61779 (gcc -Og fails with impossible constraint on legal C code)

2014-07-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61779
* tree-ssa-copy.c (copy_prop_visit_cond_stmt): Always try
simplifying a condition.

* gcc.dg/tree-ssa/ssa-copyprop-2.c: New testcase.

From-SVN: r212521

10 years agolibgcov.h (struct gcov_fn_info): Make ctrs size 1.
Richard Biener [Mon, 14 Jul 2014 13:22:02 +0000 (13:22 +0000)]
libgcov.h (struct gcov_fn_info): Make ctrs size 1.

2014-07-14  Richard Biener  <rguenther@suse.de>

* libgcov.h (struct gcov_fn_info): Make ctrs size 1.

From-SVN: r212520

10 years agorandom.tcc: Unfortunately more fixes for operator>> and operator<< for...
Ulrich Drepper [Mon, 14 Jul 2014 12:09:30 +0000 (12:09 +0000)]
random.tcc: Unfortunately more fixes for operator>> and operator<< for...

* include/ext/random.tcc: Unfortunately more fixes for
operator>> and operator<< for uniform_on_sphere_distribution.

From-SVN: r212517

10 years agore PR lto/61786 (wrong code by LTO on x86_64-linux-gnu)
Richard Biener [Mon, 14 Jul 2014 11:22:34 +0000 (11:22 +0000)]
re PR lto/61786 (wrong code by LTO on x86_64-linux-gnu)

2014-07-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61786
* gcc.dg/torture/pr61786.c: New testcase.
* gcc.dg/lto/pr61786_0.c: Likewise.
* gcc.dg/lto/pr61786_1.c: Likewise.

From-SVN: r212515

10 years agobuiltins.c (c_strlen): Make only_value == 2 really only affect warning generation.
Richard Biener [Mon, 14 Jul 2014 11:12:29 +0000 (11:12 +0000)]
builtins.c (c_strlen): Make only_value == 2 really only affect warning generation.

2014-07-14  Richard Biener  <rguenther@suse.de>

* builtins.c (c_strlen): Make only_value == 2 really only
affect warning generation.

From-SVN: r212514

10 years agore PR tree-optimization/61757 (genmodes failure with enable-checking)
Richard Biener [Mon, 14 Jul 2014 10:50:46 +0000 (10:50 +0000)]
re PR tree-optimization/61757 (genmodes failure with enable-checking)

2014-07-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61757
PR tree-optimization/61783
PR tree-optimization/61787
* tree-ssa-dom.c (record_equality): Revert canonicalization
change and add comment.
(propagate_rhs_into_lhs): Revert previous fix, removing
loop depth restriction again.

* gcc.dg/torture/pr61757.c: New testcase.
* gcc.dg/torture/pr61787.c: Likewise.

From-SVN: r212513

10 years ago[ARM] Handle clz, rbit types in arm pipeline descriptions.
Kyrylo Tkachov [Mon, 14 Jul 2014 10:19:52 +0000 (10:19 +0000)]
[ARM] Handle clz, rbit types in arm pipeline descriptions.

* config/arm/cortex-a15.md (cortex_a15_alu): Handle clz, rbit.
* config/arm/cortex-a5.md (cortex_a5_alu): Likewise.
* config/arm/cortex-a53.md (cortex_a53_alu): Likewise.
* config/arm/cortex-a7.md (cortex_a7_alu_reg): Likewise.
* config/arm/cortex-a9.md (cortex_a9_dp): Likewise.
* config/arm/cortex-m4.md (cortex_m4_alu): Likewise.
* config/arm/cortex-r4.md (cortex_r4_alu): Likewise.

From-SVN: r212512

10 years agocgraph.h (decl_in_symtab_p): Make inline.
Richard Biener [Mon, 14 Jul 2014 10:02:48 +0000 (10:02 +0000)]
cgraph.h (decl_in_symtab_p): Make inline.

2014-07-14  Richard Biener  <rguenther@suse.de>

* cgraph.h (decl_in_symtab_p): Make inline.

From-SVN: r212511

10 years agore PR middle-end/61294 (erroneous memset used with constant zero length parameter...
Jakub Jelinek [Mon, 14 Jul 2014 07:36:39 +0000 (09:36 +0200)]
re PR middle-end/61294 (erroneous memset used with constant zero length parameter warning)

PR middle-end/61294
gcc/c-family/
* c.opt (Wmemset-transposed-args): New warning.
gcc/c/
* c-parser.c (c_parser_expr_list): Add new argument literal_zero_mask.
If non-NULL, call c_parser_check_literal_zero.
(c_parser_check_literal_zero): New function.
(c_parser_postfix_expression_after_primary): Adjust
c_parser_expr_list caller, handle -Wmemset-transposed-args.
gcc/cp/
* cp-tree.h (LITERAL_ZERO_P): Define.
* parser.c (cp_parser_parenthesized_expression_list): Add
want_literal_zero_p argument, if true, for literal zeros
insert INTEGER_CSTs with LITERAL_ZERO_P flag set.
(cp_parser_postfix_expression): Adjust
cp_parser_parenthesized_expression_list caller, handle
-Wmemset-transposed-args.
(literal_zeros): New variable.
gcc/
* doc/invoke.texi (-Wmemset-transposed-args): Document.
gcc/testsuite/
* c-c++-common/Wmemset-transposed-args1.c: New test.
* c-c++-common/Wmemset-transposed-args2.c: New test.
* g++.dg/warn/Wmemset-transposed-args-1.C: New test.

From-SVN: r212510

10 years agore PR target/61656 (Undefined behavior in classify_argument)
Jakub Jelinek [Mon, 14 Jul 2014 07:31:57 +0000 (09:31 +0200)]
re PR target/61656 (Undefined behavior in classify_argument)

PR target/61656
* config/i386/i386.c (classify_argument): Don't merge classes above
number of words.

From-SVN: r212509

10 years agore PR c++/58511 ([c++11] ICE using static const member variable in constexpr)
Jason Merrill [Mon, 14 Jul 2014 05:25:37 +0000 (01:25 -0400)]
re PR c++/58511 ([c++11] ICE using static const member variable in constexpr)

PR c++/58511
* semantics.c (is_instantiation_of_constexpr): Return true for
defaulted functions, too.
(explain_invalid_constexpr_fn): Only use
explain_implicit_non_constexpr if !DECL_DECLARED_CONSTEXPR_P.
* method.c (explain_implicit_non_constexpr): Pass
DECL_INHERITED_CTOR_BASE to explain_implicit_non_constexpr.

From-SVN: r212507

10 years agore PR c++/58611 ([c++11] ICE with invalid constexpr constructor used in array initial...
Jason Merrill [Mon, 14 Jul 2014 05:25:31 +0000 (01:25 -0400)]
re PR c++/58611 ([c++11] ICE with invalid constexpr constructor used in array initialization)

PR c++/58611
* decl.c (check_initializer): Don't finish_compound_literal
on erroneous constexpr init.

From-SVN: r212506

10 years agore PR c++/58612 ([c++11] ICE calling non-constexpr from constexpr in template class)
Jason Merrill [Mon, 14 Jul 2014 05:25:25 +0000 (01:25 -0400)]
re PR c++/58612 ([c++11] ICE calling non-constexpr from constexpr in template class)

PR c++/58612
* tree.c (bot_replace): Only replace a dummy 'this' parm.

From-SVN: r212505

10 years agore PR c++/60628 ([c++11] ICE initializing array of auto)
Jason Merrill [Mon, 14 Jul 2014 05:25:19 +0000 (01:25 -0400)]
re PR c++/60628 ([c++11] ICE initializing array of auto)

PR c++/60628
* decl.c (create_array_type_for_decl): Only check for auto once.

From-SVN: r212504

10 years agore PR c++/58636 (ICE with initializer_list and rvalue references)
Jason Merrill [Mon, 14 Jul 2014 05:25:13 +0000 (01:25 -0400)]
re PR c++/58636 (ICE with initializer_list and rvalue references)

PR c++/58636
* call.c (build_list_conv): Don't try to build a list of references.

From-SVN: r212503

10 years agoDaily bump.
GCC Administrator [Mon, 14 Jul 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r212502

10 years agocgraph.h (symtab_node): Add nonzero_address.
Jan Hubicka [Sun, 13 Jul 2014 22:12:54 +0000 (00:12 +0200)]
cgraph.h (symtab_node): Add nonzero_address.

* cgraph.h (symtab_node): Add nonzero_address.
(decl_in_symtab_p): Break out from ...
(symtab_get_node): ... here.
* fold-const.c: Include cgraph.h
(tree_single_nonzero_warnv_p): Use symtab to determine
if symbol is non-zero.
* symtab.c (symtab_node::nonzero_address): New method.

* gcc.dg/pr36901.h: Simplify because non-zero symbol folding no
longer happens during parsing.
* gcc.dg/pr44024.c: Update template.
* g++.dg/tree-ssa/nonzero-2.C: New testcase.
* g++.dg/tree-ssa/nonzero-1.C: New testcase.
* gcc.dg/tree-ssa/nonzero-1.c: New testcase.

From-SVN: r212499

10 years agoipa-devirt.c (odr_subtypes_equivalent_p): Disable temporary hack forgotten in previou...
Jan Hubicka [Sun, 13 Jul 2014 17:30:56 +0000 (19:30 +0200)]
ipa-devirt.c (odr_subtypes_equivalent_p): Disable temporary hack forgotten in previous commit.

* ipa-devirt.c (odr_subtypes_equivalent_p): Disable temporary hack
forgotten in previous commit.

From-SVN: r212497

10 years agorandom.tcc: Fix operator>> and operator<< for uniform_on_sphere_distribution.
Ulrich Drepper [Sun, 13 Jul 2014 16:43:01 +0000 (16:43 +0000)]
random.tcc: Fix operator>> and operator<< for uniform_on_sphere_distribution.

* include/ext/random.tcc: Fix operator>> and operator<< for
uniform_on_sphere_distribution.

From-SVN: r212496

10 years agoAdd xmm-register version of fuse-caller-save testcase
Tom de Vries [Sun, 13 Jul 2014 14:32:01 +0000 (14:32 +0000)]
Add xmm-register version of fuse-caller-save testcase

2014-07-13  Tom de Vries  <tom@codesourcery.com>

* gcc.target/i386/fuse-caller-save-xmm-run.c: New test.
* gcc.target/i386/fuse-caller-save-xmm.c: New test.

From-SVN: r212495

10 years agoPR C++/60209 - Declaration of user-defined literal operator cause error
Edward Smith-Rowland [Sun, 13 Jul 2014 13:36:57 +0000 (13:36 +0000)]
PR C++/60209 - Declaration of user-defined literal operator cause error

cp/

2014-07-13  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR C++/60209 - Declaration of user-defined literal operator cause error
* cp/parser.c (cp_parser_operator()): Fold treatment of strings
and user-defined string literals.  Use the full string parser.
(cp_parser_string_literal()): Add flag to not look for literal operator.

testsuite/

2014-07-13  Edward Smith-Rowland  <3dw4rd@verizon.net>

PR C++/60209 - Declaration of user-defined literal operator cause error
* g++.dg/cpp0x/pr60209-neg.C: New.
* g++.dg/cpp0x/pr60209.C: New.
* g++.dg/cpp1y/udlit-empty-string-neg.C: Adjust messages.

From-SVN: r212494

10 years agore PR c++/60967 (ICE with range for in template function with C++11 and cilkplus)
Paolo Carlini [Sun, 13 Jul 2014 13:24:18 +0000 (13:24 +0000)]
re PR c++/60967 (ICE with range for in template function with C++11 and cilkplus)

2014-07-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60967
* g++.dg/cilk-plus/pr60967.C: New.

From-SVN: r212493

10 years agorandom: Add uniform_on_sphere_distribution definition.
Ulrich Drepper [Sun, 13 Jul 2014 11:07:44 +0000 (11:07 +0000)]
random: Add uniform_on_sphere_distribution definition.

2014-07-12  Ulrich Drepper  <drepper@gmail.com>

* include/ext/random: Add uniform_on_sphere_distribution definition.
* include/ext/random.tcc: Add out-of-band member function definitions
for uniform_on_sphere_distribution.
* testsuite/ext/random/uniform_on_sphere_distribution/
cons/default.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/equal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/inequal.cc: New file.
* testsuite/ext/random/uniform_on_sphere_distribution/
operators/serialize.cc: New file.

From-SVN: r212492

10 years agocoarray_atomic_4.f90: Avoid using a kind=16 integer.
Tobias Burnus [Sun, 13 Jul 2014 08:10:40 +0000 (10:10 +0200)]
coarray_atomic_4.f90: Avoid using a kind=16 integer.

2014-07-13  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_atomic_4.f90: Avoid using a kind=16
        integer.

From-SVN: r212491

10 years agopr34020.f90: Make compile with TS 18508/Fortran 2015
Tobias Burnus [Sun, 13 Jul 2014 06:40:16 +0000 (08:40 +0200)]
pr34020.f90: Make compile with TS 18508/Fortran 2015

2014-07-13  Tobias Burnus  <burnus@net-b.de>

        * testsuite/libgomp.fortran/pr34020.f90: Make compile
        with TS 18508/Fortran 2015

From-SVN: r212490

10 years agoDaily bump.
GCC Administrator [Sun, 13 Jul 2014 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r212489