gcc.git
18 years agoclean.adb (Check_Project): Look for Ada code in extending project, even if Ada is...
Vincent Celier [Tue, 15 Nov 2005 13:56:14 +0000 (14:56 +0100)]
clean.adb (Check_Project): Look for Ada code in extending project, even if Ada is not specified as a language.

2005-11-14  Vincent Celier  <celier@adacore.com>

* clean.adb (Check_Project): Look for Ada code in extending project,
even if Ada is not specified as a language.
Use new function DLL_Prefix for DLL_Name
(Clean_Interface_Copy_Directory): New procedure
(Clean_Library_Directory): New procedure
(Clean_Directory): Remove procedure, no longer used
(Clean_Project): Do not delete any file in an externally built project

* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Add the object
directory of an extending project, even when there are no Ada source
present.
(Ada_Objects_Path.Add): Add Library_ALI_Dir, not Library_Dir to the path
(Set_Ada_Paths.Add.Recursive_Add): Ditto

* mlib-prj.adb (Check_Library): For all library projects, get the
library file timestamp.
(Build_Library): Copy ALI files in Library_ALI_Dir, not in Library_Dir
(Build_Library): Use new function DLL_Prefix for the DLL_Name
(Clean): Remove procedure, no longer used
(Ultimate_Extension_Of): New function
(Build_Library): When cleaning the library directory, only remove an
existing library file and any ALI file of a source of the project.
When cleaning the interface copy directory, remove any source that
could be a source of the project.

* prj.ads, prj.adb (Project_Empty): Add values of new components
Library_TS and All_Imported_Projects.
(Project_Empty): Add values for new components of Project_Data:
Library_ALI_Dir and Display_Library_ALI_Dir

* prj-attr.adb: New project level attribute name Library_ALI_Dir

* prj-nmsc.adb (Check_Library_Attributes): Take into account new
attribute Library_ALI_Dir.
(Check_Library_Attributes): The library directory cannot be the same as
any source directory of the project tree.
(Check_Stand_Alone_Library): The interface copy directory cannot be
the same as any source directory of the project tree.

* mlib.adb: Use Prj.Com.Fail, instead of Osint.Fail directly, to delete
all temporary files.

From-SVN: r106967

18 years agoxref_lib.adb (Parse_Identifier_Info): It is possible for an entity line in the ALI...
Emmanuel Briot [Tue, 15 Nov 2005 13:56:03 +0000 (14:56 +0100)]
xref_lib.adb (Parse_Identifier_Info): It is possible for an entity line in the ALI file to include both an...

2005-11-14  Emmanuel Briot  <briot@adacore.com>

* xref_lib.adb (Parse_Identifier_Info): It is possible for an entity
line in the ALI file to include both an instantiation reference, and a
returned value.

From-SVN: r106966

18 years agortsfind.ads, [...]: Complete support for Ada 2005 interfaces.
Hristian Kirtchev [Tue, 15 Nov 2005 13:54:36 +0000 (14:54 +0100)]
rtsfind.ads, [...]: Complete support for Ada 2005 interfaces.

2005-11-14  Hristian Kirtchev  <kirtchev@adacore.com>
    Javier Miranda  <miranda@adacore.com>

* rtsfind.ads, exp_util.adb, exp_util.ads, exp_disp.adb, exp_disp.ads,
exp_ch7.adb, sem_ch9.adb, snames.adb, snames.ads,
exp_ch9.adb, exp_ch9.ads, exp_ch6.adb, exp_ch3.adb, exp_ch3.ads,
einfo.ads, einfo.adb: Complete support for Ada 2005 interfaces.

* a-tags.ads, a-tags.adb: Major rewrite and additions to implement
properly new Ada 2005 interfaces (AI-345) and add run-time checks (via
assertions).

* exp_dbug.ads, exp_dbug.adb (Get_Secondary_DT_External_Name): New
subprogram that generates the external name associated with a
secondary dispatch table.
(Get_Secondary_DT_External_Name): New subprogram that generates the
external name associated with a secondary dispatch table.

From-SVN: r106965

18 years agotb-gcc.c (trace_callback): Work around problem with _Unwind_GetIP on ia64 HP-UX.
Matthew Gingell [Tue, 15 Nov 2005 13:54:25 +0000 (14:54 +0100)]
tb-gcc.c (trace_callback): Work around problem with _Unwind_GetIP on ia64 HP-UX.

2005-11-14  Matthew Gingell  <gingell@adacore.com>
    Olivier Hainque  <hainque@adacore.com>

* tb-gcc.c (trace_callback): Work around problem with _Unwind_GetIP on
ia64 HP-UX.

* tracebak.c (ia64 configuration): Enable _Unwind_Backtrace driven
tracebacks on ia64 HP-UX and provide explanatory comment.
Enable backtraces on ia64 GNU/Linux.
(x86 configuration): Bump FRAME_LEVEL to 1 to ensure we retrieve a real
base pointer from builtin_frame_address. Adjust BASE_SKIP accordingly.

From-SVN: r106964

18 years agocuintp.c (UI_To_gnu): Use a proper type for intermediate computations to ensure bias...
Olivier Hainque [Tue, 15 Nov 2005 13:54:14 +0000 (14:54 +0100)]
cuintp.c (UI_To_gnu): Use a proper type for intermediate computations to ensure bias adjustments take...

2005-11-14  Olivier Hainque  <hainque@adacore.com>

* cuintp.c (UI_To_gnu): Use a proper type for intermediate computations
to ensure bias adjustments take place when need be and to prevent
occurrences of intermediate overflows.

From-SVN: r106963

18 years agoa-crbtgo.ads, [...]: Compiles against the spec for ordered maps described in sections...
Matthew Heaney [Tue, 15 Nov 2005 13:54:02 +0000 (14:54 +0100)]
a-crbtgo.ads, [...]: Compiles against the spec for ordered maps described in sections A.18.6 of the...

2005-11-14  Matthew Heaney  <heaney@adacore.com>

* a-crbtgo.ads, a-crbtgo.adb, a-coorse.ads, a-coorse.adb, a-convec.ads,
a-convec.adb, a-coinve.ads, a-coinve.adb, a-cohama.ads, a-cohama.adb,
a-ciorse.ads, a-ciorse.adb, a-cihama.ads, a-cihama.adb, a-cidlli.ads,
a-cidlli.adb, a-cdlili.ads, a-cdlili.adb, a-coormu.adb, a-ciormu.adb,
a-cihase.adb, a-cihase.ads, a-cohase.adb, a-cohase.ads, a-ciorma.ads,
a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-ciorma.adb, a-coorma.adb:
Compiles against the spec for ordered maps described in sections
A.18.6 of the most recent (August 2005) AI-302 draft.

From-SVN: r106962

18 years agodecl.c: Factor common code to build a storage type for an unconstrained object from...
Thomas Quinot [Tue, 15 Nov 2005 13:53:22 +0000 (14:53 +0100)]
decl.c: Factor common code to build a storage type for an unconstrained object from a...

2005-11-14  Thomas Quinot  <quinot@adacore.com>
    Olivier Hainque  <hainque@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>

* decl.c:
Factor common code to build a storage type for an unconstrained object
from a fat or thin pointer type and a constrained object type.
(annotate_value): Handle BIT_AND_EXPR.
(annotate_rep): Don't restrict the back annotation of inherited
components to the type_annotate_only case.
(gnat_to_gnu_entity) <E_Array_Type>: Do not invoke create_type_decl if
we are not defining the type.
<E_Record_Type>: Likewise.
(gnat_to_gnu_entity) <object, renaming>: Adjust comments and structure
to get advantage of the new maybe_stabilize_reference interface, to
ensure that what we reference is indeed stabilized instead of relying
on assumptions on what the stabilizer does.
(gnat_to_gnu_entity) <E_Incomplete_Type>: If the entity is an incomplete
type imported through a limited_with clause, use its non-limited view.
(Has_Stdcall_Convention): New macro, to centralize the Windows vs others
differentiation.
(gnat_to_gnu_entity): Use Has_Stdcall_Convention instead of a spread mix
of #if sections + explicit comparisons of convention identifiers.
(gnat_to_gnu_entity) <E_Variable>: Decrement force_global if necessary
before early-returning for certain types when code generation is
disabled.
(gnat_to_gnu_entity) <object>: Adjust comment attached to the
nullification of gnu_expr we do for objects with address clause and
that we are not defining.
(elaborate_expression_1): Do not create constants when creating
variables needed by the debug info: the dwarf2 writer considers that
CONST_DECLs is used only to represent enumeration constants, and emits
nothing for them.
(gnat_to_gnu_entity) <object>: When turning a non-definition of an
object with an address clause into an indirect reference, drop the
initializing expression.
Include "expr.h".
(STACK_CHECK_BUILTIN): Delete.
(STACK_CHECK_PROBE_INTERVAL): Likewise.
(STACK_CHECK_MAX_FRAME_SIZE): Likewise.
(STACK_CHECK_MAX_VAR_SIZE): Likewise.
(gnat_to_gnu_entity): If gnat_entity is a renaming, do not mark the tree
corresponding to the renamed object as ignored for debugging purposes.

* trans.c (tree_transform, case N_Attribute_Reference, case Attr_Size &
related): For a prefix that is a dereference of a fat or thin pointer,
if there is an actual subtype provided by the front-end, use that
subtype to build an actual type with bounds template.
(tree_transform, case N_Free_Statement): If an Actual_Designated_Subtype
is provided by the front-end, use that subtype to compute the size of
the deallocated object.
(gnat_to_gnu): When adding a statement into an elaboration procedure,
check for a potential violation of a No_Elaboration_Code restriction.
(maybe_stabilize_reference): New function, like gnat_stabilize_reference
with extra arguments to control whether to recurse through non-values
and to let the caller know if the stabilization has succeeded.
(gnat_stabilize_reference): Now a simple wrapper around
maybe_stabilize, for common uses without restriction on lvalues and
without need to check for the success indication.
(gnat_to_gnu, call_to_gnu): Adjust calls to gnat_stabilize_reference, to
pass false instead of 0 as the FORCE argument which is a bool.
(Identifier_to_gnu): Remove checks ensuring that an renamed object
attached to a renaming pointer has been properly stabilized, as no such
object is attached otherwise.
(call_to_gnu): Invoke create_var_decl to create the temporary when the
function uses the "target pointer" return mechanism.
Reinstate conversion of the actual to the type of the formal
parameter before any other specific treatment based on the passing
mechanism. This turns out to be necessary in order for PLACEHOLDER
substitution to work properly when the latter type is unconstrained.

* gigi.h (build_unc_object_type_from_ptr): New subprogram, factoring a
common pattern.
(maybe_stabilize_reference): New function, like gnat_stabilize_reference
with extra arguments to control whether to recurse through non-values
and to let the caller know if the stabilization has succeeded.

* utils2.c (gnat_build_constructor): Only sort the fields for possible
static output of record constructor if all the components are constant.
(gnat_build_constructor): For a record type, sort the list of field
initializers in increasing bit position order.
Factor common code to build a storage type for an unconstrained object
from a fat or thin pointer type and a constrained object type.
(build_unary_op) <ADDR_EXPR>: Always recurse down conversions between
types variants, and process special cases of VIEW_CONVERT expressions
as their NOP_EXPR counterpart to ensure we get to the
CORRESPONDING_VARs associated with CONST_DECls.
(build_binary_op) <MODIFY_EXPR>: Do not strip VIEW_CONVERT_EXPRs
on the right-hand side.

* utils.c (build_unc_object_type_from_ptr): New subprogram, factoring
a common pattern.
(convert) <VIEW_CONVERT_EXPR>: Return the inner operand directly if we
are converting back to its original type.
(convert) <JM input>: Fallthrough regular conversion code instead of
extracting the object if converting to a type variant.
(create_var_decl): When a variable has an initializer requiring code
generation and we are at the top level, check for a potential violation
of a No_Elaboration_Code restriction.
(create_var_decl): call expand_decl for CONST_DECLs, to set MODE, ALIGN
SIZE and SIZE_UNIT which we need for later back-annotations.
* utils.c: (convert) <STRING_CST>: Remove obsolete code.
<VIEW_CONVERT_EXPR>: Do not lift the conversion if the target type
is an unchecked union.
(pushdecl): Set DECL_NO_STATIC_CHAIN on imported nested functions.
(convert) <VIEW_CONVERT_EXPR>: When the types have the same
main variant, just replace the VIEW_CONVERT_EXPR.
<UNION_TYPE>: Revert 2005-03-02 change.

* repinfo.h, repinfo.ads: Add tcode for BIT_AND_EXPR.

* repinfo.adb (Print_Expr, Rep_Value): Handle Bit_And_Expressions.

From-SVN: r106961

18 years agos-tassta.adb (Create_Task): Move the code in charge of resetting the deferral level...
Jose Ruiz [Tue, 15 Nov 2005 13:53:05 +0000 (14:53 +0100)]
s-tassta.adb (Create_Task): Move the code in charge of resetting the deferral level...

2005-11-14  Jose Ruiz  <ruiz@adacore.com>

* s-tassta.adb (Create_Task): Move the code in charge of resetting the
deferral level, when abort is not allowed, to a later stage (the
Task_Wrapper).
(Task_Wrapper): If Abort is not allowed, reset the deferral level since
it will not get changed by the generated code. It was previously done
in Create_Task.

From-SVN: r106960

18 years agoa-except.adb (Zero_Cost_Exceptions): Removed, no longer used.
Arnaud Charlet [Tue, 15 Nov 2005 13:52:55 +0000 (14:52 +0100)]
a-except.adb (Zero_Cost_Exceptions): Removed, no longer used.

* a-except.adb (Zero_Cost_Exceptions): Removed, no longer used.
(builtin_longjmp, Process_Raise_Exceeption): Move setjmp/longjmp
related code to a-exexpr.adb
(Save_Occurrence_And_Private): Move GCC EH related code to
a-exexpr-gcc.adb
(Raise_Current_Excep): Add new variable Id with pragma
        volatile, to ensure that the variable lives on stack.

* a-exexpr-gcc.adb, raise-gcc.c: New file.

* a-exexpr.adb (builtin_longjmp, Propagate_Exception): Moved here code
from a-except.adb.
Move GCC EH related code to a-exexpr-gcc.adb

* Makefile.in: Add or update g-soccon LIBGNAT pairs for Linux/PPC and
64-bit Solaris
Split the Linux version of g-soccon into separate variants for 32 and 64
bit platforms.
(gnatlib): Use $(AR_FOR_TARGET) and $(RANLIB_FOR_TARGET)
vice $(AR) and $(RANLIB). Remove use of host variable $(RANLIB_FLAGS).
install-gnatlib: Use $(RANLIB_FOR_TARGET) vice $(RANLIB). Remove use
of host variable $(RANLIB_FLAGS).
(alpha64-dec-*vms*): Fix translations for 64 bit compiler.
Code clean up: remove unused/obsolete targets.
(EH_MECHANISM): New variable introduced to differenciate between the
two EH mechanisms statically.
(gnatlib-zcx, gnatlib-sjlj): Force EH_MECHANISM manually.
(LIBGNAT_OBJS): Add raise-gcc.o
(LIBGNAT_TARGET_PAIRS for ppc-vxworks): Use an specialized version of
s-osinte.adb, s-tpopsp.adb, and system.ads for the run time that
supports VxWorks 6 RTPs.
(EXTRA_GNATRTL_NONTASKING_OBJS for ppc-vxworks): Remove the use of
i-vxworks and i-vxwoio from the run time that supports VxWorks 6 RTPs.

* raise.c: Move all GCC EH-related routines to raise-gcc.c

From-SVN: r106959

18 years agognatdll.adb (Parse_Command_Line): Remove redundant use of GNAT.Command_Line.
Pascal Obry [Tue, 15 Nov 2005 13:52:43 +0000 (14:52 +0100)]
gnatdll.adb (Parse_Command_Line): Remove redundant use of GNAT.Command_Line.

2005-11-14  Pascal Obry  <obry@adacore.com>
    Vincent Celier  <celier@adacore.com>

* gnatdll.adb (Parse_Command_Line): Remove redundant use of
GNAT.Command_Line.

* memroot.adb: Remove redundant with/use clause on
System.Storage_Elements.

From-SVN: r106958

18 years agoadaint.h, adaint.c (__gnat_is_cross_compiler): New constant.
Arnaud Charlet [Tue, 15 Nov 2005 13:52:31 +0000 (14:52 +0100)]
adaint.h, adaint.c (__gnat_is_cross_compiler): New constant.

* adaint.h, adaint.c (__gnat_is_cross_compiler): New constant.
(Gnat_Install_Locks, __gnatlib_install_locks): Removed, no longer used.
(convert_address): Update comments and list of platforms using this.

* s-tasini.adb (Gnat_Install_Locks, __gnatlib_install_locks): Removed,
no longer used.

From-SVN: r106957

18 years agos-taprop-posix.adb (Initialize_Lock): Destroy mutex attribute before raising the...
Jose Ruiz [Tue, 15 Nov 2005 13:52:20 +0000 (14:52 +0100)]
s-taprop-posix.adb (Initialize_Lock): Destroy mutex attribute before raising the exception so the memory used is freed.

2005-11-14  Jose Ruiz  <ruiz@adacore.com>

* s-taprop-posix.adb (Initialize_Lock): Destroy mutex attribute before
raising the exception so the memory used is freed.

From-SVN: r106956

18 years agos-traces-default.adb, [...]: Fix compilation errors.
Arnaud Charlet [Tue, 15 Nov 2005 13:52:10 +0000 (14:52 +0100)]
s-traces-default.adb, [...]: Fix compilation errors.

2005-11-14  Arnaud Charlet  <charlet@adacore.com>

* s-traces-default.adb, s-trafor-default.ads,
s-tratas-default.adb: Fix compilation errors.

From-SVN: r106955

18 years agosystem-vms.ads, [...]: ADA$GNAT: New exported object in private part.
Doug Rupp [Tue, 15 Nov 2005 13:52:00 +0000 (14:52 +0100)]
system-vms.ads, [...]: ADA$GNAT: New exported object in private part.

2005-11-14  Doug Rupp  <rupp@adacore.com>

* system-vms.ads, system-vms_64.ads: ADA$GNAT: New exported object in
private part.

From-SVN: r106954

18 years agomlib-tgt-tru64.adb, [...] (DLL_Prefix): New function
Vincent Celier [Tue, 15 Nov 2005 13:51:50 +0000 (14:51 +0100)]
mlib-tgt-tru64.adb, [...] (DLL_Prefix): New function

2005-11-14  Vincent Celier  <celier@adacore.com>

* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb,
mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb,
mlib-tgt-darwin.adb, mlib-tgt.adb, mlib-tgt.ads,
mlib-tgt-lynxos.adb (DLL_Prefix): New function

From-SVN: r106953

18 years agosystem-lynxos-ppc.ads, [...]: Increase default priority on Lynx from 15 to 17...
Matthew Gingell [Tue, 15 Nov 2005 13:51:38 +0000 (14:51 +0100)]
system-lynxos-ppc.ads, [...]: Increase default priority on Lynx from 15 to 17...

2005-11-14  Matthew Gingell  <gingell@adacore.com>

* system-lynxos-ppc.ads, system-lynxos-x86.ads:
Increase default priority on Lynx from 15 to 17, and meet the Ada
requirement that Default_Priority be ((Priority'First +
Priority'Last) / 2) by increasing the range of Interrupt_Priority.

From-SVN: r106952

18 years agoexp_vfpt.adb: Handle /= case
Robert Dewar [Tue, 15 Nov 2005 13:51:27 +0000 (14:51 +0100)]
exp_vfpt.adb: Handle /= case

2005-11-14  Robert Dewar  <dewar@adacore.com>

* exp_vfpt.adb: Handle /= case
(Expand_Vax_Conversion): Properly recognize Conversion_OK flag
so that we do not get duplicate scaling for fixed point conversions.

* s-vaflop.ads, s-vaflop.adb: (Ne_F): New function

From-SVN: r106951

18 years agore PR ada/18434 (Ada: cannot build gnattools on Tru64 UNIX V5.1B)
Robert Dewar [Tue, 15 Nov 2005 13:51:09 +0000 (14:51 +0100)]
re PR ada/18434 (Ada: cannot build gnattools on Tru64 UNIX V5.1B)

2005-11-14  Robert Dewar  <dewar@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

PR ada/18434

* types.ads: Include All_Checks in Suppress_Array

* checks.adb (Check_Needed): Remove kludge for a/=b rewritten as
not(a=b), since we no longer do this rewriting, and hence it is not
needed.
(Elaboration_Checks_Suppressed): Add special casing to
deal with different cases of static and dynamic elaboration checks (all
checks does not count in the first case, but does in the second).
(Expr_Known_Valid): Do not assume that the result of any arbitrary
function call is valid, since this is not the case.
(Ensure_Valid): Do not apply validity check to a real literal
in a universal or fixed context

* exp_ch4.adb (Expand_N_Op_Ne): Don't expand a/=b to not(a=b) for
elementary types using the operator in standard. It is cleaner not to
modify the programmers intent, especially in the case of floating-point.
(Rewrite_Comparison): Fix handling of /= (this was always wrong, but
it did not matter because we always rewrote a/=b to not(a=b).
(Expand_Allocator_Expression): For an allocator expression whose nominal
subtype is an unconstrained packed type, convert the expression to its
actual constrained subtype.
Implement warning for <= or >= where < or > not possible
Fix to Vax_Float tests (too early in many routines, causing premature
Vax_Float expansions.

* sem_prag.adb (Analyze_Pragma, case Obsolescent): Allow this pragma
to be used with packages and generic packages as well as with
subprograms.
(Suppress): Set All_Checks, but not Elaboration_Check, for case
of pragma Suppress (All_Checks)
(Analyze_Pragma, case Warnings): Implement first argument allowed to be
a string literal for precise control over warnings.
Avoid raise of pragma in case of unrecognized pragma and just return
instead.

* sem_prag.ads: Minor reformatting

* switch-c.adb (Scan_Front_End_Switches): Replace "raise Bad_Switch;"
with call to new procedure Bad_Switch. Call Scan_Pos with new parameter
Switch. Do not handle any exception.
Include -gnatwx as part of -gnatg (warn on redundant parens)
Allow optional = after -gnatm
(Scan_Front_End_Switches): The -gnatp switch sets All_Checks, but no
longer sets Elaboration_Checks.
Code to set warning mode moved to Sem_Warn
so that it can be shared by pragma processing.

* s-mastop-tru64.adb (Pop_Frame): Remove redundant parentheses in if
statement.

* s-taprop-solaris.adb:
Change some <= to =, to avoid new warning

* a-exexda.adb, prj-proc.adb:
Fix obvious typo (Num_Tracebacks compared <= 0 instead of < 0)
Fix obvious typo (Total_Errors_Detected <= 0 should be = 0)

From-SVN: r106950

18 years agog-soccon.ads: Minor reformatting.
Thomas Quinot [Tue, 15 Nov 2005 13:50:37 +0000 (14:50 +0100)]
g-soccon.ads: Minor reformatting.

2005-11-14  Thomas Quinot  <quinot@adacore.com>

* g-soccon.ads: Minor reformatting. Update comments.

* gsocket.h: Include <sys/times.h> in the VxWorks case, in order to
gain visibility on the declaration of struct timeval.

* g-soccon-freebsd.ads,
g-soccon-darwin.ads,
g-soccon-tru64.ads,
g-soccon-aix.ads,
g-soccon-irix.ads,
g-soccon-hpux.ads,
g-soccon-solaris.ads,
g-soccon-vms.ads,
g-soccon-mingw.ads,
g-soccon-vxworks.ads (SIZEOF_tv_sec, SIZEOF_tv_usec): New constants.

* g-soccon-hpux-ia64.ads, g-soccon-linux-ppc.ads,
g-soccon-solaris-64.ads, g-soccon-linux-64.ads,
g-soccon-linux-x86.ads: New files.

* g-socthi-mingw.adb:
(Socket_Error_Message): Remove redundant use of GNAT.Sockets.Constants

* g-socthi-vxworks.ads, g-socthi-vms.ads, g-socthi-mingw.ads
(time_t, suseconds_t): New types constructed to match the tv_sec
and tv_usec fields of C struct timeval.
(Timeval): Construct structure in terms of the new types.
(Host_Errno): New function (imported from socket.c), returns last hosts
database error.

* g-socthi-vxworks.adb:  Add error handling circuitry.

* g-socket.ads, g-socket.adb (To_Timeval): Reflect change of type for
components of struct timeval.
(Get_Host_By_Name, Get_Host_By_Address): Fix error reporting circuitry.
(Check_Selector): In error conditions, clear internal socket sets to
avoid a memory leak.
(Get_Socket_Option, Set_Socket_Option): Support for Multicast_If,
Send_Timeout, Receive_Timeout.

* g-socthi.ads (time_t, suseconds_t): New types constructed to match
the tv_sec and tv_usec fields of C struct timeval.
(Timeval): Construct structure in terms of the new types.
(Host_Errno): New function (imported from socket.c), returns last hosts
database error.

* socket.c (__gnat_get_h_errno): New function to retrieve h_errno, the
hosts database last error code.

* gen-soccon.c: Complete value expansion should not be performed on
TARGET, as it has the form of a math expression, and some components
may be platform-defined macros.
For VxWorks, generate the OK and ERROR values.
New constants giving the sizes of the components of C struct timeval.

From-SVN: r106949

18 years agoinvoke.texi (large-unit-insns): Document.
Jan Hubicka [Tue, 15 Nov 2005 12:27:33 +0000 (13:27 +0100)]
invoke.texi (large-unit-insns): Document.

* invoke.texi (large-unit-insns): Document.
* ipa-inline.c (cgraph_decide_inlining): Use large-unit-insns param.
* params.def (large-unit-insns): New param.
* gcc.dg/winline-5.c: Add large-unit-insns limit.

From-SVN: r106948

18 years agore PR target/24869 (testsuite failure: gfortran.dg/func_derived_1.f90 -O3 unroll...
Hans-Peter Nilsson [Tue, 15 Nov 2005 10:52:06 +0000 (10:52 +0000)]
re PR target/24869 (testsuite failure: gfortran.dg/func_derived_1.f90 -O3 unroll-loops)

PR target/24869
* config/cris/cris.md ("*mov_sidesisf_mem"): Do not match
special register for operand 3.  Reindent constraints to align
them vertically.

From-SVN: r106946

18 years agoinvoke.texi (RS/6000 and PowerPC Options): Add -mmfcrf, -mpopcntb, -mfprnd.
David Edelsohn [Tue, 15 Nov 2005 05:00:40 +0000 (05:00 +0000)]
invoke.texi (RS/6000 and PowerPC Options): Add -mmfcrf, -mpopcntb, -mfprnd.

        * doc/invoke.texi (RS/6000 and PowerPC Options): Add -mmfcrf,
        -mpopcntb, -mfprnd. Add -mcpu=power5+.
        * configure.ac: Add test for FP rounding instructions.
        * configure: Regenerate.
        * config.in: Regenerate.
        * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
        _ARCH_PPCSQ, _ARCH_PPCGR, _ARCH_PWR4, _ARCH_PWR5, _ARCH_PWR5X if
        features enabled.
        * config/rs6000/rs6000.opt (mfprnd): New.
        * config/rs6000/rs6000.c (processor_target_table): Add power5+.
        (POWERPC_MASKS): Add MASK_POPCNTB and MASK_FPRND.
        * config/rs6000/aix52.h (ASM_CPU_SPEC): Add -mpower5+.
        * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add -mpower5+.
        (TARGET_FPRND): New.
        * config/rs6000/rs6000.md (UNSPEC_FRIM, UNSPEC_FRIN, UNSPEC_FRIP,
        UNSPEC_FRIZ): New.
        (btrunc<mode>2): New.
        (ceil<mode>2): New.
        (floor<mode>2): New.
        (round<mode>2): New.

From-SVN: r106938

18 years agoacinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for shared libgcc for darwi...
Geoffrey Keating [Tue, 15 Nov 2005 04:56:34 +0000 (04:56 +0000)]
acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for shared libgcc for darwin exports.

* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Don't check for
shared libgcc for darwin exports.
* configure: Regenerate.

From-SVN: r106936

18 years agogcc.c (version_compare_spec_function): Use fatal() rather than abort().
Geoffrey Keating [Tue, 15 Nov 2005 04:55:12 +0000 (04:55 +0000)]
gcc.c (version_compare_spec_function): Use fatal() rather than abort().

* gcc.c (version_compare_spec_function): Use fatal() rather than
abort().

* config/rs6000/darwin.h (DARWIN_CRT2_SPEC): New.
(SUBTARGET_EXTRA_SPECS): Define %(darwin_crt2).
* config/i386/darwin.h (SUBTARGET_EXTRA_SPECS): Define %(darwin_crt2)
as empty.
* config/darwin.h (STARTFILE_SPEC): Use %(darwin_crt2) to possibly
link in crt2.o.

* config/darwin.h (REAL_LIBGCC_SPEC): Link in shared libgcc depending
on -mmacosx-version-min setting.

From-SVN: r106935

18 years ago* g++.dg/eh/simd-2.C: XFAIL on AIX and SPE.
David Edelsohn [Tue, 15 Nov 2005 04:42:30 +0000 (04:42 +0000)]
* g++.dg/eh/simd-2.C: XFAIL on AIX and SPE.

From-SVN: r106933

18 years agore PR tree-optimization/24840 (ICE process_assert_insertions_for, at tree-vrp.c:2807)
Diego Novillo [Tue, 15 Nov 2005 02:59:03 +0000 (02:59 +0000)]
re PR tree-optimization/24840 (ICE process_assert_insertions_for, at tree-vrp.c:2807)

PR 24840
* tree-vrp.c (infer_value_range): Return false if STMT is a
block terminator and its basic block has no successors.

testsuite/

PR 24840
* gcc.dg/tree-ssa/pr24840.c: New test.

From-SVN: r106930

18 years agoi386.c (override_options): -masm=intel isn't supported on darwin.
Mike Stump [Tue, 15 Nov 2005 01:44:36 +0000 (01:44 +0000)]
i386.c (override_options): -masm=intel isn't supported on darwin.

* config/i386/i386.c (override_options): -masm=intel isn't
supported on darwin.
* doc/invoke.texi (i386 and x86-64 Options): Likewise.

From-SVN: r106927

18 years agocrtstuff.c: Undefine gid_t, pid_t, rlim_t, ssize_t, uid_t and vfork after including...
Joseph Myers [Tue, 15 Nov 2005 01:21:29 +0000 (01:21 +0000)]
crtstuff.c: Undefine gid_t, pid_t, rlim_t, ssize_t, uid_t and vfork after including auto-host.h.

* crtstuff.c: Undefine gid_t, pid_t, rlim_t, ssize_t, uid_t and
vfork after including auto-host.h.

From-SVN: r106924

18 years agore PR testsuite/24841 (dg-require compilation-test trigged on test with additional...
Janis Johnson [Tue, 15 Nov 2005 01:18:45 +0000 (01:18 +0000)]
re PR testsuite/24841 (dg-require compilation-test trigged on test with additional-sources barfs)

PR testsuite/24841
* gcc.dg/attr-weakref-1.c: Rearrange test directives.

From-SVN: r106923

18 years agore PR rtl-optimization/22002 (internal consistency failure with -funroll-loops)
Alan Modra [Tue, 15 Nov 2005 00:59:21 +0000 (00:59 +0000)]
re PR rtl-optimization/22002 (internal consistency failure with -funroll-loops)

PR rtl-optimization/22002
* combine.c (distribute_notes): Detect cases where a reg dies
two or more times in a bb, including on the insn we are combining,
and place the death note on the correct range.

From-SVN: r106921

18 years ago20051113-1.c: New.
Dale Johannesen [Tue, 15 Nov 2005 00:47:17 +0000 (00:47 +0000)]
20051113-1.c: New.

2005-11-14  Dale Johannesen  <dalej@apple.com>

        * gcc.c-torture/execute/20051113-1.c:  New.

From-SVN: r106920

18 years agoexpmed.c (store_bit_field): Add offset unconditionally for memory targets.
Dale Johannesen [Tue, 15 Nov 2005 00:45:55 +0000 (00:45 +0000)]
expmed.c (store_bit_field): Add offset unconditionally for memory targets.

2005-11-14  Dale Johannesen  <dalej@apple.com>

        * expmed.c (store_bit_field):  Add offset unconditionally for
        memory targets.
        (extract_bit_field):  Don't force extzv or extv operand into
        a register if field is too big.

From-SVN: r106919

18 years agoDaily bump.
GCC Administrator [Tue, 15 Nov 2005 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r106914

18 years agore PR c++/24687 (ICE after error)
Mark Mitchell [Tue, 15 Nov 2005 00:15:09 +0000 (00:15 +0000)]
re PR c++/24687 (ICE after error)

PR c++/24687
* pt.c (check_explicit_specialization): Don't check for C linkage.
(push_template_decl_real): Likewise.
* parser.c (cp_parser_explicit_specialization): Check here.
(cp_parser_template_declaration_after_export): And here.
PR c++/24687
* g++.dg/template/crash43.C: New test.

From-SVN: r106909

18 years agoparser.c (cp_lexer_get_preprocessor_token): Initialize keyword field.
Mark Mitchell [Tue, 15 Nov 2005 00:04:43 +0000 (00:04 +0000)]
parser.c (cp_lexer_get_preprocessor_token): Initialize keyword field.

* parser.c (cp_lexer_get_preprocessor_token): Initialize keyword
field.

From-SVN: r106907

18 years agore PR c++/24580 (virtual base class cause exception not to be caught)
Jason Merrill [Mon, 14 Nov 2005 20:07:45 +0000 (15:07 -0500)]
re PR c++/24580 (virtual base class cause exception not to be caught)

        PR c++/24580
        * method.c (locate_ctor): Skip all artificial parms, not just
        'this'.

From-SVN: r106901

18 years agore PR libfortran/21468 (vectorizing libfortran)
Janne Blomqvist [Mon, 14 Nov 2005 19:48:31 +0000 (21:48 +0200)]
re PR libfortran/21468 (vectorizing libfortran)

2005-11-14  Janne Blomqvist  <jb@gcc.gnu.org>

        PR fortran/21468
        * Makefile.am: Add -ftree-vectorize for compiling matmul.
        * m4/matmul.m4: Add const and restrict to type declarations as
        appropriate.
        * m4/matmull.m4: Likewise.
        * Makefile.in: Regenerated.
        * generated/matmul_*.c: Likewise.

From-SVN: r106898

18 years agonatVMNetworkInterfaceWin32.cc: Include java/net/VMNetworkInterface.h.
Mohan Embar [Mon, 14 Nov 2005 17:19:11 +0000 (17:19 +0000)]
natVMNetworkInterfaceWin32.cc: Include java/net/VMNetworkInterface.h.

* java/net/natVMNetworkInterfaceWin32.cc: Include
java/net/VMNetworkInterface.h.

From-SVN: r106895

18 years agonatPlainSocketImplWin32.cc: Updated copyright.
Mohan Embar [Mon, 14 Nov 2005 17:15:18 +0000 (17:15 +0000)]
natPlainSocketImplWin32.cc: Updated copyright.

* gnu/java/net/natPlainSocketImplWin32.cc: Updated copyright.
(read): Handle count == 0 case.

Co-Authored-By: David Daney <ddaney@avtrex.com>
From-SVN: r106894

18 years agoarm.c (pic_labelno): New.
Daniel Jacobowitz [Mon, 14 Nov 2005 17:07:42 +0000 (17:07 +0000)]
arm.c (pic_labelno): New.

* config/arm/arm.c (pic_labelno): New.
(arm_load_pic_register): Use an UNSPEC_PIC_LABEL instead of a
LABEL_REF.  Pass only the labelno to PIC insns.
(arm_call_tls_get_addr, legitimize_tls_address): Likewise.
(arm_output_addr_const_extra): Handle UNSPEC_PIC_LABEL.
* arm.md (UNSPEC_PIC_LABEL): New constant.
(pic_add_dot_plus_four, pic_add_dot_plus_eight)
(tls_load_dot_plus_eight): Expect a labelno instead of a LABEL_REF.
Use the correct label prefix.

From-SVN: r106893

18 years agoarm.c (legitimize_tls_address): Use correct rtx for REQ_EQUIV note.
Daniel Jacobowitz [Mon, 14 Nov 2005 16:32:49 +0000 (16:32 +0000)]
arm.c (legitimize_tls_address): Use correct rtx for REQ_EQUIV note.

* config/arm/arm.c (legitimize_tls_address): Use correct rtx for
REQ_EQUIV note.

From-SVN: r106892

18 years agocpplib.h (struct cpp_callbacks): Annotate error with ATTRIBUTE_FPTR_PRINTF(3,0) inste...
Gerald Pfeifer [Mon, 14 Nov 2005 16:28:55 +0000 (16:28 +0000)]
cpplib.h (struct cpp_callbacks): Annotate error with ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0).

* include/cpplib.h (struct cpp_callbacks): Annotate error with
ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0).

Co-Authored-By: Ian Lance Taylor <ian@airs.com>
From-SVN: r106891

18 years ago* gcc.c-torture/unsorted/unsorted.exp: Sort tests before running them.
Daniel Jacobowitz [Mon, 14 Nov 2005 16:28:48 +0000 (16:28 +0000)]
* gcc.c-torture/unsorted/unsorted.exp: Sort tests before running them.

From-SVN: r106890

18 years ago* parser.c (eof_token): Add initializer for ambiguous_p.
Mark Mitchell [Mon, 14 Nov 2005 15:29:03 +0000 (15:29 +0000)]
* parser.c (eof_token): Add initializer for ambiguous_p.

From-SVN: r106889

18 years agoloop-invariant.c: Include tm_p.h.
Richard Earnshaw [Mon, 14 Nov 2005 15:03:06 +0000 (15:03 +0000)]
loop-invariant.c: Include tm_p.h.

* loop-invariant.c: Include tm_p.h.
* Makefile.in: Updated.

From-SVN: r106888

18 years agoloop-invariant.c: Include tm_p.h.
Richard Earnshaw [Mon, 14 Nov 2005 14:52:15 +0000 (14:52 +0000)]
loop-invariant.c: Include tm_p.h.

* loop-invariant.c: Include tm_p.h.
* Makefile.in: Updated.

From-SVN: r106887

18 years agore PR ada/18434 (Ada: cannot build gnattools on Tru64 UNIX V5.1B)
Robert Dewar [Mon, 14 Nov 2005 13:05:58 +0000 (13:05 +0000)]
re PR ada/18434 (Ada: cannot build gnattools on Tru64 UNIX V5.1B)

2005-11-14  Robert Dewar  <dewar@adacore.com>

PR ada/18434
* osint-m.adb: Add pragma Elaborate_All for Osint

From-SVN: r106886

18 years agore PR c++/24817 (g++ accepts multiple function template declarations even if exceptio...
Mark Mitchell [Mon, 14 Nov 2005 05:45:45 +0000 (05:45 +0000)]
re PR c++/24817 (g++ accepts multiple function template declarations even if exception-specification doesn't match.)

PR c++/24817
* decl.c (check_redeclaration_exception_specification): New
function.
(duplicate_decls): Use it.
* error.c (fndecl_to_string): Print the template parameter list.
PR c++/24817
* g++.dg/eh/spec8.C: New test.

From-SVN: r106884

18 years ago* gcc.dg/pack-test-1.c: Gate on ! default_packed.
Hans-Peter Nilsson [Mon, 14 Nov 2005 04:23:39 +0000 (04:23 +0000)]
* gcc.dg/pack-test-1.c: Gate on ! default_packed.

From-SVN: r106883

18 years agore PR c++/20293 (Wrong diagnostic for ambiguous access)
Mark Mitchell [Mon, 14 Nov 2005 01:45:19 +0000 (01:45 +0000)]
re PR c++/20293 (Wrong diagnostic for ambiguous access)

PR c++/20293
* cxx-pretty-print.c (pp_cxx_statement): Print qualifying scopes
for namespaces.
(pp_cxx_original_namespace_definition): Likewise.
* name-lookup.c (ambiguous_decl): Don't issue error messages;
instead return lists of ambiguous candidates.
(select_decl): Handle ambiguous namespace lookups.
* parser.c (cp_token): Add ambiguous_p.
(cp_lexer_get_preprocessor_token): Set it.
(cp_parser_diagnose_invalid_type_name): Avoid duplicate messages
when a qualified name uses an invalid scope.
(cp_parser_primary_expression): Print ambiguous candidates.
(cp_parser_type_parameter): Adjust comment to reflect new
parameter name for cp_parser_lookup_name.
(cp_parser_template_argument): Likewise.
(cp_parser_elaborated_type_specifier): Likewise.
(cp_parser_namespace_name): Likewise.
(cp_parser_class_name): Print ambiguous candidates.
(cp_parser_lookup_name): Rename ambiguous_p parameter to
ambiguous_decls.  Use it to return a list of ambiguous candiates
when a lookup is ambiguous.
(cp_parser_lookup_name_simple): Adjust comment to reflect new
parameter name for cp_parser_lookup_name.

PR c++/20293
* g++.dg/parse/ambig4.C: New test.
* g++.dg/tc1/dr101.C: Adjust error markers.
* g++.dg/lookup/strong-using-2.C: Likewise.
* g++.dg/lookup/ambig5.C: Likewise.
* g++.dg/lookup/ambig4.C: Likewise.
* g++.dg/parse/crash22.C: Likewise.

From-SVN: r106879

18 years ago* gcc.dg/pr19340.c: Skip for mmix-*-* and cris-*-*.
Hans-Peter Nilsson [Mon, 14 Nov 2005 01:04:09 +0000 (01:04 +0000)]
* gcc.dg/pr19340.c: Skip for mmix-*-* and cris-*-*.

From-SVN: r106877

18 years agoDaily bump.
GCC Administrator [Mon, 14 Nov 2005 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r106874

18 years agopa.c (store_reg): Revise generation of frame notes in large frames.
John David Anglin [Sun, 13 Nov 2005 18:06:55 +0000 (18:06 +0000)]
pa.c (store_reg): Revise generation of frame notes in large frames.

* pa.c (store_reg): Revise generation of frame notes in large frames.
(set_reg_plus_d): Likewise.

From-SVN: r106867

18 years agore PR tree-optimization/24709 (4.1.0 HEAD crashes with enable-checking on huge switch...
Andrew MacLeod [Sun, 13 Nov 2005 16:09:14 +0000 (16:09 +0000)]
re PR tree-optimization/24709 (4.1.0 HEAD crashes with enable-checking on huge switch statement)

PR tree-optimization/24709
* tree-ssa-operands.c (verify_imm_links): Increase limit for infinite
loop check.

From-SVN: r106865

18 years ago[multiple changes]
Paolo Carlini [Sun, 13 Nov 2005 12:14:51 +0000 (12:14 +0000)]
[multiple changes]

2005-11-13  Jonathan Wakely  <redi@gcc.gnu.org>

* include/tr1/boost_shared_ptr.h (get_deleter):
Declare before shared_ptr.
(shared_ptr<>): Declare get_deleter as friend.
(shared_ptr<>:_M_get_deleter): Private.

2005-11-13  Douglas Gregor  <doug.gregor@gmail.com>

PR libstdc++/24818
        * include/tr1/ref_wrap_iterate.h
        (reference_wrapper::operator()()): Don't dereferene the result of
        get() before calling it; it's already a reference.
        * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
        Test nullary calls to reference_wrappers.

From-SVN: r106863

18 years ago[multiple changes]
Paolo Carlini [Sun, 13 Nov 2005 12:14:15 +0000 (12:14 +0000)]
[multiple changes]

2005-11-13  Jonathan Wakely  <redi@gcc.gnu.org>

* include/tr1/boost_shared_ptr.h (get_deleter):
Declare before shared_ptr.
(shared_ptr<>): Declare get_deleter as friend.
(shared_ptr<>:_M_get_deleter): Private.

2005-11-13  Douglas Gregor  <doug.gregor@gmail.com>

PR libstdc++/24818
        * include/tr1/ref_wrap_iterate.h
        (reference_wrapper::operator()()): Don't dereferene the result of
        get() before calling it; it's already a reference.
        * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc:
        Test nullary calls to reference_wrappers.

From-SVN: r106862

18 years agogthr-posix95.h: Remove declaration of pthread_mutexattr_settype and duplicate declara...
Eric Botcazou [Sun, 13 Nov 2005 10:16:43 +0000 (11:16 +0100)]
gthr-posix95.h: Remove declaration of pthread_mutexattr_settype and duplicate declaration of...

* gthr-posix95.h: Remove declaration of pthread_mutexattr_settype
and duplicate declaration of pthread_self.

From-SVN: r106861

18 years agore PR middle-end/24003 (17 ACATS regressions (fixed point or decimal artihmetic))
Eric Botcazou [Sun, 13 Nov 2005 09:55:11 +0000 (09:55 +0000)]
re PR middle-end/24003 (17 ACATS regressions (fixed point or decimal artihmetic))

PR middle-end/24003
* calls.c (expand_call): If TARGET is a MEM and some part of the
argument area has been saved, force TARGET to a register.

Co-Authored-By: Ian Lance Taylor <ian@airs.com>
From-SVN: r106860

18 years agofget.c: New file.
Francois-Xavier Coudert [Sun, 13 Nov 2005 09:33:19 +0000 (10:33 +0100)]
fget.c: New file.

* intrinsics/fget.c: New file.
* intrinsics/ftell.c: New file.
* io/unix.c (stream_offset): New function.
* io/io.h: Add prototype for stream_offset.
* Makefile.am: Add intrinsics/fget.c and intrinsics/ftell.c.
* Makefile.in: Regenerate.

* intrinsic.c (add_functions): Add COMPLEX, FTELL, FGETC, FGET,
FPUTC, FPUT, AND, XOR and OR intrinsic functions.
(add_subroutines): Add FGETC, FGET, FPUTC, FPUT and FTELL intrinsic
subroutines.
* gfortran.h: Add GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET,
GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL,
GFC_ISYM_OR, GFC_ISYM_XOR.
* iresolve.c (gfc_resolve_and, gfc_resolve_complex,
gfc_resolve_or, gfc_resolve_fgetc, gfc_resolve_fget,
gfc_resolve_fputc, gfc_resolve_fput, gfc_resolve_ftell,
gfc_resolve_xor, gfc_resolve_fgetc_sub, gfc_resolve_fget_sub,
gfc_resolve_fputc_sub, gfc_resolve_fput_sub, gfc_resolve_ftell_sub):
New functions.
* check.c (gfc_check_complex, gfc_check_fgetputc_sub,
gfc_check_fgetputc, gfc_check_fgetput_sub, gfc_check_fgetput,
gfc_check_ftell, gfc_check_ftell_sub, gfc_check_and): New functions.
* simplify.c (gfc_simplify_and, gfc_simplify_complex, gfc_simplify_or,
gfc_simplify_xor): New functions.
* trans-intrinsic.c (gfc_conv_intrinsic_function): Add cases for
GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC,
GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR and
GFC_ISYM_XOR.
* intrinsic.h: Add prototypes for all functions added to iresolve.c,
simplify.c and check.c.

* gfortran.dg/complex_intrinsic_1.f90: New test.
* gfortran.dg/complex_intrinsic_2.f90: New test.
* gfortran.dg/fgetc_1.f90: New test.
* gfortran.dg/fgetc_2.f90: New test.
* gfortran.dg/fgetc_3.f90: New test.
* gfortran.dg/ftell_1.f90: New test.
* gfortran.dg/ftell_2.f90: New test.
* gfortran.dg/gnu_logical_1.F: New test.
* gfortran.dg/gnu_logical_2.f90: New test.

From-SVN: r106859

18 years agoipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type checking.
Razya Ladelsky [Sun, 13 Nov 2005 09:08:42 +0000 (09:08 +0000)]
ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type checking.

2005-11-13  Razya Ladelsky <razya@il.ibm.com>

        * ipa-prop.c (ipa_callsite_compute_param ): Removed obsolete type
        checking.

From-SVN: r106858

18 years agocheck.tpl: Handle CVS additionally.
Andreas Jaeger [Sun, 13 Nov 2005 08:43:28 +0000 (09:43 +0100)]
check.tpl: Handle CVS additionally.

        * check.tpl: Handle CVS additionally.

From-SVN: r106855

18 years agore PR c++/22489 (ICE in dwarf2out_finish with using namespace in a local class and...
Jason Merrill [Sun, 13 Nov 2005 07:34:50 +0000 (02:34 -0500)]
re PR c++/22489 (ICE in dwarf2out_finish with using namespace in a local class and compiler built constructors)

        PR c++/22489
        * dwarf2out.c (gen_subprogram_die): Force a declaration die for
        lazily declared methods.
        (force_decl_die): Stop if forcing out the context already make a
        DIE for the decl.
        (force_type_die): Likewise.

From-SVN: r106853

18 years agore PR middle-end/24820 (SEGV in integer_valued_real_p at gcc/builtins.c:6711)
Andrew Pinski [Sun, 13 Nov 2005 06:18:48 +0000 (06:18 +0000)]
re PR middle-end/24820 (SEGV in integer_valued_real_p at gcc/builtins.c:6711)

2005-11-13  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/24820
        * testsuite/gcc.dg/pr24820.c: New test.
2005-11-13  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/24820
        * builtins.c (integer_valued_real_p): Add break in
        REAL_CST having TREE_OVERFLOW set.

From-SVN: r106851

18 years agoDaily bump.
GCC Administrator [Sun, 13 Nov 2005 00:17:13 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r106847

18 years agotree-ssa-loop-ivopts.c (get_address_cost): Prevent splitting addressing modes during...
Zdenek Dvorak [Sat, 12 Nov 2005 23:27:13 +0000 (00:27 +0100)]
tree-ssa-loop-ivopts.c (get_address_cost): Prevent splitting addressing modes during calculation of costs.

* tree-ssa-loop-ivopts.c (get_address_cost): Prevent splitting
addressing modes during calculation of costs.

* testsuite/gcc.dg/tree-ssa/loop-2.c: Fix outcome.
* testsuite/gcc.dg/tree-ssa/loop-3.c: Change type of loop control
variable.

From-SVN: r106842

18 years agofunction.c (assign_stack_local_1): Restrict sanity check on frame size overflow to...
Eric Botcazou [Sat, 12 Nov 2005 22:58:48 +0000 (22:58 +0000)]
function.c (assign_stack_local_1): Restrict sanity check on frame size overflow to 32-bit and above platforms.

* function.c (assign_stack_local_1): Restrict sanity check
on frame size overflow to 32-bit and above platforms.

From-SVN: r106840

18 years agonested-func-4.c: Add dg-options for hppa*-*-hpux*.
John David Anglin [Sat, 12 Nov 2005 21:54:23 +0000 (21:54 +0000)]
nested-func-4.c: Add dg-options for hppa*-*-hpux*.

testsuite/24614
* gcc.dg/nested-func-4.c: Add dg-options for hppa*-*-hpux*.

From-SVN: r106837

18 years agocris.exp: New file.
Hans-Peter Nilsson [Sat, 12 Nov 2005 21:10:23 +0000 (21:10 +0000)]
cris.exp: New file.

* gcc.target/cris/cris.exp: New file.
* gcc.target/cris/rld-legit1.c: New test.
* gcc.target/cris/rld-legit2.c: New test.

From-SVN: r106836

18 years agocris.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
Hans-Peter Nilsson [Sat, 12 Nov 2005 21:09:11 +0000 (21:09 +0000)]
cris.h (LEGITIMIZE_RELOAD_ADDRESS): Define.

* config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
* config/cris/cris.c: Include reload.h.
(cris_initial_elimination_offset): New function.
* config/cris/cris-protos.h: (cris_initial_elimination_offset):
Prototype.

From-SVN: r106835

18 years agore PR c++/24780 (ICE set_mem_attributes_minus_bitpos)
Jakub Jelinek [Sat, 12 Nov 2005 20:44:55 +0000 (21:44 +0100)]
re PR c++/24780 (ICE set_mem_attributes_minus_bitpos)

PR c++/24780
* typeck.c (complete_type): Set TYPE_NEEDS_CONSTRUCTING
and TYPE_HAS_NONTRIVIAL_DESTRUCTOR flags for all variants
of array type.

* g++.dg/opt/pr24780.C: New test.

From-SVN: r106833

18 years agore PR c++/24761 (templates and inline-asm and "+")
Jakub Jelinek [Sat, 12 Nov 2005 20:42:23 +0000 (21:42 +0100)]
re PR c++/24761 (templates and inline-asm and "+")

PR c++/24761
* pt.c (tsubst_copy_asm_operands): New function.
(tsubst_expr) <case ASM_EXPR>: Use it.

* g++.dg/template/asm1.C: New test.

From-SVN: r106831

18 years agogcse.c (find_rtx_in_ldst): Handle NULL pre_ldst_table.
Richard Guenther [Sat, 12 Nov 2005 19:29:30 +0000 (19:29 +0000)]
gcse.c (find_rtx_in_ldst): Handle NULL pre_ldst_table.

2005-11-12  Richard Guenther  <rguenther@suse.de>

* gcse.c (find_rtx_in_ldst): Handle NULL pre_ldst_table.

From-SVN: r106829

18 years agore PR libfortran/24787 ([libfortran] SCAN is broken)
Steven G. Kargl [Sat, 12 Nov 2005 19:16:40 +0000 (19:16 +0000)]
re PR libfortran/24787 ([libfortran] SCAN is broken)

PR libfortran/24787
* intrinsics/string_intrinsics.c (string_scan): Off by one; Fix
  typos in nearby comment.

* gfortran.dg/scan_1.f90: New test.

From-SVN: r106828

18 years agoexpr.c (expand_expr_real_1): <MAX_EXPR, MIN_EXPR>: Canonicalize to compare against...
Jan Hubicka [Sat, 12 Nov 2005 17:35:06 +0000 (18:35 +0100)]
expr.c (expand_expr_real_1): <MAX_EXPR, MIN_EXPR>: Canonicalize to compare against 0 when possible.

* expr.c (expand_expr_real_1): <MAX_EXPR, MIN_EXPR>: Canonicalize
to compare against 0 when possible.
* gcc.target/i386/minmax-1.c: New.
* gcc.target/i386/minmax-2.c: New.

From-SVN: r106827

18 years agobfin.h (REGISTER_NAMES, [...]): Rearrange I/B/L registers.
Jie Zhang [Sat, 12 Nov 2005 16:08:35 +0000 (16:08 +0000)]
bfin.h (REGISTER_NAMES, [...]): Rearrange I/B/L registers.

* config/bfin/bfin.h (REGISTER_NAMES, SHORT_REGISTER_NAMES,
HIGH_REGISTER_NAMES, FIXED_REGISTERS, CALL_USED_REGISTERS,
REG_ALLOC_ORDER, enum reg_class): Rearrange I/B/L registers.
* config/bfin/bfin.md: Redefine REG_ constants for I/B/L registers
in the new order.

From-SVN: r106824

18 years agopr24445.c: Fix for 64-bit targets.
Kaz Kojima [Sat, 12 Nov 2005 09:28:24 +0000 (09:28 +0000)]
pr24445.c: Fix for 64-bit targets.

* gcc.dg/pr24445.c: Fix for 64-bit targets.

From-SVN: r106822

18 years agorecog.c (constrain_operands): For a match, require that a non-register matches genera...
Hans-Peter Nilsson [Sat, 12 Nov 2005 07:12:09 +0000 (07:12 +0000)]
recog.c (constrain_operands): For a match, require that a non-register matches general_operand when strict >= 0.

* recog.c (constrain_operands) <case 'g'>: For a match, require
that a non-register matches general_operand when strict >= 0.

From-SVN: r106821

18 years agore PR libstdc++/24808 (is_object fails to compile with incomplete types)
Paolo Carlini [Sat, 12 Nov 2005 00:19:24 +0000 (00:19 +0000)]
re PR libstdc++/24808 (is_object fails to compile with incomplete types)

2005-11-11  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/24808
* include/tr1/type_traits (__is_abstract_helper): Rename to __in_array
(with complemented logic).
(is_function): Use it, don't use __conv_helper.
(is_abstract): Adjust.
(__conv_helper): Rename to __is_convertible_simple.
(is_convertible): Adjust.
* testsuite/testsuite_tr1.h (class IncompleteClass): Add.
* testsuite/tr1/4_metaprogramming/composite_type_traits/is_object/
24808.cc: New.
* testsuite/tr1/4_metaprogramming/primary_type_categories/is_enum/
24808.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/is_function/
24808.cc: Likewise.

From-SVN: r106818

18 years agoDaily bump.
GCC Administrator [Sat, 12 Nov 2005 00:17:06 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r106815

18 years agoloop-invariant.c (move_loop_invariants): Fix a thinko in the previous checkin.
Steven Bosscher [Sat, 12 Nov 2005 00:09:48 +0000 (00:09 +0000)]
loop-invariant.c (move_loop_invariants): Fix a thinko in the previous checkin.

* loop-invariant.c (move_loop_invariants): Fix a thinko in the
previous checkin.

From-SVN: r106809

18 years agogcc/
Daniel Jacobowitz [Fri, 11 Nov 2005 23:23:15 +0000 (23:23 +0000)]
gcc/
* tree-ssa-dse.c (struct address_walk_data, memory_ssa_name_same)
(memory_address_same): New.
(dse_optimize_stmt): Call memory_address_same.
gcc/testsuite/
* gcc.c-torture/execute/20051110-1.c,
gcc.c-torture/execute/20051110-2.c: New tests.

From-SVN: r106807

18 years agore PR middle-end/24750 (global-alloc (reload) trips over own confusion for unexpected...
Hans-Peter Nilsson [Fri, 11 Nov 2005 23:19:26 +0000 (23:19 +0000)]
re PR middle-end/24750 (global-alloc (reload) trips over own confusion for unexpected addressing modes)

PR middle-end/24750
* gcc.dg/torture/pr24750-1.c, gcc.target/cris/torture/pr24750-2.c:
        New tests.

From-SVN: r106806

18 years agore PR middle-end/24750 (global-alloc (reload) trips over own confusion for unexpected...
Hans-Peter Nilsson [Fri, 11 Nov 2005 23:17:16 +0000 (23:17 +0000)]
re PR middle-end/24750 (global-alloc (reload) trips over own confusion for unexpected addressing modes)

PR middle-end/24750
* reload.c (find_reloads_address_1) <case TRUNCATE, SIGN_EXTEND,
ZERO_EXTEND>: New cases.

From-SVN: r106804

18 years ago* longlong.h (__clz_tab): Always provide.
Daniel Jacobowitz [Fri, 11 Nov 2005 22:45:06 +0000 (22:45 +0000)]
* longlong.h (__clz_tab): Always provide.

From-SVN: r106803

18 years agotarget-libpath.exp (get_shlib_extension): New proc.
Andreas Tobler [Fri, 11 Nov 2005 22:31:35 +0000 (23:31 +0100)]
target-libpath.exp (get_shlib_extension): New proc.

2005-11-11  Andreas Tobler  <a.tobler@schweiz.ch>

* lib/target-libpath.exp (get_shlib_extension): New proc.
* lib/g++.exp (g++_link_flags): Add flags in case of shared only build.
* lib/gfortran.exp (gfortran_link_flags): Likewise.
* lib/objc.exp (objc_target_compile): Likewise.
* lib/obj-c++.exp (obj-c++_link_flags): Likewise. Fix multilib libgcc
detection.

From-SVN: r106802

18 years agoMakefile.def: Remove gdb dependencies for gdbtk.
Daniel Jacobowitz [Fri, 11 Nov 2005 21:47:07 +0000 (21:47 +0000)]
Makefile.def: Remove gdb dependencies for gdbtk.

* Makefile.def: Remove gdb dependencies for gdbtk.
* Makefile.tpl (CONFIGURE_GDB_TK, INSTALL_GDB_TK): New variables.
(configure-gdb, install-gdb): New rules.
* configure.in: Set CONFIGURE_GDB_TK and INSTALL_GDB_TK.
* Makefile.in, configure: Regenerated.

From-SVN: r106801

18 years agostatic_linking_1.f: Fix static_libgfortran processing.
Andreas Tobler [Fri, 11 Nov 2005 21:41:55 +0000 (22:41 +0100)]
static_linking_1.f: Fix static_libgfortran processing.

2005-11-11  Andreas Tobler  <a.tobler@schweiz.ch>

* gfortran.dg/static_linking_1.f: Fix static_libgfortran processing.

* lib/target-supports.exp (check_effective_target_static_libgfortran):
Add -static to additional_flags and pass it to target_compile.

From-SVN: r106800

18 years agoUpdate ChangeLog.
Jerry DeLisle [Fri, 11 Nov 2005 20:35:54 +0000 (20:35 +0000)]
Update ChangeLog.

2005-11-11  Jerry DeLisle <jvdelisle@gcc.gnu.org>

Update ChangeLog. Forgot to commit

From-SVN: r106799

18 years agore PR libfortran/24719 (Nonadvancing read does not read more than 1 line)
Jerry DeLisle [Fri, 11 Nov 2005 20:31:06 +0000 (20:31 +0000)]
re PR libfortran/24719 (Nonadvancing read does not read more than 1 line)

2005-11-11  Jerry DeLisle <jvdelisle@gcc.gnu.org>

PR libgfortran/24719
gfortran.dg/read_noadvance.f90: New test.

PR libgfortran/24699
gfortran.dg/fmt_t_2.f90: New test.

PR libgfortran/24785
gfortran.dg/read_x_eor.f90: New test.

PR libgfortran/24584
gfortran.dg/namelist_empty.f90: Rename test.

PR libgfortran/24489
gfortran/read_eor.f90: Rename test.

From-SVN: r106798

18 years agoPR libgfortran/24699, 24700, 24719, 24785
Jerry DeLisle [Fri, 11 Nov 2005 20:19:21 +0000 (20:19 +0000)]
PR libgfortran/24699, 24700, 24719, 24785

2005-11-09  Jerry DeLisle <jvdelisle@gcc.gnu.org>

PR libgfortran/24699, 24700, 24719, 24785
* io/transfer.c (read_sf): Remove incorrect statement that was
clearing bytes_left.
(formatted_transfer_scalar): Add handling of end-of-record
condition, setting values correctly to backup.  Handle x format
when doing non-advancing write.
(st_read): Initialize current_record.

From-SVN: r106797

18 years agore PR libstdc++/24799 (std::tr1::hash missing inheritance)
Paolo Carlini [Fri, 11 Nov 2005 20:10:20 +0000 (20:10 +0000)]
re PR libstdc++/24799 (std::tr1::hash missing inheritance)

2005-11-11  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/24799
* include/tr1/functional (hash): Inherit from std::unary_function.
* testsuite/tr1/6_containers/unordered/hash/24799.cc: New.

PR libstdc++/24805
* include/tr1/boost_shared_ptr.h (swap(shared_ptr<>&, shared_ptr<>&),
swap(weak_ptr<>&, weak_ptr<>&)): Move inside namespace tr1.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/modifiers/
24805.cc: New.

PR libstdc++/24809
* include/tr1/type_traits (__is_polymorhpic_helper): Adjust destructor.
* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
24809.cc: New.

From-SVN: r106796

18 years agore PR target/24265 (ICE: in extract_insn, at recog.c:2084 with -O -fgcse -fmove-loop...
Steven Bosscher [Fri, 11 Nov 2005 19:34:39 +0000 (19:34 +0000)]
re PR target/24265 (ICE: in extract_insn, at recog.c:2084 with -O -fgcse -fmove-loop-invariants -mtune=pentiumpro)

PR 24265
* loop-invariant.c (may_assign_reg_p): Make sure a hard register
can be assigned to.
(find_invariant_insn): Do the cheapest check, may_assign_reg_p,
before check_maybe_invariant.
(move_invariant_reg): Use gen_move_insn instead of replacing
SET_DEST with the temporary for the invariant.
(move_loop_invariants): If checking is enabled, do internal
consistency checks after completing the pass.

From-SVN: r106795

18 years agore PR c/24644 (gcc-4.1 compiled ppc64 kernels do not boot)
David Edelsohn [Fri, 11 Nov 2005 17:59:54 +0000 (17:59 +0000)]
re PR c/24644 (gcc-4.1 compiled ppc64 kernels do not boot)

        PR 24644
        * common.opt (Wvolatile-register-var): New.
        * varasm.c (make_decl_rtl): Only emit warning when option
        specified.  Clarify warning message.
        * doc/invoke.texi (Wvolatile-register-var): Document new option.

        * doc/md.texi (copysign): Document standard named pattern.

From-SVN: r106791

18 years agobfin.c (bfin_expand_strmov): Correctly move the trailing bytes when align is 2.
Jie Zhang [Fri, 11 Nov 2005 17:58:31 +0000 (17:58 +0000)]
bfin.c (bfin_expand_strmov): Correctly move the trailing bytes when align is 2.

* config/bfin/bfin.c (bfin_expand_strmov): Correctly move the trailing
bytes when align is 2.
* config/bfin/bfin.md (rep_movsi, rep_movhi): Make LSETUP be followed
by the first instruction of the loop.

From-SVN: r106790

18 years agofix
Jason Merrill [Fri, 11 Nov 2005 17:16:53 +0000 (12:16 -0500)]
fix

From-SVN: r106788

18 years agore PR c++/24686 (ICE when building a variation of NMSTL)
Jason Merrill [Fri, 11 Nov 2005 17:15:48 +0000 (12:15 -0500)]
re PR c++/24686 (ICE when building a variation of NMSTL)

        PR c++/24686
        * gimplify.c (gimplify_cleanup_point_expr): Also save and restore
        the cleanup list.

From-SVN: r106787

18 years agore PR c++/24686 (ICE when building a variation of NMSTL)
Jason Merrill [Fri, 11 Nov 2005 17:14:49 +0000 (12:14 -0500)]
re PR c++/24686 (ICE when building a variation of NMSTL)

        PR c++/24686
        * gimplify.c (gimplify_cleanup_point_expr): Also save and restore
        the cleanup list.

From-SVN: r106786

18 years agore PR rtl-optimization/22509 (elemental.f90 testsuite failure (-fweb))
Zdenek Dvorak [Fri, 11 Nov 2005 13:38:07 +0000 (14:38 +0100)]
re PR rtl-optimization/22509 (elemental.f90 testsuite failure (-fweb))

PR rtl-optimization/22509
* local-alloc.c (memref_used_between_p): Check whether a function call
could not reference the memref.

From-SVN: r106783

18 years agopostreload.c (reload_cse_simplify_operands): Fix bug in sorting algorithm so as to...
Ulrich Weigand [Fri, 11 Nov 2005 09:38:52 +0000 (09:38 +0000)]
postreload.c (reload_cse_simplify_operands): Fix bug in sorting algorithm so as to choose the best, not the worst, alternative.

* postreload.c (reload_cse_simplify_operands): Fix bug in sorting
algorithm so as to choose the best, not the worst, alternative.
Reset accumulated register class before processing next alternative.

From-SVN: r106780

18 years agore PR fortran/15976 (ICE: assertion failure in trans-array.c)
Paul Thomas [Fri, 11 Nov 2005 04:44:16 +0000 (04:44 +0000)]
re PR fortran/15976 (ICE: assertion failure in trans-array.c)

PR fortran/15976
* resolve.c (resolve_symbol): Disallow automatic arrays in module scope.
* gfortran.dg/automatic_module_variable.f90: New test.

Co-Authored-By: Steven G. Kargl <kargls@comcast.net>
From-SVN: r106777