* Make-lang.in: Change copyright header to refer to version 3 of the GNU
General Public License and to point readers at the COPYING3 file and
the FSF's license web page.
* ada-tree.def, nmake.adt, nlists.h, snames.h, utils.c,
Makefile.rtl, Makefile.in, config-lang.in, uintp.h, urealp.h,
namet.h, decl.c, utils2.c, lang.opt, elists.h, atree.h, types.h,
treeprs.adt, lang-specs.h, cuintp.c, stringt.h, gnatbl.c: Likewise.
From-SVN: r128038
* decl.c (match_string_p): New helper function to explicitly match
a string of characters.
(match_attr_spec): Remove no longer needed DECL_COLON from decl_types.
Delete decls array and peek_char. Rewrite decl attribute parser to
avoid calling gfc_match_strings.
* match.c (gfc_match_strings): Delete unused function.
* match.h (gfc_match_strings): Delete prototype.
From-SVN: r128028
fortran/
* dump-parse-tree.c (show_char_const): New function.
(gfc_show_expr): Use it.
* expr.c (find_substring_ref): Rework to not keep characters
dangling beyond end of string.
testsuite/
* gfortran.dg/substr_6.f90: New test.
From-SVN: r128027
PR middle-end/33272
* c-decl.c (grokdeclarator): Apply qualifiers to type of parameter
decayed from array.
testsuite:
* gcc.dg/c99-arraydecl-3.c: New test.
From-SVN: r128018
2007-09-01 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (create_name_tags): Use TYPE_VOLATILE
instead of TREE_THIS_VOLATILE.
* tree-ssa-operands.c (add_virtual_operand): Do not set
has_volatile_ops. Do not check s_ann for NULL.
(get_indirect_ref_operands): Likewise.
(get_expr_operands): Likewise. For all reference trees
set has_volatile_ops based on TREE_THIS_VOLATILE. Also
check base of reference for TREE_THIS_VOLATILE.
From-SVN: r128012
2007-09-01 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_expr): Fix check for conversions
between integral types. Also allow conversions between
pointer types.
From-SVN: r128011
* tree-pretty-print.c: Include output.h.
(dump_decl_name, dump_generic_node): Use %wd with pp_printf, not
HOST_WIDE_INT_PRINT_DEC.
* Makefile.in (tree-pretty-print.o): Add dependency on output.h.
From-SVN: r128004
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
PR c++/32597
* init.c (build_default_init): Make extern.
* cp-tree.h (build_default_init): Declare here.
* pt.c (tsubst_expr): When the instantiation of the initializer of
a variable results in an empty list, default-initialize the
variable.
(tsubst_copy_and_build): When the instantiation of the initializer
in a new expression results in an empty initializer list,
default-initialize it.
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
PR c++/32597
* gcc/testsuite/g++.dg/cpp0x/variadic-new2.C: New.
* gcc/testsuite/g++.dg/cpp0x/variadic-new.C: New.
From-SVN: r128000
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
* mangle.c (write_type): Change mangling of rvalue reference from
`RR' to `O'.
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
* demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_RVALUE_REFERENCE.
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
* cp-demangle.c (d_dump): Handle
DEMANGLE_COMPONENT_RVALUE_REFERENCE.
(d_make_comp): Ditto.
(cplus_demangle_type): Ditto.
(d_print_comp): Ditto.
(d_print_mod): Ditto.
(d_print_function_type): Ditto.
2007-08-31 Douglas Gregor <doug.gregor@gmail.com>
* testsuite/abi/demangle/cxx0x/rref.cc: New.
From-SVN: r127999
PR target/33132
* config/m32r/constraints.md: Add W constraint for integer zero.
* config/m32r/m32r.md (get_pc): Use W and i constraints.
Fix length calculation by using alternatives.
From-SVN: r127992
gcc/
* optabs.c (shift_optab_p, commutative_optab_p): New functions,
split out from expand_binop.
(avoid_expensive_constant): New function.
(expand_binop_directly): Remove commutative_op argument and
call cummutative_optab_p instead. Do not change op0 or op1
when swapping xop0 and xop1. Apply avoid_expensive_constant
to each argument after potential swapping. Enforce the
canonical order of commutative operands.
(expand_binop): Use shift_optab_p and commutative_optab_p.
Update the calls to expand_binop_directly. Only force constants
into registers when widening an operation. Only swap operands
once a direct expansion has been rejected.
(expand_twoval_binop): Only force constants into registers when
using a direct expansion.
From-SVN: r127991
* sched-deps.c (update_dep): Mark arguments with ATTRIBUTE_UNUSED.
(sched_analyze_insn): Don't postprocess speculative dependencies when
target has no scheduling.
* tree-vect-transform.c (vect_estimate_min_profitable_iters): Fix
'uninitialized' warning.
From-SVN: r127989
2007-08-31 Vincent Celier <celier@adacore.com>
* fmap.ads: Minor comment updates
2007-08-31 GNAT Script <nobody@adacore.com>
* Make-lang.in: Makefile automatically updated
2007-08-31 Bob Duff <duff@adacore.com>
* sinfo.ads: Minor comment fix.
2007-08-31 Thomas Quinot <quinot@adacore.com>
* stand.ads: (Standard_Debug_Renaming_Type): Make comment consistent
with implementation.
Documentation cleanup only.
2007-08-31 Sergey Rybin <rybin@adacore.com>
* vms_data.ads: Add new qualifier /STMT_NAME_ON_NEW_LINE for the new
gnatpp '--separate-stmt-name' option.
Add new qualifier /USE_ON_NEW_LIN for the new gnatpp '--use-on-new-line'
option.
* gnat_ugn.texi: Add description for the new gnatpp
'--separate-stmt-name' and '--use-on-new-line' options.
From-SVN: r127984
2007-08-31 Vincent Celier <celier@adacore.com>
* symbols-vms.adb (Initialize): Read symbol files with continuation
lines
(Finalize): If symbol is long, split the line
From-SVN: r127983
2007-08-31 Robert Dewar <dewar@adacore.com>
* s-fileio.adb (Open): Normalize file name to lower case in non-case
sensitive file name systems to avoid unexpected mismatch in Vista.
From-SVN: r127981
2007-08-31 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb: The predicate Is_Descendent_Of_Address is now an entity
flag, for effiency. It is called when analyzing arithmetic operators
and also for actuals in calls that are universal_integers. The flag is
set for the predefined type address, and for any type or subtype
derived from it.
* sem_ch4.adb (Analyze_One_Call): Reject an actual that is a
Universal_Integer, when the formal is a descendent of address and the
call appears in user code.
(Analyze_Selected_Component): if the prefix is a private extension, the
tag component is visible.
* sem_util.ads, sem_util.adb: Remove Is_Descendent_Of_Address, now an
entity flag.
From-SVN: r127980
2007-08-31 Ed Schonberg <schonberg@adacore.com>
* sem_ch10.adb (Analyze_Subunit_Context): When analyzing context
clauses of subunits, ignore limited_with_clauses that are illegal and
have not been fully analyzed.
From-SVN: r127979
2007-08-31 Vincent Celier <celier@adacore.com>
* prj-attr.adb: Add new attribute Excluded_Source_Files
* prj-nmsc.adb: Use attribute Excluded_Source_Files before
Locally_Removed_Files.
* snames.ads, snames.adb: New standard name Excluded_Source_Files
From-SVN: r127978
2007-08-31 Bob Duff <duff@adacore.com>
* par-ch4.adb (P_Simple_Expression): Fold long sequences of
concatenations of string literals into a single literal, in order to
avoid very deep recursion in the front end, which was causing stack
overflow.
* sem_eval.adb (Eval_Concatenation): If the left operand is the empty
string, and the right operand is a string literal (the case of "" &
"..."), optimize by avoiding copying the right operand -- just use the
value of the right operand directly.
* stringt.adb (Store_String_Chars): Optimize by growing the
String_Chars table all at once, rather than appending characters one by
one.
(Write_String_Table_Entry): If the string to be printed is very long,
just print the first few characters, followed by the length. Otherwise,
doing "pn(n)" in the debugger can take an extremely long time.
* sem_prag.adb (Process_Interface_Name): Replace loop doing
Store_String_Char with Store_String_Chars.
From-SVN: r127977
2007-08-31 Hristian Kirtchev <kirtchev@adacore.com>
* restrict.adb, namet.adb, par-util.adb: Remove redundant type
conversion.
* sem_res.adb (Resolve_Qualified_Expression): Add machinery to detect
simple redundant qualifications. The check is performed whenever the
expression is a non-overloaded identifier.
(Resolve_Type_Conversion): Enchance the redundant type conversion check
to include loop parameters.
(Valid_Conversion): Avoid generation of spurious error message.
From-SVN: r127976
2007-08-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* layout.adb (Layout_Type): Use Underlying_Type to determine whether an
access type points to an unconstrained array.
From-SVN: r127974
2007-08-31 Gary Dismukes <dismukes@adacore.com>
* exp_ch8.adb (Expand_N_Package_Renaming_Declaration): In the case of a
library-level package renaming, pass the declaration associated with
the renaming's special debug variable to Qualify_Entity_Names to ensure
that its encoded name is properly qualified.
* exp_dbug.adb (Qualify_All_Entity_Names): Check for a variable entity
occurring in the list of entities to qualify, and do not attempt to
traverse an entity list in that case. Variables associated with
` library-level package renamings can now occur in the table.
* exp_dbug.ads: Revise documentation of the encoding for renaming
declarations.
From-SVN: r127973