2009-07-22 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Minor reformatting
2009-07-22 Ed Schonberg <schonberg@adacore.com>
* errout.adb (Error_Msg): A style message within an instantiation
should not be labelled as an error.
From-SVN: r149938
2009-07-22 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Freeze_Entity): Do not generate extra formal for function
in initialization expression if function does not have convention Ada.
2009-07-22 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option
'--separate-label' to control label layout.
From-SVN: r149936
2009-07-22 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Freeze_Entity): If Implicit_Packing is enabled, and the
component size is an exact number of bytes, an array type can have a
size clause that forces packing even though the array type itself is
not bit-packed.
2009-07-22 Thomas Quinot <quinot@adacore.com>
* sem_ch3.adb (Analyze_Object_Declaration): For a constant declaration,
if there is a previous entity with the same name in the scope, ignore
it if it is the renaming declaration for a generic package introduced
in instances.
2009-07-22 Nicolas Roche <roche@adacore.com>
* seh_init.c: use RtlAddFunctionTable to register our SEH exception
handler on x86_64 windows.
2009-07-22 Arnaud Charlet <charlet@adacore.com>
* sem_prag.adb (Analyze_Pragma): Initialize/Normalize_Scalars create
false positives in CodePeer, so ignore this pragma in this mode.
From-SVN: r149931
2009-07-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/valarray (valarray<>::operator=(const valarray<>&),
valarray<>::operator=(initializer_list<>)): Implement resolution
of DR 630, [Ready] in Frankfurt.
* testsuite/26_numerics/valarray/dr630-1.cc: New.
* testsuite/26_numerics/valarray/dr630-2.cc: Likewise.
* doc/xml/manual/intro.xml: Add an entry for DR 630.
From-SVN: r149929
2009-07-22 Thomas Quinot <quinot@adacore.com>
* sem_util.adb, sem_ch10.adb: Minor reformatting
* g-socket.adb (Receive_Socket, recvfrom(2) variant): Apply required
special handling for the case of no data received and Item'First =
Stream_Element_Offset'First.
(Last_Index): New subprogram factoring the above special handling
over the various locations where it is required.
2009-07-22 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Gnat1drv): Also disable division by zero and alignment
checks in CodePeer_Mode.
* gcc-interface/Make-lang.in: Update dependencies.
2009-07-22 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb: Improve error message.
* sem_ch13.adb: If Ignore_Rep_Clauses is enabled, do a minimal analysis
of an address representation clause.
* freeze.adb (Freeze_Static_Object): An local imported object is legal
if it has an address clause.
From-SVN: r149926
2009-07-22 Thomas Quinot <quinot@adacore.com>
* sem_elab.adb (Insert_Elab_Check): When relocating an overloaded
expression to insert an elab check using a conditional expression, be
sure to carry the original list of interpretations to the new location.
2009-07-22 Gary Dismukes <dismukes@adacore.com>
* gnat1drv.adb: Fix spelling error.
2009-07-22 Javier Miranda <miranda@adacore.com>
* sem_type.ads, sem_type.adb (In_Generic_Actual): Leave this subprogram
at the library level and fix a hidden bug in its implementation: its
functionality for renaming objects was broken because
N_Object_Renaming_Declarations nodes are not a subclass of
N_Declaration nodes (as documented in sinfo.ads).
* sem_util.adb (Check_Dynamically_Tagged_Expression): Include in this
check nodes that are actuals of generic instantiations.
2009-07-22 Ed Schonberg <schonberg@adacore.com>
* sinfo.ads, sinfo.adb (Pending_Context): New flag to indicate that the
context of a compilation unit is being analyzed. Used to detect
circularities created by with_clauses that are not detected by the
loading machinery.
* sem_ch10.adb (Analyze_Compilation_Unit): Set Pending_Context before
analyzing the context of the current compilation unit, to detect
possible circularities created by with_clauses.
From-SVN: r149925
2009-07-22 Richard Guenther <rguenther@suse.de>
PR c++/40799
* cp-gimplify.c (cp_gimplify_expr): Move handling of using
related exprs to ...
(cp_genericize_r): ... genericization stage.
(cp_genericize): Adjust.
* g++.dg/lookup/using21.C: New testcase.
From-SVN: r149919
* trans.h (gfc_set_decl_assembler_name): New prototype.
* trans-decl.c (gfc_set_decl_assembler_name): New function.
(gfc_get_symbol_decl, gfc_get_extern_function_decl,
build_function_decl): Use gfc_set_decl_assembler_name instead of
SET_DECL_ASSEMBLER_NAME.
* trans-common.c (build_common_decl): Use
gfc_set_decl_assembler_name instead of SET_DECL_ASSEMBLER_NAME.
From-SVN: r149918
2009-07-22 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/constraints.md (ZQ, ZR, ZS, ZT): New constraints.
(U, W): Constraints are now deprecated and will be removed if we
run out of letters.
* config/s390/s390.md (U, W): Replaced with ZQZR, ZSZT throughout
the file.
("prefetch"): Add the stcmh instruction for prefetching.
* config/s390/s390.c (s390_symref_operand_p): Function moved. No
changes.
(s390_short_displacement): Return always true if compiling for
machines not providing the long displacement facility.
(s390_mem_constraint): Support the new constraint letter Z.
(s390_check_qrst_address): New function.
From-SVN: r149917
PR tree-optimization/40813
* tree-inline.c (copy_bb): Regimplify RHS after last stmt, not before
it.
* g++.dg/opt/inline15.C: New test.
From-SVN: r149857
2009-07-21 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40726
* trans-decl.c (gfc_get_extern_function_decl): Do not set
DECL_IS_MALLOC for pointer valued functions.
(build_function_decl): The same.
From-SVN: r149846
* pa.c (compute_zdepwi_operands): Limit deposit length to 32 - lsb.
Cast "1" to unsigned HOST_WIDE_INT.
(compute_zdepdi_operands): Limit maximum length to 64 bits. Limit
deposit length to the maximum length - lsb. Extend length if
HOST_BITS_PER_WIDE_INT is 32.
From-SVN: r149843
* cgraph.h (constant_pool_htab): New function.
(constant_descriptor_tree): Move from varasm.c.
* varasm.c (constant_pool_htab): New function.
(constant_descriptor_tree): Move to cgraph.h.
From-SVN: r149834
* config/mips/mips.md (move_type): Add arith.
(type): Handle arith.
(zero_extendsidi2): Rename this into ...
(*zero_extendsidi2): ... this. Don't match if ISA_HAS_EXT_INS.
(zero_extendsidi2): New expander.
(*zero_extendsidi2_dext): New pattern.
testsuite/
* gcc.target/mips/ext-3.c: New test.
From-SVN: r149829
* config.gcc (mips64-*-*): Add definition of tm_defines in order
to set MIPS_ABI_DEFAULT.
* config/mips/vr.h (MIPS_ABI_DEFAULT): Remove definition.
From-SVN: r149827
* tree-object-size.c (addr_object_size): Handle unions with
array in it as last field of structs in __bos (, 1) as __bos (, 0).
* gcc.dg/builtin-object-size-6.c: Adjust expected values.
* gcc.dg/builtin-object-size-8.c: New test.
* g++.dg/ext/builtin-object-size1.C: Adjust expected values.
* g++.dg/ext/builtin-object-size2.C: Likewise.
From-SVN: r149825
2009-07-20 Bob Duff <duff@adacore.com>
* sem_ch13.adb (Analyze_Record_Representation_Clause): Use "and then"
instead of "and", because otherwise Parent_Last_Bit is read
uninitialized in the case where it's not a tagged type, or the tagged
parent does not have a complete rep clause.
2009-07-20 Robert Dewar <dewar@adacore.com>
* stylesw.ads: Minor documentation change.
* types.ads: Minor reformatting
2009-07-20 Javier Miranda <miranda@adacore.com>
* exp_disp.ads (Apply_Access_Checks): New subprogram that takes care of
generating the tag checks associated with dispatching calls.
* exp_disp.adb (Apply_Access_Checks): New subprogram.
(New_Value): This routine was previously local to expand dispatching
calls but it is now used also by Apply_Access_Checks.
(Expand_Dispatching_Calls): Cleanup code because the functionality of
tag checks is now provided by Apply_Access_Checks.
* exp_ch6.adb (Expand_Call): Incorporate generation of tag checks in
case of dispatching calls.
2009-07-20 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Gnat1drv): Also disable Elaboration_Check in
CodePeer_Mode.
From-SVN: r149821
2009-07-20 Gary Dismukes <dismukes@adacore.com>
* exp_prag.adb (Expand_Pragma_Import_Export_Exception): When compiling
for VMS, only rewrite the first component of the associated exception's
aggregate init (as 'V'), and eliminate the bogus rewrites of the second
and third components that were being replaced with 'M' and 'S'.
2009-07-20 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Gnat1drv): Suppress access checks in CodePeer mode.
Also do not generate error when parsing a spec in CodePeer mode.
2009-07-20 Javier Miranda <miranda@adacore.com>
* checks.adb (Apply_Access_Check): Avoid checks on availability of
runtime function Offset_To_Top_Ptr when compiling with no tagged
types expansion.
* exp_ch3.adb (Build_Init_Procedure): Leave open the possibility of
adding code to the init proc when compiling for VM backends.
2009-07-20 Vincent Celier <celier@adacore.com>
* switch-m.adb (Normalize_Compiler_Switches): Take into account
switches -gnatw.?
2009-07-20 Thomas Quinot <quinot@adacore.com>
* sem_dist.adb, exp_dist.adb: Minor reformatting
* Make-generated.in: New file.
* gcc-interface/Make-lang.in: Use Make-generated.in fragment.
From-SVN: r149819
2009-07-20 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Gnat1drv): Set operating mode to Generate_Code when
CodePeer_Mode is set, to benefit from full front-end expansion
(e.g. generics).
2009-07-20 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb: Add guard.
* exp_disp.adb, sem_disp.adb (Make_DT): Check underlying view of type
for possible attribute definition of External_Tag, in case clause
appears in the private part of a package.
From-SVN: r149816