summaryrefslogtreecommitdiff
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
* fname-sf.adb, [...]: Remove redundant use_clauses.Ed Schonberg2005-09-0538-134/+60
| | | | | | | | | | | | | | | | | 2005-09-01 Ed Schonberg <schonberg@adacore.com> Thomas Quinot <quinot@adacore.com> * fname-sf.adb, mlib-tgt.ads, back_end.adb, casing.adb, g-debpoo.adb, g-excact.adb, g-spipat.adb, g-spipat.ads, g-thread.adb, lib-list.adb, makeutl.adb, mlib.adb, osint.adb, par-ch10.adb, par-load.adb, prep.adb, prj.adb, prj-attr.ads, prj-env.ads, prj-err.adb, prj-err.ads, prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-pars.ads, prj-part.adb, prj-strt.adb, prj-tree.ads, prj-util.ads, sem_dist.adb, sinput-c.ads, sinput-l.ads, sinput-p.ads, styleg-c.ads, xr_tabls.adb, prj-attr-pm.ads, makegpr.adb: Remove redundant use_clauses. From-SVN: r103854
* g-soccon-vms.adb: Renamed to g-soccon-vms.adsThomas Quinot2005-09-0516-842/+1082
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-09-01 Thomas Quinot <quinot@adacore.com> * g-soccon-vms.adb: Renamed to g-soccon-vms.ads * g-soccon-vms.ads: Renamed from g-soccon-vms.adb * g-soccon.ads, g-soccon-tru64.ads, g-soccon-aix.ads, g-soccon-darwin.ads, g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads, g-soccon-mingw.ads, g-soccon-vxworks.ads, g-soccon-freebsd.ads: Add new constants: IP_MULTICAST_IF SO_RCVTIMEO/SO_SNDTIMEO IOV_MAX * gen-soccon.c: Move all target-specific file inclusions and macro definitions to gsocket.h, in order to ensure that any C code in socket.c will see a set of constants that is consistent with the contents of g-soccon.ads. * gsocket.h: Code imported from gen-soccon.c: Move all target-specific file inclusions and macro definitions to gsocket.h, in order to ensure that any C code in socket.c will see a set of constants that is consistent with the contents of g-soccon.ads. This change also makes gen-soccon self-contained (removing dependencies upon GCC internal headers). * g-socket.adb (Send_Vector): Make calls to Writev at most IOV_MAX iovecs at a time. (To_Inet_Addr): Now a procedure instead of a function, more efficient. * socket.c: Minor reformatting. From-SVN: r103853
* s-taprop-vxworks.adb: Move with clauses outside Warnings Off now that ↵Arnaud Charlet2005-09-057-99/+155
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dependent units are Preelaborate. 2005-09-01 Arnaud Charlet <charlet@adacore.com> Jose Ruiz <ruiz@adacore.com> * s-taprop-vxworks.adb: Move with clauses outside Warnings Off now that dependent units are Preelaborate. (Initialize): Call Interrupt_Managemeent.Initialize to ensure proper initialization of this unit. (Specific): Add new procedures Initialize and Delete so that this package can be used for VxWorks 5.x and 6.x (ATCB_Key, ATCB_Key_Address): Moved to Specific package body to hide differences between VxWorks 5.x and 6.x Minor reformatting. (Timed_Delay): Remove calls to Defer/Undefer_Abort, now performed by caller. Use only Preelaborate-compatible constructs. * s-tpopsp-vxworks.adb (ATBC_Key, ATCB_Key_Addr): Moved from Primitives.Operations. (Delete, Initialize): New procedures. * s-osinte-vxworks.adb: Body used to handle differences between VxWorks 5.x and 6.x (kill, Set_Time_Slice, VX_FP_TASK): New functions. * s-osinte-vxworks.ads: Minor reformatting. Add VxWworks 6.x specific functions (only called from VxWorks 6 files). (VX_FP_TASK): Now a function, to handle differences between VxWorks 5 and 6. (Set_Time_Slice): New function, replacing kerneltimeSlice to share code between Vxworks 5 and 6. (taskLock, taskUnlock): Removeed, no longer used. * adaint.c: The wait.h header is not located in the sys directory on VxWorks when using RTPs. (__gnat_set_env_value): Use setenv instead of putenv on VxWorks when using RTPs. (__gnat_dup): dup is available on Vxworks when using RTPs. (__gnat_dup2): dup2 is available on Vxworks when using RTPs. * cal.c: Use the header time.h for Vxworks 6.0 when using RTPs. * expect.c: The wait.h header is not located in the sys directory on VxWorks when using RTPs. From-SVN: r103852
* s-tataat.adb, [...]: Replace calls to Defer/Undefer_Abortion by ↵Arnaud Charlet2005-09-054-87/+59
| | | | | | | | | | | | | | Defer/Undefer_Abort. * s-tataat.adb, a-tasatt.adb: Replace calls to Defer/Undefer_Abortion by Defer/Undefer_Abort. * s-tasini.ads, s-tasini.adb (Defer_Abortion, Undefer_Abortion): Moved these procedures to body, and renamed Abort_Defer, Abort_Undefer. (Get_Exc_Stack_Addr, Set_Exc_Stack_Addr): Removed, no longer used. From-SVN: r103851
* a-tags.adb (IW_Membership): Give support to "Iface_CW_Typ in T'Class".Hristian Kirtchev2005-09-0515-847/+4416
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-09-01 Hristian Kirtchev <kirtchev@adacore.com> Javier Miranda <miranda@adacore.com> Gary Dismukes <dismukes@adacore.com> Ed Schonberg <schonberg@adacore.com> * a-tags.adb (IW_Membership): Give support to "Iface_CW_Typ in T'Class". For this purpose the functionality of this subprogram has been extended to look for the tag in the ancestors tag table. Update the structure of the GNAT Dispatch Table to reflect the additional two tables used in dispatching selects. Introduce appropriate array types and record components in Type_Specific_Data to reflect the two tables. (Get_Entry_Index, Set_Entry_Index): Retrieve and set the entry index in the TSD of a tag, indexed by position. (Get_Prim_Op_Kind, Set_Prim_Op_Kind): Retrieve and set the primitive operation kind in the TSD of a tag, indexed by position. * a-tags.ads: Introduce an enumeration type to capture different primitive operation kinds. Define a constant reflecting the number of predefined primitive operations. (Get_Entry_Index, Set_Entry_Index): Set and retrieve the entry index of an entry wrapper. (Get_Prim_Op_Kind, Set_Prim_Op_Kind): Set and retrieve the kind of callable entity of a primitive operation. * exp_ch3.adb (Freeze_Record_Type): Generate the declarations of the primitive operations used in dispatching selects for limited interfaces, limited tagged, task and protected types what implement a limited interface. (Freeze_Type): Generate the bodies of the primitive operations used in dispatching selects for limited tagged, task and protected types that implement a limited interface. Generate statements to populate the two auxiliary tables used for dispatching in select statements. (Freeze_Record_Type): Add call to initialize the dispatch table entries associated with predefined interface primitive operations. (Build_Dcheck_Function): Change Set_Subtype_Mark to Set_Result_Definition. (Build_Variant_Record_Equality): Change Subtype_Mark to Result_Definition. (Freeze_Enumeration_Type): Change Subtype_Mark to Result_Definition. (Predef_Spec_Or_Body): Change Subtype_Mark to Result_Definition. (Build_Assignment): Simplify the code that adds the run-time-check. (Expand_N_Object_Declaration): Code cleanup. * exp_ch7.adb (Make_Clean): Select the appropriate type for locking entries when there is a protected type that implements a limited interface. * exp_ch9.adb: Add package Select_Expansion_Utilities that contains common routines used in expansion of dispatching selects. (Add_Private_Declarations): Select the appropriate protection type when there is a protected type that implements a limited interface. (Build_Parameter_Block): Generate a wrapped parameter block. (Build_Protected_Subprogram_Body): Select the appropriate type for locking entries when there is a protected type that implements a limited interface. (Build_Wrapper_Spec): Set the flag and wrapped entity for procedures classified as entry wrappers. (Expand_N_Asynchronous_Select): Add support for expansion of dispatching asynchronous selects. (Expand_N_Conditional_Entry_Call): Add support for expansion of dispatching conditional selects. (Expand_N_Protected_Type_Declaration): Select the appropriate type for protection when there is a protected type that implements limited interfaces. (Expand_N_Timed_Entry_Call): Add support for expansion of dispatching timed selects. (Extract_Dispatching_Call): Extract the entity of the name of a dispatching call, the object parameter, actual parameters and corresponding formals. (Make_Initialize_Protection): Correct logic of protection initialization when there is a protected type that implements a limited interface. (Parameter_Block_Pack): Populate a wrapped parameter block with the values of actual parameters. (Parameter_Block_Unpack): Retrieve the values from a wrapped parameter block and assign them to the original actual parameters. * exp_ch9.ads (Subprogram_Protection_Mode): New type. (Build_Protected_Sub_Specification): Change the type and name of the last formal to account for the increased variety of protection modes. * einfo.ads, einfo.adb (Was_Hidden): New attribute. Present in all entities. Used to save the value of the Is_Hidden attribute when the limited-view is installed. (Is_Primitive_Wrapper, Set_Is_Primitive_Wrapper): Retrieve and change the attribute of procedures classified as entry wrappers. (Wrapped_Entity, Set_Wrapped_Entity): Retrieve and change the wrapped entity of a primitive wrapper. (Write_Entity_Flags): Output the name and value of the Is_Primitive_Wrapper attribute. (Write_Field27_Name): Output the name and entity of the field Wrapped_ Entity. (Underlying_Type): If we have an incomplete entity that comes from the limited view then we return the Underlying_Type of its non-limited view if it is already available. (Abstract_Interface_Alias): Flag applies to all subrogram kinds, including operators. (Write_Field26_Name): Add entry for Overridden_Operation (Overridden_Operation): New attribute of functions and procedures. * exp_disp.ads, exp_disp.adb (Default_Prim_Op_Position): Return a predefined position in the dispatch table for the primitive operations used in dispatching selects. (Init_Predefined_Interface_Primitives): Remove the hardcoded number of predefined primitive operations and replace it with Default_Prim_Op_Count. (Make_Disp_Asynchronous_Select_Spec, Make_Disp_Conditional_Select_Spec, Make_Disp_Get_Prim_Op_Kind_Spec, Make_Disp_Timed_Select_Spec): Update the names of the generated primitive operations used in dispatching selects. (Init_Predefined_Interface_Primitives): No need to inherit primitives in case of abstract interface types. They will be inherit by the objects implementing the interface. (Make_DT): There is no need to inherit the dispatch table of the ancestor interface for the elaboration of abstract interface types. The dispatch table will be inherited by the object implementing the interface. (Copy_Secondary_DTs): Add documentation. (Validate_Position): Improve this static check in case of aliased subprograms because aliased subprograms must have the same position. (Init_Predefined_Interface_Primitives): New subprogram that initializes the entries associated with predefined primitives of all the secondary dispatch tables. (Build_Anonymous_Access_Type): Removed. (Expand_Interface_Actuals): With the previous cleanup there is no need to build an anonymous access type. This allows further cleanup in the code generated by the expander. (Expand_Interface_Conversion): If the actual is an access type then build an internal function to handle the displacement. If the actual is null this function returns null because no displacement is required; otherwise performs a type conversion that will be expanded in the code that returns the value of the displaced actual. (Expand_Interface_Actuals): Avoid the generation of unnecessary type conversions that have no effect in the generated code because no displacement is required. Code cleanup; use local variables to avoid repeated calls to the subprogram directly_designated_type(). * exp_util.ads, exp_util.adb (Is_Predefined_Dispatching_Operation): Classify the primitive operations used in dispatching selects as predefined. (Implements_Limited_Interface): Determine whether some type either directly implements a limited interface or extends a type that implements a limited interface. (Build_Task_Image_Function): Change Subtype_Mark to Result_Definition. (Expand_Subtype_From_Expr): Do not build actual subtype if the expression is limited. (Find_Interface_Tag): Add code to handle class-wide types and entities from the limited-view. * rtsfind.ads: Add entries in RE_Id and RE_Unit_Table for Get_Entry_Index, Get_Prim_Op_Kind, POK_Function, POK_Procedure, POK_Protected_Entry, POK_Protected_Function, POK_Protected_Procedure, POK_Task_Entry, POK_Task_Procedure, Prim_Op_Kind, Set_Entry_Index, Set_Prim_Op_Kind. * sem_ch9.adb (Analyze_Triggering_Alternative): Check for legal type of procedure name or prefix that appears as a trigger in a triggering alternative. * uintp.ads: Introduce constants Uint_11 and Uint_13. From-SVN: r103850
* exp_ch4.adb (Expand_N_In): Replace test of expression in its own type by ↵Robert Dewar2005-09-052-43/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | valid test and generate warning. 2005-09-01 Robert Dewar <dewar@adacore.com> Gary Dismukes <dismukes@adacore.com> Javier Miranda <miranda@adacore.com> * exp_ch4.adb (Expand_N_In): Replace test of expression in its own type by valid test and generate warning. (Tagged_Membership): Generate call to the run-time subprogram IW_Membership in case of "Iface_CW_Typ in Typ'Class" Change formal name Subtype_Mark to Result_Definition in several calls to Make_Function_Specification. (Expand_Allocator_Expression): Add tests for suppression of the AI-344 check for proper accessibility of the operand of a class-wide allocator. The check can be left out if checks are suppressed or if the expression has a specific tagged type whose level is known to be safe. * exp_ch5.adb (Expand_N_Assignment_Statement): Simplify the code that generates the run-time check associated with null-excluding entities. (Expand_N_Return_Statement): Add tests to determine if the accessibility check on the level of the return expression of a class-wide function can be elided. The check usually isn't needed if the expression has a specific type (unless it's a conversion or a formal parameter). Also add a test for whether accessibility checks are suppressed. Augment the comments to describe the conditions for performing the check. From-SVN: r103849
* re PR ada/23646 (Ada testsuite hangs -- many new failures)Arnaud Charlet2005-09-0530-3050/+255
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR ada/23646 * s-mastop-tru64.adb, s-mastop-irix.adb, s-mastop-vms.adb (Enter_Handler, Set_Signal_Machine_State): Removed, no longer used. Remove reference to System.Exceptions. * s-mastop-x86.adb: Removed, no longer used. * s-traceb-mastop.adb: Adjust calls to Pop_Frame. * a-excach.adb: Minor reformatting. * a-except.ads, a-except.adb: Remove global Warnings (Off) pragma, and instead fix new warnings that were hidden by this change. (AAA, ZZZ): Removed, replaced by... (Code_Address_For_AAA, Code_Address_For_ZZZ): ... these functions, who are used instead of constants, to help make Ada.Exception truly preelaborate. (Rcheck_*, Raise_Constraint_Error, Raise_Program_Error, Raise_Storage_Error): File is now a System.Address, to simplify code. (Elab code): Removed, no longer used. (Null_Occurrence): Remove Warnings Off and make this construct preelaborate. Remove code related to front-end zero cost exception handling, since it is no longer used. Remove -gnatL/-gnatZ switches. * a-exexda.adb (Append_Info_Exception_Name, Set_Exception_C_Msg): Update use of Except.Msg. * gnat1drv.adb, inline.adb, bindgen.adb, debug.adb, exp_ch11.ads, freeze.adb, frontend.adb, lib.adb, exp_ch11.adb: Remove code related to front-end zero cost exception handling, since it is no longer used. Remove -gnatL/-gnatZ switches. * lib-writ.ads: Minor reformatting Remove doc of UX * Makefile.rtl: Remove references to s-except*, s-mastop-x86* * Make-lang.in: Remove references to s-except.ads * s-except.ads: Removed, no longer used. * s-mastop.ads, s-mastop.adb: (Enter_Handler, Set_Signal_Machine_State): Removed, no longer used. Remove reference to System.Exceptions. * raise.h, usage.adb, targparm.adb, targparm.ads, switch-m.adb, switch-b.adb: Remove code related to front-end zero cost exception handling, since it is no longer used. Remove -gnatL/-gnatZ switches. From-SVN: r103848
* a-calend-mingw.adb: Add call to OS_Primitives.Initialize;Arnaud Charlet2005-09-0581-1318/+854
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * a-calend-mingw.adb: Add call to OS_Primitives.Initialize; * s-taprop-mingw.adb, s-taprop-vms.adb, s-taprop-solaris.adb, s-taprop-os2.adb, s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-hpux-dce.adb, s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-lynxos.adb: Move with clauses outside Warnings Off now that dependent units are Preelaborate. (Initialize): Call Interrupt_Managemeent.Initialize and OS_Primitives.Initialize to ensure proper initialization of this unit. Remove use of System.Soft_Links Make this unit Preelaborate. * s-stache.ads, s-taspri-vxworks.ads, s-taspri-mingw.ads, s-taspri-vms.ads, s-tasinf-solaris.ads, s-taspri-os2.ads, s-taspri-lynxos.ads, s-taspri-hpux-dce.ads, s-taspri-tru64.ads, s-tasinf-tru64.ads, s-tasinf-irix.ads, s-tasinf-irix-athread.ads, s-proinf-irix-athread.adb, s-proinf-irix-athread.ads, s-tratas.ads, s-tasinf.ads: Minor reformatting. Add pragma Preelaborate, since these packages are suitable for this categorization. Update comments. * s-traent-vms.ads, s-intman-dummy.adb, s-taprop-dummy.adb: Make this unit Preelaborate. * s-osprim-vxworks.adb, s-osprim-vms.adb, s-osprim-vms.ads, s-osprim-mingw.adb, s-intman-vxworks.ads, s-intman-vxworks.adb, s-intman-vms.adb, s-intman-mingw.adb, s-intman-vms.ads, s-osprim-unix.adb, s-osprim-os2.adb, s-osprim-solaris.adb, s-intman-solaris.adb, s-intman-irix-athread.adb, s-intman-irix.adb: Mark this unit Preelaborate. (Initialize): New procedure. Update comments. * s-taspri-linux.ads: Removed. * s-tpopsp-solaris.adb (Initialize): Create the key in this procedure, as done by other implementations (e.g. posix). * s-taprop.ads (Timed_Delay): Update spec since the caller now is responsible for deferring abort. Mark this unit Preelaborate. * s-taprob.adb, s-tarest.adb: Call System.Tasking.Initialize to ensure proper initialization of the tasking run-time. * s-tasdeb.ads: Mark this unit Preelaborate. (Known_Tasks): Add explicit default value to avoid elaboration code. * s-inmaop-vms.adb (Elaboration code): Add call to Interrupt_Management.Initialize since the elaboration code depends on proper initialization of this package. * s-intman.ads, s-inmaop-posix.adb, s-intman-posix.adb, s-osprim.ads, s-taprop-posix.adb, s-taspri-posix.ads, s-osprim-posix.adb: Make this unit Preelaborate. * a-calend.adb: Add call to OS_Primitives.Initialize * a-elchha.adb: Update use of Except.Id.Full_Name. Minor reformatting. Remove use of Ada.Exceptions.Traceback when possible, cleaner. * a-dynpri.adb, a-sytaco.adb, a-sytaco.ads: Move with clauses outside Warnings Off now that dependent units are Preelaborate. Use raise xxx with "..."; Ada 2005 form. * a-taside.ads, a-taside.adb: Remove some dependencies, to make it easier to make this unit truly Preelaborate. Rewrite some code to be conformant with Preelaborate rules. * g-os_lib.adb: Remove non-preelaborate code so that this unit can be marked Preelaborate in the future. * s-proinf.ads, g-string.ads, s-auxdec.ads, s-auxdec-vms_64.ads: Make these units Preelaborate. * s-exctab.adb: Update use of Except.Id.Full_Name. * s-soflin.ads, s-soflin.adb: Mark this unit Preelaborate_05. (Set_Exc_Stack_Addr_Soft, Get_Exc_Stack_Addr_NT, Set_Exc_Stack_Addr_NT, Set_Exc_Stack_Addr): Removed, no longer used. Remove reference to *Machine_State_Addr*, no longer needed. * s-stalib.ads: Mark this unit as Preelaborate[_05]. (Exception_Data): Full_Name is now a System.Address so that this unit can be made Preelaborate. Clean up/simplify code thanks to Full_Name being a System.Address. Remove obsolete pragma Suppress (All_Checks), no longer needed. * s-taskin.ads, s-taskin.adb: Move with clauses outside Warnings Off now that dependent units are Preelaborate. Make this unit Preelaborate. (Initialize): New proceduure, replace elaboration code and makes the set up of the tasking run-time cleaner. (Detect_Blocking): Now a function instead of a deferred boolean, to obey Preelaborate rules. * s-tassta.adb (Finalize_Global_Tasks): Remove Get/Set_Exc_Stack_Addr soft links, no longer used. * s-traces.ads, s-traent.ads: Add pragma Preelaborate, since these packages are suitable for this categorization. * s-solita.adb: Replace use of Ada.Exception by raise xxx with "..." since we compile run-time sources in Ada 2005 mode. (Timed_Delay_T): Call Abort_Defer/Undefer around Timed_Delay, to avoid having s-taprop*.adb depend on s-soflin and to avoid code duplication. Remove reference to *Machine_State_Addr*, no longer needed. From-SVN: r103847
* Daily bump.GCC Administrator2005-09-051-1/+1
| | | | | | [[Split portion of a mixed commit.]] From-SVN: r103841.2
* re PR libfortran/23321 (Direct unformatted read beyond EOF cores)Thomas Koenig2005-09-042-0/+27
| | | | | | | | | | | | | | | 2005-09-04 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/23321 * io/transfer.c(data_transfer_init): Check for a too-large record number. Return if sseek failed. 2005-09-04 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/23321 * gfortran.dg/direct_io_4.f90: New test case. From-SVN: r103835
* re PR libobjc/23108 (alignment bug in libobjc/archive.c)Andrew Pinski2005-09-042-0/+31
| | | | | | | | | | | | | | | | | | | 2005-09-04 Andrew Pinski <pinskia@physics.uc.edu> Rasmus Hahn <rassahah@neofonie.de> PR libobjc/23108 * objc.dg/type-stream-1.m: New test. 2005-09-04 Andrew Pinski <pinskia@physics.uc.edu> Rasmus Hahn <rassahah@neofonie.de> PR libobjc/23108 * archive.c (objc_write_type): Correct the element offset. (objc_read_type): Likewise. Co-Authored-By: Rasmus Hahn <rassahah@neofonie.de> From-SVN: r103832
* re PR target/23721 (pt.c:9462: ICE: in change_address_1, at emit-rtl.c:1791)John David Anglin2005-09-042-1/+6
| | | | | | | PR target/23721 * pa.c (emit_move_sequence): Fix typo in last change. From-SVN: r103831
* be.po, [...]: Update.Joseph Myers2005-09-0414-22667/+11557
| | | | | | | * be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, rw.po, sv.po, tr.po, zh_CN.po: Update. From-SVN: r103825
* re PR fortran/23661 ('print fmt' is unclassifiable statement in gfortran)Tobias Schlüter2005-09-046-22/+70
| | | | | | | | | | | | | | fortran/ PR fortran/23661 * io.c (match_io): Correctly backup if PRINT followed by symbol which is not a namelist. Force blank between PRINT and namelist in free form. testsuite/ PR fortran/23661 * gfortran.dg/print_fmt_1.f90, gfortran.dg/print_fmt_2.f90 gfortran.dg/print_fmt_3.f90: New test. From-SVN: r103824
* Daily bump.GCC Administrator2005-09-041-1/+1
| | | | | | [[Split portion of a mixed commit.]] From-SVN: r103821.2
* read.c (read_x): Take int argument instead of fnode * and digging the N from ↵Jakub Jelinek2005-09-032-0/+16
| | | | | | | | | | | | | | F->u.n. * io/read.c (read_x): Take int argument instead of fnode * and digging the N from F->u.n. * io/io.h (read_x): Adjust prototype. * io/transfer.c (formatted_transfer): Adjust callers. Don't clobber f->u.n for FMT_T. * gfortran.dg/fmt_t_1.f90: New test. From-SVN: r103811
* re PR rtl-optimization/23454 (ICE in invert_exp_1, at jump.c:1719)Jakub Jelinek2005-09-034-3/+56
| | | | | | | | | | PR rtl-optimization/23454 * reorg.c (relax_delay_slots): Only call invert_jump if any_condjump_p is true. * g++.dg/opt/pr23454.C: New test. From-SVN: r103810
* re PR c++/23699 (rejects static int as non constant after "extern template")Mark Mitchell2005-09-031-10/+31
| | | | | | | | | | PR c++/23699 * decl2.c (mark_used): Always instantiate static data members initialized by constant expressions. * pt.c (instantiate_decl): Instantiate the initializers for static data members initialized by constant expressions. From-SVN: r103807
* re PR c++/23699 (rejects static int as non constant after "extern template")Mark Mitchell2005-09-036-19/+50
| | | | | | | | | | | | | | | | | | | | | PR c++/23699 * decl2.c (mark_used): Always instantiate static data members initialized by constant expressions. * pt.c (instantiate_decl): Instantiate the initializers for static data members initialized by constant expressions. PR c++/21687 * semantics.c (expand_or_defer_fn): Do not call ggc_collect when finishing processing for a template function in a local class. Revert: 2005-09-02 Mark Mitchell <mark@codesourcery.com> * parser.c (cp_parser_class_specifier): Push/pop GC contexts around functions in local classes. PR c++/23699 * g++.dg/ext/static1.C: New test. From-SVN: r103806
* re PR target/23671 (ICE in fixup_eh_region_note, at reload1.c:3808)Richard Henderson2005-09-032-11/+20
| | | | | | | | | | PR middle-end/23671 pa.c (emit_move_sequence): Use replace_equiv_address instead of gen_rtx_MEM. Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca> From-SVN: r103803
* Daily bump.GCC Administrator2005-09-031-1/+1
| | | | | | [[Split portion of a mixed commit.]] From-SVN: r103799.2
* frame-address.c (check_fa_mid): Avoid tail call to check_fa_work.Richard Henderson2005-09-022-1/+7
| | | | | | | * gcc.c-torture/execute/frame-address.c (check_fa_mid): Avoid tail call to check_fa_work. From-SVN: r103797
* Move from root of repository to intented place.Andreas Schwab2005-09-021-0/+27
| | | | From-SVN: r103796
* arm.c (arm_legitimize_address): Limit the value passed to bit_count to 32 bits.Nicolas Pitre2005-09-022-1/+6
| | | | | | | * config/arm/arm.c (arm_legitimize_address): Limit the value passed to bit_count to 32 bits. From-SVN: r103792
* re PR c++/21687 (ICE in GC with local class inside a template function)Mark Mitchell2005-09-024-6/+36
| | | | | | | | | | | PR c++/21687 * parser.c (cp_parser_class_specifier): Push/pop GC contexts around functions in local classes. PR c++/21687 * g++.dg/other/gc3.C: New test. From-SVN: r103791
* 20030711-1.c: Include stddef.h and stdio.h.Andrew Pinski2005-09-023-0/+9
| | | | | | | | | 2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> * gcc.dg/20030711-1.c: Include stddef.h and stdio.h. * gcc.dg/20050826-1.c: Likewise. From-SVN: r103789
* re PR c++/23167 (internal compiler error: in create_tmp_var)Mark Mitchell2005-09-024-1/+29
| | | | | | | | | | | PR c++/23167 * gimplify.c (gimplify_expr): Handle TREE_ADDRESSABLE types when generating synthetic loads from volatile lvalues. PR c++/23167 * g++.dg/expr/volatile1.C: New test. From-SVN: r103782
* stormy16-lib2.c (__popcounthi2, [...]): New functions.Nick Clifton2005-09-022-0/+54
| | | | | | | * config/stormy16/stormy16-lib2.c (__popcounthi2, __parityhi2, __ctzhi2, __clzhi2): New functions. From-SVN: r103779
* re PR middle-end/23547 ([non-unit-at-a-time] ICE with recursive call to ↵Andrew Pinski2005-09-024-10/+47
| | | | | | | | | | | | | | | | | | | | | | | | | nested function) 2005-09-02 Andrew Pinski <pinskia@physics.uc.edu> PR middle-end/23547 * tree-nested.c (struct var_map_elt): Mark with GTY. (struct nesting_info): Mark with GTY. Mark var_map's param is struct var_map_elt. (lookup_field_for_decl): Allocate new element in GC memory. (lookup_tramp_for_decl): Likewise. (convert_nl_goto_reference): Likewise (create_nesting_tree): Allocate info in GC memory. Likewise for info->var_map. (free_nesting_tree): Free with ggc_free instead of free. (root): New static variable. (lower_nested_functions): Remove root as local variable. And zero out root at the end of the function. 2005-09-02 Andrew Pinski <pinskia@physics.uc.edu> PR middle-end/23547 * gcc.dg/pr23547.c: New test. From-SVN: r103777
* re PR c/22061 (internal compiler error: in find_function_data, at ↵Richard Sandiford2005-09-025-0/+71
| | | | | | | | | | | | function.c:317) PR c/22061 * gcc.c-torture/execute/pr22061-1.c, * gcc.c-torture/execute/pr22061-2.c, * gcc.c-torture/execute/pr22061-3.c, * gcc.c-torture/execute/pr22061-4.c: New tests. From-SVN: r103772
* re PR rtl-optimization/20365 (simplify_plus_minus results are erratic)J"orn Rennecke2005-09-022-4/+22
| | | | | | | | | | PR rtl-optimization/20365 * simplify-rtx.c (simplify_plus_minus_op_data): Change type of neg to short. New member ix. (simplify_plus_minus_op_data_cmp): Break ties using ix member. (simplify_plus_minus): Initialize ix members before calling qsort. From-SVN: r103771
* re PR tree-optimization/23626 (ICE after cunrolling)Zdenek Dvorak2005-09-022-0/+9
| | | | | | | PR tree-optimization/23626 * tree-cfg.c (replace_uses_by): Clean up eh info. From-SVN: r103766
* m32c.c (m32c_valid_pointer_mode): Remove stray debug fprintf.DJ Delorie2005-09-012-1/+5
| | | | | | | * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug fprintf. From-SVN: r103761
* rs6000.c (setup_incoming_varargs): Set MEM_NOTRAP_P.David Edelsohn2005-09-012-7/+13
| | | | | | | | * config/rs6000/rs6000.c (setup_incoming_varargs): Set MEM_NOTRAP_P. (rs6000_split_multireg_move): Use replace_equiv_address instead of gen_rtx_MEM. From-SVN: r103760
* Wredundant-decls-2.c: New test to check that -Wredundant-decls does not ↵Craig Rodrigues2005-09-021-0/+6
| | | | | | | | | | issue warning for a variable... * gcc.dg/Wredundant-decls-2.c: New test to check that -Wredundant-decls does not issue warning for a variable definition following a declaration. From-SVN: r103759
* c-decl.c (diagnose_mismatched_decls): With -Wredundant-decls...Craig Rodrigues2005-09-022-1/+10
| | | | | | | | * c-decl.c (diagnose_mismatched_decls): With -Wredundant-decls, do not issue warning for a variable definition following a declaration. From-SVN: r103758
* re PR target/23668 (gcc.dg/i386-sse-11.c and gcc.target/i386/pr13366.c fail)Richard Henderson2005-09-012-0/+7
| | | | | | | | PR 23668 * config/i386/i386.c (ix86_expand_vector_init_one_var): Restore conversion to CONST_VECTOR. From-SVN: r103757
* Daily bump.GCC Administrator2005-09-021-1/+1
| | | | | | [[Split portion of a mixed commit.]] From-SVN: r103753.2
* re PR middle-end/23676 (ICE: "missing REG_EH_REGION note in the end of bb")Richard Henderson2005-09-013-1/+9
| | | | | | | | | PR 23676 * reload1.c (reload_as_needed): Check !CALL_P before calling fixup_eh_region_note. * rtlanal.c (may_trap_p): SUBREG by itself cannot trap. From-SVN: r103751
* varasm.c (output_constant): Let the target resolve conversions of addresses ↵DJ Delorie2005-09-012-1/+40
| | | | | | | | | to non-default pointer sizes. * varasm.c (output_constant): Let the target resolve conversions of addresses to non-default pointer sizes. From-SVN: r103750
* arm.c (arm_legitimize_address): Split absolute addresses to alow matching ↵Nicolas Pitre2005-09-012-4/+34
| | | | | | | | | | ARM pre-indexed addressing mode. * config/arm/arm.c (arm_legitimize_address): Split absolute addresses to alow matching ARM pre-indexed addressing mode. (arm_override_options): Remove now irrelevant comment. From-SVN: r103742
* config.gcc (i*86-wrs-vxworks): Update.Phil Edwards2005-09-016-55/+115
| | | | | | | | | | | | 2005-08-30 Phil Edwards <phil@codesourcery.com> * config.gcc (i*86-wrs-vxworks): Update. Split out vxworksae target. * config/i386/t-vxworks: Update multilibs for VxWorks 6 and RTP mode. * config/i386/vxworks.h: Likewise. * config/i386/t-vxworksae: New file, for VxWorks AE. * config/i386/vxworksae.h: Likewise. From-SVN: r103741
* re PR middle-end/23410 (FAIL: gcc.c-torture/execute/950612-1.c execution, at ↵Sebastian Pop2005-09-012-2/+19
| | | | | | | | | | -Os and -O3) PR tree-optimization/23410 * tree-ssa-loop-niter.c (scev_probably_wraps_p): Check that the sequence is not wrapping during the first step. From-SVN: r103733
* re PR debug/7241 (DWARF encoding for "char" incorrect in gcc)Jakub Jelinek2005-09-0114-9/+62
| | | | | | | | | | | | | | | | | | | | | PR debug/7241 * dwarf2out.c (base_type_die): Compare char_type_node with TYPE_MAIN_VARIANT (type), not type. * gcc.dg/debug/dwarf2/dwarf-char1.c: New test. * gcc.dg/debug/dwarf2/dwarf-char2.c: New test. * gcc.dg/debug/dwarf2/dwarf-char3.c: New test. * gcc.dg/debug/dwarf2/dwarf-die1.c: Fix a typo. * gcc.dg/debug/dwarf2/dwarf-die2.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-die3.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-die5.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-die6.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-die7.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-uninit.c: Likewise. * gcc.dg/debug/dwarf2/dwarf2-macro.c: Likewise. From-SVN: r103727
* re PR tree-optimization/15366 ([3.4 only][unit-at-a-time] ↵Richard Guenther2005-09-014-6/+31
| | | | | | | | | | | | | | | -fno-inline-functions is ignored for static functions) 2005-09-01 Richard Guenther <rguenther@suse.de> PR tree-optimization/15366 * common.opt: Add -finline-functions-called-once. Put -fearly-inlining in alphabetically ordered place. * doc/invoke.texi: Document new option. * ipa-inline.c (cgraph_decide_inlining): Honour flag_inline_functions_called_once. From-SVN: r103722
* re PR rtl-optimization/23478 (Miscompilation due to reloading of a var that ↵Jakub Jelinek2005-09-013-5/+36
| | | | | | | | | | | | | | | | | | | is also used in EH pad) PR rtl-optimization/23478 * local-alloc.c (struct qty): Add n_throwing_calls_crossed field. (alloc_qty): Initialize it. (update_equiv_regs): Clear REG_N_THROWING_CALLS_CROSSED. (combine_regs): Combine also n_throwing_calls_crossed fields. (find_free_reg): Don't attempt to caller-save pseudos crossing calls that might throw. * global.c (struct allocno): Add throwing_calls_crossed field. (global_alloc): Revert 2005-08-22 change. Initialize throwing_calls_crossed. (find_reg): Don't attempt to caller-save pseudos crossing calls that might throw. From-SVN: r103718
* re PR target/23649 (gcc.dg/ppc-and-1.c failure due to not using rlwinm)Alan Modra2005-09-016-130/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/23649 * config/rs6000/predicates.md (mask_operand): Only handle rlwinm masks. (mask64_operand): Reinstate code prior to 2005-06-11 change. (mask64_2_operand): Reinstate code prior to 2004-11-11 change. (and64_2_operand): Tweak to use predicate. (and_operand): Adjust for mask_operand changes. * config/rs6000/rs6000.c (num_insns_constant): Revert 2005-06-11. (print_operand): Likewise. (rs6000_rtx_costs): Pass mode to mask_operand and use mask64_operand. (mask64_1or2_operand): Delete. * rs6000/rs6000-protos.h (mask64_1or2_operand): Delete. * config/rs6000/rs6000.h (EXTRA_CONSTRAINT <S>): Revert 2005-06-11. (EXTRA_CONSTRAINT <T>): Pass operand mode to predicate. (EXTRA_CONSTRAINT <t>): Disallow mask64_operand matches. * config/rs6000/rs6000.md (andsi3_internal3 split): Revert 2005-06-11. (rotldi3_internal4): Likewise. (rotldi3_internal5, rotldi3_internal5 split): Likewise. (rotldi3_internal6, rotldi3_internal6 split): Likewise. (ashldi3_internal7): Likewise. (ashldi3_internal8, ashldi3_internal8 split): Likewise. (ashldi3_internal, ashldi3_internal9 split): Likewise. (anddi3 split): Don't match mask64_operand. (anddi3_internal2): Add rlwinm. Modify 't' splitter predicate. (anddi3_internal3): Add rlwinm. Use and64_2_operand in non-cr0 splitter and match TARGET_64BIT not TARGET_POWERPC64. Modify 't' splitter predicate. (movdi_internal64 + 2): Revert 2005-06-11 change. From-SVN: r103716
* m32c.c (m32c_valid_pointer_mode): New.DJ Delorie2005-08-312-0/+31
| | | | | | | * config/m32c/m32c.c (m32c_valid_pointer_mode): New. (m32c_asm_integer): Add support for 32 bit pointers. From-SVN: r103715
* emit-rtl.c (set_mem_attributes_minus_bitpos): Look through component-like ↵Richard Henderson2005-08-314-11/+43
| | | | | | | | | | | | references for setting MEM_NOTRAP_P. * emit-rtl.c (set_mem_attributes_minus_bitpos): Look through component-like references for setting MEM_NOTRAP_P. * config/i386/i386.c (ix86_setup_incoming_varargs): Set MEM_NOTRAP_P. * config/alpha/alpha.c (alpha_setup_incoming_varargs): Likewise. From-SVN: r103714
* re PR objc/23306 ([unit-at-a-time] objc exceptions (GNU runtime) don't work ↵Andrew Pinski2005-08-314-60/+26
| | | | | | | | | | | | | | | | | | | | with unit-at-a-time) 2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> PR objc/23306 * objc-act.c (generate_strings): Remove and move code to finish decl to ... (add_objc_string): here when creating a new string decl. (finish_objc): Don't call generate_strings. 2005-08-31 Andrew Pinski <pinskia@physics.uc.edu> PR objc/23306 * objc.dg/image-info.m: Remove "objc_module_info" check part of the scan-assmbler. From-SVN: r103713