Commit Graph

77149 Commits

Author SHA1 Message Date
Robert Dewar c064e06602 treepr.adb: Use new subtype N_Membership_Test
2006-10-31  Robert Dewar  <dewar@adacore.com>
	    Ed Schonberg  <schonberg@adacore.com>

	* treepr.adb: Use new subtype N_Membership_Test

        * checks.ads, checks.adb: Add definition for Validity_Check
        (Range_Or_Validity_Checks_Suppressed): New function
        (Ensure_Valid): Test Validity_Check suppressed
        (Insert_Valid_Check): Test Validity_Check suppressed
        (Insert_Valid_Check): Preserve Do_Range_Check flag
	(Validity_Check_Range): New procedure
	(Expr_Known_Valid): Result of membership test is always valid
	(Selected_Range_Checks): Range checks cannot be applied to discriminants
	by themselves. Disabling those checks must also be done for task types,
	where discriminants may be used for the bounds of entry families.
	(Apply_Address_Clause_Check): Remove side-effects if address expression
	is non-static and is not the name of a declared constant.
	(Null_Exclusion_Static_Checks): Extend to handle Function_Specification.
	Code cleanup and new error messages.
	(Enable_Range_Check): Test for some cases of suppressed checks
	(Generate_Index_Checks): Suppress index checks if index checks are
	suppressed for array object or array type.
	(Apply_Selected_Length_Checks): Give warning for compile-time detected
	length check failure, even if checks are off.
	(Ensure_Valid): Do not generate a check on an indexed component whose
	prefix is a packed boolean array.
	* checks.adb: (Alignment_Checks_Suppressed): New function
	(Apply_Address_Clause_Check): New procedure, this is a completely
	rewritten replacement for Apply_Alignment_Check
	(Get_E_Length/Get_E_First_Or_Last): Add missing barrier to ensure that
	we request a discriminal value only in case of discriminants.
	(Apply_Discriminant_Check): For Ada_05, only call Get_Actual_Subtype for
	assignments where the target subtype is unconstrained and the target
	object is a parameter or dereference (other aliased cases are known
	to be unconstrained).

From-SVN: r118248
2006-10-31 18:51:20 +01:00
Jose Ruiz ff9625b0fa cal.c: Use the header sys/time.h for VxWorks 6.2 or greater when using RTPs.
2006-10-31  Jose Ruiz  <ruiz@adacore.com>

	* cal.c: Use the header sys/time.h for VxWorks 6.2 or greater when
	using RTPs.

	* mkdir.c: Use a different version of mkdir for VxWorks 6.2 or greater
	when using RTPs.

From-SVN: r118247
2006-10-31 18:51:01 +01:00
Robert Dewar db89aef26f bindusg.ads, [...]: Change to package and rename procedure as Display...
2006-10-31  Robert Dewar  <dewar@adacore.com>

	* bindusg.ads, bindusg.adb:
	Change to package and rename procedure as Display, which
	now ensures that it only outputs usage information once.

From-SVN: r118246
2006-10-31 18:50:47 +01:00
Robert Dewar bd8b9b1eae binde.adb (Better_Choice, [...]): Implement new preferences.
2006-10-31  Robert Dewar  <dewar@adacore.com>

	* binde.adb (Better_Choice, Worse_Choice): Implement new preferences.

From-SVN: r118245
2006-10-31 18:50:31 +01:00
Javier Miranda bfef8d0d62 a-tags.ads, a-tags.adb:
2006-10-31  Javier Miranda  <miranda@adacore.com>

	* a-tags.ads, a-tags.adb: 
	(Predefined_DT): New function that improves readability of the code.
	(Get_Predefined_Prim_Op_Address, Set_Predefined_Prim_Op_Address,
	Inherit_DT): Use the new function Predefined_DT to improve code
	readability.
	(Register_Interface_Tag): Update assertion.
	(Set_Interface_Table): Update assertion.
	(Interface_Ancestor_Tags): New subprogram required to implement AI-405:
	determining progenitor interfaces in Tags.
	(Inherit_CPP_DT): New subprogram.

        * exp_disp.adb (Expand_Interface_Thunk): Suppress checks during the
	analysis of the thunk code.
        (Expand_Interface_Conversion): Handle run-time conversion of
        access to class wide types.
	(Expand_Dispatching_Call): When generating the profile for the
	subprogram itype for a dispatching operation, properly terminate the
	formal parameters chaind list (set the Next_Entity of the last formal
	to Empty).
	(Collect_All_Interfaces): Removed. This routine has been moved to
	sem_util and renamed as Collect_All_Abstract_Interfaces.
	(Set_All_DT_Position): Hidden entities associated with abstract
	interface primitives are not taken into account in the check for
	3.9.3(10); this check is done with the aliased entity.
	(Make_DT, Set_All_DT_Position): Enable full ABI compatibility for
	interfacing with CPP by default.
	(Expand_Interface_Conversion): Add missing support for static conversion
	from an interface to a tagged type.
	(Collect_All_Interfaces): Add new out formal containing the list of
	abstract interface types to cleanup the subprogram Make_DT.
	(Make_DT): Update the code to generate the table of interfaces in case
	of abstract interface types.
	(Is_Predefined_Dispatching_Alias): New function that returns true if
	a primitive is not a predefined dispatching primitive but it is an
	alias of a predefined dispatching primitive.
	(Make_DT): If the ancestor of the type is a CPP_Class and we are
	compiling under full ABI compatibility mode we avoid the generation of
	calls to run-time services that fill the dispatch tables because under
	this mode we currently inherit the dispatch tables in the IP subprogram.
	(Write_DT): Emit an "is null" indication for a null procedure primitive.
	(Expand_Interface_Conversion): Use an address as the type of the formal
	of the internally built function that handles the case in which the
	target type is an access type.

From-SVN: r118244
2006-10-31 18:50:11 +01:00
Robert Dewar 3cb8344bd3 a-dispat.ads, [...]: New files.
2006-10-31  Robert Dewar  <dewar@adacore.com>
	    Jose Ruiz  <ruiz@adacore.com>

	* a-dispat.ads, a-diroro.ads, a-diroro.adb: New files.

	* ali.adb (Get_Name): Properly handle scanning of wide character names
	encoded with brackets notation.
	(Known_ALI_Lines): Add S lines to this list.
	(Scan_ALI): Acquire S (priority specific dispatching) lines.
	New flag Elaborate_All_Desirable in unit table

	* ali.ads (Priority_Specific_Dispatching): Add this range of
	identifiers to be used for Priority_Specific_Dispatching table entries.
	(ALIs_Record): Add First_Specific_Dispatching and
	Last_Specific_Dispatching that point to the first and last entries
	respectively in the priority specific dispatching table for this unit.
	(Specific_Dispatching): Add this table for storing each S (priority
	specific dispatching) line encountered in the input ALI file.
	New flag Elaborate_All_Desirable in unit table

	* bcheck.adb: (Check_Configuration_Consistency): Add call to
	Check_Consistent_Dispatching_Policy.
	(Check_Consistent_Dispatching_Policy): Add this procedure in charge of
	verifying that the use of Priority_Specific_Dispatching,
	Task_Dispatching_Policy, and Locking_Policy is consistent across the
	partition.

	* bindgen.adb: (Public_Version_Warning): function removed.
	(Set_PSD_Pragma_Table): Add this procedure in charge of getting the
	required information from ALI files in order to initialize the table
	containing the specific dispatching policy.
	(Gen_Adainit_Ada): Generate the variables required for priority specific
	dispatching entries (__gl_priority_specific_dispatching and
	__gl_num_specific_dispatching).
	(Gen_Adainit_C): Generate the variables required for priority specific
	dispatching entries (__gl_priority_specific_dispatching and
	__gl_num_specific_dispatching).
	(Gen_Output_File): Acquire settings for Priority_Specific_Dispatching
	pragma entries.
	(Gen_Restrictions_String_1, Gen_Restrictions_String_2): Removed.
	(Gen_Restrictions_Ada, Gen_Restrictions_C, Set_Boolean): New procedures.
	(Tab_To): Removed.
	(Gen_Output_File_Ada/_C): Set directly __gl_xxx variables instead of
	a call to gnat_set_globals.
	Generate a string containing settings from
	Priority_Specific_Dispatching pragma entries.
	(Gen_Object_Files_Options): Do not include the runtime libraries when
	pragma No_Run_Time is specified.

	* init.c (__gnat_install_handler, case FreeBSD): Use SA_SIGINFO, for
	consistency with s-intman-posix.adb.
	(__gnat_error_handler, case FreeBSD): Account for the fact that the
	handler is installed with SA_SIGINFO.
	(__gnat_adjust_context_for_raise, FreeBSD case): New function for
	FreeBSD ZCX support, copied from Linux version.
	Add MaRTE-specific definitions for the linux target. Redefine sigaction,
	sigfillset, and sigemptyset so the routines defined by MaRTE.
	(__gl_priority_specific_dispatching): Add this variable that stores the
	string containing priority specific dispatching policies in the
	partition.
	(__gl_num_specific_dispatching): Add this variable that indicates the
	highest priority for which a priority specific dispatching pragma
	applies.
	(__gnat_get_specific_dispatching): Add this routine that returns the
	priority specific dispatching policy, as set by a
	Priority_Specific_Dispatching pragma appearing anywhere in the current
	partition. The input argument is the priority number, and the result
	is the upper case first character of the policy name.
	(__gnat_set_globals): Now a dummy function.
	(__gnat_handle_vms_condition): Feed adjust_context_for_raise with
	mechargs instead of sigargs, as the latter can be retrieved from the
	former and sigargs is not what we want on ia64.
	(__gnat_adjust_context_for_raise, alpha-vms): Fetch sigargs from the
	mechargs argument.
	(__gnat_adjust_context_for_raise, ia64-vms): New function.
	(tasking_error): Remove unused symbol.
	(_abort_signal): Move this symbol to the IRIX specific part since this
	is the only target that uses this definition.
	(Check_Abort_Status): Move this symbol to the IRIX specific part since
	this is the only target that uses this definition.
	(Lock_Task): Remove unused symbol.
	(Unlock_Task): Remove unused symbol.

	* lib-writ.adb (Write_ALI): Output new S lines for
	Priority_Specific_Dispatching pragmas.
	Implement new flag BD for elaborate body desirable

	* lib-writ.ads: Document S lines for Priority Specific Dispatching.
	(Specific_Dispatching): Add this table for storing the entries
	corresponding to Priority_Specific_Dispatching pragmas.
	Document new BD flag for elaborate body desirable

	* par-prag.adb (Prag): Add Priority_Specific_Dispatching to the list
	of known pragmas.

From-SVN: r118243
2006-10-31 18:49:53 +01:00
Robert Dewar 9b832db55c lib.adb, lib.ads: (In_Predefined_Unit): New functions
2006-10-31  Robert Dewar  <dewar@adacore.com>

	* lib.adb, lib.ads: (In_Predefined_Unit): New functions

	* a-finali.ads, a-ngcoty.ads, a-strbou.ads, a-stream.ads, a-strmap.ads, 
	a-strunb.ads, a-stwibo.ads, a-stwima.ads, a-stwiun.ads, a-taside.ads, 
	a-coorse.ads, a-convec.ads, a-coinve.ads, a-cohama.ads, a-ciorse.ads, 
	a-cihama.ads, a-cihase.ads, a-cohase.ads, a-ciorma.ads, a-coorma.ads, 
	a-ciormu.ads, a-coormu.ads, a-stzbou.ads, a-stzmap.ads, a-stzunb.ads, 
	a-except-2005.ads: Add pragma Preelaborable_Warning

From-SVN: r118242
2006-10-31 18:49:05 +01:00
Bob Duff 498a5a8414 a-filico.adb (Finalize(List_Controller)): Mark the finalization list as finalization-started...
2006-10-31  Bob Duff  <duff@adacore.com>

	* a-filico.adb (Finalize(List_Controller)): Mark the finalization list
	as finalization-started, so we can raise Program_Error on 'new'.

	* s-finimp.adb: Raise Program_Error on 'new' if finalization of the
	collection has already started.

	* s-finimp.ads (Collection_Finalization_Started): Added new special
	flag value for indicating that a collection's finalization has started.

	* s-tassta.adb (Create_Task): Raise Program_Error on an attempt to
	create a task whose master has already waited for dependent tasks.

From-SVN: r118241
2006-10-31 18:48:46 +01:00
Pascal Obry 18f2228492 adaint.c (__gnat_get_libraries_from_registry): Call explicitly the ASCII version of the registry API.
2006-10-31  Pascal Obry  <obry@adacore.com>
	    Eric Botcazou  <ebotcazou@adacore.com>
	    Vincent Celier  <celier@adacore.com>

	* adaint.c (__gnat_get_libraries_from_registry): Call explicitly the
	ASCII version of the registry API. This is needed as the GNAT runtime
	is now UNICODE by default.
	Include version.h.
	(get_gcc_version): Do not hardcode the return value.
	(__gnat_file_time_name): On Windows properly set the default returned
	value to -1 which corresponds to Invalid_Time.
	(__gnat_fopen): New routine. A simple wrapper on all plateforms
	 except on Windows where it does conversion for unicode support.
	(__gnat_freopen): Idem.
	(__gnat_locate_exec_on_path): If environment variable PATH does not
	exist, return a NULL pointer

	* adaint.h: (__gnat_fopen): Declare.
	(__gnat_freopen): Likewise.

	* mingw32.h (_tfreopen): Define this macro here for older MingW
	version.
	Activate the unicode support on platforms using a MingW runtime
	version 3.9 or newer.

	* s-crtl.ads (fopen): Is now an import to the wrapper __gnat_freopen.
	This is needed for proper unicode support on Windows.
	(freopen): Idem.

From-SVN: r118240
2006-10-31 18:47:20 +01:00
Jose Ruiz d1fa78e300 s-osinte-vxworks.ads, [...]:
2006-10-31  Jose Ruiz  <ruiz@adacore.com>

	* s-osinte-vxworks.ads, s-osinte-vxworks.adb: 
	(getpid): New body for this function that uses the underlying taskIdSelf
	function for VxWorks 5 and VxWorks 6 in kernel mode.
	(unsigned_int): New type, modular to allow logical bit operations.
	(taskOptionsGet): New imported function.

	* s-taspri-vxworks.ads (Private_Data): Change the type for the LWP
	field to be compliant with the type used by the corresponding operating
	system primitive.

From-SVN: r118239
2006-10-31 18:47:01 +01:00
Eric Botcazou 8dbb621ea2 s-taprop-solaris.adb: (Time_Slice_Val): Change type to Integer.
2006-10-31  Eric Botcazou  <ebotcazou@adacore.com>

	* s-taprop-solaris.adb: (Time_Slice_Val): Change type to Integer.
	(Initialize): Add type conversions required by above change.

From-SVN: r118238
2006-10-31 18:46:26 +01:00
Vincent Celier f95969eabc mlib-tgt-lynxos.adb, [...]: Use Append_To, instead of Ext_To, when building the library file name
2006-10-31  Vincent Celier  <celier@adacore.com>
	    Eric Botcazou  <ebotcazou@adacore.com>

	* mlib-tgt-lynxos.adb, mlib-tgt-mingw.adb, mlib-tgt-tru64.adb,
	mlib-tgt-aix.adb, mlib-tgt-irix.adb, mlib-tgt-hpux.adb,
	mlib-tgt-linux.adb, mlib-tgt-solaris.adb: Use Append_To, instead of
	Ext_To, when building the library file name

	* mlib-tgt-vxworks.adb: ditto.
	(Get_Target_Suffix): Add support for x86 targets.

	* mlib-fil.ads, mlib-fil.adb: (Append_To): New function

	* mlib-tgt-darwin.adb: 
	Use Append_To, instead of Ext_To, when building the library file name
	(Flat_Namespace): New global variable.
	(No_Shared_Libgcc_Switch): Rename to No_Shared_Libgcc_Options.
	(Shared_Libgcc_Switch): Rename to With_Shared_Libgcc_Options.
	(Link_Shared_Libgcc): Delete.
	(Build_Dynamic_Library): Adjust for above changes.
	Use Opt package.
	(Build_Dynamic_Library): Pass -shared-libgcc if GCC 4 or later.

From-SVN: r118237
2006-10-31 18:45:59 +01:00
Robert Dewar f28ded01c6 system-vms_64.ads, [...]: Add pragma Warnings(Off...
2006-10-31  Robert Dewar  <dewar@adacore.com>

	* system-vms_64.ads, system-darwin-ppc.ads, system-vxworks-x86.ads, 
	system-linux-hppa.ads, system-hpux-ia64.ads, 
	system-lynxos-ppc.ads, system-lynxos-x86.ads, system-tru64.ads, 
	system-vxworks-sparcv9.ads, system-solaris-x86.ads, 
	system-irix-o32.ads, system-irix-n32.ads, system-hpux.ads, 
	system-vxworks-m68k.ads, system-vxworks-mips.ads, system-interix.ads, 
	system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads, 
	system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads, 
	system-vxworks-alpha.ads, system.ads: Add pragma Warnings(Off,
	Default_Bit_Order) to kill constant condition warnings for references
	to this switch.

From-SVN: r118236
2006-10-31 18:45:31 +01:00
Arnaud Charlet ec946d1845 s-osinte-posix.adb, [...] (To_Target_Priority): New function maps from System.Any_Priority to a POSIX priority on the target.
2006-10-31  Arnaud Charlet  <charlet@adacore.com>
	    Jose Ruiz  <ruiz@adacore.com>

	* s-osinte-posix.adb, s-osinte-linux.ads, s-osinte-freebsd.adb, 
	s-osinte-freebsd.ads, s-osinte-solaris-posix.ads, s-osinte-hpux.ads, 
	s-osinte-darwin.adb, s-osinte-darwin.ads, s-osinte-lynxos-3.ads,
	s-osinte-lynxos-3.adb (To_Target_Priority): New function maps from
	System.Any_Priority to a POSIX priority on the target.

	* system-linux-ia64.ads: 
	Extend range of Priority types on Linux to use the whole range made
	available by the system.

	* s-osinte-aix.adb, s-osinte-aix.ads (To_Target_Priority): New
	function maps from System.Any_Priority to a POSIX priority on the
	target.
	(PTHREAD_PRIO_PROTECT): Set real value.
	(PTHREAD_PRIO_INHERIT): Now a function.
	(SIGCPUFAIL): New signal.
	(Reserved): Add SIGALRM1, SIGWAITING, SIGCPUFAIL, since these signals
	are documented as reserved by the OS.

	* system-aix.ads: Use the full range of priorities provided by the
	system on AIX.

	* s-taprop-posix.adb: Call new function To_Target_Priority.
	(Set_Priority): Take into account Task_Dispatching_Policy and
	Priority_Specific_Dispatching pragmas when determining if Round Robin
	must be used for scheduling the task.

	* system-linux-x86_64.ads, system-linux-x86.ads, 
	system-linux-ppc.ads: Extend range of Priority types on Linux to use
	the whole range made available by the system.

	* s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-irix.adb, 
	s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-hpux-dce.adb, 
	s-taprop-lynxos.adb (Finalize_TCB): invalidate the stack-check cache
	when deallocating the TCB in order to avoid potential references to
	deallocated data.
	(Set_Priority): Take into account Task_Dispatching_Policy and
	Priority_Specific_Dispatching pragmas when determining if Round Robin
	or FIFO within priorities must be used for scheduling the task.

	* s-taprop-vxworks.adb (Enter_Task): Store the user-level task id in
	the Thread field (to be used internally by the run-time system) and the
	kernel-level task id in the LWP field (to be used by the debugger).
	(Create_Task): Reorganize to unify the calls to taskSpawn into a single
	instance, and propagate the current task options to the spawned task.
	(Set_Priority): Take into account Priority_Specific_Dispatching pragmas.
	(Initialize): Set Round Robin dispatching when the corresponding pragma
	is in effect.

From-SVN: r118235
2006-10-31 18:45:11 +01:00
Hristian Kirtchev 6e451134f0 a-calend-vms.adb (Leap_Sec_Ops): Temp body for package in private part of Ada.Calendar...
2006-10-31  Hristian Kirtchev  <kirtchev@adacore.com>
	    Jose Ruiz  <ruiz@adacore.com>

	* a-calend-vms.adb (Leap_Sec_Ops): Temp body for package in private
	part of Ada.Calendar: all subprogram raise Unimplemented.
	(Split_W_Offset): Temp function body, raising Unimplemented

	* a-calend.ads, a-calend-vms.ads: 
	Add imported variable Invalid_TZ_Offset used to designate targets unable
	to support time zones.
	(Unimplemented): Temporary function raised by the body of new
	subprograms below.
	(Leap_Sec_Ops): New package in the private part of Ada.Calendar. This
	unit provides handling of leap seconds and is used by the new Ada 2005
	packages Ada.Calendar.Arithmetic and Ada.Calendar.Formatting.
	(Split_W_Offset): Identical spec to that of Ada.Calendar.Split. This
	version returns an extra value which is the offset to UTC.

	* a-calend.adb (Split_W_Offset): Add call to localtime_tzoff.
	(Leap_Sec_Ops): New body for package in private part of Ada.Calendar.
	(Split_W_Offset): New function body.
	(Time_Of): When a date is close to UNIX epoch, compute the time for
	that date plus one day (that amount is later substracted after
	executing mktime) so there are no problems with time zone adjustments.

	* a-calend-mingw.adb: Remove Windows specific version no longer needed.

	* a-calari.ads, a-calari.adb, a-calfor.ads, a-calfor.adb,
	a-catizo.ads, a-catizo.adb: New files.

        * impunit.adb: Add new Ada 2005 entries

	* sysdep.c: Add external variable __gnat_invalid_tz_offset.
	Rename all occurences of "__gnat_localtime_r" to
	"__gnat_localtime_tzoff".
	(__gnat_localtime_tzoff for Windows): Add logic to retrieve the time
	zone data and calculate the GMT offset.
	(__gnat_localtime_tzoff for Darwin, Free BSD, Linux, Lynx and Tru64):
	Use the field "tm_gmtoff" to extract the GMT offset.
	(__gnat_localtime_tzoff for AIX, HPUX, SGI Irix and Sun Solaris): Use
	the external variable "timezone" to calculate the GMT offset.

From-SVN: r118234
2006-10-31 18:44:55 +01:00
Thomas Quinot 014c9caac5 g-socthi-vxworks.adb (C_Gethostbyname): Fix wrong test for returned error status.
2006-10-31  Thomas Quinot  <quinot@adacore.com>

	* g-socthi-vxworks.adb (C_Gethostbyname): Fix wrong test for returned
	error status.

From-SVN: r118233
2006-10-31 18:44:38 +01:00
Robert Dewar aa1806136c sem_res.adb (Resolve_Unary_Op): Add warning for use of unary minus with multiplying operator.
2006-10-31  Robert Dewar  <dewar@adacore.com>
	    Bob Duff  <duff@adacore.com>
	    Ed Schonberg  <schonberg@adacore.com>

        * sem_res.adb (Resolve_Unary_Op): Add warning for use of unary minus
	with multiplying operator.
	(Expected_Type_Is_Any_Real): New function to determine from the Parent
	pointer whether the context expects "any real type".
	(Resolve_Arithmetic_Op): Do not give an error on calls to the
	universal_fixed "*" and "/" operators when they are used in a context
	that expects any real type. Also set the type of the node to
	Universal_Real in this case, because downstream processing requires it
	(mainly static expression evaluation).
	Reword some continuation messages
	Add some \\ sequences to continuation messages
	(Resolve_Call): Refine infinite recursion case. The test has been
	sharpened to eliminate some false positives.
	Check for Current_Task usage now includes entry barrier, and is now a
	warning, not an error.
	(Resolve): If the call is ambiguous, indicate whether an interpretation
	is an inherited operation.
	(Check_Aggr): When resolving aggregates, skip associations with a box,
	which are priori correct, and will be replaced by an actual default
	expression in the course of expansion.
	(Resolve_Type_Conversion): Add missing support for conversion from
	a class-wide interface to a tagged type. Minor code cleanup.
	(Valid_Tagged_Converion): Add support for abstact interface type
	conversions.
	(Resolve_Selected_Component): Call Generate_Reference here rather than
	during analysis, and use May_Be_Lvalue to distinguish read/write.
	(Valid_Array_Conversion): New procedure, abstracted from
	Valid_Conversion, to incorporate accessibility checks for arrays of
	anonymous access types.
	(Valid_Conversion): For a conversion to a numeric type occurring in an
	instance or inlined body, no need to check that the operand type is
	numeric, since this has been checked during analysis of the template.
	Remove legacy test for scope name Unchecked_Conversion.

	* sem_res.ads: Minor reformatting

	* a-except.adb, a-except-2005.adb: Turn off subprogram ordering
	(PE_Current_Task_In_Entry_Body): New exception code
	(SE_Restriction_Violation): Removed, not used

	* a-except.ads:  Update comments.

	* types.h, types.ads: Add definition for Validity_Check
	(PE_Current_Task_In_Entry_Body): New exception code
	(SE_Restriction_Violation): Removed, not used

From-SVN: r118232
2006-10-31 18:44:22 +01:00
Robert Dewar 524c02d73c a-taster.adb, [...]: Minor reformatting.
2006-10-31  Robert Dewar  <dewar@adacore.com>

	* a-taster.adb, s-traent-vms.adb, a-elchha.ads, a-elchha.adb,
	a-exctra.adb, ali-util.adb, exp_disp.ads, s-stalib.ads, s-traent.adb,
	s-addope.ads, s-addope.adb, a-rbtgso.adb, a-crbltr.ads, a-coprnu.adb,
	a-cgcaso.adb, a-cgarso.adb, a-cgaaso.adb, a-coormu.adb, a-ciormu.adb,
	a-rbtgso.ads, a-stunha.adb, a-stunha.adb, a-ciorma.adb, a-coorma.adb,
	a-secain.adb, a-slcain.adb, a-shcain.adb, a-stwiha.adb, a-stwiha.adb,
	a-strhas.adb, a-strhas.adb, a-stzhas.adb, a-stzhas.adb, a-szuzha.adb,
	a-chacon.adb, a-chacon.adb, a-chacon.ads, a-stboha.adb, a-swbwha.adb,
	a-szbzha.adb: Minor reformatting. Fix header.

	* a-numaux-x86.adb: Add parentheses for use of unary minus
	* a-ngcefu.adb: Supply missing parentheses for unary minus
	* a-ngcoty.adb: Add parens for use of unary minus
	* a-ngelfu.adb: Add missing parens for unary minus
	* a-tifiio.adb: Add parentheses for uses of unary minus

From-SVN: r118231
2006-10-31 18:43:17 +01:00
Stephen M. Webb 7aa4228568 MAINTAINERS (Write After Approval): Add myself.
From-SVN: r118230
2006-10-31 17:04:32 +00:00
Richard Guenther 1d08f95566 i386.md (asindf2, [...]): Conditionalize expansion on !optimize_size.
2006-10-31  Richard Guenther  <rguenther@suse.de>

	* config/i386/i386.md (asindf2, asinsf2, asinxf2, acosdf2,
	acossf2, acosxf2, log1psf2, log1pdf2, log1pxf2, ilogbsi2,
	expsf2, expdf2, expxf2, exp10sf2, exp10df2, exp10xf2,
	exp2sf2, exp2df2, exp2xf2, expm1df2, expm1sf2, expm1xf2,
	ldexpdf3, ldexpsf3, ldexpxf3, rintxf2, rintdf2, rintsf2,
	lround<mode>di2, lround<mode>si2, floorxf2, floordf2, floorsf2,
	lfloor<mode>di2, lfloor<mode>si2, ceilxf2, ceildf2, ceilsf2,
	btruncxf2, btruncdf2, btruncsf2): Conditionalize expansion on
	!optimize_size.

From-SVN: r118221
2006-10-31 09:08:11 +00:00
Paul Thomas dd5797cc36 re PR fortran/29387 (ICE on character array function of variable length)
2006-10-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29387
	* trans-intrinsic.c (gfc_conv_intrinsic_len): Rearrange to have
	a specific case for EXPR_VARIABLE and, in default, build an ss
	to call gfc_conv_expr_descriptor for array expressions..

	PR fortran/29490
	* trans-expr.c (gfc_set_interface_mapping_bounds): In the case
	that GFC_TYPE_ARRAY_LBOUND is not available, use descriptor
	values for it and GFC_TYPE_ARRAY_UBOUND.

	PR fortran/29641
	* trans-types.c (gfc_get_derived_type): If the derived type
	namespace has neither a parent nor a proc_name, set NULL for
	the search namespace.


2006-10-31  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29387
	* gfortran.dg/intrinsic_actual_2.f90: New test.

	PR fortran/29490
	* gfortran.dg/actual_array_interface_1.f90: New test.

	PR fortran/29641
	* gfortran.dg/used_types_11.f90: New test.

From-SVN: r118220
2006-10-31 06:03:24 +00:00
Steven Bosscher e5c18c3c29 * opts.c (decode_options): Disable CSE skip blocks.
From-SVN: r118219
2006-10-31 05:31:53 +00:00
GCC Administrator e4a6b83503 Daily bump.
From-SVN: r118215
2006-10-31 00:17:51 +00:00
Dirk Mueller f88d05c05f * decl.c (grokdeclarator): Fix line-wrapping.
From-SVN: r118210
2006-10-30 23:56:15 +00:00
Dirk Mueller 32b1d579ae fix typo
From-SVN: r118209
2006-10-30 23:41:07 +00:00
Dirk Mueller ebbc3ce18e re PR c++/28704 (%s substituted with "static member"/"free" can't be properly translated)
2006-10-30  Dirk Mueller  <dmueller@suse.de>

       PR c++/28704
       * decl.c (grokdeclarator): Duplicate diagnostic message
       for easier translation.

From-SVN: r118208
2006-10-30 23:32:29 +00:00
Paolo Carlini 8975fa18ad utility (tuple_size<std::pair<> >::value): Provide definition.
2006-10-30  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/utility (tuple_size<std::pair<> >::value): Provide
	definition.

From-SVN: r118207
2006-10-30 23:23:44 +00:00
Dirk Mueller a1e45ff04c re PR c++/6321 (no warning for bad main function declaration)
2006-10-30  Dirk Mueller  <dmueller@suse.de>

        PR c++/6321
        * cp/decl.c (grokfndecl): Use check_main_parameter_types.

        * c-common.h (strict_aliasing_warning): Fix whitespace.
        * c-decl (start_function): Move code for main decl warning ..
        * c-common.c (check_main_parameter_types): .. here.
        * c-common.h (check_main_parameter_types): Declare.

From-SVN: r118206
2006-10-30 23:15:42 +00:00
Dirk Mueller e7c41c9948 re PR c++/28669 (%s substituted with static/non- can't be properly translated)
2006-10-30  Dirk Mueller  <dmueller@suse.de>

       PR c++/28669
       * decl.c (grokfndecl): Duplicate warning message for
       easier translation.

From-SVN: r118205
2006-10-30 23:08:59 +00:00
Dirk Mueller 95220fdfba eichin01a.C (main): Fix prototype.
2006-10-30  Dirk Mueller  <dmueller@suse.de>

       * g++.old-deja/g++.pt/eichin01a.C (main): Fix prototype.
       * g++.old-deja/g++.pt/eichin01b.C (main): Same.
       * g++.old-deja/g++.pt/eichin01.C (main): Same.
       * g++.old-deja/g++.mike/net25.C (main): Same.
       * g++.dg/lookup/exception1.C (main): Same.
       * g++.dg/parse/parens2.C (main): Same.

From-SVN: r118204
2006-10-30 22:25:07 +00:00
Paolo Carlini c8bf5b7c54 tuple_iterate.h (tuple_size<tuple<> >::value): Provide definition.
2006-10-30  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/tuple_iterate.h (tuple_size<tuple<> >::value): Provide
	definition.
	* include/tr1/functional (is_bind_expression<>::value,
	is_placeholder<>::value, + various partial specializations): Likewise.
	* include/tr1/array (tuple_size<array<> >::value): Likewise.

From-SVN: r118203
2006-10-30 22:22:38 +00:00
Roger Sayle 771e6d83c9 pr27827.c: Explicitly specify -mfpmath=387.
* gcc.target/i386/pr27827.c: Explicitly specify -mfpmath=387.

From-SVN: r118201
2006-10-30 21:31:19 +00:00
Kaveh R. Ghazi 61fb309f70 re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
	* builtins.c (fold_builtin_1): Evaluate tgamma using MPFR.

testsuite:
	* gcc.dg/torture/builtin-math-2.c: Add tgamma tests.
	* gcc.dg/torture/builtin-math-3.c: Likewise.

From-SVN: r118200
2006-10-30 20:21:59 +00:00
Pete Steinmetz ff81aa23e5 recog.c (store_data_bypass_p): Add support to allow IN_INSN to be a PARALLEL containing sets.
* recog.c (store_data_bypass_p): Add support to allow IN_INSN to
	be a PARALLEL containing sets.  Return false when out_pat is not
	a PARALLEL insn.

From-SVN: r118199
2006-10-30 13:43:55 -06:00
Uros Bizjak 779958a200 MAINTAINERS: Change email address.
* MAINTAINERS: Change email address.

From-SVN: r118198
2006-10-30 20:41:10 +01:00
Paolo Carlini a1d31db4af max_size.cc: Actually do test max_size().
2006-10-30  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/6_containers/array/capacity/max_size.cc: Actually
	do test max_size().

From-SVN: r118194
2006-10-30 18:59:00 +00:00
Vladimir Prus 91de15279f MAINTAINERS (Write After Approval): Add myself.
2006-10-30  Vladimir Prus  <vladimir@codesourcery.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r118193
2006-10-30 18:47:33 +00:00
Tobias Burnus 9aceacac92 re PR fortran/29452 (Keyword check for specifiers in WRITE and READ)
fortran/
2006-10-30  Tobias Burnus  <burnus@net-b.de>

       	PR fortran/29452
       	* io.c (check_io_constraints): Fix keyword string comparison.

libgfortran/
2006-10-30  Tobias Burnus  <burnus@net-b.de>

       	PR fortran/29452
	* runtime/string.c (compare0): Check whether string lengths match.

testsuite/
2006-10-30  Tobias Burnus  <burnus@net-b.de>

	PR fortran/29452
	* gfortran.dg/write_check.f90: Check run-time keyword checking.
	* gfortran.dg/write_check2.f90: Check compile-time keyword checking

From-SVN: r118191
2006-10-30 19:22:47 +01:00
Richard Sandiford e1efef1ef1 mips.md (mul<mode>3): Split into...
gcc/
	* config/mips/mips.md (mul<mode>3): Split into...
	(mulsi3, muldi3): ...these separate patterns.

From-SVN: r118190
2006-10-30 18:18:03 +00:00
Richard Sandiford 8ec2ac7b26 linux64.h (DRIVER_SELF_SPECS): Use a single spec, but with each set of options separated by spaces.
gcc/
	* config/mips/linux64.h (DRIVER_SELF_SPECS): Use a single spec,
	but with each set of options separated by spaces.

From-SVN: r118189
2006-10-30 18:05:54 +00:00
J"orn Rennecke 7bec3e8418 unwind-dw2.c (uw_init_context_1): Fix test that checks if dwarf_reg_size_table has been initialized.
* unwind-dw2.c (uw_init_context_1): Fix test that checks if
	dwarf_reg_size_table has been initialized.

From-SVN: r118188
2006-10-30 17:55:33 +00:00
Roger Sayle 428aba16aa builtins.c (expand_builtin_mathfn_3): Correct coding style.
* builtins.c (expand_builtin_mathfn_3): Correct coding style.
	* ddg.c (print_ddg_edge): Likewise.
	* dwarf2out.c (prune_unused_types_walk): Likewise.
	* ifcvt.c (noce_try_cmove_arith): Likewise.
	* langhooks.c (add_builtin_function): Likewise.
	* reg-stack.c (subst_stack_regs_pat): Likewise.
	* tree.c (expanded_location): Likewise.
	* tree-dump.c (dequeue_and_dump): Likewise.

From-SVN: r118187
2006-10-30 17:51:46 +00:00
Andrew Pinski 0e69739965 re PR fortran/29410 ([4.2 only] bug with TRANSFER() and -O2)
2006-10-30  Andrew Pinski  <pinskia@gmail.com>

        PR fortran/29410
        * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer):
        Change over to create VIEW_CONVERT_EXPR instead of using an
        ADDR_EXPR, a cast and then an indirect reference
2006-10-30  Andrew Pinski  <pinskia@gmail.com>

        PR Fortran/29410
        * gfortran.fortran-torture/execute/transfer1.f90: New test.

From-SVN: r118186
2006-10-30 08:15:09 -08:00
Dirk Mueller ff84991f99 typeck.c (build_unary_op): Fix indenting.
2006-10-30  Dirk Mueller  <dmueller@suse.de>

       * typeck.c (build_unary_op): Fix indenting. Use G_().

From-SVN: r118185
2006-10-30 14:44:45 +00:00
Joseph Myers 709e1a1a8a default.exp (${tool}_target_compile): Use v3_target_compile.
libstdc++-v3:
	* testsuite/config/default.exp (${tool}_target_compile): Use
	v3_target_compile.

gcc/testsuite:
	* lib/target-supports.exp (check_function_available): Declare
	function before calling.

From-SVN: r118182
2006-10-30 14:03:05 +00:00
David Daney aaf0c39c04 * config/mips/linux.h (NO_SHARED_SPECS): Correct syntax error.
From-SVN: r118179
2006-10-30 08:25:25 +00:00
Jakub Jelinek cc59abbf35 re PR tree-optimization/29637 (Endless recursion in make_vector_type)
PR tree-optimization/29637
	* tree.c (make_vector_type): Don't recurse if TYPE_MAIN_VARIANT
	of the innertype is the innertype itself.

	* gcc.dg/pr29637.c: New test.

From-SVN: r118175
2006-10-30 09:01:28 +01:00
Mike Stump 5fbd205139 Fix whitespacing.
From-SVN: r118173
2006-10-30 05:56:18 +00:00
Danny Smith 2310f1f84f dwarf2out.c (file_name_acquire): Correct typo.
* dwarf2out.c (file_name_acquire): Correct typo.
	Formatting tweak to earlier ChangeLog entry.

From-SVN: r118171
2006-10-30 03:18:57 +00:00
Roger Sayle 00f5f722bf fold-compare-1.c: Update to reflect recent changes in tree canonicalization.
* gcc.dg/fold-compare-1.c: Update to reflect recent changes in
	tree canonicalization.

From-SVN: r118170
2006-10-30 02:46:11 +00:00