1. 31 Oct, 2006 23 commits
    • treepr.adb: Use new subtype N_Membership_Test · c064e066
      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
      Robert Dewar committed
    • cal.c: Use the header sys/time.h for VxWorks 6.2 or greater when using RTPs. · ff9625b0
      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
      Jose Ruiz committed
    • bindusg.ads, [...]: Change to package and rename procedure as Display... · db89aef2
      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
      Robert Dewar committed
    • binde.adb (Better_Choice, [...]): Implement new preferences. · bd8b9b1e
      2006-10-31  Robert Dewar  <dewar@adacore.com>
      
      	* binde.adb (Better_Choice, Worse_Choice): Implement new preferences.
      
      From-SVN: r118245
      Robert Dewar committed
    • a-tags.ads, a-tags.adb: · bfef8d0d
      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
      Javier Miranda committed
    • a-dispat.ads, [...]: New files. · 3cb8344b
      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
      Robert Dewar committed
    • lib.adb, lib.ads: (In_Predefined_Unit): New functions · 9b832db5
      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
      Robert Dewar committed
    • a-filico.adb (Finalize(List_Controller)): Mark the finalization list as finalization-started... · 498a5a84
      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
      Bob Duff committed
    • adaint.c (__gnat_get_libraries_from_registry): Call explicitly the ASCII version… · 18f22284
      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
      Pascal Obry committed
    • s-osinte-vxworks.ads, [...]: · d1fa78e3
      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
      Jose Ruiz committed
    • s-taprop-solaris.adb: (Time_Slice_Val): Change type to Integer. · 8dbb621e
      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
      Eric Botcazou committed
    • mlib-tgt-lynxos.adb, [...]: Use Append_To, instead of Ext_To, when building the library file name · f95969ea
      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
      Vincent Celier committed
    • system-vms_64.ads, [...]: Add pragma Warnings(Off... · f28ded01
      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
      Robert Dewar committed
    • s-osinte-posix.adb, [...] (To_Target_Priority): New function maps from… · ec946d18
      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
      Arnaud Charlet committed
    • a-calend-vms.adb (Leap_Sec_Ops): Temp body for package in private part of Ada.Calendar... · 6e451134
      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
      Hristian Kirtchev committed
    • g-socthi-vxworks.adb (C_Gethostbyname): Fix wrong test for returned error status. · 014c9caa
      2006-10-31  Thomas Quinot  <quinot@adacore.com>
      
      	* g-socthi-vxworks.adb (C_Gethostbyname): Fix wrong test for returned
      	error status.
      
      From-SVN: r118233
      Thomas Quinot committed
    • sem_res.adb (Resolve_Unary_Op): Add warning for use of unary minus with multiplying operator. · aa180613
      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
      Robert Dewar committed
    • a-taster.adb, [...]: Minor reformatting. · 524c02d7
      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
      Robert Dewar committed
    • MAINTAINERS (Write After Approval): Add myself. · 7aa42285
      From-SVN: r118230
      Stephen M. Webb committed
    • i386.md (asindf2, [...]): Conditionalize expansion on !optimize_size. · 1d08f955
      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
      Richard Guenther committed
    • re PR fortran/29387 (ICE on character array function of variable length) · dd5797cc
      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
      Paul Thomas committed
    • * opts.c (decode_options): Disable CSE skip blocks. · e5c18c3c
      From-SVN: r118219
      Steven Bosscher committed
    • Daily bump. · e4a6b835
      From-SVN: r118215
      GCC Administrator committed
  2. 30 Oct, 2006 17 commits