gcc/gcc/ada/ChangeLog

9871 lines
348 KiB
Plaintext

2004-05-13 Diego Novillo <dnovillo@redhat.com>
Merge from tree-ssa-20020619-branch.
* config-lang.in (boot_language, build_by_default): Set
to no.
* utils.c (unchecked_convert): Use OEP_ONLY_CONST.
(max_size): Add static chain op for call_expr.
2004-05-12 Richard Sandiford <rsandifo@redhat.com>
PR target/15331
* 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
2004-05-11 Roger Sayle <roger@eyesopen.com>
* utils.c (max_size): Use MIN_EXPR to find the minimum value of a
COND_EXPR.
2004-05-10 Doug Rupp <rupp@gnat.com>
* 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
system.aux_dec.
* s-auxdec.ads: Add Short_Address subtype (moved here from System).
* Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
* init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
Fixes undefined symbols in IA64 gnatlib.
* 5vinmaop.adb: Reference s-auxdec for Short_Address.
* 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
Short_Address). This will be moved to system.auxdec.
2004-05-10 Thomas Quinot <quinot@act-europe.fr>
* sem_util.adb: Replace test for presence of a node that is always
present with a call to Discard_Node.
* sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
Analyze on the library unit node after generation of distribution stub
constructs. The call was a no-op because Unit_Node has already been
Analyzed, and the tree fragments for the distribution stubs are
analyzed as they are inserted in Exp_Dist.
Update comment regarding to distribution stubs to reflect that we
do not generate stub in separate files anymore.
* einfo.ads: Clarify the fact that a tagged private type has the
E_Record_Type_With_Private Ekind.
* erroutc.adb: Minor reformatting
* erroutc.ads (Max_Msg_Length): Increase to cover possible larger
values if line length is increased using -gnatyM (noticed during code
reading).
* eval_fat.adb: Minor reformatting
Put spaces around exponentiation operator
2004-05-10 Ed Schonberg <schonberg@gnat.com>
PR ada/15005
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
has been rewritten as an explicit dereference, retrieve type of
original node to check for possibly unconstrained record type.
2004-05-10 Ed Schonberg <schonberg@gnat.com>
* exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
overriding, use the operation of the parent unconditionally.
* sem_ch4.adb (Remove_Address_Interpretations): Remove address
operation when either operand is a literal, to avoid further
ambiguities.
* sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
overridden by a previous explicit declaration, mark the previous entity
as overriding.
* sem_disp.adb (Check_Dispatching_Operation): New predicate
Is_Visibly_Controlled, to determine whether a declaration of a
primitive control operation for a derived type overrides an inherited
one. Add warning if the explicit declaration does not override.
2004-05-10 Vincent Celier <celier@gnat.com>
* gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
some cases when the sources are no longer present.
* make.adb (Collect_Arguments): Fail if an external source, not part
of any project need to be compiled, when switch -x has not been
specified.
* makeusg.adb: Document new switch -x
* opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
defaulted to False.
* switch-m.adb (Scan_Make_Switches): New switch -x
* vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
gnatmake switch -x.
* gnat_ugn.texi: Document new gnatmake switch -x
2004-05-10 Eric Botcazou <ebotcazou@act-europe.fr>
* misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
* utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
(process_attributes): Likewise.
2004-05-10 Joel Brobecker <brobecker@gnat.com>
* s-inmaop.ads: Fix spelling mistake in one of the comments.
2004-05-10 Robert Dewar <dewar@gnat.com>
* gnat_ugn.texi: Document that for config pragma files, the maximum
line length is always 32767.
* gnat_rm.texi: For pragma Eliminate, note that concatenation of string
literals is now allowed.
* gnat-style.texi: Remove statement about splitting long lines before
an operator rather than after, since we do not follow this rule at all.
Clarify rule (really lack of rule) for spaces around exponentiation
* sem_elim.adb: Allow concatenation of string literals as well as a
single string literal for pragma arguments.
* sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
* a-textio.adb (Terminate_Line): Do not add line feed if nothing
written for append case.
* frontend.adb: Changes to avoid checking max line length in config
pragma files.
* g-os_lib.ads: Minor reformatting
* mlib-utl.adb: Do not define Max_Line_Length locally (definition was
wrong in any case. Instead use standard value. Noticed during code
reading.
* opt.ads (Max_Line_Length): New field, used to implement removal of
limitation on length of lines when scanning config pragma files.
* osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
makeutl.ads, makeutl.adb: Minor reformatting
* scn.adb: Do not check line length while scanning config pragma files
Do not check line length while scanning out license information
* scng.adb: Changes to avoid line length checks while parsing config
pragma files.
2004-05-10 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-05-05 Arnaud Charlet <charlet@act-europe.fr>
* osint.adb (Find_Program_Name): Fix handling of VMS version
number.
2004-05-05 Emmanuel Briot <briot@act-europe.fr>
* g-os_lib.ads (Invalid_Time): New constant
* adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
return OS_Time instead of time_t to match what is imported by Ada.
Now return -1 if the file doesn't exist, instead of a random value
2004-05-05 Robert Dewar <dewar@gnat.com>
* usage.adb: Add line for -gnatR?s switch
* sem_ch13.adb, exp_ch2.adb: Minor reformatting
* g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
and for Match (Data_First, Data_last)
* lib-writ.adb (Write_With_Lines): Ensure that correct index number is
written when we are dealing with multi-unit files.
2004-05-05 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in: Remove unused targets and variables.
2004-05-05 Vincent Celier <celier@gnat.com>
* switch-m.adb: New gnatmake switch -eI
* vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
of new gnatmake switch -eInnn.
* makegpr.adb: Take into account new parameters Index and Src_Index in
Prj.Util.
* clean.adb: Implement support for multi-unit sources, including new
switch -i.
* gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
Src_Index.
* make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
(Extract_From_Q): New out parameter Index
(Mark, Is_Marked): Subprograms moved to Makeutl
(Switches_Of): New parameter Source_Index
(Add_Switch): New parameter Index
(Check): New parameter Source_Index
(Collect_Arguments): New parameter Source_Index
(Collect_Arguments_And_Compile): New parameter Source_Index
(Compile): New parameter Source_Index
Put subprograms in alphabetical order
Add support for multi-source sources, including in project files.
* makeutl.ads, makeutl.adb (Unit_Index_Of): New function
(Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
Make.
* makeusg.adb: New gnatmake switch -eInnn
* mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
Prj.Util.Value_Of.
* opt.ads (Main_Index): New variable, defaulted to 0.
* osint.ads, osinte.adb (Add_File): New parameter Index
(Current_Source_Index): New function
* prj.adb: Take into account new components Index and Src_Index
* prj.ads (String_Element): New component Index
(Variable_Value): New component Index
(Array_Element): New component Src_Index
* prj-attr.adb: Indicate that optional index may be specified for
attributes Main, Executable, Spec, Body and some of Switches.
* prj-attr.ads (Attribute_Kind): New values for optional indexes
(Attribute_Record): New component Optional_Index
* prj-com.ads (File_Name_Data): New component Index
* prj-dect.adb (Parse_Attribute_Declaration): Process optional index
* prj-env.adb (Put): Output optional index
* prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
attributes Spec and Body.
* prj-nmsc.adb: Process optional indexes
* prj-pp.adb: Ouput "at" for optional indexes
* prj-proc.adb: Take into account optional indexes
* prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
Optional_Index. For string literal,
process optional index when Optional_Index is True.
(Parse_Expresion): New Boolean parameter Optional_Index
* prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
(Set_Source_Index_Of): New procedure
* prj-util.adb (Executable_Of, Value_Of): Take into account optional
index.
* prj-util.ads (Executable_Of): New parameter Index
(Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
New parameter Src_Index, defaulted to 0.
2004-05-05 Ed Schonberg <schonberg@gnat.com>
PR ada/15257
* sem_ch3.adb (Access_Definition): If this is an access parameter
whose designated type is imported through a limited_with clause, do
not add the enclosing subprogram to the list of private dependents of
the type.
2004-05-05 Ed Schonberg <schonberg@gnat.com>
PR ada/15258
* sem_ch6.adb (Base_Types_Match): True if one type is imported through
a limited_with clause, and the other is its non-limited view.
2004-05-05 Thomas Quinot <quinot@act-europe.fr>
* cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
* exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
Stand.Boolean_Literals to produce references to entities
Standard_False and Standard_True from compile-time computed boolean
values.
* stand.ads (Boolean_Literals): New variable, provides the entity
values for False and True, for use by the expander.
2004-05-05 Doug Rupp <rupp@gnat.com>
* 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
5vinmaop.adb: Unchecked convert Short_Address vice Address
* adaint.c, raise.c: Caste CRTL function return value
to avoid gcc error on 32/64 bit IVMS.
* Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
target = IA64/VMS.
* init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
* 5qsystem.ads (Address): Declare as Long_Integer
(Short_Address): Declare as 32 bit subtype of Address
Declare abstract address operations to avoid gratuitous ambiguities.
2004-05-05 Jose Ruiz <ruiz@act-europe.fr>
* gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
instead of the old Boolean_Entry_Barriers.
Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
2004-05-05 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-05-03 Arnaud Charlet <charlet@act-europe.fr>
* 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
2004-05-03 Olivier Hainque <hainque@act-europe.fr>
PR ada/15152
* exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
alone. Replacing object references by literals is inappropriate in a
so low level context.
2004-05-03 Arnaud Charlet <charlet@act-europe.fr>
* a-exexpr.adb: Add comments
2004-05-03 Joel Brobecker <brobecker@gnat.com>
* a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
declare the Ancestor_Tags array in Type_Specific_Data with a small size
without risking a bounds check error when accessing one of its
components.
(Type_Specific_Data): Define Ancestor_Tags as a small array.
This prevents us from hitting a limitation during the debug info
generation when using stabs.
* a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
small array.
This prevents us from hitting a limitation during the debug info
generation when using stabs.
2004-05-03 Eric Botcazou <ebotcazou@act-europe.fr>
lang-specs.h: Remove -gnatz* from specs.
2004-05-03 Vincent Celier <celier@gnat.com>
* gprmake.adb, makegpr.ads, makegpr.adb: New files.
* Make-lang.in, Makefile.in: Add gprmake
2004-05-03 Thomas Quinot <quinot@act-europe.fr>
* sem_aggr.adb: Fix typo in comment.
2004-05-03 Robert Dewar <dewar@gnat.com>
* make.adb: Minor reformatting
* rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
* sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
so that it works when address is not a private type.
* sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
properly with rewritten unchecked conversions. This prevents
order-of-elaboration issues that can otherwise arise.
(Minimum_Size): Don't check size of access types under VMS
* sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
interpretations of integer literals as type System.Address.
* sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
(Is_Descendent_Of): New function
2004-05-03 Jose Ruiz <ruiz@act-europe.fr>
* sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
* sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
of the old Max_Entry_Queue_Depth.
* snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
* snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
New entry for proper handling of Max_Entry_Queue_Depth.
New entry for proper handling of No_Dynamic_Interrupts.
* s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
the GNAT specific restriction Max_Entry_Queue_Depth.
Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
the GNAT specific restriction No_Dynamic_Interrupts.
* restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
instead of the old Boolean_Entry_Barriers.
Use the new restriction No_Dynamic_Attachment instead of the old
No_Dynamic_Interrupts.
* exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
* gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
of the old Max_Entry_Queue_Depth.
2004-05-03 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-04-29 Ed Schonberg <schonberg@gnat.com>
* checks.adb (Enable_Range_Check): If the prefix of an index component
is an access to an unconstrained array, perform check unconditionally.
2004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_field): Also call make_packable_type if
Component_Clause.
2004-04-29 Olivier Hainque <hainque@act-europe.fr>
* init.c (__gnat_install_handler, __gnat_error_handler): Remove
alternate stack setting. There was no support for the tasking cases
and the changes eventually caused a number of side-effect failures in
the non-tasking case too.
2004-04-29 Eric Botcazou <ebotcazou@act-europe.fr>
lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
-gnats is passed.
2004-04-29 Vincent Celier <celier@gnat.com>
* make.adb (Gnatmake): Increase max size of argument array for
gnatbind for the potential addition of -F.
If there are Stand-Alone Library projects, invoke gnatbind with -F to
be sure that elaboration flags will be checked.
* switch-c.adb: Correct call to Scan_Pos for -gnateI
2004-04-29 Thomas Quinot <quinot@act-europe.fr>
* sem_warn.adb (Check_References): Move '<access-variable> may be
null' warning out of under Warn_On_No_Value_Assigned.
2004-04-29 Ed Falis <falis@gnat.com>
* gnat_ugn.texi: Fixed texi error
2004-04-29 Robert Dewar <dewar@gnat.com>
* sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
abstract operations if they come from predefined files.
* gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
Dynamic, not RM).
* s-addope.adb: Correct obvious error in mod function
2004-04-28 Andrew W. Reynolds <awreynolds@mac.com>
* Makefile.in: Add target pairs for powerpc darwin*
tasking support.
* a-intnam-darwin.ads, s-osinte-darwin.adb,
s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
* Makefile.in: Add target macro definitions for s390*-linux*.
* system-linux-s390.ads: New file.
* system-linux-s390x.ads: New file.
2004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
* gnat_ugn.texi: Correct argument to @setfilename.
2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
* a-exexpr.adb (Unwind_Word): New data type.
(Unwind_Exception): Use it as type of Private1 and Private2.
* raise.c (db_action_for): Fix debug printf.
2004-04-27 Ed Schonberg <schonberg@gnat.com>
* a-wtmoio.ads: Formal type must be a modular type, not a signed
integer type.
2004-04-27 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, case object): Call
__builtin_update_setjmp_buf.
* gigi.h (update_setjmp_buf): Deleted.
(ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
* misc.c: (update_setjmp_buf): Deleted.
* trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
around block of RTL.
* utils.c (init_gigi_decls): Initialize update_setjmp_buf.
2004-04-26 Thomas Quinot <quinot@act-europe.fr>
* sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
subprogram for which no pragma All_Calls_Remote applies, store the
address of the real subprogram in the underlying record type, so local
dereferences do not go through the PCS.
2004-04-26 Robert Dewar <dewar@gnat.com>
* i-c.ads: Add some type qualifications to avoid ambiguities when
compiling with s-auxdec.ads and a non-private address type.
2004-04-26 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.rtl: Fix error in previous check-in:
Add s-addope.o to non tasking object list (rather than tasking object
list).
2004-04-26 Javier Miranda <miranda@gnat.com>
* sem_aggr.adb: Fix typo in comments
(Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
Required to check the null-exclusion attribute.
* sem_attr.adb (Resolve_Attribute): Check the accessibility level in
case of anonymous access types in record and array components. For a
component definition the level is the same of the enclosing composite
type.
* sem_ch3.adb (Analyze_Component_Declaration): In case of components
that are anonymous access types the level of accessibility depends on
the enclosing type declaration. In order to have this information, set
the scope of the anonymous access type to the enclosing record type
declaration.
(Array_Type_Declaration): In case of components that are anonymous
access types the level of accessibility depends on the enclosing type
declaration. In order to have this information, set the scope of the
anonymous access type to the enclosing array type declaration.
* sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
access type.
* sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
renaming of anonymous access-to-constant types allowed if and only if
the renamed object is access-to-constant.
* sem_util.adb (Type_Access_Level): In case of anonymous access types
that are component_definition or discriminants of a nonlimited type,
the level is the same as that of the enclosing component type.
2004-04-26 Sergey Rybin <rybin@act-europe.fr>
* sem_elim.adb: Some minor code reorganization from code reading. Fix
misprint in the function name (File_Name_Match).
2004-04-23 Laurent GUERBY <laurent@guerby.net>
* Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
install.
2004-04-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
2004-04-23 Emmanuel Briot <briot@act-europe.fr>
* adaint.c (__gnat_try_lock): No longer requires that the parent
directory be writable, the directory itself is enough.
(gnat_is_absolute_path): Change profile, so that the call from
GNAT.OS_Lib can be made more efficient.
* adaint.h (gnat_is_absolute_path): Change profile, so that the call
from GNAT.OS_Lib can be made more efficient.
* g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
one copy of the file name. Found by code reading.
2004-04-23 Vincent Celier <celier@gnat.com>
* gnat_ugn.texi: Add documentation for gnatmake switch -eL
Correct documentation on gnatmake switches transmitted to the compiler
* ali.ads: Minor comment fix
2004-04-23 Javier Miranda <miranda@gnat.com>
* sem_ch6.adb: (Confirming Types): Code cleanup
* decl.c (gnat_to_gnu_entity): Give support to anonymous access to
subprogram types: E_Anonymous_Access_Subprogram_Type and
E_Anonymous_Access_Protected_Subprogram_Type.
2004-04-23 Thomas Quinot <quinot@act-europe.fr>
* sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
whether a pragma All_Calls_Remote applies to the subprogram on which
'Access is taken.
No functional change is introduced by this revision; the new parameter
will be used to allow calls to local RCI subprograms to be optimized
to not use the PCS in the case where no pragma All_Calls_Remote applies,
as is already done in the PolyORB implementation of the DSA.
* exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
whether a pragma All_Calls_Remote applies to the subprogram on which
'Access is taken.
No functional change is introduced by this revision; the new parameter
will be used to allow calls to local RCI subprograms to be optimized
to not use the PCS in the case where no pragma All_Calls_Remote applies,
as is already done in the PolyORB implementation of the DSA.
2004-04-23 Robert Dewar <dewar@gnat.com>
* Makefile.rtl: Add entry for s-addope.o in run time library list
* Make-lang.in: Add entry for s-addope.o to GNAT1 objects
* s-addope.ads, s-addope.adb: New files.
* s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.adb,
s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
System.Address to be non-private and signed.
* sem_elim.adb: Minor reformatting (fairly extensive)
Some minor code reorganization from code reading
Add a couple of ??? comments
2004-04-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c (tree_transform, build_unit_elab): Don't call getdecls.
(tree_transform, case N_If_Statement): Remove non-determinism.
* utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
2004-04-23 Sergey Rybin <rybin@act-europe.fr>
* gnat_rm.texi: Small fixes in the changes made in the 'pragma
Eliminate' section.
* snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
no longer used as a parameter name for Eliminate pragma).
2004-04-22 Laurent GUERBY <laurent@guerby.net>
PR optimization/14984
PR optimization/14985
* trans.c (gigi): Fix non determinism leading to bootstrap
comparison failures.
2004-04-21 Pascal Obry <obry@gnat.com>
* adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
passed to spawnvp() to properly handle program pathname with spaces on
Win32.
2004-04-21 Emmanuel Briot <briot@act-europe.fr>
* g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
(Allocate, Deallocate, Free_Physically): Make sure the tasks are
unlocked in case of exceptions.
2004-04-21 Joel Brobecker <brobecker@gnat.com>
* gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
This function does not exist anymore.
2004-04-21 Thomas Quinot <quinot@act-europe.fr>
* gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
* link.c: Move variables to the __gnat name space.
* Makefile.in: list link.o explicitly when needed.
* mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
2004-04-21 Javier Miranda <miranda@gnat.com>
* einfo.adb (Original_Access_Type): New subprogram
(Set_Original_Access_Type): New subprogram
(Write_Field21_Name): Write the name of the new field
* einfo.ads (Original_Access_Type): New field present in access to
subprogram types.
Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
E_Anonymous_Access_Protected_Subprogram_Type.
* lib-xref.adb (Output_One_Ref): Give support to anonymous access to
subprogram types.
* lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
to anonymous access to subprogram types.
* sem_attr.adb (Resolve_Attribute): Give support to anonymous access
to subprogram types.
* sem_ch3.adb (Access_Definition): Complete decoration of entities
corresponding to anonymous access to subprogram types.
(Analyze_Component_Declaration): Add new actual to the call to
subprogram replace_anonymous_access_to_protected_subprogram.
(Array_Type_Declaration): Add new actual to the call to subprogram
replace_anonymous_access_to_protected_subprogram.
(Process_Discriminants): Add new actual to the call to subprogram
replace_anonymous_access_to_protected_subprogram.
(Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
formal.
* sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
access to subprogram types.
* sem_util.adb (Has_Declarations): Addition of package_specification
nodes.
2004-04-21 Ed Schonberg <schonberg@gnat.com>
* sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
inlined flags to renamed entity only if in current unit.
2004-04-21 Thomas Quinot <quinot@act-europe.fr>
* s-parint.ads: Add DSA implementation marker.
* rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
value of System.Partition_Interface.DSA_Implementation to determine
what version of the distributed systems annex is available (no
implementation, GLADE, or PolyORB).
2004-04-21 Joel Brobecker <brobecker@gnat.com>
* targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
2004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
with new type if alias sets differ.
Fixes ACATS c41103b.
2004-04-21 Vincent Celier <celier@gnat.com>
* prj.ads: Remove FORTRAN as an accepted language: not tested yet.
Add array Lang_Args for the language specific compiling argument
switches.
* gnat_ugn.texi: Explain in more details when a library is rebuilt.
2004-04-21 Sergey Rybin <rybin@act-europe.fr>
* gnat_rm.texi: Update the descripton of the Eliminate pragma
according to the recent changes in the format of the parameters of the
pragma (replacing Homonym_Number with Source_Location).
2004-04-19 Arnaud Charlet <charlet@act-europe.fr>
* 5isystem.ads: Removed, unused.
* gnat_rm.texi: Redo 1.13 change.
2004-04-19 Robert Dewar <dewar@gnat.com>
* s-stoele.ads: Clean up definition of Storage_Offset (the new
definition is cleaner, avoids the kludge of explicit Standard operator
references, and also is consistent with a visible System.Address with
no visible operations.
* s-geveop.adb: Add declarations to avoid assumption of visible
operations on type System.Address (since these might not be available
if Address is a non-private type for which the operations
are made abstract).
* sem_eval.adb: Minor reformatting
* s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
reformatting (new function spec format).
* s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
s-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
s-caun64.adb: Add declarations to avoid assumption of visible
operations on type System.Address (since these might not be available
if Address is a non-private type for which the operations are made
abstract).
* lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
* exp_intr.adb: Minor comment update
* exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
* 5omastop.adb: Add declarations to avoid assumption of visible
operations on type System.Address (since these might not be available
if Address is a non-private type for which the operations
are made abstract).
2004-04-19 Vincent Celier <celier@gnat.com>
* switch-m.adb: (Scan_Make_Switches): Process new switch -eL
* prj-pars.ads (Parse): New Boolean parameter Process_Languages,
defaulted to Ada.
* prj-proc.adb (Process): New Boolean parameter Process_Languages,
defaulted to Ada.
Call Check with Process_Languages.
(Check): New Boolean parameter Process_Languages. Call Recursive_Check
with Process_Languages.
(Recursive_Check): New Boolean parameter Process_Languages. Call
Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
Process_Languages.
* prj-proc.ads (Process): New Boolean parameter Process_Languages,
* prj-util.ads, prj-util.adb (Executable_Of): New Boolean
parameter Ada_Main, defaulted to True.
Check for Ada specific characteristics only when Ada_Main is True.
* opt.ads: (Follow_Links): New Boolean flag for gnatmake
* prj.adb: (Project_Empty): Add new Project_Data components.
* prj.ads: New types and tables for non Ada languages.
(Project_Data): New components Languages, Impl_Suffixes,
First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
Include_Path, Include_Data_Set.
* prj-env.ads, prj-env.adb: Minor reformatting
* prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
Put subprograms in alphabetical order
* prj-pars.adb (Parse): New Boolean parameter Process_Languages,
defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
Opt.Follow_Links.
* mlib-prj.adb: Back out modification in last version, as they are
incorrect.
(Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
* make.adb: (Mains): Moved to package Makeutl
(Linker_Opts): Moved to package Makeutl
(Is_External_Assignment): Moved to package Makeutl
(Test_If_Relative_Path): Moved to package Makeutl
(Gnatmake): Move sorting of linker options to function
Makeutl.Linker_Options_Switches.
* makeutl.ads, makeutl.adb: New files.
* Makefile.in: Add makeutl.o to the object files for gnatmake
* makeusg.adb: Add line for new switch -eL.
* gnatls.adb (Image): New function.
(Output_Unit): If in verbose mode, output the list of restrictions
specified by pragmas Restrictions.
* 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
Text_IO.
* a-calend.adb (Split): Shift the date by multiple of 56 years, if
needed, to put it in the range 1970 (included) - 2026 (excluded).
(Time_Of): Do not shift Unix_Min_Year (1970).
Shift the date by multiple of 56 years, if needed, to put it in the
range 1970 (included) - 2026 (excluded).
* adaint.h, adaint.c (__gnat_set_executable): New function.
2004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
and pop GC context.
(tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
(tree_transform, case N_Label): Don't set LABEL_STMT_FIRST_IN_EH.
(tree_transform, case N_Procedure_Call_Statement): Build a tree.
(tree_transform, case N_Code_Statement): Likewise.
(gnat_expand_stmt, case LABEL_STMT): Don't look at
LABEL_STMT_FIRST_IN_EH.
(gnat_expand_stmt, case ASM_STMT): New case.
* utils2.c (build_unary_op): Properly set TREE_READONLY of
UNCONSTRAINED_ARRAY_REF.
* utils.c (poplevel): Temporarily push/pop GC context around inline
function expansion.
* decl.c (maybe_variable): Properly set TREE_READONLY of
UNCONSTRAINED_ARRAY_REF.
(make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
* ada-tree.def: (ASM_STMT): New.
* ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
(ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
ASM_STMT_INPUT): New.
(ASM_STMT_CLOBBER): Likewise.
2004-04-19 Thomas Quinot <quinot@act-europe.fr>
* a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
general rcheck mechanism to raise Program_Error for E.4(18), instead
of a custom raiser in System.Partition_Interface.
Part of general cleanup work before PolyORB integration.
* snames.ads, snames.adb: Add new runtime library entities and names
for PolyORB DSA.
* sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
exp_dist.
(Build_Subprogram_Id): New subprogram provided by exp_dist
Code reorganisation in preparation for PolyORB integration.
* exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
exp_dist.
(Build_Subprogram_Id): New subprogram provided by exp_dist
* sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
actual parameter types for call to dereference of an
access-to-subprogram type.
* rtsfind.ads: Add new runtime library entities and names for PolyORB
DSA.
* gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
instead, which has the same behaviour here since we never pass it a
NULL pointer.
* link.c (run_path_option, Solaris case): Use -Wl, as for other
platforms.
* Makefile.in: adjust object file lists for gnatlink and gnatmake
to account for new dependency upon Interfaces.C.Strings + link.o
For x86 FreeBSD, use 86numaux.
* make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
from Mlib.Tgt to Mlib.
* mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
target-independent.
* mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
target-specific versions of this subprogram, now implemented as a
target-independent function in Mlib.
* 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
(Linker_Library_Path_Option): Remove target-specific versions of this
subprogram, now implemented as a target-independent function in Mlib.
* atree.adb: (Allocate_Initialize_Node): New subprogram.
Factors out node table slots allocation.
(Fix_Parents): New subprogram.
Encapsulate the pattern of fixing up parent pointers for syntactic
children of a rewritten node.
(New_Copy_Tree): Use New_Copy to copy non-entity nodes.
(Rewrite): Use New_Copy when creating saved copy of original node.
(Replace): Use Copy_Node to copy nodes.
2004-04-19 Javier Miranda <miranda@gnat.com>
* sprint.adb (Sprint_Node_Actual): Give support to the new
Access_To_Subprogram node available in Access_Definition nodes. In
addition, give support to the AI-231 node fields: null-exclusion,
all-present, constant-present.
* sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
* sinfo.ads, sinfo.adb:
New field Access_To_Subprogram_Definition in Access_Definition nodes
* sem_ch6.adb (Process_Formals): Move here the code that creates and
decorates internal subtype declaration corresponding to the
null-excluding formal. This code was previously in Set_Actual_Subtypes.
In addition, carry out some code cleanup on this code. In case of
access to protected subprogram call
Replace_Anonymous_Access_To_Protected_Subprogram.
(Set_Actual_Subtypes): Code cleanup.
* sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
Find_Type in case of anonymous access renamings. Add warning in case of
null-excluding attribute used in anonymous access renaming.
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
subprogram
* sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
subprogram.
(Access_Definition): In case of anonymous access to subprograms call
the corresponding semantic routine to decorate the node.
(Access_Subprogram_Declaration): Addition of some comments indicating
some code that probably should be added here. Detected by comparison
with the access_definition subprogram.
(Analyze_Component_Declaration): In case of access to protected
subprogram call Replace_Anonymous_Access_To_Protected.
(Array_Type_Declaration): In case of access to protected subprogram call
Replace_Anonymous_Access_To_Protected_Subprogram.
(Process_Discriminants): In case of access to protected subprogram call
Replace_Anonymous_Access_To_Protected_Subprogram.
* par.adb (P_Access_Definition): New formal that indicates if the
null-exclusion part was present.
(P_Access_Type_Definition): New formal that indicates if the caller has
already parsed the null-excluding part.
* par-ch3.adb (P_Subtype_Declaration): Code cleanup.
(P_Identifier_Declarations): Code cleanup and give support to renamings
of anonymous access to subprogram types.
(P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
(P_Array_Type_Definition): Give support to AI-254.
(P_Component_Items): Give support to AI-254.
(P_Access_Definition): New formal that indicates if the header was
already parsed by the caller.
(P_Access_Type_Definition): New formal that indicates if the caller has
already parsed the null-excluding part.
* par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
call to P_Access_Definition.
2004-04-19 Geert Bosch <bosch@gnat.com>
* checks.adb (Apply_Float_Conversion_Check): New procedure to implement
the delicate semantics of floating-point to integer conversion.
(Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
* eval_fat.adb (Machine_Mantissa): Moved to spec.
(Machine_Radix): New function.
* eval_fat.ads (Machine_Mantissa): Moved from body for use in
conversion checks.
(Machine_Radix): New function also for use in conversion checks.
2004-04-19 Ed Schonberg <schonberg@gnat.com>
* par-prag.adb (Source_File_Name_Project): Fix typo in error message.
* exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
to decorate the access-to-protected subprogram and the equivalent type.
* checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
to anonymous access to subprogram types.
* exp_ch4.adb (Expand_N_In): Preserve Static flag before
constant-folding, for legality checks in contexts that require an RM
static expression.
* exp_ch6.adb (Expand_N_Function_Call): If call may generate large
temporary but stack checking is not enabled, increment serial number
to so that symbol generation is consistent with and without stack
checking.
* exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
independent on whether stack checking is enabled, caller must check
the corresponding flag.
* sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
range checks.
(Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
parent if it has discriminants.
(Build_Derived_Private_Type): Constructed full view does
not come from source.
(Process_Discriminants): Default discriminants on a tagged type are
legal if this is the internal completion of a private untagged
derivation.
* sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
no constraint checks, because it corresponds to an existing object.
* sem_prag.adb (Process_Convention): Pragma applies
only to subprograms in the same declarative part, i.e. the same unit,
not the same scope.
* sem_res.adb (Valid_Conversion): In an instance or inlined body,
ignore type mismatch on a numeric conversion if expression comes from
expansion.
2004-04-19 Sergey Rybin <rybin@act-europe.fr>
* sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
Homonym_Number parameter, add processing for Source_Location parameter
corresponding.
(Check_Eliminated): Remove the check for homonym numbers, add the check
for source location traces.
* sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
with Arg_Source_Location corresponding to the changes in the format of
the pragma.
* sem_prag.adb: (Analyze_Pragma): Changes in the processing of
Eliminate pragma corresponding to the changes in the format of the
pragma: Homonym_Number is replaced with Source_Location, two ways of
distinguishing homonyms are mutially-exclusive.
2004-04-19 Joel Brobecker <brobecker@gnat.com>
* get_targ.ads (Get_No_Dollar_In_Label): Remove.
* exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
No_Dollar_In_Label, no longer necessary, as it is always True.
(Strip_Suffixes): Likewise.
2004-04-19 Gary Dismukes <dismukes@gnat.com>
* s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
modulus for compatibility with size clause on targets with 16-bit
Integer.
* layout.adb (Discrimify): In the case of private types, set Vtyp to
full type to fix type mismatches on calls to size functions for
discriminant-dependent array components.
2004-04-19 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
lib.
2004-04-19 Pascal Obry <obry@gnat.com>
* mdll-utl.adb (Locate): New version is idempotent.
2004-04-17 Laurent Guerby <laurent@guerby.net>
PR ada/14988 (partial)
* impunit.adb: Fix typo.
2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
* Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
and install-rts-cert targets. Remove all gnatlib and gnattools
targets and all other rts-* targets (moved to libada). Remove (now)
unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
2004-04-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c (tree_transform): Shortcut returning error_mark_node for
statements in annotate_only_mode.
(tree_transform, case N_Label, case N_Return_Statement,
N_Goto_Statement): Make statement tree instead of generating code.
(tree_transform, case N_Assignment_Statement): No longer check
type_annotate_only.
(gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
RETURN_STMT): New.
(first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
New fcns.
(gnat_to_gnu): Collect any RTL generated and deal with it.
(tree_transform, case N_And_Then): Refine when have non-null RTL_EXPR.
(tree_transform case N_If_Statement): Rewrite to make IF_STMT.
(gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
* ada-tree.def (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
* ada-tree.def (EXPR_STMT): Fix typo in name.
(BLOCK_STMT, IF_STMT): New nodes.
* ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
LABEL_STMT_FIRST_IN_EH): New macros.
(RETURN_STMT_EXPR): Likewise.
* ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
2004-04-08 Thomas Quinot <quinot@act-europe.fr>
* atree.ads: Correct documentation on extended nodes.
* link.c: Set run_path_option for FreeBSD.
2004-04-08 Vincent Celier <celier@gnat.com>
* mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
one of the ALI file, do not link with DEC lib.
* par.adb Remove the last two characters ("%s" or "%b") when checking
if a language defined unit may be recompiled.
2004-04-08 Ed Schonberg <schonberg@gnat.com>
* sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
removal of abstract operation leaves no possible interpretation for
expression.
* sem_eval.adb (Eval_Qualified_Expression): Use
Set_Raises_Constraint_Error on node when needed, so that it does not
get optimized away by subsequent optimizations.
* sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
operands even when they are not wrapped in a type conversion.
2004-04-08 Olivier Hainque <hainque@act-europe.fr>
* sem_prag.adb (Set_Exported): Warn about making static as result of
export only when the export is coming from source. This may be not
be true e.g. on VMS where we expand export pragmas for exception codes
together with imported or exported exceptions, and we don't want the
user to be warned about something he didn't write.
2004-04-08 Thomas Quinot <quinot@act-europe.fr>
* sem_util.adb (Note_Possible_Modification): Reorganize to remove code
duplication between normal entities and those declared as renamings.
No functional change.
* s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
inline functions returning an unconstrained result.
2004-04-08 Eric Botcazou <ebotcazou@act-europe.fr>
* utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
conform to what other front-ends do.
2004-04-08 Doug Rupp <rupp@gnat.com>
* 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
libraries.
2004-04-06 Pascal Obry <obry@gnat.com>
* adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
* osint.adb (Program_Name): Do not look past a directory separator.
2004-04-06 Thomas Quinot <quinot@act-europe.fr>
* atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
* exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
requirement for preserving a copy of the original assignment node.
* sinfo.ads: Update comment (Original_Tree -> Original_Node).
2004-04-06 Olivier Hainque <hainque@act-europe.fr>
(__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
when supported.
2004-04-06 Ed Schonberg <schonberg@gnat.com>
* sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
operator calls in functional notation, and apply
Universal_Interpretation to operands, not to their type.
2004-04-06 Robert Dewar <dewar@gnat.com>
* 5wdirval.adb: Minor reformatting
2004-04-06 Ed Falis <falis@gnat.com>
* gnat_rm.texi: Improve a reference to the GCC manual
2004-04-05 Vincent Celier <celier@gnat.com>
* adaint.h, adaint.c: Add function __gnat_named_file_length
* impunit.adb: Add Ada.Directories to the list
* Makefile.in: Add VMS and Windows versions of
Ada.Directories.Validity package body.
* Makefile.rtl: Add a-direct and a-dirval
* mlib-tgt.ads: Minor comment update.
* a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
a-direct.ads, a-direct.adb: New files.
2004-04-05 Vincent Celier <celier@gnat.com>
PR ada/13620
* make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
just to the compiler.
2004-04-05 Robert Dewar <dewar@gnat.com>
* a-except.adb (Exception_Name_Simple): Make sure lower bound of
returned string is 1.
* ali-util.adb: Use proper specific form for Warnings (Off, entity)
* eval_fat.ads: Minor reformatting
* g-curexc.ads: Document that lower bound of returned string values
is always one.
* gnatlink.adb: Add ??? comment for previous change
(need to document why this is VMS specific)
* s-stoele.ads: Minor reformatting
* tbuild.ads: Minor reformatting throughout (new function specs)
* par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
after WITH.
* scng.adb: Minor reformatting
2004-04-05 Geert Bosch <bosch@gnat.com>
* eval_fat.adb (Machine): Remove unnecessary suppression of warning.
(Leading_Part): Still perform truncation to machine number if the
specified radix_digits is greater or equal to machine_mantissa.
2004-04-05 Javier Miranda <miranda@gnat.com>
* par-ch3.adb: Complete documentation of previous change
Correct wrong syntax documentation of the OBJECT_DECLARATION rule
(aliased must appear before constant).
* par-ch4.adb: Complete documentation of previous change.
* par-ch6.adb: Complete documentation of previous change.
* sinfo.ads: Fix typo in commment.
2004-04-05 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb (Inherit_Components): If derived type is private and has
stored discriminants, use its discriminants to constrain parent type,
as is done for non-private derived record types.
* sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
Ada 2005 AI-310: an abstract non-dispatching operation is not a
candidate interpretation in an overloaded call.
* tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
expression is Null and target type is not an access type (e.g. a
non-private address type).
2004-04-05 Thomas Quinot <quinot@act-europe.fr>
* exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
statement whose right-hand side is an inlined call, save a copy of the
original assignment subtree to preserve enough consistency for
Analyze_Assignment to proceed.
* sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
complete assignment subtree which is now unnecessary, as the expansion
of inlined call has been improved to preserve a consistent assignment
tree. Note_Possible_Modification must be called only
after checks have been applied, or else unnecessary checks will
be generated.
* sem_util.adb (Note_Possible_Modification): Reorganise the handling
of explicit dereferences that do not Come_From_Source:
- be selective on cases where we must go back to the dereferenced
pointer (an assignment to an implicit dereference must not be
recorded as modifying the pointer);
- do not rely on Original_Node being present (Analyze_Assignment
calls Note_Possible_Modification on a copied tree).
* sem_warn.adb (Check_References): When an unset reference to a pointer
that is never assigned is encountered, prefer '<pointer> may be null'
warning over '<pointer> is never assigned a value'.
2004-04-05 Ramon Fernandez <fernandez@gnat.com>
* tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
the ABI.
2004-04-05 Olivier Hainque <hainque@act-europe.fr>
* 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
libexc. We currently don't reference anything in this library and
linking it in triggers linker warnings we don't want to see.
* init.c: Update comments.
2004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
* utils.c (create_field_decl): Likewise.
* utils2.c (build_unary_op, gnat_build_constructor): Likewise.
2004-04-02 Arnaud Charlet <charlet@act-europe.fr>
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
Replace ifinfo by ifnottex, to make makeinfo --html happy again.
Add info directory entry and category.
2004-04-02 Jan Hubicka <jh@suse.cz>
* utils.c: Include function.h
(end_subprog_body): Clear DECL_STRUCT_FUNCTION.
2004-04-01 Arnaud Charlet <charlet@act-europe.fr>
PR ada/14150
* Make-lang.in: Clean up generation of documentation
* gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
* xgnatug.adb: Removed, replaced by xgnatugn.adb
* xgnatugn.adb: Replaces xgnatug.adb
* gnat_ug.texi: Removed, replaced by gnat_ugn.texi
* gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Removed.
2004-04-01 Arnaud Charlet <charlet@act-europe.fr>
* utils2.c: Update copyright notice.
2004-04-01 Robert Dewar <dewar@gnat.com>
* checks.adb: Minor reformatting throughout
Note that prev checkin added RM reference to alignment warning
2004-04-01 Ed Schonberg <schonberg@gnat.com>
* exp_aggr.adb (Get_Component_Val): Treat a string literal as
non-static when building aggregate for bit-packed array.
* exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
function call that is itself the actual in a procedure call, build
temporary for it.
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
a string literal, create a temporary for it, constant folding only
handles scalars here.
2004-04-01 Vincent Celier <celier@gnat.com>
* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
Error_Msg_SP): New empty procedures to instantiate the Scanner.
(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
tokens.
(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
and get the checksum.
* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
already in the Q.
Increase the Marking_Label at the end of the Multiple_Main_Loop,
instead of at the beginning.
* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
directly.
(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
on VMS.
* osint.ads (Multi_Unit_Index_Character): New Character global variable
* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
not '~' directly.
* par.adb: Remove test on file name to detect language defined units.
Add test on unit name, after parsing, to detect language defined units
that are not compiled with -gnatg (except System.RPC and its children)
* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
following units without style checking.
* switch-c.adb: Change -gnatC to -gnateI
* usage.adb: Document new switch -gnateInnn
* scng.adb (Accumulate_Token_Checksum): New procedure
(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
word or literal number.
(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
numbers.
2004-04-01 Thomas Quinot <quinot@act-europe.fr>
* a-tasatt.adb,
g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
5vtpopde.adb: Add missing 'constant' keywords.
2004-04-01 Javier Miranda <miranda@gnat.com>
* par-ch4.adb: (P_Allocator): Code cleanup
* sem_ch3.adb (Access_Definition): Properly set the null-excluding
attribute.
* sinfo.ads: Complete documentation of previous change
2004-04-01 Pascal Obry <obry@gnat.com>
* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
only on VMS. This special handling was done because an old GNU/ld bug
on Windows which has been fixed.
2004-04-01 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, make_type_from_size):
Use TYPE_UNSIGNED, not TREE_UNSIGNED.
* trans.c (tree_transform, convert_with_check): Likewise.
* utils.c (gnat_signed_or_unsigned_type): Likewise.
(build_vms_descriptor, unchecked_convert): Likewise.
* utils2.c (nonbinary_modular_operation): Likewise.
2004-03-29 Javier Miranda <miranda@gnat.com>
* checks.adb (Null_Exclusion_Static_Checks): New subprogram
(Install_Null_Excluding_Check): Local subprogram that determines whether
an access node requires a runtime access check and if so inserts the
appropriate run-time check.
(Apply_Access_Check): Call Install_Null_Excluding check if required
(Apply_Constraint_Check): Call Install_Null_Excluding check if required
* checks.ads: (Null_Exclusion_Static_Checks): New subprogram
* einfo.ads: Fix typo in comment
* exp_ch3.adb (Build_Assignment): Generate conversion to the
null-excluding type to force the corresponding run-time check.
(Expand_N_Object_Declaration): Generate conversion to the null-excluding
type to force the corresponding run-time check.
* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
the null-excluding type to force the corresponding run-time check.
* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
case of access types unless they have the null-excluding attribute.
* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
part.
* exp_util.ads: Fix typo in comment
* par.adb (P_Null_Exclusion): New subprogram
(P_Subtype_Indication): New formal that indicates if the null-excluding
part has been scanned-out and it was present
* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
type to force the corresponding run-time check
(Resolve_Aggregate): Propagate the null-excluding attribute to the array
components
(Resolve_Array_Aggregate): Carry out some static checks
(Resolve_Record_Aggregate.Get_Value): Carry out some static check
* sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
attribute must be set only if specified by means of the null-excluding
part. In addition, we must also propagate the access-constant attribute
if present.
(Access_Subprogram_Declaration, Access_Type_Declaration,
Analyze_Component_Declaration, Analyze_Object_Declaration,
Array_Type_Declaration, Process_Discriminants,
Analyze_Subtype_Declaration): Propagate the null-excluding attribute
and carry out some static checks.
(Build_Derived_Access_Type): Set the null-excluding attribute
(Derived_Type_Declaration, Process_Subtype): Carry out some static
checks.
* sem_ch4.adb (Analyze_Allocator): Carry out some static checks
* sem_ch5.adb (Analyze_Assignment): Carry out some static checks
* sem_ch6.adb (Process_Formals): Carry out some static checks.
(Set_Actual_Subtypes): Generate null-excluding subtype if the
null-excluding part was present; it is not required to be done here in
case of anonymous access types.
(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
value.
* sem_res.adb (Resolve_Actuals): Carry out some static check
(Resolve_Null): Allow null in anonymous access
* sinfo.adb: New subprogram Null_Exclusion_Present
All_Present and Constant_Present available on access_definition nodes
* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
object_declaration, derived_type_definition, component_definition,
discriminant_specification, access_to_object_definition,
access_function_definition, allocator, access_procedure_definition,
access_definition, parameter_specification, All_Present and
Constant_Present flags available on access_definition nodes.
2004-03-29 Robert Dewar <dewar@gnat.com>
* fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
sem_prag.adb: Updates to handle multiple units/file
* par.adb: Change test for s-rpc to s-rp for detecting rpc and children
* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
sem_util.adb: Minor reformatting
* sem_ch12.adb: Add comment for previous change
2004-03-29 Laurent Pautet <pautet@act-europe.fr>
* osint.adb (Executable_Prefix): Set Exec_Name to the current
executable name when not initialized. Otherwise, use its current value.
* osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
initialize it to another executable name than the current one. This
allows to configure paths for an executable name (gnatmake) different
from the current one (gnatdist).
2004-03-29 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_Call): A call to a function declared in the
current unit cannot be inlined if it appears in the body of a withed
unit, to avoid order of elaboration problems in gigi.
* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
information for protected (wrapper) operation as well, to simplify gdb
use.
* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
protected body, indicate that the entity for the generated spec comes
from source, to ensure that references are properly generated for it.
(Build_Body_To_Inline): Do not inline a function that returns a
controlled type.
* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
apply convention to homonyms that are declared explicitly.
* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
that renames an equality operator and the operands are overloaded,
resolve them with the declared formal types, before rewriting as an
operator.
2004-03-29 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-03-25 Vasiliy Fofanov <fofanov@act-europe.fr>
* memtrack.adb: Log realloc calls, which are treated as free followed
by alloc.
2004-03-25 Vincent Celier <celier@gnat.com>
* prj-makr.adb (Process_Directories): Detect when a file contains
several units. Do not include such files in the config pragmas or
in the naming scheme.
* prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
Resolve links only when not in Trusted_Mode.
(Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
Do not resolve links for the display names.
* prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
resolve links when computing the display names.
2004-03-25 Thomas Quinot <quinot@act-europe.fr>
* sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
attribute reference does not denote a subtype, it can be any
expression that has a classwide type, potentially after an implicit
dereference. In particular, the prefix can be a view conversion for
a classwide type (for which Is_Object_Reference holds), but it can
also be a value conversion for an access-to-classwide type. In the
latter case, there is an implicit dereference, and the original node
for the prefix does not verify Is_Object_Reference.
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
conversion of a discriminant-dependent component of a mutable object
is one itself.
2004-03-25 Ed Schonberg <schonberg@gnat.com>
* freeze.adb (Freeze_Entity): When an inherited subprogram is
inherited, has convention C, and has unconstrained array parameters,
place the corresponding warning on the derived type declaration rather
than the original subprogram.
* sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
indication on renaming declaration, if formal has a box and actual
is absent.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
determine whether to generate an implicit or explicit reference to
the renamed entity.
* sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
subprogram renaming comes from a defaulted formal subprogram in an
instance.
2004-03-25 Gary Dismukes <dismukes@gnat.com>
* sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
value expressions to ensure that calls within a component definition
will be checked (since those are evaluated during the record type's
elaboration).
2004-03-25 Arnaud Charlet <charlet@act-europe.fr>
* s-tpobop.adb: Code clean up:
(Requeue_Call): Extract from PO_Service_Entries to remove duplicated
code.
(PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
2004-03-25 Jose Ruiz <ruiz@act-europe.fr>
* Makefile.in: Clean up in the ravenscar run time.
2004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
of No_Strict_Aliasing to build_pointer_type_for_mode.
* utils.c (update_pointer_to): Walk pointer and ref chains.
2004-03-22 Cyrille Comar <comar@act-europe.fr>
* ali.ads: Fix Comment about Dynamic_Elab.
* gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
Has_RACW, Is_Generic, etc.)
(Output_Object, Gnatls): Take into account ALI files not attached to
an object.
2004-03-22 Vincent Celier <celier@gnat.com>
* gprep.adb: Change all String_Access to Name_Id
(Is_ASCII_Letter): new function
(Double_File_Name_Buffer): New procedure
(Preprocess_Infile_Name): New procedure
(Process_Files): New procedure
(Gnatprep): Check if output and input are existing directories.
Call Process_Files to do the real job.
2004-03-22 Robert Dewar <dewar@gnat.com>
* prj-env.adb, prj-nmsc.ads, prj-proc.ads,
s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
2004-03-22 Sergey Rybin <rybin@act-europe.fr>
* scn.adb (Contains): Add check for EOF, is needed for a degenerated
case when the source contains only comments.
2004-03-22 Ed Schonberg <schonberg@gnat.com>
* sem_ch10.adb (Analyze_Compilation_Unit): When generating a
declaration for a child subprogram body that acts as a spec, indicate
that the entity in the declaration needs debugging information.
* sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
full view if the subtype is created for a constrained record component;
gigi has enough information to construct the record, and there is no
place in the tree for the declaration.
* sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
serial number for the dummy body that is built for analysis, to avoid
inconsistencies in the generation of internal names when compiling
with -gnatN.
2004-03-22 Thomas Quinot <quinot@act-europe.fr>
* sem_util.adb (Is_Object_Reference): A view conversion denotes an
object.
2004-03-22 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
* trans.c (tree_transform, emit_index_check): Likewise.
* utils.c (build_template): Likewise.
(max_size, convert): Remove handling of WITH_RECORD_EXPR.
(maybe_unconstrained_array, unchecked_convert): Likewise.
* utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
(build_unary_op): Likewise.
(compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
(fill_vms_descriptor): Likewise.
(build_call_alloc_dealloc): Likewise.
ALIGN is unsigned.
* gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
PR other/14630
* gnat_ug.texi: Add info directory category and entry.
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
2004-03-19 Arnaud Charlet <charlet@act-europe.fr>
* ada-tree.h: Update copyright notice.
Minor reformatting.
2004-03-19 Olivier Hainque <hainque@act-europe.fr>
* decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
as regular exception objects and not as mere integers representing the
condition code. The latter approach required some dynamics to mask off
severity bits, which did not fit well into the GCC table based model.
(gnat_to_gnu_entity, objects): Don't supply an external name for VMS
exception data objects. We don't it and it would conflict with the other
external symbol we have to generate for such exceptions.
* trans.c (tree_transform, case N_Exception_Handler): Remove part of
the special code for VMS exceptions, since these are now represented
as regular exceptions objects.
2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (debug_no_type_hash): Remove.
(gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
* misc.c (LANG_HOOK_HASH_TYPE): Redefine.
2004-03-19 Laurent Guerby <laurent@guerby.net>
* sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
aggregate, allows bootstrap from 3.3 on powerpc-darwin.
2004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
(TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
(TYPE_RM_SIZE_INT): Directly use type.values.
(TREE_LOOP_ID): Clean up check.
* decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
TYPE_VALUES, not TYPE_FIELDS.
* trans.c (convert_with_check): Delay access of bounds of basetype
until sure is numeric.
2004-03-18 Arnaud Charlet <charlet@act-europe.fr>
* 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
Code clean up:
* 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
Specific.Set instead of direct call to e.g pthread_setspecific.
2004-03-18 Thomas Quinot <quinot@act-europe.fr>
* adaint.c: Update comments.
* Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
GNATLIB_SHARED for FreeBSD.
2004-03-18 Jose Ruiz <ruiz@act-europe.fr>
* init.c [VxWorks]: Do not fix the stack size for the environment task.
When needed (stack checking) the stack size is retrieved
from the VxWorks kernel.
* Makefile.in: Flag -nostdinc is required when building the run time
for avoiding looking for files in the base compiler.
Add the VxWorks specific version of the package body for
System.Stack_checking.Operations (5zstchop.adb).
* Make-lang.in: Add the object file for
System.Stack_Checking.Operations.
* Makefile.rtl: Add object file for the package
System.Stack_Checking.Operations.
* s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
* s-stache.ads, s-stache.adb: Move the operations related to stack
checking from this package to package System.Stack_Checking.Operations.
This way, stack checking operations are only linked in the final
executable when using the -fstack-check flag.
2004-03-18 Doug Rupp <rupp@gnat.com>
* Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
Reorganize ifeq's.
* 5qsystem.ads, 5xcrtl.ads: New files.
2004-03-18 Vincent Celier <celier@gnat.com>
* prj.adb (Reset): Reset hash table Files_Htable
* prj-env.adb (Source_Paths, Object_Paths): New tables.
(Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
the procedures Add_To_Path_File.
(Set_Ada_Paths): Accumulate source and object dirs in the tables,
making sure that each directory is present only once and, for object
dirs, when a directory already present is added, the duplicate is
removed and the directory is always put as the last in the table.
Write the path files at the end of these accumulations.
* prj-nmsc.adb (Record_Source): Add source file name in hash table
Files_Htable for all sources.
* prj-proc.adb (Process): Remove restrictions between not directly
related extending projects.
2004-03-18 Emmanuel Briot <briot@act-europe.fr>
* prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
(Find_Sources): Minor speed optimization.
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
parameter Trusted_Mode.
2004-03-18 Sergey Rybin <rybin@act-europe.fr>
* scn.adb (Determine_License): Take into account a degenerated case
when the source contains only comments.
2004-03-18 Ed Schonberg <schonberg@gnat.com>
* sem_warn.adb (Check_References): For a warning on a selected
component that does not come from source, locate an uninitialized
component of the record type to produce a more precise error message.
2004-03-15 Jerome Guitton <guitton@act-europe.fr>
* 3zsoccon.ads: Fix multicast options.
* s-thread.ads: Move unchecked conversion from ATSD_Access to Address
in the spec.
2004-03-15 Robert Dewar <dewar@gnat.com>
* sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
pragma used for a private type.
* lib-xref.adb (Generate_Reference): Do not generate warning if
reference is in a different unit from the pragma Unreferenced.
* 5vtpopde.adb: Minor reformatting
Fix casing of To_Task_ID
* sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
flag if we have an unchecked conversion to an access type in the same
unit.
2004-03-15 Geert Bosch <bosch@gnat.com>
* a-ngcoty.adb (Modulus): In alternate formula for large real or
imaginary parts, use Double precision throughout.
* a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
we want to be able to compile run-time with -gnata for testing, but
this may also be instantiated in user code that is compiled with -gnata.
2004-03-15 Olivier Hainque <hainque@act-europe.fr>
* s-stalib.ads (Exception_Code): New type, to represent Import/Export
codes. Having a separate type for this is useful to enforce consistency
throughout the various run-time units.
(Exception_Data): Use Exception_Code for Import_Code.
* s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
Natural and Integer in various places.
(Register_VMS_Exception): Use Base_Code_In to compute the exception code
with the severity bits masked off.
(Register_VMS_Exception): Handle the additional exception data pointer
argument.
* raise.c (_GNAT_Exception structure): Remove the handled_by_others
component, now reflected by an exported accessor.
(is_handled_by): New routine to compute whether the propagated
occurrence matches some handler choice specification. Extracted out of
get_action_description_for, and expanded to take care of the VMS
specifities.
(get_action_description_for): Use is_handled_by instead of an explicit
complex condition to decide if the current choice at hand catches the
propagated occurrence.
* raise.h (Exception_Code): New type for C.
* rtsfind.ads (RE_Id, RE_Unit_Table): Add
System.Standard_Library.Exception_Code, to allow references from the
pragma import/export expander.
* a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
New accessors to allow easy access to GNAT exception data
characteristics.
(GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
redundant Handled_By_Others component, helper for the personality
routine which will now be able to call the appropriate exception data
accessor instead.
* cstand.adb (Create_Standard): Adjust the type of the Import_Code
component of Standard_Exception_Type to be the closest possible to
Exception_Code in System.Standard_Library, that we cannot get at this
point. Expand a ??? comment to notify that this type node should
probably be rewritten later on.
* exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
registration call to include a pointer to the exception object in the
arguments.
* init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
instead of int and explicit bitmasks.
2004-03-15 Vincent Celier <celier@gnat.com>
* vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
* a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
longer needed now that it is in the spec of
System.Tasking.Task_Attributes.
* adaint.h, adaint.c: (__gnat_create_output_file): New function
* gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
* g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
* make.adb (Gnatmake): Do not check the executable suffix; it is being
taken care of in Scan_Make_Arg.
(Scan_Make_Arg): Add the executable suffix only if the argument
following -o, in canonical case, does not end with the executable
suffix. When in verbose mode and executable file name does not end
with executable suffix, output the executable name, in canonical case.
* s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
to avoid warnings when instantiating Ada.Task_Attributes.
Minor reformating.
* mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
in the correct order.
* prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
redirect standard output and error to a file for the invocation of the
compiler, then read the file.
* prj-nmsc.adb (Find_Sources): Use the Display_Value for each
directory, instead of the Value.
(Find_Source_Dirs): Remove useless code & comments.
2004-03-15 Ed Schonberg <schonberg@gnat.com>
* exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
tagged type is inherited, and the parent operation is not frozen yet,
force generation of a freeze node for the inherited operation, so the
corresponding dispatch entry is properly initialized.
(Make_Predefined_Primitive_Specs): Check that return type is Boolean
when looking for user-defined equality operation.
* exp_ch4.adb (Expand_Composite_Equality): Check that return type is
boolean when locating primitive equality of tagged component.
* exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
bit-aligned field and the right-hand side a string literal, introduce
a temporary before expanding assignment into a loop.
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
priority in full, to ensure that any expanded subepxressions of it are
elaborated in the scope of the init_proc.
* exp_prag.adb (Expand_Pragma_Import): Search for initialization call
after object declaration, skipping over code that may have been
generated for validity checks.
* sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
discriminants, ignore the known discriminants of its full view, if
any, to check legality.
* sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
component if type has unknown discriminants.
(Analyze_Private_Extension_Declaration): Discriminant constraint is
null if type has unknown discriminants.
* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
for end label when present.
* s-fileio.adb (Open): When called with a C_Stream, use given name for
temporary file, rather than an empty string.
2004-03-15 Ed Falis <falis@gnat.com>
* s-thread.adb: Removed, no longer used.
2004-03-15 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (target.h): Now include.
(gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
in new build_pointer_from_mode calls for non-fat/non-thin pointer.
(validate_size): For POINTER_TYPE, get smallest size permitted on
machine.
* fe.h: Sort Einfo decls and add Set_Mechanism.
* Makefile.in: (LIBGNAT_SRCS): Remove types.h.
(ada/decl.o): Depends on target.h.
* trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
FUNCTION_BOUNDARY; always use TYPE_ALIGN.
2004-03-15 Thomas Quinot <quinot@act-europe.fr>
* 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
* exp_ch4.adb (Expand_N_Indexed_Component): Do not call
Insert_Dereference_Action when rewriting an implicit dereference into
an explicit one, this will be taken care of during expansion of the
explicit dereference.
(Expand_N_Slice): Same. Always do the rewriting, even for the case
of non-packed slices, since the dereference action generated by
expansion of the explicit dereference is needed in any case.
(Expand_N_Selected_Component): When rewriting an implicit dereference,
analyze and resolve the rewritten explicit dereference so it is seen
by the expander.
(Insert_Dereference_Action): This procedure is now called only for the
expansion of an N_Explcit_Dereference_Node. Do insert a check even for
dereferences that do not come from source (including explicit
dereferences resulting from rewriting implicit ones), but do not
recursively insert a check for the dereference nodes contained within
the check.
(Insert_Dereference_Action): Clarify and correct comment.
2004-03-08 Paolo Bonzini <bonzini@gnu.org>
PR ada/14131
Move language detection to the top level.
* config-lang.in: Build by default.
2004-03-05 Robert Dewar <dewar@gnat.com>
* 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
* a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
unchecked conversion to spec to avoid warnings.
* s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
to Task_ID
* 7stpopsp.adb: Correct casing in To_Task_ID call
* a-strsea.ads, a-strsea.adb: Minor reformatting
* einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
* errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
Adjust Max_Msg_Length to be clearly large enough.
* fe.h: Define In_Same_Source_Unit
* osint.adb: Add pragma Warnings Off to suppress warnings
* g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
aliasing warnings.
* opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
* par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
* sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
* sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
* sem_prag.adb: Implement pragma No_Strict_Aliasing.
* sinfo.ads: Remove obsolete comment on validate unchecked conversion
node. We now do generate them for gcc back end.
* table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
warning.
* sinput-c.adb: Fix bad name in header.
Add pragma Warnings Off to suppress aliasing warning.
* sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.
* snames.h, snames.ads, snames.adb: Add entry for pragma
No_Strict_Aliasing.
2004-03-05 Vincent Celier <celier@gnat.com>
* prj-com.ads: Add hash table Files_Htable to check when a file name
is already a source of another project.
* prj-nmsc.adb (Record_Source): Before recording a new source, check
if its file name is not already a source of another project. Report an
error if it is.
* gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
source file name, call gnatpp with all the sources of the main project.
* vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
of file names.
* vms_data.ads: Correct documentation of new /OPTIMIZE keyword
NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
/RUNTIME_SYSTEM=, converted to --RTS=
/NOTABS, converted to -notabs
2004-03-05 Pascal Obry <obry@gnat.com>
* make.adb: Minor reformatting.
2004-03-05 Ed Schonberg <schonberg@gnat.com>
Part of implemention of AI-262.
* par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
* sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
procedure.
* sem_ch3.adb (Analyze_Component_Declaration): Improve error message
when component type is a partially constrained class-wide subtype.
(Constrain_Discriminated_Type): If parent type has unknown
discriminants, a constraint is illegal, even if full view has
discriminants.
(Build_Derived_Record_Type): Inherit discriminants when deriving a type
with unknown discriminants whose full view is a discriminated record.
* sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
flag, to handle properly derivations of tagged types with unknown
discriminants.
(Analyze_Package_Spec, Analyze_Package_Body): Install
Private_With_Clauses before analyzing private part or body.
* einfo.ads: Indicate that both Has_Unknown_Discriminants and
Has_Discriminants can be true for a given type (documentation).
2004-03-05 Arnaud Charlet <charlet@act-europe.fr>
* s-restri.ads: Fix license (GPL->GMGPL).
* s-tassta.adb: Minor reformatting.
* s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
by calls to Exit_One_ATC_Level, since additional clean up is performed
by this function.
* s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
by calls to Exit_One_ATC_Level, since additional clean up is performed
by this function.
2004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c: Reflect GCC changes to fix bootstrap problem.
Add warning for suspicious aliasing unchecked conversion.
2004-03-05 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-03-02 Emmanuel Briot <briot@act-europe.fr>
* ali.adb (Read_Instantiation_Instance): Do not modify the
current_file_num when reading information about instantiations, since
this corrupts files in later references.
2004-03-02 Vincent Celier <celier@gnat.com>
* bcheck.adb (Check_Consistency): Get the full path of an ALI file
before checking if it is read-only.
* bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
of SRC_DIRS and eliminate duplicates.
* gprcmd.adb: Replace command "path" with command "path_sep" to return
the path separator.
(Usage): Document path_sep
* Makefile.generic: For Ada and GNU C++ cases, link directly with the
C++ compiler. No need for a script.
Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
subst.
* prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
where there are Ada sources.
(Set_Ada_Paths): Only add to the include path the source dirs of project
with Ada sources.
(Add_To_Path): Add the Display_Values of the directories, not their
Values.
* prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
data.
* prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
is not No_Name.
(Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
Value is canonicalized.
(Language_Independent_Check): Do not copy Value to Display_Value when
canonicalizing Value.
* prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
path to find limited with cycles.
(Parse_Single_Project): Use canonical cased path to find the end of a
with cycle.
2004-03-02 Ed Schonberg <schonberg@gnat.com>
* sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
and not a child unit.
* sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
appear in a with_clause.
* decl.c (gnat_to_gnu_type): If entity is a generic type, which can
only happen in type_annotate mode, do not try to elaborate it.
* exp_util.adb (Force_Evaluation): If expression is a selected
component on the left of an assignment, use a renaming rather than a
temporary to remove side effects.
* freeze.adb (Freeze_Entity): Do not freeze a global entity within an
inlined instance body, which is analyzed before the end of the
enclosing scope.
2004-03-02 Robert Dewar <dewar@gnat.com>
* par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
sem_ch4.adb: Use new feature for substitution of keywords in VMS
* errout.ads, errout.adb: Implement new circuit for substitution of
keywords in VMS.
* sem_case.adb (Analyze_Choices): Place message properly when case is
a subtype reference rather than an explicit range.
* sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
2004-03-02 Doug Rupp <rupp@gnat.com>
* init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
2004-03-02 Thomas Quinot <quinot@act-europe.fr>
* s-tporft.adb: Add missing locking around call to Initialize_ATCB.
2004-03-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
BLKmode bitfield.
2004-02-25 Robert Dewar <dewar@gnat.com>
* 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
the defining instance of the type to avoid aliasing problems.
Fix copyright header. Fix bad comments in package header.
* exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
2004-02-25 Ed Schonberg <schonberg@gnat.com>
* exp_ch2.adb (Param_Entity): Handle properly formals that have been
rewritten as references when aliased through an address clause.
* sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
whether call can be interpreted as an indirect call to the result of a
parameterless function call returning an access subprogram.
2004-02-25 Arnaud Charlet <charlet@act-europe.fr>
Code clean up:
* exp_ch7.adb (Make_Clean): Remove generation of calls to
Unlock[_Entries], since this is now done by Service_Entries directly.
* exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
* s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
Requeue_Call for better code readability. Change spec and update calls:
PO_Service_Entries now unlock the PO on exit.
(Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
PO_Service_Entries.
* s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
* s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
2004-02-25 Sergey Rybin <rybin@act-europe.fr>
* exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
protected subprogram call and analyzing the result of such expanding
in case when the called protected subprogram is eliminated.
* sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
names.
2004-02-25 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in: Clean ups.
2004-02-23 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
protected operations if original subprogram is flagged as eliminated.
(Expand_N_Subprogram_Body): For a protected operation, create
discriminals for next operation before checking whether the operation
is eliminated.
* exp_ch9.adb (Expand_N_Protected_Body,
Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
for internal protected operations if the original subprogram is
eliminated.
* sem_elim.adb (Check_Eliminated): Handle properly protected operations
declared in a single protected object.
2004-02-23 Vincent Celier <celier@gnat.com>
* prj-attr.adb: Make attribute Builder'Executable an associative array,
case insensitive if file names are case insensitive, instead of a
standard associative array.
* prj-attr.adb (Initialize): For 'b' associative arrays, do not set
them as case insensitive on platforms where the file names are case
sensitive.
* prj-part.adb (Parse_Single_Project): Make sure, when checking if
project file has already been parsed that canonical path are compared.
2004-02-23 Robert Dewar <dewar@gnat.com>
* sinput-c.ads: Correct bad unit title in header
* freeze.adb: Minor reformatting
2004-02-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c (tree_transform, case N_Procedure_Call_Statement): For
nonaddressable COMPONENT_REF that is removing padding that we are
taking the address of, take the address of the padded record instead
if item is variable size.
2004-02-20 Robert Dewar <dewar@gnat.com>
* bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
2004-02-20 Ed Schonberg <schonberg@gnat.com>
* freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
itype references for the constrained designated type of a component
whose base type is already frozen.
2004-02-20 Arnaud Charlet <charlet@act-europe.fr>
* init.c (__gnat_error_handler [tru64]): Rewrite previous change to
avoid GCC warnings.
2004-02-20 Sergey Rybin <rybin@act-europe.fr>
* sem_ch12.adb (Analyze_Formal_Package): Create a new defining
identifier for a phantom package that rewrites the formal package
declaration with a box. The Add semantic decorations for the defining
identifier from the original node (that represents the formal package).
2004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
* Make-lang.in (ada/stamp-sdefault): Use the top level
move-if-change.
2004-02-19 Richard Henderson <rth@redhat.com>
* misc.c (record_code_position): Add third build arg for RTL_EXPR.
2004-02-18 Emmanuel Briot <briot@act-europe.fr>
* ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
Scan_ALI can be used for multiple ALI files without reinitializing
between calls.
2004-02-18 Robert Dewar <dewar@gnat.com>
* debug.adb: Minor reformatting.
2004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
to zero if there is an address clause.
2004-02-18 Thomas Quinot <quinot@act-europe.fr>
* exp_util.adb (Side_Effect_Free): Any literal is side effects free.
2004-02-18 Gary Dismukes <dismukes@gnat.com>
* layout.adb (Layout_Component_List): Revise generation of call to
discriminant-checking function to pass selections of all of the type's
discriminants rather than just the variant-controlling discriminant.
2004-02-18 Olivier Hainque <hainque@act-europe.fr>
* 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
fail in the current setup and triggers spurious system error messages.
Pretend it occurred and failed instead.
2004-02-18 Vincent Celier <celier@gnat.com>
* bld.adb: Mark FLDFLAGS as saved
(Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
it is not the root project. Put each directory to be
extended between double quotes to prevent it to be expanded on Windows.
(Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
the project file. Set them back to their initial values if they have not
been set in the project file.
* gprcmd.adb: (Gprdebug, Debug): New global variables
(Display_Command): New procedure
(Usage): Document new command "linkopts"
Call Display_Command when env var GPRDEBUG has the value "TRUE"
Implement new command "linkopts"
Remove quotes that may be around arguments for "extend"
Always call Normalize_Pathname with arguments formatted for the platform
* Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
Change @echo to @$(display) in target clean to be able to clean silently
* Makefile.prolog: Save FLDFLAGS and give it an initial empty value
* prj-part.adb (Project_Path_Name_Of): Do not put final result in
canonical case.
* prj-part.adb (Parse_Single_Project): Always call with From_Extended
= Extending_All when current project is an extending all project.
* vms_conv.adb (Output_File_Expected): New Boolean global variable,
set to True only for LINK command, after Unix switch -o.
(Process_Arguments): Set Output_File_Expected to True for LINK command
after Unix switch -o. When Output_File_Expected is True, never add an
extension to a file name.
* 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
option file name, only to the --for-linker= switch.
(Option_File_Name): If option file name do not end with ".opt", append
"/OPTIONS".
2004-02-18 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
* Make-lang.in (stamp-sdefault): Do not depend on
move-if-change.
2004-02-12 Zack Weinberg <zack@codesourcery.com>
* config-lang.in: Disable Ada by default until probe logic for
a bootstrap Ada compiler can be moved to the top level configure
script.
2004-02-12 Olivier Hainque <hainque@act-europe.fr>
* decl.c (components_to_record): Don't claim that the internal fields
we make to hold the variant parts are semantically addressable, because
they are not.
* exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
adjust the comment describing the modular type form when we can use it.
(Install_PAT): Account for the Esiz renaming.
* init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
sc_onstack context indication before raising the exception to which
the signal is mapped. Allows better handling of later signals possibly
triggered by the resumed user code if the exception is handled.
2004-02-12 Arnaud Charlet <charlet@act-europe.fr>
* 5zinit.adb: Removed, no longer used.
2004-02-12 Robert Dewar <dewar@gnat.com>
* ali.adb: Remove separating space between parameters on R line. Makes
format consistent with format used by the binder for Set_Globals call.
* atree.ads, atree.adb: Minor reformatting (new function header format)
* bindgen.adb: Add Run-Time Globals documentation section containing
detailed documentation of the globals passed from the binder file to
the run time.
* gnatls.adb: Minor reformatting
* init.c (__gnat_set_globals): Add note pointing to documentation in
bindgen.
* lib-writ.ads, lib-writ.adb: Remove separating space between
parameters on R line.
Makes format consistent with format used by the binder for Set_Globals
call.
* osint.ads: Add 2004 to copyright notice
Minor reformatting
* snames.ads: Correct capitalization of FIFO_Within_Priorities
Noticed during code reading, documentation issue only
* usage.adb: Remove junk line for obsolete C switch
Noticed during code reading
2004-02-12 Vincent Celier <celier@gnat.com>
* bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
extend for each directory, so that multiple /** directories are
extended individually.
(Recursive_Process): Set the default for LANGUAGES to ada
* gprcmd.adb: Define new command "ignore", to do nothing.
Implement new comment "path".
* Makefile.generic: Suppress output when SILENT is set
Make sure that when compiler for C/C++ is gcc, the correct -x switch is
used, so that the correct compiler is invoked.
When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
CXX_INCLUDE_PATH, to avoid failure with too long command lines.
2004-02-12 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in: Clean ups and remove obsolete targets.
2004-02-12 Ed Schonberg <schonberg@gnat.com>
* exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
predicate declared in exp_util.
* exp_util.adb: Add comments.
* sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
visibility before compiling context of the subunit.
* sem_res.adb (Check_Parameterless_Call): If the context expects a
value but the name is a procedure, do not attempt to analyze as a call,
in order to obtain more telling diagnostics.
* sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
'Access on parameterless function calls.
(Normalize_Actuals): For a parameterless function call with missing
actuals, defer diagnostic until resolution of enclosing call.
* sem_util.adb (Wrong_Type): If the context type is an access to
subprogram and the expression is a procedure name, suggest a missing
'attribute.
2004-02-10 Arnaud Charlet <charlet@act-europe.fr>,
Nathanael Nerode <neroden@gcc.gnu.org>
PR ada/6637, PR ada/5911
Merge with libada-branch:
* config-lang.in: Build libada only when ada is built.
2004-02-09 Ed Schonberg <schonberg@gnat.com>
* exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
for a tagged type, verify that both formals have the same type.
* exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
temporary when the formal is an in-parameter and the actual a possibly
unaligned slice.
* exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
when expansion is disabled, to ensure proper name capture with
overloaded literals. Condition can be of any boolean type, resolve
accordingly.
* sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
renaming is for a formal subprogram with a default operator name, and
there is a usable operator that is visible at the point of
instantiation.
2004-02-09 Robert Dewar <dewar@gnat.com>
* ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
rewrite to ignore errors in ali files, intended to allow tools downward
compatibility with new versions of ali files.
* ali.ads: Add new parameter Ignore_Errors
* bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
duplicating the error message giving the file with restrictions.
* debug.adb: Add debug flag I for gnatbind
* errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
operators for the case where the operator is a defining operator.
* exp_ch3.adb: Minor reformatting (new function spec format).
* exp_ch4.adb: Add comment for previous change, and make minor
adjustment to loop to always check for improper loop termination.
Minor reformatting throughout (new function spec format).
* gnatbind.adb: Implement -di debug flag for gnatbind
* gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
* gnatls.adb: Call Scan_ALI with Ignore_Errors set to True
* lib-load.adb: Fix bad assertion.
Found by testing and code reading.
Minor reformatting.
* lib-load.ads: Minor reformatting.
* lib-writ.adb: There is only one R line now.
* lib-writ.ads: Add documentation on making downward compatible changes
to ali files so old tools work with new ali files.
There is only one R line now.
Add documentation on format incompatibilities (with special GPS note)
* namet.ads, namet.adb: (Is_Operator_Name): New procedure
* par-load.adb: Minor reformatting
* sem_ch8.adb: Fix to error message from last update
Minor reformatting and restructuring of code from last update
* par-prag.adb, snames.adb, snames.ads, snames.h,
sem_prag.adb: Implement pragma Profile.
* stylesw.adb: Implement -gnatyN switch to turn off all style check
options.
* usage.adb: Add line for -gnatyN switch
* vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
2004-02-09 Albert Lee <lee@gnat.com>
* errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
2004-02-09 Ed Schonberg <schonberg@gnat.com>
* exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
slices.
* exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
is nested in an instance that is not frozen yet, to avoid
order-of-elaboration problems in gigi.
* sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
body the attribute is legal.
2004-02-09 Robert Dewar <dewar@gnat.com>
* s-rident.ads: Minor comment correction
* targparm.adb: Remove dependence on uintp completely. There was
always a bug in Make in that it called Targparm before initializing
the Uint package. The old code appeared to get away with this, but
the new code did not! This caused an assertion error in gnatmake.
* targparm.ads: Fix bad comment, restriction pragmas with parameters
are indeed fully supported.
2004-02-06 Alan Modra <amodra@bigpond.net.au>
* misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
* ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
with targetm.calls.promote_prototypes.
2004-02-04 Robert Dewar <dewar@gnat.com>
* 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
ali.ads, gprcmd.adb: Minor reformatting
* bindgen.adb: Output restrictions string for new style restrictions
handling
* impunit.adb: Add s-rident.ads (System.Rident) and
s-restri (System.Restrictions)
* lib-writ.adb: Fix bug in writing restrictions string (last few
entries wrong)
* s-restri.ads, s-restri.adb: Change name Restrictions to
Run_Time_Restrictions to avoid conflict with package name.
Add circuit to read and acquire run time restrictions.
2004-02-04 Jose Ruiz <ruiz@act-europe.fr>
* restrict.ads, restrict.adb: Use the new restriction
No_Task_Attributes_Package instead of the old No_Task_Attributes.
* sem_prag.adb: No_Task_Attributes is a synonym of
No_Task_Attributes_Package.
* snames.ads, snames.adb: New entry for proper handling of
No_Task_Attributes.
* s-rident.ads: Adding restriction No_Task_Attributes_Package
(AI-00249) that supersedes the GNAT specific restriction
No_Task_Attributes.
2004-02-04 Ed Schonberg <schonberg@gnat.com>
* sem_prag.adb:
(Analyze_Pragma, case Warnings): In an inlined body, as in an instance
body, an identifier may be wrapped in an unchecked conversion.
2004-02-04 Vincent Celier <celier@gnat.com>
* lib-writ.ads: Comment update for the W lines
* bld.adb: (Expression): An empty string list is static
* fname-uf.adb: Minor comment update
* fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
* gnatbind.adb: Initialize Cumulative_Restrictions with the
restrictions on the target.
2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
* ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
gen_rtx.
2004-02-02 Arnaud Charlet <charlet@gnat.com>
* Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
2004-02-02 Vincent Celier <celier@gnat.com>
* gprcmd.adb (Check_Args): If condition is false, print the invoked
comment before the usage.
Gprcmd: Fail when command is not recognized.
(Usage): Document command "prefix"
* g-md5.adb (Digest): Process last block.
(Update): Do not process last block. Store remaining characters and
length in Context.
* g-md5.ads (Update): Document that several call to update are
equivalent to one call with the concatenated string.
(Context): Add fields to allow new Update behaviour.
* fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
defaulted to False.
When May_Fail is True and no existing file can be found, return No_File.
* 6vcstrea.adb: Inlined functions are now wrappers to implementation
functions.
* lib-writ.adb (Write_With_Lines): When body file does not exist, use
spec file name instead on the W line.
2004-02-02 Robert Dewar <dewar@gnat.com>
* ali.adb: Read and acquire info from new format restrictions lines
* bcheck.adb: Add circuits for checking restrictions with parameters
* bindgen.adb: Output dummy restrictions data
To be changed later
* ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
exp_ch3.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_util.adb,
freeze.adb, gnat1drv.adb, sem_attr.adb, sem_ch10.adb, sem_ch11.adb,
sem_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
* exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
the warning message on access to possibly uninitialized variable S)
Minor changes for new restrictions handling.
* gnatbind.adb: Minor reformatting
Minor changes for new restrictions handling
Move circuit for -r processing here from bcheck (cleaner)
* gnatcmd.adb, gnatlink.adb: Minor reformatting
* lib-writ.adb: Output new format restrictions lines
* lib-writ.ads: Document new R format lines for new restrictions
handling.
* s-restri.ads/adb: New files
* Makefile.rtl: Add entry for s-restri.ads/adb
* par-ch3.adb: Fix bad error messages starting with upper case letter
Minor reformatting
* restrict.adb: Major rewrite throughout for new restrictions handling
Major point is to handle restrictions with parameters
* restrict.ads: Major changes in interface to handle restrictions with
parameters. Also generally simplifies setting of restrictions.
* snames.ads/adb: New entry for proper handling of No_Requeue
* sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
restriction counting.
Other minor changes for new restrictions handling
* sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
Restriction_Warnings now allows full parameter notation
Major rewrite of Restrictions for new restrictions handling
2004-02-02 Javier Miranda <miranda@gnat.com>
* par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
syntax rule for object renaming declarations.
(P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
component definitions.
* sem_ch3.adb (Analyze_Component_Declaration): Give support to access
components.
(Array_Type_Declaration): Give support to access components. In addition
it was also modified to reflect the name of the object in anonymous
array types. The old code did not take into account that it is possible
to have an unconstrained anonymous array with an initial value.
(Check_Or_Process_Discriminants): Allow access discriminant in
non-limited types.
(Process_Discriminants): Allow access discriminant in non-limited types
Initialize the new Access_Definition field in N_Object_Renaming_Decl
node. Change Ada0Y to Ada 0Y in comments
* sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
equality operators.
Change Ada0Y to Ada 0Y in comments
* sem_ch8.adb (Analyze_Object_Renaming): Give support to access
renamings Change Ada0Y to Ada 0Y in comments
* sem_type.adb (Find_Unique_Type): Give support to the equality
operators for universal access types
Change Ada0Y to Ada 0Y in comments
* sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
* sinfo.ads (N_Component_Definition): Addition of Access_Definition
field.
(N_Object_Renaming_Declaration): Addition of Access_Definition field
Change Ada0Y to Ada 0Y in comments
* sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
component definition and object renaming nodes
Change Ada0Y to Ada 0Y in comments
2004-02-02 Jose Ruiz <ruiz@act-europe.fr>
* restrict.adb: Use the new restriction identifier
No_Requeue_Statements instead of the old No_Requeue for defining the
restricted profile.
* sem_ch9.adb (Analyze_Requeue): Check the new restriction
No_Requeue_Statements.
* s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
that supersedes the GNAT specific restriction No_Requeue. The later is
kept for backward compatibility.
2004-02-02 Ed Schonberg <schonberg@gnat.com>
* lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
pragma and fix incorrect ones.
* sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
warning if the pragma is redundant.
2004-02-02 Thomas Quinot <quinot@act-europe.fr>
* 5staprop.adb: Add missing 'constant' keywords.
* Makefile.in: use consistent value for SYMLIB on
platforms where libaddr2line is supported.
2004-02-02 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* utils.c (end_subprog_body): Do not call rest_of_compilation if just
annotating types.
2004-02-02 Olivier Hainque <hainque@act-europe.fr>
* init.c (__gnat_install_handler): Setup an alternate stack for signal
handlers in the environment thread. This allows proper propagation of
an exception on stack overflows in this thread even when the builtin
ABI stack-checking scheme is used without support for a stack reserve
region.
* utils.c (create_field_decl): Augment the head comment about bitfield
creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
here, because the former is not accurate enough at this point.
Let finish_record_type decide instead.
Don't make a bitfield if the field is to be addressable.
Always set a size for the field if the record is packed, to ensure the
checks for bitfield creation are triggered.
(finish_record_type): During last pass over the fields, clear
DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P
from DECL_BIT_FIELD.
2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
(doc/gnat_ug_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
(doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
2004-01-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
* 5fsystem.ads (Functions_Return_By_DSP): Set to False.
(ZCX_By_Default): Likewise.
(Front_End_ZCX_Support): Likewise.
* 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
(Initialize_Lock): Mark Level unreferenced.
(Sleep): Mark Reason unreferenced.
(Timed_Sleep): Likewise.
(Wakeup): Likewise.
(Exit_Task): Use Result.
(Check_No_Locks): Mark Self_ID unreferenced.
* 5gtasinf.adb (New_Sproc): Make Attr constant.
(Bound_Thread_Attributes): Make Sproc constant.
(New_Bound_Thread_Attributes): Likewise.
2004-01-26 Ed Schonberg <schonberg@gnat.com>
* exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
one-dimensional array an slice assignments, when component type is
controlled.
* exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
component type is controlled, and control_actions are in effect, use
TSS procedure rather than generating inline code.
* exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
arrays with controlled components.
2004-01-26 Vincent Celier <celier@gnat.com>
* gnatcmd.adb (GNATCmd): Add specification of argument file on the
command line for the non VMS case.
* gnatlink.adb (Process_Binder_File): When building object file, if
GNU linker is used, put all object paths between quotes, to prevent ld
error when there are unusual characters (such as '!') in the paths.
* Makefile.generic: When there are sources in Ada and the main is in
C/C++, invoke gnatmake with -B, instead of -z.
* vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
from VMS_Conversion.
(Process_Argument): New procedure, extracted from VMS_Conversion. Add
specification of argument file on the command line.
2004-01-26 Bernard Banner <banner@gnat.com>
* Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
2004-01-26 Ed Schonberg <schonberg@gnat.com>
* snames.adb: Update copyright notice.
Add info on slice assignment for controlled arrays.
2004-01-23 Robert Dewar <dewar@gnat.com>
* exp_aggr.adb: Minor reformatting
* exp_ch9.adb: Minor code clean up
Minor reformatting
Fix bad character in comment
PR ada/13471
* targparm.adb (Get_Target_Parameters): Give clean abort error on
unexpected end of file, along with more detailed message.
2004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
PAT.
* decl.c (copy_alias_set): New function.
(gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
2004-01-23 Doug Rupp <rupp@gnat.com>
* Makefile.in (install-gnatlib): Change occurrences of lib$$file to
lib$${file} in case subsequent character is not a separator.
2004-01-23 Vincent Celier <celier@gnat.com>
* 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
when the GCC version is at least 3.
* make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
Remove all "Opt.", to prepare for opt split
* prj-part.adb (Parse_Single_Project): New Boolean out parameter
Extends_All. Set to True when the project parsed is an extending all
project. Fails for importing an extending all project only when the
imported project is an extending all project.
(Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
depending on the value of Extends_All returned.
* prj-proc.adb (Process): Check that no project shares its object
directory with a project that extends it, directly or indirectly,
including a virtual project.
Check that no project extended by another project shares its object
directory with another also extended project.
* prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
Kind = N_With_Clause
* prj-tree.ads: Minor reformatting
Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
2004-01-23 Ed Schonberg <schonberg@gnat.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
applies to a type with an incomplete view, use full view in Name of
clause, for consistency with uses of Get_Attribute_Definition_Clause.
2004-01-23 Arnaud Charlet <charlet@act-europe.fr>
* 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
SCHED_RR, since other values are not supported by this policy.
(Initialize): Move initialization of mutex attribute to package
elaboration, to prevent early access to this variable.
* Makefile.in: Remove mention of Makefile.adalib, unused.
* Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
1ssecsta.ads: Removed, unused.
2004-01-21 Javier Miranda <miranda@gnat.com>
* exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
entity if already built in the current scope.
* exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
reminder in internal scopes. Required for nested limited aggregates.
2004-01-21 Doug Rupp <rupp@gnat.com>
* Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
VMS. Replace all occurences of libgnat- and libgnarl- with
libgnat$(hyphen) and libgnarl$(hyphen).
Fixed shared library build problem on VMS.
2004-01-21 Robert Dewar <dewar@gnat.com>
* mlib-prj.adb: Minor reformatting
2004-01-21 Thomas Quinot <quinot@act-europe.fr>
* prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
'constant' keywords for declaration of pointers that are not modified.
* exp_pakd.adb: Fix English in comment.
2004-01-21 Ed Schonberg <schonberg@gnat.com>
PR ada/10889
* sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
copy all attributes of the parent, including the foreign language
convention.
2004-01-21 Sergey Rybin <rybin@act-europe.fr>
PR ada/10565
* sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
for 'delay until' statement.
2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in: Replace $(docdir) with doc.
(doc/gnat_ug_unx.info, doc/gnat_ug_vwx.info, doc/gnat_ug_vms.info
doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
to use consistent MAKEINFO rule.
(ada.man, ada.srcman): Dummy entry.
(ADA_INFOFILES): Define.
(ada.info, ada.srcinfo): New rules.
2004-01-19 Arnaud Charlet <charlet@act-europe.fr>
* utils.c: Update copyright notice, missed in previous change.
2004-01-19 Vincent Celier <celier@gnat.com>
* mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
args if Bind is True. Set First_ALI, if not already done.
(Build_Library): For Stand Alone Libraries, extract from one ALI file
an eventual --RTS switch, for gnatbind, and all backend switches +
--RTS, for linking.
2004-01-19 Robert Dewar <dewar@gnat.com>
* sem_attr.adb, memtrack.adb: Minor reformatting
2004-01-19 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
that rename enumeration literals. This is properly done in sem_eval.
* sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
to functions that rename enumeration literals.
* sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
functions that rename enumeration literals.
2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
* Make-lang.in (utils.o): Depend on target.h.
* utils.c: Include target.h.
(process_attributes): Use targetm.have_named_sections instead
of ASM_OUTPUT_SECTION_NAME.
2004-01-16 Andreas Jaeger <aj@suse.de>
* Makefile.in: Add $(DESTDIR).
2004-01-15 Olivier Hainque <hainque@act-europe.fr>
* decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
also when not defining if a Size clause applies. That information is
not to be ignored.
2004-01-15 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
symbolic links for the shared gnat run time when needed.
2004-01-15 Vasiliy Fofanov <fofanov@act-europe.fr>
* memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
for writing, and terminate with an error message if not.
2004-01-15 Ed Schonberg <schonberg@gnat.com>
* sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
warning on an access to subprogram in an instance, when the target
type is declared in the same generic unit.
(Eval_Attribute): If 'access is known to fail accessibility check,
rewrite as a raise statement.
2004-01-15 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in (ada.srcextra): Dummy entry.
2004-01-14 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
2004-01-13 Ed Schonberg <schonberg@gnat.com>
* exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
components that are initialized with aggregates.
2004-01-13 Vincent Celier <celier@gnat.com>
* gnatlink.adb (Process_Binder_File): To find directory of shared
libgcc, if "gcc-lib" is not a subdirectory, look for the last
subdirectory "lib" in the path of the shared libgnat or libgnarl.
* make.adb (Gnatmake): If GCC version is at least 3, link with
-shared-libgcc, when there is at least one shared library project.
* opt.ads (GCC_Version): New integer constant.
* adaint.c (get_gcc_version): New function.
2004-01-13 Robert Dewar <dewar@gnat.com>
* sem_dist.adb, sem_res.adb, sem_util.adb,
sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
2004-01-13 Thomas Quinot <quinot@act-europe.fr>
* s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
declarations.
2004-01-12 Arnaud Charlet <charlet@act-europe.fr>
* misc.c: Remove trailing spaces.
Update copyright notice missed in previous change.
PR ada/13572
* bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
prefix/share/make
* Makefile.generic: Update copyright.
Add license notice.
* Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
of prefix/share/make.
* Makefile.prolog: Update copyright.
Add license notice.
2004-01-12 Laurent Pautet <pautet@act-europe.fr>
* 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
instead of String.
* g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
signature.
2004-01-12 Javier Miranda <miranda@gnat.com>
* cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
exp_imgv.adb, exp_pakd.adb, exp_util.adb, par-ch3.adb, sem.adb,
sem_ch12.adb, sem_ch3.adb, sem_dist.adb, sem_prag.adb, sem_res.adb,
sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
Component_Definition node.
2004-01-12 Ed Falis <falis@gnat.com>
* impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
2004-01-12 Thomas Quinot <quinot@act-europe.fr>
* link.c: Change default libgnat kind to STATIC for FreeBSD.
2004-01-12 Bernard Banner <banner@gnat.com>
* Makefile.in: map 86numaux to a-numaux for x86_64
2004-01-12 Ed Schonberg <schonberg@gnat.com>
* lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
generated to rename a generic actual, go to the actual itself, the
subtype is not a user-visible entity.
* sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
part is a private subtype, reset the visibility of its full view, if
any, to be consistent.
PR ada/13417
* sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
to use a generic package G as a formal package for another generic
declared within G.
2004-01-12 Robert Dewar <dewar@gnat.com>
* trans.c (Eliminate_Error_Msg): New procedure called to generate msg
* usage.adb: Remove mention of obsolete -gnatwb switch
Noticed during code reading
2004-01-12 Jerome Guitton <guitton@act-europe.fr>
* 1ssecsta.adb: Minor changes for -gnatwa warnings
2004-01-12 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2004-01-09 Mark Mitchell <mark@codesourcery.com>
* misc.c (gnat_expand_expr): Add alt_rtl parameter.
2004-01-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* link.c [sgi] (shared_libgnat_default): Change to STATIC.
2004-01-05 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
Update comment and copyright date.
* stamp-xgnatug: Delete.
2004-01-05 Robert Dewar <dewar@gnat.com>
* 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
be modified by the binder generated main program if the -D switch is
used.
* 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
imported functions (since now we expect this to be done for imported
functions)
* 5vtaprop.adb: Add several ??? for sections requiring more comments
Minor reformatting throughout
* 5zinit.adb: Minor reformatting
Add 2004 to copyright date
Minor changes to avoid -gnatwa warnings
Correct some instances of using OR instead of OR ELSE (noted while
doing reformatting)
* sprint.adb: Minor updates to avoid -gnatwa warnings
* s-secsta.ads, s-secsta.adb:
(SS_Get_Max): New function to obtain high water mark for ss stack
Default_Secondary_Stack is not a constant since it may be modified by
the binder generated main program if the -D switch is used.
* switch-b.adb: New -Dnnn switch for binder
* switch-c.adb:
Make -gnatg imply all warnings currently in -gnatwa
* vms_conv.adb: Minor reformatting
Add 2004 to copyright notice
Add 2004 to printed copyright notice
* 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
checks.adb, clean.adb, cstand.adb, einfo.ads,
einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.adb,
prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
Minor reformatting and code clean ups.
Minor changes to prevent -gnatwa warnings
* ali.adb: Minor reformatting and cleanup of code
Acquire new SS indication of secondary stack use from ali files
* a-numaux.ads: Add Pure_Function pragmas for all imported functions
(since now we expect this to be done for imported functions)
* bindgen.adb: Generate call to modify default secondary stack size if
-Dnnn switch given
* bindusg.adb: Add line for new -D switch
* exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
replacement name for Type_May_Have_Non_Bit_Aligned_Components!
Add circuitry for both records and arrays to avoid gigi
processing if the type involved has non-bit-aligned components
* exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
N_String_Literal node always references an E_String_Literal_Subtype
entity. This may not be true in the future.
(Possible_Bit_Aligned_Component): Move processing of
Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
* exp_ch6.adb (Expand_Thread_Body): Pick up
Default_Secondary_Stack_Size as variable so that we get value modified
by possible -Dnnn binder parameter.
* exp_util.adb (Component_May_Be_Bit_Aligned): New function.
(Type_May_Have_Bit_Aligned_Components): New function.
* exp_util.ads (Component_May_Be_Bit_Aligned): New function.
(Type_May_Have_Bit_Aligned_Components): New function.
* fe.h: (Set_Identifier_Casing): Fix prototype.
Add declaration for Sem_Elim.Eliminate_Error_Msg.
Minor reformatting.
* freeze.adb (Freeze_Entity): Add RM reference to error message about
importing constant atomic/volatile objects.
(Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
unless explicit Pure_Function pragma given, to avoid insidious bug of
call to non-pure imported function getting eliminated.
* gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
Add 2004 to printed copyright notice
* lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
stack used.
* Makefile.rtl: Add entry for g-sestin.o
g-sestin.ads: New file.
* mdll.adb: Minor changes to avoid -gnatwa warnings
* mlib-tgt.adb: Minor reformatting
* opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
New switch Sec_Stack_Used (GNAT, GNATBIND)
Make Default_Secondary_Stack_Size a variable instead of a constant,
so that it can be modified by the new -Dnnn bind switch.
* rtsfind.adb (Load_Fail): Give full error message in configurable
run-time mode if all_errors mode is set. This was not done in the case
of a file not found, which was an oversight.
Note if secondary stack unit is used by compiler.
* sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
ineffective elaborate all pragmas on non-visible packages (this
happened when a renamed subprogram was called). Now the elaborate all
always goes on the package containing the renaming rather than the one
containing the renamed subprogram.
* sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
(Process_Eliminate_Pragma): Add parameter to capture pragma location.
* sem_eval.adb (Eval_String_Literal): Do not assume that string literal
has an Etype that references an E_String_Literal.
(Eval_String_Literal): Avoid assumption that N_String_Literal node
always references an E_String_Literal_Subtype entity. This may not
be true in the future.
* sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
pragma location.
* sem_res.adb (Resolve): Specialize msg for function name used in proc
call.
2004-01-05 Ed Falis <falis@gnat.com>
* g-debuti.adb: Replaced direct boolean operator with short-circuit
form.
2004-01-05 Vincent Celier <celier@gnat.com>
* bld.adb: Minor comment updates
(Process_Declarative_Items): Correct incorrect name (Index_Name instead
of Item_Name).
* make.adb (Gnatmake): Special process for files to compile/check when
-B is specified. Fail when there are only foreign mains in attribute
Main of the project file and -B is not specified. Do not skip bind/link
steps when -B is specified.
* makeusg.adb: Document new switch -B
* opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
* switch-m.adb: (Scan_Make_Switches): Process -B switch
* vms_data.ads: Add new GNAT PRETTY qualifier
/FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
case.
* misc.c (gnat_printable_name): If VERBOSITY is 2, call
Set_Identifier_Casing.
* decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
has size that overflows.
2004-01-05 Gary Dismukes <dismukes@gnat.com>
* exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
-gnatwa warning on static condition.
2004-01-05 Doug Rupp <rupp@gnat.com>
* link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
2004-01-05 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
all attributes, including read-only attribute.
2004-01-05 Pascal Obry <obry@gnat.com>
* bindgen.adb (Gen_Object_Files_Options): Generate the new shared
library naming scheme.
* mlib-prj.adb (Build_Library): Generate different names for the static
or dynamic version of the GNAT runtime. This is needed to support the
new shared library naming scheme.
(Process_Binder_File): Add detection of shared library in binder file
based on the new naming scheme.
* gnatlink.adb (Process_Binder_File): Properly detect the new naming
scheme for the shared runtime libraries.
* Makefile.in:
(LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
scheme.
(install-gnatlib): Do not create symlinks for shared libraries.
(gnatlib-shared-default): Idem.
(gnatlib-shared-dual-win32): New target. Not used for now as the
auto-import feature does not support arrays/records.
(gnatlib-shared-win32): Do not create copy for the shared libraries.
(gnatlib-shared-vms): Fix shared runtime libraries names.
* osint.ads, osint.adb (Shared_Lib): New routine, returns the target
dependent runtime shared library name.
2004-01-05 Vasiliy Fofanov <fofanov@act-europe.fr>
* osint.adb (Read_Library_Info): Remove bogus check if ALI is older
than the object.
2004-01-05 Ed Schonberg <schonberg@gnat.com>
* sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
protected objects when allocator has a subtype indication, not a
qualified expression. Note that qualified expressions may have to be
checked when limited aggregates are implemented.
* sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
pure, emit warning.
(Analyze_Pragma, case Pure_Function): If enclosing package is pure and
subprogram is imported, remove warning.
2004-01-05 Geert Bosch <bosch@gnat.com>
* s-poosiz.adb: Update copyright notice.
(Allocate): Use Task_Lock to protect against concurrent access.
(Deallocate): Likewise.
2004-01-05 Joel Brobecker <brobecker@gnat.com>
* s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
comment.
2003-12-23 Kelley Cook <kcook@gcc.gnu.org>
* gnat_ug.texi: Force a CVS commit by updating copyright.
* gnat_ug_vxw.texi: Regenerate.
* gnat_ug_wnt.texi: Regenerate.
* gnat_ug_vms.texi: Regenerate.
* gnat_ug_unx.texi: Regenerate.
2003-12-20 Kazu Hirata <kazu@cs.umass.edu>
* trans.c: Remove uses of "register" specifier in
declarations of local variables.
2003-12-18 Kelley Cook <kcook@gcc.gnu.org>
* stamp-xgnatug: New stamp file.
* Make-lang.in (stamp-xgnatug): New stamp file and comment.
(ada/doctools/xgnatug): Add $(build_exeext).
(ada/gnat_ug_unx.texi, ada/gnat_ug_vwx.texi, ada/gnat_ug_vms.texi
ada/gnat_ug_wnt.texi): Update to depend on stamp-xgnatug.
2003-12-17 Ed Falis <falis@gnat.com>
* a-elchha.adb (Tailored_Exception_Information): made Info constant to
eliminate warning.
* a-exextr.adb: Add context clause for
Ada.Exceptions.Last_Chance_Handler.
2003-12-17 Sergey Rybin <rybin@act-europe.fr>
* cstand.adb (Create_Standard): Change the way how the declaration of
the Duration type is created (making it the same way as it is for all
the other standard types).
2003-12-17 Robert Dewar <dewar@gnat.com>
* s-crtl.ads: Fix header format
Change Pure to Preelaborate
2003-12-17 Ed Schonberg <schonberg@gnat.com>
* checks.adb (Selected_Length_Checks): Generate an Itype reference for
the expression type only if it is declared in the current unit.
* sem_ch3.adb (Constrain_Index): Handle properly a range whose bounds
are universal and already analyzed, as can occur in constrained
subcomponents that depend on discriminants, when one constraint is a
subtype mark.
* sem_res.adb (Resolve_Type_Conversion): Any arithmetic expression of
type Any_Fixed is legal as the argument of a conversion, if only one
fixed-point type is in context.
2003-12-17 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-12-15 Robert Dewar <dewar@gnat.com>
* exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
sec stack size.
2003-12-15 Vincent Celier <celier@gnat.com>
* gnatchop.adb: (Error_Msg): Do not exit on error for a warning
(Gnatchop): Do not set failure status when reporting the number of
warnings.
2003-12-15 Doug Rupp <rupp@gnat.com>
* s-ctrl.ads: New file.
* Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
* Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
(GNATBIND_OBJS): Add ada/s-crtl.o.
* Makefile.in [VMS]: Clean up ifeq rules.
* gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
s-tasdeb.adb: Update copyright.
Import System.CRTL.
Make minor modifications to use System.CRTL declared functions instead
of importing locally.
2003-12-15 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-12-11 Ed Falis <falis@gnat.com>
* 5zinit.adb: Clean up.
* 5zintman.adb (Notify_Exception): replaced case statement with a call
to __gnat_map_signal, imported from init.c to support
signal -> exception mappings that depend on the vxWorks version.
* init.c:
Created and exported __gnat_map_signal to support signal -> exception
mapping that is dependent on the VxWorks version.
Change mapping of SIGBUS from Program_Error to Storage_Error on VxWorks
2003-12-11 Vasiliy Fofanv <fofanov@act-europe.fr>
* 5wosinte.ads: Link with -mthreads switch.
2003-12-11 Arnaud Charlet <charlet@act-europe.fr>
* init.c (__gnat_install_handler [NetBSD]): Set
__gnat_handler_installed, as done on all other platforms.
Remove duplicated code.
2003-12-11 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in (rts-zfp, rts-ravenscar): Create libgnat.a.
2003-12-11 Thomas Quinot <quinot@act-europe.fr>
* sinfo.ads: Fix inconsistent example code in comment.
2003-12-11 Robert Dewar <dewar@gnat.com>
* a-tiinau.adb: Add a couple of comments
* sem_ch3.adb: Minor reformatting
* sem_prag.adb:
Fix bad prototype of Same_Base_Type in body (code reading cleanup)
Minor reformatting throughout
2003-12-11 Ed Schonberg <schonberg@gnat.com>
* exp_ch7.adb (Establish_Transient_Scope): If the call is within the
bounds of a loop, create a separate block in order to generate proper
cleanup actions to prevent memory leaks.
* sem_res.adb (Resolve_Call): After a call to
Establish_Transient_Scope, the call may be rewritten and relocated, in
which case no further processing is needed.
* sem_util.adb: (Wrong_Type): Refine previous fix.
Fixes ACATS regressions.
PR ada/13353
* sem_prag.adb (Back_End_Cannot_Inline): A renaming_as_body can always
be inlined.
2003-12-08 Jerome Guitton <guitton@act-europe.fr>
* 5ytiitho.adb, 5zthrini.adb, 5ztiitho.adb, i-vthrea.adb,
i-vthrea.ads, s-tpae65.adb, s-tpae65.ads: Cleanup: Remove a bunch of
obsolete files.
* Makefile.in: (rts-ravenscar): Generate an empty libgnat.a.
(rts-zfp): Ditto.
2003-12-08 Robert Dewar <dewar@gnat.com>
* 7sintman.adb: Minor reformatting
* bindgen.adb: Configurable_Run_Time mode no longer suppresses the
standard linker options to get standard libraries linked. We now plan
to provide dummy versions of these libraries to match the appropriate
configurable run-time (e.g. if a library is not needed at all, provide
a dummy empty library).
* targparm.ads: Configurable_Run_Time mode no longer affects linker
options (-L parameters and standard libraries). What we plan to do is
to provide dummy libraries where the libraries are not required.
* gnatbind.adb: Minor comment improvement
2003-12-08 Javier Miranda <miranda@gnat.com>
* exp_aggr.adb (Build_Record_Aggr_Code): Do not remove the expanded
aggregate in the parent. Otherwise constants with limited aggregates
are not supported. Add new formal to pass the component type (Ctype).
It is required to call the corresponding IP subprogram in case of
default initialized components.
(Gen_Assign): In case of default-initialized component, generate a
call to the IP subprogram associated with the component.
(Build_Record_Aggr_Code): Remove the aggregate from the parent in case
of aggregate with default initialized components.
(Has_Default_Init_Comps): Improve implementation to recursively check
all the present expressions.
* exp_ch3.ads, exp_ch3.adb (Build_Initialization_Call): Add new formal
to indicate that the initialization call corresponds to a
default-initialized component of an aggregate.
In case of default initialized aggregate with tasks this parameter is
used to generate a null string (this is just a workaround that must be
improved later). In case of discriminants, this parameter is used to
generate a selected component node that gives access to the discriminant
value.
* exp_ch9.ads, exp_ch9.adb (Build_Task_Allocate_Block_With_Stmts): New
subprogram, based on Build_Task_Allocate_Block, but adapted to expand
allocated aggregates with default-initialized components.
* par-ch4.adb (P_Aggregate_Or_Paren_Expr): Improve error message if
the box notation is used in positional aggregates.
2003-12-08 Samuel Tardieu <tardieu@act-europe.fr>
* lib.ads: Fix typo in comment
2003-12-08 Vincent Celier <celier@gnat.com>
* prj.adb (Project_Empty): New component Unkept_Comments
(Scan): Remove procedure; moved to Prj.Err.
* prj.ads (Project_Data): New Boolean component Unkept_Comments
(Scan): Remove procedure; moved to Prj.Err.
* prj-dect.adb: Manage comments for the different declarations.
* prj-part.adb (With_Record): New component Node
(Parse): New Boolean parameter Store_Comments, defaulted to False.
Set the scanner to return ends of line and comments as tokens, if
Store_Comments is True.
(Pre_Parse_Context_Clause): Create the N_With_Clause nodes so that
comments are associated with these nodes. Store the node IDs in the
With_Records.
(Post_Parse_Context_Clause): Use the N_With_Clause nodes stored in the
With_Records.
(Parse_Single_Project): Call Pre_Parse_Context_Clause before creating
the N_Project node. Call Tree.Save and Tree.Reset before scanning the
current project. Call Tree.Restore afterwards. Set the various nodes
for comment storage (Next_End, End_Of_Line, Previous_Line,
Previous_End).
* prj-part.ads (Parse): New Boolean parameter Store_Comments,
defaulted to False.
* prj-pp.adb (Write_String): New Boolean parameter Truncated, defaulted
to False. When Truncated is True, truncate the string, never go to the
next line.
(Write_End_Of_Line_Comment): New procedure
(Print): Process comments for nodes N_With_Clause,
N_Package_Declaration, N_String_Type_Declaration,
N_Attribute_Declaration, N_Typed_Variable_Declaration,
N_Variable_Declaration, N_Case_Construction, N_Case_Item.
Process nodes N_Comment.
* prj-tree.ads, prj-tree.adb (Default_Project_Node): If it is a node
without comments and there are some comments, set the flag
Unkept_Comments to True.
(Scan): If there are comments, set the flag Unkept_Comments to True and
clear the comments.
(Project_Node_Kind): Add enum values N_Comment_Zones, N_Comment
(Next_End_Nodes: New table
(Comment_Zones_Of): New function
(Scan): New procedure; moved from Prj. Accumulate comments in the
Comments table and set end of line comments, comments after, after end
and before end.
(Add_Comments): New procedure
(Save, Restore, Seset_State): New procedures
(There_Are_Unkept_Comments): New function
(Set_Previous_Line_Node, Set_Previous_End_Node): New procedures
(Set_End_Of_Line, Set_Next_End_Node, Remove_Next_End_Node): New
procedures.
(First_Comment_After, First_Comment_After_End): New functions
(First_Comment_Before, First_Comment_Before_End): New functions
(Next_Comment): New function
(End_Of_Line_Comment, Follows_Empty_Line,
Is_Followed_By_Empty_Line): New functions
(Set_First_Comment_After, Set_First_Comment_After_End): New procedures
(Set_First_Comment_Before, Set_First_Comment_Before_End): New procedures
(Set_Next_Comment): New procedure
(Default_Project_Node): Associate comment before if the node can store
comments.
* scans.ads (Token_Type): New enumeration value Tok_Comment
(Comment_Id): New global variable
* scng.ads, scng.adb (Comment_Is_Token): New Boolean global variable,
defaulted to False.
(Scan): Store position of start of comment. If comments are tokens, set
Comment_Id and set Token to Tok_Comment when scanning a comment.
(Set_Comment_As_Token): New procedure
* sinput-p.adb: Update Copyright notice
(Source_File_Is_Subunit): Call Prj.Err.Scanner.Scan instead of Prj.Scan
that no longer exists.
2003-12-08 Javier Miranda <miranda@gnat.com>
* sem_aggr.adb: Add dependence on Exp_Tss package
Correct typo in comment
(Resolve_Aggregate): In case of array aggregates set the estimated
type of the aggregate before calling resolve. This is needed to know
the name of the corresponding IP in case of limited array aggregates.
(Resolve_Array_Aggregate): Delay the resolution to the expansion phase
in case of default initialized array components.
* sem_ch12.adb (Analyze_Formal_Object_Declaration): Allow limited
types. Required to give support to limited aggregates in generic
formals.
2003-12-08 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb (Check_Initialization): For legality purposes, an
inlined body functions like an instantiation.
(Decimal_Fixed_Point_Declaration): Do not set kind of first subtype
until bounds are analyzed, to diagnose premature use of type.
* sem_util.adb (Wrong_Type): Improve error message when the type of
the expression is used prematurely.
2003-12-08 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-12-08 Arnaud Charlet <charlet@act-europe.fr>
* sinfo.h, einfo.h, nmake.ads, nmake.adb, treeprs.ads: Removed, since
they are automatically generated by Make-lang.in and cause nothing but
maintenance troubles.
2003-12-05 Thomas Quinot <quinot@act-europe.fr>
* 3ssoliop.ads: Fix comment (this is the Solaris, not the UnixWare,
version of this unit).
2003-12-05 Olivier Hainque <hainque@act-europe.fr>
* 53osinte.ads, 54osinte.ads, 55osinte.ads, 56osinte.ads, 5bosinte.ads,
5cosinte.ads, 5hosinte.ads, 5iosinte.ads, 5losinte.ads,
5tosinte.ads: Define the SA_SIGINFO constant, to allow references from
the body of System.Interrupt_Management common to several targets.
Update copyright notice when appropriate.
* 52osinte.ads, 5posinte.ads: Define a dummy value for the SA_SIGINFO
constant.
* 7sintman.adb (elaboration): Set SA_SIGINFO in the sigaction flags,
to ensure that the kernel fills in the interrupted context structure
before calling a signal handler, which is necessary to be able to
unwind past it. Update the copyright notice.
2003-12-05 Jerome Guitton <guitton@act-europe.fr>
* a-elchha.ads: New file.
* a-elchha.adb: New default last chance handler. Contents taken from
Ada.Exceptions.Exception_Traces.Unhandled_Exception_Terminate.
* a-exextr.adb (Unhandled_Exception_Terminate): Most of this routine
is moved to a-elchha.adb to provide a target-independent default last
chance handler.
* Makefile.rtl: Add a-elchha.o
* Make-lang.in (GNAT_ADA_OBJS, GNATBIND_OBJS): Add a-elchha.o.
2003-12-05 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_Call): If the subprogram is inlined and is
declared in an instance, do not inline the call if the instance is not
frozen yet, to prevent order of elaboration problems.
* sem_prag.adb: Add comments for previous fix.
2003-12-05 Samuel Tardieu <tardieu@act-europe.fr>
* g-table.adb: Use the right variable in Set_Item.
Update copyright notice.
2003-12-05 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in: Remove unused rules.
2003-12-05 Vincent Celier <celier@gnat.com>
* switch-c.adb (Scan_Front_End_Switches): Remove processing of
-nostdlib. Not needed here after all.
2003-12-03 Thomas Quinot <quinot@act-europe.fr>
PR ada/11724
* adaint.h, adaint.c, g-os_lib.ads:
Do not assume that the offset argument to lseek(2) is a 32 bit integer,
on some platforms (including FreeBSD), it is a 64 bit value.
Introduce a __gnat_lseek wrapper in adaint.c to allow for portability.
2003-12-03 Arnaud Charlet <charlet@act-europe.fr>
* gnatvsn.ads (Library_Version): Now contain only the relevant
version info.
(Verbose_Library_Version): New constant.
* g-spipat.adb, g-awk.adb, g-debpoo.adb,
g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb,
s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa.
* gnatlbr.adb: Clean up: replace Library_Version by
Verbose_Library_Version.
* make.adb, lib-writ.adb, exp_attr.adb:
Clean up: replace Library_Version by Verbose_Library_Version.
* 5lintman.adb: Removed.
* Makefile.in:
Update and simplify computation of LIBRARY_VERSION.
Fix computation of GSMATCH_VERSION.
5lintman.adb is no longer used: replaced by 7sintman.adb.
2003-12-03 Robert Dewar <dewar@gnat.com>
* exp_ch5.adb:
(Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new
name. Modified to consider small non-bit-packed arrays as troublesome
and in need of component-by-component assigment expansion.
2003-12-03 Vincent Celier <celier@gnat.com>
* lang-specs.h: Process nostdlib as nostdinc
* back_end.adb: Update Copyright notice
(Scan_Compiler_Arguments): Process -nostdlib directly.
2003-12-03 Jose Ruiz <ruiz@act-europe.fr>
* Makefile.in:
When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the
redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always
included in HIE_NONE_TARGET_PAIRS.
2003-12-03 Ed Schonberg <schonberg@gnat.com>
* sem_attr.adb:
(Legal_Formal_Attribute): Attribute is legal in an inlined body, as it
is legal in an instance, because legality is cheched in the template.
* sem_prag.adb:
(Analyze_Pragma, case Warnings): In an inlined body, the pragma may be
appplied to an unchecked conversion of a formal parameter.
* sem_warn.adb:
(Output_Unreferenced_Messages): Suppress "not read" warnings on imported
variables.
2003-12-03 Olivier Hainque <hainque@act-europe.fr>
* tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New
routines. The second one is new functionality to deal with backtracing
through signal handlers.
(unwind): Split into the two separate subroutines above.
Update the documentation, and deal properly with sizeof (REG) different
from sizeof (void*).
2003-12-01 Nicolas Setton <setton@act-europe.fr>
* a-except.adb (Raise_Current_Excep): Add a pragma Inspection_Point,
so that the debugger can reliably access the value of the parameter,
and therefore is able to display the exception name when an exception
breakpoint is reached.
2003-12-01 Thomas Quinot <quinot@act-europe.fr>
* fmap.adb: Fix typo in warning message.
* g-socket.ads, g-socket.adb: Make Free a visible instance of
Ada.Unchecked_Deallocation (no need to wrap it in a subprogram).
2003-12-01 Vincent Celier <celier@gnat.com>
* mlib-prj.adb (Build_Library.Process): Do not check a withed unit if
ther is no Afile.
(Build_Library): Get the switches only if Default_Switches is declared
in package Binder.
2003-12-01 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb (Expand_Actuals): When applying validity checks to
actuals that are indexed components, reanalyze actual to ensure that
packed array references are properly expanded.
* sem_ch5.adb (Diagnose_Non_Variable_Lhs): Add special case for
attempted assignment to a discriminant.
2003-12-01 Robert Dewar <dewar@gnat.com>
* rtsfind.adb, exp_ch4.adb, s-exnint.ads, s-exnint.adb: Minor
reformatting.
* switch-c.adb: Minor reformatting of comments
2003-12-01 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in: Clean ups.
2003-12-01 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-12-01 Arnaud Charlet <charlet@act-europe.fr>
* 5wsystem.ads: Disable zero cost exception, not ready yet.
2003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
* Make-lang.in (nmake.ads): Add dependency on ada/nmake.adb
to force serialization.
2003-11-26 Thomas Quinot <quinot@act-europe.fr>
* g-socket.ads, g-socket.adb:
Clarify documentation of function Stream. Introduce a Free procedure
to release the returned Stream once it becomes unused.
* 5asystem.ads: For Alpha Tru64, enable ZCX by default.
2003-11-26 Arnaud Charlet <charlet@act-europe.fr>
(Cond_Timed_Wait): Introduce new constant Time_Out_Max,
since NT 4 cannot handle timeout values that are too large,
e.g. DWORD'Last - 1.
2003-11-26 Ed Schonberg <schonberg@gnat.com>
* exp_ch4.adb:
(Expand_N_Slice): Recognize all cases of slices that appear as actuals
in procedure calls and whose expansion must be deferred.
* exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
is in exp_ch4.
* sem_ch3.adb:
(Build_Derived_Array_Type): Create operator for unconstrained type
if ancestor is unconstrained.
2003-11-26 Vincent Celier <celier@gnat.com>
* make.adb (Project_Object_Directory): New global variable
(Change_To_Object_Directory): New procedure
(Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
of Change_Dir directly. Do not change working directory to object
directory of main project after each compilation.
(Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
directly.
Change to object directory of main project before binding step.
(Initialize): Initialize Project_Object_Directory to No_Project
* mlib-prj.adb:
(Build_Library): Take into account Builder'Default_Switches ("Ada") when
binding a Stand-Alone Library.
* output.adb: Update Copyright notice
(Write_Char): Output buffer when full
2003-11-26 Robert Dewar <dewar@gnat.com>
* sem_ch13.adb: (Check_Size): Reset size if size is too small
* sem_ch13.ads:
(Check_Size): Fix documentation to include bit-packed array case
* sem_res.adb: Implement restriction No_Direct_Boolean_Operators
* s-rident.ads: Put No_Direct_Boolean_Operators in proper order
* s-rident.ads: Add new restriction No_Direct_Boolean_Operators
2003-11-24 Arnaud Charlet <charlet@act-europe.fr>
PR ada/13142
* utils.c (init_gigi_decls): Change name of built-in setjmp to
__builtin_setjmp, since this is apparently needed by recent
non Ada changes.
2003-11-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* adadecode.c: Only include ctype.h if not IN_GCC.
(__gnat_decode): Use ISDIGIT from safe-ctype.h.
2003-11-24 Jose Ruiz <ruiz@act-europe.fr>
* Makefile.in:
Use 5zintman.ads for VxWorks targets. This file avoid confusion between
signals and interrupts.
* 5zintman.ads: New File.
* 5zintman.adb: Replace Exception_Interrupts by Exception_Signals, and
add exception signals to the set of unmasked signals.
* 5ztaprop.adb:
Use Abort_Task_Signal instead of Abort_Task_Interrupt to avoid confusion
between signals and interrupts.
Add to Unblocked_Signal_Mask the set of signals that are in
Keep_Unmasked.
* 7sinmaop.adb:
Adding a check to see whether the Interrupt_ID we want to unmask is in
the range of Keep_Unmasked (in procedure Interrupt_Self_Process). The
reason is that the index type of the Keep_Unmasked array is not always
Interrupt_ID; it may be a subtype of Interrupt_ID.
2003-11-24 Gary Dismukes <dismukes@gnat.com>
* exp_util.adb:
(Remove_Side_Effects): Condition constantness of object created for a
an unchecked type conversion on the constantness of the expression
to ensure the correct value for 'Constrained when passing components
of view-converted class-wide objects.
2003-11-24 Robert Dewar <dewar@gnat.com>
* par-load.adb (Load): Improve handling of misspelled and missing units
Removes several cases of compilation abandoned messages
* lib.adb: (Remove_Unit): New procedure
* lib.ads: (Remove_Unit): New procedure
* lib-load.adb: Minor reformatting
2003-11-24 Vincent Celier <celier@gnat.com>
* make.adb:
(Gnatmake, Initialize): Call Usage instead of Makeusg directly
(Marking_Label): Label to mark processed source files. Incremented for
each executable.
(Gnatmake): Increase Marking_Labet for each executable
(Is_Marked): Compare against marking label
(Mark): Mark with marking label
2003-11-24 Jerome Guitton <guitton@act-europe.fr>
* s-thread.ads:
Move the declaration of the TSD for System.Threads to System.Soft_Links.
Add some comments.
* Makefile.in: Added target pair for s-thread.adb for cert runtime.
(rts-cert): build a single relocatable object for the run-time lib.
Fix perms.
2003-11-24 Vasiliy Fofanov <fofanov@act-europe.fr>
* Make-lang.in:
Use gnatls rather than gcc to obtain the location of GNAT RTL for
crosstools build.
2003-11-24 Sergey Rybin <rybin@act-europe.fr>
* opt.adb (Tree_Write): Gnat_Version_String is now a function, so we
can not use it as before (that is, as a variable) when dumping it into
the tree file. Add a local variable to store the result of this
function and to be used as the string to be written into the tree.
* scn.adb (Initialize_Scanner): Add comments explaining the recent
changes.
* sinput.adb (Source_First, Source_Last): In case of
Internal_Source_File, replace returning attributes of
Internal_Source_Ptr (which is wrong) with returning attributes of
Internal_Source.
2003-11-24 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb:
(New_Concatenation_Op): Proper name for New_Binary_Operator, only
used for implicit concatenation operators.
Code cleanup.
* sem_elab.adb:
(Check_Elab_Call): Set No_Elaboration_Check appropriately on calls in
task bodies that are in the scope of a Suppress pragma.
(Check_A Call): Use the flag to prevent spurious elaboration checks.
* sinfo.ads, sinfo.adb:
New flag No_Elaboration_Check on function/procedure calls, to properly
suppress checks on calls in task bodies that are within a local suppress
pragma.
* exp_ch4.adb:
(Expand_Concatenate_Other): Use the proper integer type for the
expression for the upper bound, to avoid universal_integer computations
when possible.
2003-11-21 Kelley Cook <kcook@gcc.gnu.org>
* .cvsignore: Delete.
2003-11-21 Andreas Schwab <schwab@suse.de>
* 55system.ads: Set ZCX_By_Default and GCC_ZCX_Support to True.
2003-11-21 Vasiliy Fofanov <fofanov@act-europe.fr>
* 5wsystem.ads: Enable zero cost exception.
2003-11-21 Jerome Guitton <guitton@act-europe.fr>
* 5ztiitho.adb: Remove an unreferenced variable.
2003-11-21 Thomas Quinot <quinot@act-europe.fr>
* adaint.c: For FreeBSD, use mkstemp.
2003-11-21 Arnaud Charlet <charlet@act-europe.fr>
* gnatlbr.adb: Now reference Gnat_Static_Version_String.
2003-11-21 Robert Dewar <dewar@gnat.com>
* bld.adb: Remove useless USE of gnatvsn
* gnatchop.adb: Minor reformatting
Clean up version handling to be more consistent
* gnatxref.adb: Minor reformatting
* gprcmd.adb: Minor reformatting
Fix output of copyright to be more consistent with other tools
2003-11-21 Vincent Celier <celier@gnat.com>
* make.adb (Scan_Make_Args): Do not transmit --RTS= to gnatlink
2003-11-21 Sergey Rybin <rybin@act-europe.fr>
* atree.adb (Initialize): Add initializations for global variables
used in New_Copy_Tree.
* cstand.adb (Create_Standard): Add call to Initialize_Scanner (with
Internal_Source_File as the actual).
Put the set of statements creating Any_Character before the set of
statements creating Any_Array to have Any_Character fully initialized
when it is used in creating Any_Array.
* scn.adb (Initialize_Scanner): Do not set Comes_From_Source ON and do
not call Scan in case if the actual is Internal_Source_File
Add 2003 to copyright note.
* sinput.adb (Source_First, Source_Last, Source_Text): Add code for
processing Internal_Source_File.
* types.ads: Add the constant Internal_Source_File representing the
source buffer for artificial source-code-like strings created within
the compiler (the definition of Source_File_Index is changed).
2003-11-20 Arnaud Charlet <charlet@act-europe.fr>
* 35soccon.ads, 45intnam.ads, 55osinte.adb, 55osinte.ads,
56system.ads: New file, FreeBSD version.
2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
* Make-lang.in (ada.extraclean): Delete.
2003-11-19 Arnaud Charlet <charlet@act-europe.fr>
* gnatmem.adb: Clean up verbose output.
* gprcmd.adb: Change copyright to FSF.
2003-11-19 Vincent Celier <celier@gnat.com>
* symbols.adb: (Initialize): New parameters Reference, Symbol_Policy
and Version (ignored).
* symbols.ads: (Policy): New type
(Initialize): New parameter Reference, Symbol_Policy and
Library_Version.
Remove parameter Force.
Minor reformatting.
* snames.ads, snames.adbadb: New standard names
Library_Reference_Symbol_File and Library_Symbol_Policy
* mlib-prj.adb:
(Build_Library): Call Build_Dinamic_Library with the Symbol_Data of the
project.
* mlib-tgt.adb:
(Build_Dynamic_Library): New parameter Symbol_Data (ignored)
* mlib-tgt.ads: (Build_Dynamic_Library): New parameter Symbol_Data
* prj.adb: (Project_Empty): New component Symbol_Data
* prj.ads: (Policy, Symbol_Record): New types
(Project_Data): New component Symbol_Data
* prj-attr.adb:
New attributes Library_Symbol_File, Library_Symbol_Policy and
Library_Reference_Symbol_File.
* prj-nmsc.adb:
(Ada_Check): When project is a Stand-Alone library project, process
attribute Library_Symbol_File, Library_Symbol_Policy and
Library_Reference_Symbol_File.
* 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb,
5wml-tgt.adb, 5zml-tgt.adb, 5lml-tgt.adb,
5sml-tgt.adb (Build_Dynamic_Library): New parameter
Symbol_Data (ignored).
* 5vml-tgt.adb (VMS_Options): Remove --for-linker=gsmatch=equal,1,0
(Build_Dynamic_Library): New parameter Symbol_Data. New internal
functions Option_File_Name and Version_String. Set new options of
gnatsym related to symbol file, symbol policy and reference symbol
file.
* 5vsymbol.adb:
Extensive modifications to take into account the reference symbol file,
the symbol policy, the library version and to put in the symbol file the
minor and major IDs.
* bld.adb (Process_Declarative_Items): Put second argument of
gprcmd to_absolute between single quotes, to avoid problems with
Windows.
* bld-io.adb: Update Copyright notice.
(Flush): Remove last character of a line, if it is a back slash, to
avoid make problems.
* gnatsym.adb:
Implement new scheme with reference symbol file and symbol policy.
* g-os_lib.ads: (Is_Directory): Clarify comment
2003-11-19 Robert Dewar <dewar@gnat.com>
* atree.adb: Move New_Copy_Tree global variables to head of package
* errout.adb: Minor reformatting
2003-11-19 Javier Miranda <miranda@gnat.com>
* sem_ch4.adb: (Diagnose_Call): Improve error message.
Add reference to Ada0Y (AI-50217)
* sem_ch6.adb, sem_ch8.adb, sem_type.adb,
sem_util.adb: Add reference to AI-50217
* sinfo.ads: (N_With_Clause): Document fields referred to AI-50217
* sprint.adb: Add reference to Ada0Y (AI-50217, AI-287)
* sem_aggr.adb: Complete documentation of AI-287 changes
* par-ch4.adb: Document previous changes.
* lib-load.adb, lib-writ.adb, einfo.ads, par-ch10.adb,
sem_cat.adb, sem_ch3.adb, sem_ch10.adb, sem_ch12.adb: Add references to
Ada0Y (AI-50217)
* exp_aggr.adb: Add references to AI-287 in previous changes
2003-11-19 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb:
(Add_Call_By_Copy_Node): Do not original node of rewritten expression
in the rewriting is the result of an inlined call.
* exp_ch6.adb (Add_Call_By_Copy_Node): If actual for (in-)out
parameter is a type conversion, use original node to construct the
post-call assignment, because expression may have been rewritten, e.g.
if it is a packed array.
* sem_attr.adb:
(Resolve_Attribute, case 'Constrained): Attribute is legal in an inlined
body, just as it is in an instance.
Categorization routines
* sem_ch12.adb (Analyze_Association, Instantiate_Formal_Subprogram,
Instantiate_Object): Set proper sloc reference for message on missing
actual.
2003-11-19 Thomas Quinot <quinot@act-europe.fr>
* Makefile.in: Add FreeBSD libgnat pairs.
* usage.adb: Fix typo in usage message.
2003-11-19 Jerome Guitton <guitton@act-europe.fr>
* Makefile.in: On powerpc-wrs-vxworksae: Add s-thread.ad?,
s-thrini.ad? and s-tiitho.adb to the full runtime, to support the
pragma Thread_Body.
Remove i-vthrea.ad? and s-tpae65.ad?, not needed anymore.
* s-thread.adb: This file is now a dummy implementation of
System.Thread.
2003-11-19 Sergey Rybin <rybin@act-europe.fr>
* rtsfind.adb (Initialize): Add initialization for RTE_Is_Available
2003-11-19 Emmanuel Briot <briot@act-europe.fr>
* xref_lib.adb (Parse_Identifier_Info): Add handling of generic
instanciation references in the parent type description.
2003-11-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* ada-tree.def: (ALLOCATE_EXPR): Class is "2", not "s".
* decl.c (gnat_to_gnu_entity, case E_Floating_Point_Subtype): Set
TYPE_PRECISION directly from esize.
2003-11-18 Thomas Quinot <quinot@act-europe.fr>
* cstreams.c:
Use realpath(3) on FreeBSD. Fix typo in comment while we are at it.
* init.c: Initialization routines for FreeBSD
* link.c: Link info for FreeBSD
* sysdep.c: Add the case of FreeBSD
2003-11-17 Jerome Guitton <guitton@act-europe.fr>
* 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
already called in System.Threads.
* 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
environment task, as it has been moved to System.Threads.Initialization.
2003-11-17 Arnaud Charlet <charlet@act-europe.fr>
* adaint.c (__gnatlib_install_locks): Only reference
__gnat_install_locks on VMS, since other platforms can avoid using
--enable-threads=gnat
2003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.
* decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
TYPE_PACKED_ARRAY_TYPE_P.
(validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.
Part of PR ada/12806
* utils.c (float_type_for_precision): Renamed from float_type_for_size.
Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.
2003-11-17 Vincent Celier <celier@gnat.com>
* gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
to False.
Do not set exit status to Failure when Warning is True.
(Gnatchop): Make errors "no compilation units found" and
"no source files written" warnings only.
* make.adb (Gnatmake): When using a project file, set
Look_In_Primary_Dir to False.
(Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
and Local_Configuration_Pragmas in the project where they are declared
not an extending project which might have inherited them.
* osint.adb (Locate_File): If Name is already an absolute path, do not
look for a directory.
* par-ch10.adb (P_Compilation_Unit): If source contains no token, and
-gnats (Check_Syntax) is used, issue only a warning, not an error.
* prj.adb (Register_Default_Naming_Scheme): Add new component Project
in objects of type Variable_Value.
* prj.ads: (Variable_Value): New component Project
* prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
is in a project extended by Project.
* prj-proc.adb (Add_Attributes): New parameter Project. Set component
Project of Variable_Values to this new parameter value.
(Expression): Set component Project of Variable_Values.
(Process_Declarative_Items): Call Add_Attributes with parameter Project.
Set the component Project in array elements.
2003-11-17 Sergey Rybin <rybin@act-europe.fr>
* errout.adb: (Initialize): Add initialization for error nodes.
* sem_ch12.adb (Initialize): Add missing initializations for
Exchanged_Views and Hidden_Entities.
2003-11-17 Ed Schonberg <schonberg@gnat.com>
* sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
already instantiated tree for use in subsequent inlining.
(Analyze_Associations, Instantiate_Formal_Subprogram,
Instantiate_Object): improve error message for mismatch in
instantiations.
* sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
instantiations of subprograms declared in instances.
2003-11-17 Javier Miranda <miranda@gnat.com>
* sem_ch4.adb (Analyze_Allocator): Previous modification must be
executed only under the Extensions_Allowed flag.
2003-11-17 Robert Dewar <dewar@gnat.com>
* a-exexda.adb (Address_Image): Fix documentation to indicate leading
zeroes suppressed.
(Address_Image): Fix bug of returning 0x instead of 0x0
Minor reformatting (function specs).
* einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
(missed case of 33-63)
* freeze.adb, sem_ch13.adb: Properly check size of packed bit array
* s-thread.adb: Add comments for pragma Restriction
* exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting
2003-11-17 Ed Falis <falis@gnat.com>
* s-thread.adb: Added No_Tasking restriction for this implementation.
2003-11-17 Emmanuel Briot <briot@act-europe.fr>
* xref_lib.adb (Parse_Identifier_Info): Add handling of generic
instanciation references in the parent type description.
2003-11-17 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-11-16 Jason Merrill <jason@redhat.com>
* Make-lang.in (ada.tags): Create TAGS.sub files in each directory
and TAGS files that include them for each front end.
2003-11-14 Andreas Jaeger <aj@suse.de>
* lang.opt: Change -Wno-long-long to -Wlong-long since the latter
is the canonical version.
* misc.c (gnat_handle_option): Likewise.
* Makefile.in (LIBGNAT_TARGET_PAIRS): Add rules for x86_64-linux.
* 5nsystem.ads: New file for x86_64-linux-gnu.
2003-11-14 Arnaud Charlet <charlet@act-europe.fr>
* nmake.ads, nmake.adb, sinfo.h, treeprs.ads: Regenerated.
* comperr.adb: Fix logic in previous change.
2003-11-13 Vincent Celier <celier@gnat.com>
* 5bml-tgt.adb (Build_Dynamic_Library): Use
Osint.Include_Dir_Default_Prefix instead of
Sdefault.Include_Dir_Default_Name.
* gnatlbr.adb: Update Copyright notice
(Gnatlbr): : Use Osint.Include_Dir_Default_Prefix instead of
Sdefault.Include_Dir_Default_Name and Osint.Object_Dir_Default_Prefix
instead of Sdefault.Object_Dir_Default_Name
* gnatlink.adb:
(Process_Binder_File): Never suppress the option following -Xlinker
* mdll-utl.adb:
(Gcc): Use Osint.Object_Dir_Default_Prefix instead of
Sdefault.Object_Dir_Default_Name.
* osint.ads, osint.adb:
(Include_Dir_Default_Prefix, Object_Dir_Default_Prefix): New functions
Minor reformatting.
* vms_conv.ads: Minor reformating
Remove GNAT STANDARD and GNAT PSTA
* vms_conv.adb:
Allow GNAT MAKE to have several files on the command line.
(Init_Object_Dirs): Use Osint.Object_Dir_Default_Prefix instead of
Sdefault.Object_Dir_Default_Name.
Minor Reformating
Remove data for GNAT STANDARD
* vms_data.ads:
Add new compiler qualifier /PRINT_STANDARD (-gnatS)
Remove data for GNAT STANDARD
Remove options and documentation for -gnatwb/-gnatwB: these warning
options no longer exist.
2003-11-13 Ed Falis <falis@gnat.com>
* 5zthrini.adb: (Init_RTS): Made visible
* 5zthrini.adb:
(Register): Removed unnecessary call to taskVarGet that checked whether
an ATSD was already set as a task var for the argument thread.
* s-thread.adb:
Updated comment to reflect that this is a VxWorks version
Added context clause for System.Threads.Initialization
Added call to System.Threads.Initialization.Init_RTS
2003-11-13 Jerome Guitton <guitton@act-europe.fr>
* 5zthrini.adb:
(Init_RTS): New procedure, for the initialization of the run-time lib.
* s-thread.adb:
Remove dependancy on System.Init, so that this file can be used in the
AE653 sequential run-time lib.
2003-11-13 Robert Dewar <dewar@gnat.com>
* bindgen.adb: Minor reformatting
2003-11-13 Ed Schonberg <schonberg@gnat.com>
* checks.adb:
(Apply_Discriminant_Check): Do no apply check if target type is derived
from source type with no applicable constraint.
* lib-writ.adb:
(Ensure_System_Dependency): Do not apply the style checks that may have
been specified for the main unit.
* sem_ch8.adb:
(Find_Selected_Component): Further improvement in error message, with
RM reference.
* sem_res.adb:
(Resolve): Handle properly the case of an illegal overloaded protected
procedure.
2003-11-13 Javier Miranda <miranda@gnat.com>
* exp_aggr.adb:
(Has_Default_Init_Comps): New function to check the presence of
default initialization in an aggregate.
(Build_Record_Aggr_Code): Recursively expand the ancestor in case of
extension aggregate of a limited record. In addition, a new formal
was added to do not initialize the record controller (if any) during
this recursive expansion of ancestors.
(Init_Controller): Add support for limited record components.
(Expand_Record_Aggregate): In case of default initialized components
convert the aggregate into a set of assignments.
* par-ch4.adb (P_Aggregate_Or_Paren_Expr): Update the comment
describing the new syntax.
Nothing else needed to be done because this subprogram delegates part of
its work to P_Precord_Or_Array_Component_Association.
(P_Record_Or_Array_Component_Association): Give support to the new
syntax for default initialization of components.
* sem_aggr.adb:
(Resolve_Aggregate): Relax the strictness of the frontend in case of
limited aggregates.
(Resolve_Record_Aggregate): Give support to default initialized
components.
(Get_Value): In case of default initialized components, duplicate
the corresponding default expression (from the record type
declaration). In case of default initialization in the *others*
choice, do not check that all components have the same type.
(Resolve_Extension_Aggregate): Give support to limited extension
aggregates.
* sem_ch3.adb:
(Check_Initialization): Relax the strictness of the front-end in case
of aggregate and extension aggregates. This test is now done in
Get_Value in a per-component manner.
* sem_ch4.adb (Analyze_Allocator): Don't post an error if the
expression corresponds to a limited aggregate. This test is now done
in Get_Value.
* sinfo.ads, sinfo.adb (N_Component_Association): Addition of
Box_Present flag.
* sprint.adb (Sprint_Node_Actual): Modified to print an mbox if
present in an N_Component_Association node
2003-11-13 Thomas Quinot <quinot@act-europe.fr>
* sem_ch9.adb (Analyze_Accept_Statement): A procedure hides a
type-conformant entry only if they are homographs.
2003-11-13 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* adadecode.c: Use <> form of include for ctype.h.
* sysdep.c [IN_RTS]: Use <> form of include for time.h.
2003-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* 5gsystem.ads (Functions_Return_By_DSP): Set to False.
Works around PR middle-end/6552.
2003-11-10 Ed Falis <falis@gnat.com>
* 5ytiitho.adb: (procStartHookAdd): Definition and call deleted
* 5zinit.adb: (Install_Handler): Moved back to spec
(Install_Signal_Handlers): Deleted
* 5zthrini.adb: Added context clause for System.Storage_Elements
(Register): Only handles creation of taskVar; initialization moved to
Thread_Body_Enter.
(Reset_TSD): Deleted; replaced by Thread_Body_Enter
Added declaration of environment task secondary stack and
initialization.
* s-thread.adb: Implement bodies for thread body processing
* s-thread.ads:
Added comment identifying supported targets for pragma Thread_Body.
2003-11-10 Pascal Obry <obry@gnat.com>
* adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
GNAT_MAX_PATH_LEN.
* s-fileio.adb:
(Open): Properly check for string length before copying into the buffer.
Raises Name_Error if buffer is too small. Note that this was a potential
buffer overflow.
2003-11-10 Romain Berrendonner <berrendo@act-europe.fr>
* bindgen.adb, comperr.adb: Code clean ups.
* gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.
2003-11-10 Sergey Rybin <rybin@act-europe.fr>
* gnat1drv.adb: Add call to Sem_Elim.Initialize.
2003-11-10 Vincent Celier <celier@gnat.com>
* gprcmd.adb:
(Gprcmd): Add new command "prefix" to get the prefix of the GNAT
installation.
* make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler
* prj.adb: (Project_Empty): Add new boolean component Virtual
* prj.ads: (Virtual_Prefix): New constant string
(Project_Data): New boolean component Virtual
* prj-nmsc.adb (Language_Independent_Check): Adjust error message when
a library project is extended by a virtual extending project.
* prj-part.adb:
Modifications throughout to implement extending-all project, including:
(Virtual_Hash, Processed_Hash): New hash tables
(Create_Virtual_Extending_Project): New procedure
(Look_For_Virtual_Projects_For): New procedure
* prj-proc.adb:
(Process): After checking the projects, if main project is an
extending-all project, set the object directory of all virtual extending
project to the object directory of the main project.
Adjust error message when a virtual extending project has the same
object directory as an project being extended.
(Recursive_Process): If name starts with the virtual prefix, set Virtual
to True in the project data.
* prj-tree.adb:
(Default_Project_Node): Add new boolean component Extending_All
(Is_Extending_All): New function
(Set_Is_Extending_All): New procedure
* prj-tree.ads: (Is_Extending_All): New function
(Set_Is_Extending_All): New procedure
(Project_Node_Record): New boolean component Extending_All
* switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib
* vms_data.ads:
Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler
* bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
"gprcmd prefix" to define it.
2003-11-10 Thomas Quinot <quinot@act-europe.fr>
* einfo.ads: Fix a typo and remove an extraneous word in comments.
* lib-load.adb:
(Create_Dummy_Package_Unit): Set the scope of the entity for the
created dummy package to Standard_Standard, not to itself, to
defend other parts of the front-end against encoutering a cycle in
the scope chain.
* sem_ch10.adb:
(Analyze_With_Clause): When setting the entities for the successive
N_Expanded_Names that constitute the name of a child unit, do not
attempt to go further than Standard_Standard in the chain of scopes.
This case arises from the placeholder units created by
Create_Dummy_Package_Unit in the case of a with_clause for a
nonexistent child unit.
2003-11-10 Ed Schonberg <schonberg@gnat.com>
* exp_ch6.adb:
(Expand_Thread_Body): Place subprogram on scope stack, so that new
declarations are given the proper scope.
* sem_ch13.adb:
(Check_Expr_Constants): Reject an expression that contains a constant
created during expansion, and that appears after the object to which
the address clause applies.
* sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
Analyze_Iteration_Scheme, to rewrite a loop parameter specification
that uses 'Range of a function call with controlled components, so
that the function result can be finalized before starting the loop.
* sem_ch8.adb:
(Find_Selected_Component): Improve error message when prefix is
an implicit dereference of an incomplete type.
2003-11-10 Robert Dewar <dewar@gnat.com>
* opt.ads: New Print_Standard flag for -gnatS switch
* sem_ch13.adb: Remove some additional checks for unaligned arrays
* cstand.adb (Create_Standard): Print out package standard if -gnatS
switch set
* debug.adb: Update doc for -gnatds to discuss relationship with new
-gnatS flag
* sinfo.adb: Add new field Entity_Or_Associated_Node
* sinfo.ads: Add new field Entity_Or_Associated_Node
Update documentation for Associated_Node and Entity fields to clarify
relationship and usage.
* sprint.adb:
(Write_Id): Properly process Associated_Node field in generic template
* switch-c.adb:
Recognize new -gnatS switch for printing package Standard
This replaces gnatpsta
* usage.adb:
Add line for new -gnatS switch for printing package Standard
This replaces gnatpsta
2003-11-10 Andreas Jaeger <aj@suse.de>
* 7sosprim.adb: tv_usec of struct_timeval and time_t are long
integer.
2003-11-10 Arnaud Charlet <charlet@act-europe.fr>
* misc.c, lang.opt: Add handling of -nostdlib, now recognized/needed
by gnat1.
2003-11-10 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in, Make-lang.in: Remove build of gnat_wrapper and gnatpsta,
no longer needed.
* gnatpsta.adb, gnat_wrapper.adb: Removed, no longer needed.
* sysdep.c: Add handling of cygwin.
2003-11-10 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-11-10 Arnaud Charlet <charlet@act-europe.fr>
PR 12950
* osint.ads, osint.adb (Relocate_Path, Executable_Suffix): New
functions. Used to handle dynamic prefix relocation, via set_std_prefix.
Replace GNAT_ROOT by GCC_ROOT.
* Make-lang.in: Use new function Relocate_Path to generate sdefault.adb
2003-11-06 Zack Weinberg <zack@codesourcery.com>
* misc.c (fp_prec_to_size, fp_size_to_prec): Use GET_MODE_PRECISION
and update for changed meaning of GET_MODE_BITSIZE.
2003-11-04 Doug Rupp <rupp@gnat.com>
* sysdep.c: Problem discovered during IA64 VMS port.
[VMS] #include <unixio.h> to get proper prototypes.
* adaint.c:
Issues discovered/problems fixed during IA64 VMS port.
[VMS] #define _POSIX_EXIT for proper semantics.
[VMS] #include <unixio.h> for proper prototypes.
[VMS] (fork): #define IA64 version.
(__gnat_os_exit): Remove unnecessary VMS specific code.
2003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Part of PR ada/12806
* ada-tree.h (TYPE_DIGITS_VALUE, SET_TYPE_DIGITS_VALUE): Save count as
tree, not integer.
* decl.c:
(gnat_to_gnu_entity, case E_Floating_Point_Type): Save count as tree,
not integer.
* targtyps.c, decl.c, misc.c,
gigi.h (fp_prec_to_size, fp_size_to_prec): Temporary
routines to work around change in FP sizing semantics in GCC.
* utils.c:
(build_vms_descriptor): TYPE_DIGITS_VALUE is tree, not integer.
* gigi.h: (enumerate_modes): New function.
* Make-lang.in: (ada/misc.o): Add real.h.
* misc.c: (enumerate_modes): New function.
2003-11-04 Robert Dewar <dewar@gnat.com>
* 3vtrasym.adb: Minor reformatting
Use terminology encoded/decoded name, rather than C++ specific notion
of mangling (this is the terminology used throughout GNAT).
* einfo.h: Regenerated
* einfo.ads, einfo.adb: Add new flag Is_Thread_Body
* exp_ch6.adb:
(Expand_N_Subprogram_Body): Handle expansion of thread body procedure
* par-prag.adb: Add dummy entry for Thread_Body pragma
* rtsfind.ads:
Add entries for System.Threads entities for thread body processing
* sem_attr.adb:
(Analyze_Pragma, Access attributes): Check these are not applied to a
thread body, since this is not permitted
* sem_prag.adb: Add processing for Thread_Body pragma.
Minor comment fix.
* sem_res.adb:
(Resolve_Call): Check for incorrect attempt to call a thread body
procedure with a direct call.
* snames.ads, snames.adb: Add entry for Thread_Body pragma
Add names associated with thread body expansion
* snames.h: Add entry for Thread_Body pragma
* s-thread.adb: Add entries for thread body processing
These are dummy bodies so far
* s-thread.ads: Add documentation on thread body handling.
Add entries for thread body processing.
2003-11-04 Javier Miranda <miranda@gnat.com>
* sem_ch10.adb:
(Build_Limited_Views): Return after posting an error in case of limited
with_clause on subprograms, generics, instances or generic renamings
(Install_Limited_Withed_Unit): Do nothing in case of limited with_clause
on subprograms, generics, instances or generic renamings
2003-11-04 Arnaud Charlet <charlet@act-europe.fr>
* raise.c (setup_to_install): Correct mistake in last revision; two
arguments out of order.
* trans.c, cuintp.c, argv.c, aux-io.c, cal.c, errno.c, exit.c,
gnatbl.c, init.c, stringt.h, utils.c, utils2.c: Update copyright
notice, missed in previous change.
Remove trailing blanks and other style errors introduced in previous
change.
2003-11-04 Olivier Hainque <hainque@act-europe.fr>
* decl.c (gnat_to_gnu_field): Adjust the conditions under which we get
rid of the wrapper for a LJM type, ensuring we don't do that if the
field is addressable. This avoids potential low level type view
mismatches later on, for instance in a by-reference argument passing
process.
2003-11-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_field): No longer check for BLKmode being
aligned at byte boundary.
2003-11-04 Joel Brobecker <brobecker@gnat.com>
* decl.c (components_to_record): Do not delete the empty variants from
the end of the union type.
2003-11-04 Ed Schonberg <schonberg@gnat.com>
* exp_ch4.adb (Expand_N_Op_Eq): Use base type when locating primitive
operation for a derived type, an explicit declaration may use a local
subtype of Boolean.
2003-11-04 Vincent Celier <celier@gnat.com>
* make.adb (Gnatmake): Allow main sources on the command line with a
library project when it is only for compilation (no binding or
linking).
2003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Makefile.in: Remove many duplicate variables.
2003-11-03 Kelley Cook <kcook@gcc.gnu.org>
* Make-lang.in (dvi): Move targets to $(docobjdir).
(gnat_ug_vms.dvi): Simplify rule and adjust target.
(gnat_ug_wnt.dvi): Likewise.
(gnat_ug_unx.dvi): Likewise.
(gnat_ug_vxw.dvi): Likewise.
(gnat_rm.dvi): Likewise.
(gnat-style.dvi): Likewise.
2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
* gigi.h: Missed commit from update for C90.
2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
* Makefile.in (ada/b_gnat1.o): Compile with -Wno-error.
2003-10-31 Andreas Schwab <schwab@suse.de>
* raise.c (get_action_description_for): Fix typo in last change.
2003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
PR ada/12761
* ada/Make-lang.in: Move default definitions of X_ADA_CFLAGS,
T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from here to master Makefile.in.
2003-10-30 Kelley Cook <kcook@gcc.gnu.org>
* adadecode.c, adaint.c, argv.c, aux-io.c, cal.c, cio.c, cstreams.c,
ctrl_c.c, cuintp.c, decl.c, errno.c, exit.c, expect.c, final.c,
gigi.h, gmem.c, gnatbl.c, init.c, misc.c, mkdir.c, raise.c, socket.c,
sysdep.c, sysdep.c, targtyps.c, tb-alvms.c, tb-alvxw.c, tracebak.c,
trans.c, utils.c, utils2.c: Convert function prototypes to C90.
2003-10-30 Vasiliy Fofanov <fofanov@act-europe.fr>
* 3vtrasym.adb:
Demangle Ada symbols returned by TBK$SYMBOLIZE. Correctly align line
numbers when symbol name is too long.
2003-10-30 Ed Falis <falis@gnat.com>
* g-signal.ads, g-signal.adb: New files
* impunit.adb: (Non_Imp_File_Names): Added "g-signal"
* Makefile.rtl: Introduce GNAT.Signals
2003-10-30 Robert Dewar <dewar@gnat.com>
* freeze.adb: Minor reformatting
* lib-writ.adb (Write_ALI): Never write ali file if -gnats is specified
* par.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb,
par-ch5.adb, par-ch6.adb, par-ch9.adb, par-util.adb:
New handling of Id_Check parameter to improve recognition of keywords
used as identifiers.
Update copyright notice to include 2003
2003-10-29 Robert Dewar <dewar@gnat.com>
* 3vtrasym.adb, 5vtraent.ads, sprint.adb,
sem_ch10.adb: Minor reformatting
* exp_ch5.adb (Expand_Assign_Array): Test for bit unaligned operands
(Expand_Assign_Record): Test right hand side for bit unaligned as well
2003-10-29 Vasiliy Fofanov <fofanov@act-europe.fr>
* 3vtrasym.adb, 5vtraent.adb, 5vtraent.ads, tb-alvms.c:
Support for TBK$SYMBOLIZE-based symbolic traceback.
2003-10-29 Jose Ruiz <ruiz@act-europe.fr>
* exp_disp.adb:
Revert previous change, that did not work well when pragma No_Run_Time
was used in conjunction with a run-time other than ZFP.
2003-10-29 Vincent Celier <celier@gnat.com>
* make.adb:
(Gnatmake): When there are no Ada mains in attribute Main, disable the
bind and link steps only is switch -z is not used.
2003-10-29 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.generic: Remove duplicated setting of CC.
* Makefile.prolog: Set CC to gcc by default, to override make's
default (cc).
* einfo.h: Regenerated.
2003-10-29 Ed Schonberg <schonberg@gnat.com>
* sem_ch10.adb (Analyze_Subunit): Restore state of suppress flags for
current body, after compiling subunit.
* itypes.adb (Create_Itype): In ASIS_Mode, do not freeze the itype
when in deleted code, because gigi needs properly ordered freeze
actions to annotate types.
* freeze.adb (Is_Fully_Defined): Predicate must be recursive, to
prevent the premature freezing of record type that contains
subcomponents with a private type that does not yet have a completion.
2003-10-29 Javier Miranda <miranda@gnat.com>
* sem_ch12.adb:
(Analyze_Package_Instantiation): Check that instances can not be used in
limited with_clauses.
* sem_ch8.adb:
(Analyze_Package_Renaming): Check that limited withed packages cannot
be renamed. Improve text on error messages related to limited
with_clauses.
* einfo.adb, einfo.ads: Remove Non_Limited_Views attribute.
* sprint.adb: (Sprint_Node_Actual): Print limited with_clauses.
Update copyright notice.
* sem_ch10.adb: (Build_Limited_Views): Complete its documentation.
(Install_Limited_Context_Clauses): New subprogram that isolates all the
checks required for limited context_clauses and installs the limited
view.
(Install_Limited_Withed_Unit): Complete its documentation.
(Analyze_Context): Check that limited with_clauses are only allowed in
package specs.
(Install_Context): Call Install_Limited_Context_Clauses after the
parents have been installed.
(Install_Limited_Withed_Unit): Add documentation. Mark the installed
package as 'From_With_Type'; this mark indicates that the limited view
is installed. Used to check bad usages of limited with_clauses.
(Build_Limited_Views): Do not add shadow entities to the scope's list
of entities. Do not add real entities to the Non_Limited_Views chain.
Improve error notification.
(Remove_Context_Clauses): Remove context clauses in two phases:
limited views first and regular views later (to maintain the
stack model).
(Remove_Limited_With_Clause): If the package is analyzed then reinstall
its visible entities.
2003-10-29 Thomas Quinot <quinot@act-europe.fr>
* sem_type.adb (Specific_Type): Type Universal_Fixed is compatible
with any type that Is_Fixed_Point_Type.
* sinfo.ads: Fix documentation for Associated_Node attribute.
2003-10-29 Sergey Rybin <rybin@act-europe.fr>
* switch-c.adb (Scan_Front_End_Switches): ASIS_Mode is set now when
both '-gnatc' and '-gnatt' are specified.
* atree.adb (Initialize): Add initialization for Node_Count (set to
zero).
2003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, case E_Subprogram): If no return value,
do not consider as Pure.
Part of implementation of function-at-a-time:
* trans.c (gnat_to_gnu_code): If IS_STMT, call expand_expr_stmt.
(tree_transform): Add new argument to build_component_ref.
(tree_transform, case N_Assignment_Statement): Make and return an
EXPR_STMT.
(tree_transform): If result IS_STMT, set flags and return it.
(gnat_expand_stmt, set_lineno_from_sloc): New functions.
* utils2.c (build_simple_component_ref, build_component_ref): Add new
arg, NO_FOLD_P.
(build_binary_op, case EQ_EXPR): Pass additional arg to it.
(build_allocator): Likewise.
* utils.c (convert_to_fat_pointer, convert_to_thin_pointer, convert):
Add new arg to build_component_ref.
(maybe_unconstrained_array, unchecked_convert): Likewise.
* ada-tree.def (EXPR_STMT): New code.
* ada-tree.h (IS_STMT, TREE_SLOC, EXPR_STMT_EXPR): New macros.
* decl.c (gnat_to_gnu_entity, case object): Add extra arg to
build_component_ref calls.
* misc.c (gnat_expand_expr): If IS_STMT, call gnat_expand_stmt.
* gigi.h (gnat_expand_stmt, set_lineno_from_sloc): New functions.
(build_component_ref): Add new argument, NO_FOLD_P.
2003-10-27 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.generic: Add missing substitution on object_deps handling.
PR ada/5909:
* Make-lang.in (check-ada): Enable ACATS test suite.
2003-10-27 Robert Dewar <dewar@gnat.com>
* exp_ch3.adb:
(Freeze_Array_Type): We do not need an initialization routine for types
derived from String or Wide_String. They should be treated the same
as String and Wide_String themselves. This caused problems with the
use of Initialize_Scalars.
* exp_ch5.adb:
(Expand_Assign_Record): Do component-wise assignment of non-byte aligned
composites. This allows use of component clauses that are not byte
aligned.
* sem_prag.adb:
(Analyze_Pragma, case Pack): Generate warning and ignore pack if there
is an attempt to pack an array of atomic objects.
* make.adb, prj-env.adb, prj-env.ads: Minor reformatting
2003-10-27 Pascal Obry <obry@gnat.com>
* g-dirope.adb:
(Basename): Check for drive letters in a pathname only on DOS based OS.
2003-10-27 Vincent Celier <celier@gnat.com>
* make.adb:
(Gnatmake): When unable to change dir to the object dir, display the
content of the parent dir of the obj dir, to try to understand why this
happens.
2003-10-27 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-10-27 Ed Schonberg <schonberg@gnat.com>
* sem_ch12.adb:
(Inline_Instance_Body): Indicate that the save/restore of use_clauses
should not be done in Save/Restore_Scope_Stack, because it is performed
locally.
* sem_ch8.adb:
(Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
whether use clauses should be removed/restored.
* sem_ch8.ads:
(Save_Scope_Stack, Restore_Scope_Stack): Add parameter to indicate
whether use clauses should be removed/restored.
2003-10-26 Andreas Jaeger <aj@suse.de>
* Makefile.in: Remove duplicated lines.
2003-10-24 Arnaud Charlet <charlet@act-europe.fr>
* gnatvsn.ads (Gnat_Static_Version_String): New constant, used to
minimize the differences with ACT tree.
* gnatkr.adb, gnatlink.adb, gnatls.adb, gnatmake.adb,
gnatprep.adb, gnatpsta.adb, gnatvsn.ads: Take advantage of
Gnatvsn.Gnat_Static_Version_String to reduce differences between
ACT and FSF trees.
2003-10-24 Pascal Obry <obry@gnat.com>
* adadecode.c (ostrcpy): New function.
(__gnat_decode): Use ostrcpy of strcpy.
(has_prefix): Set first parameter a const.
(has_suffix): Set first parameter a const.
Update copyright notice. Fix source name in header.
Removes a trailing space.
PR ada/12014.
2003-10-24 Jose Ruiz <ruiz@act-europe.fr>
* exp_disp.adb:
Remove the test against being in No_Run_Time_Mode before generating a
call to Register_Tag. It is redundant with the test against the
availability of the function Register_Tag.
2003-10-24 Vincent Celier <celier@gnat.com>
* g-catiio.adb: (Month_Name): Correct spelling of February
* make.adb: (Mains): New package
(Initialize): Call Mains.Delete
(Gnatmake): Check that each main on the command line is a source of a
project file and, if there are several mains, each of them is a source
of the same project file.
(Gnatmake): When a foreign language is specified in attribute Languages,
no main is specified on the command line and attribute Mains is not
empty, only build the Ada main. If there is no Ada main, just compile
the Ada sources and their closure.
(Gnatmake): If a main is specified on the command line with directory
information, check that the source exists and, if it does, that the path
is the actual path of a source of a project.
* prj-env.adb:
(File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path. When
Full_Path is True, return the full path instead of the simple file name.
(Project_Of): New function
* prj-env.ads:
(File_Name_Of_Library_Unit_Body): New Boolean parameter Full_Path,
defaulted to False.
(Project_Of): New function
2003-10-24 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.generic:
Ensure objects of main project are always checked and rebuilt if needed.
Set CC to gcc by default.
Prepare new handling of link by creating a global archive (not activated
yet).
* adadecode.h, atree.h, elists.h, nlists.h, raise.h,
stringt.h: Update copyright notice. Remove trailing blanks.
Fix source name in header.
2003-10-24 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb: Minor reformatting
* sem_ch3.adb:
Minor reformatting (including new function return style throughout)
* sem_ch3.ads:
Minor reformatting (including new function return style throughout)
2003-10-24 Arnaud Charlet <charlet@act-europe.fr>
* adadecode.h, atree.h, elists.h, nlists.h, raise.h,
stringt.h: Update copyright notice. Remove trailing blanks.
Fix source name in header.
2003-10-24 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
2003-10-23 Nathanael Nerode <neroden@gcc.gnu.org>
* adadecode.h, atree.h, elists.h, namet.h, nlists.h, raise.h,
stringt.h: Convert to ISO C90 declarations and definitions.
2003-10-23 Thomas Quinot <quinot@act-europe.fr>
PR ada/11978:
* exp_ch13.adb (Expand_N_Freeze_Entity): Do not consider inherited
External_Tag attribute definition clauses.
2003-10-23 Ed Schonberg <schonberg@gnat.com>
PR ada/7613:
* exp_dbug.adb (Debug_Renaming_Declaration): For the renaming of a
child unit, generate a fully qualified name to avoid spurious errors
when the context contains renamings of different child units with
the same simple name.
* exp_dbug.ads: Add documentation on name qualification for renamings
of child units.
2003-10-23 Robert Dewar <dewar@gnat.com>
* g-regpat.ads, g-regpat.adb: Minor reformatting
2003-10-23 Jose Ruiz <ruiz@act-europe.fr>
* Makefile.in: Use the file 1atags.ads with the ZFP and cert run-times.
2003-10-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c: (tree_transform, case N_Real_Literal): Add extra arg to
Machine call.
* urealp.h: (Machine): Update to proper definition.
2003-10-23 Arnaud Charlet <charlet@act-europe.fr>
* init.c, adaint.c: Minor reformatting.
2003-10-23 Danny Smith <dannysmith@users.sourceforge.net>
* adaint.c (w32_epoch_offset): Define static const at file level.
(win32_filetime): Replace offset with w32_epoch_offset. Use NULL
rather than t_create, t_access in call to GetFileTime. Use union
to convert between FILETIME and unsigned long long.
(__gnat_file_time_name): Test for invalid file handle.
(__gnat_set_filetime_name): Support win32 targets using
w32api SetFileTime.
2003-10-22 Danny Smith <dannysmith@users.sourceforge.net>
* sysdep.c: Include conio.h if __MINGW32__ and !OLD_MINGW.
* ctrl_c.c (__gnat_int_handler): Remove declaration.
* decl.c (creat_concat_name): Const-ify prefix.
* adaint.c: Include ctype.h if __MINGW32__.
(__gnat_readlink): Mark arguments as possibly unused.
(__gnat_symlink): Likewise.
(__gnat_is_symbolic_link): Likewise.
(__gnat_portable_spawn): Likewise. Cast last arg of spawnvp to match
declaration
(__gnat_file_time_name): Don't declare struct stat statbuf when
not needed.
(__gnat_is_absolute_path): Add parenthesis around condition of
'if' statement to avoid warning.
(__gnat_plist_init): Specify void as parameter.
(plist_enter): Likewise.
(plist_leave): Likewise.
(remove_handle): Make static. Initialize prev.
2003-10-22 Arnaud Charlet <charlet@act-europe.fr>
* Makefile.in: Disable build of gnatpsta. PR ada/10110.
* cstreams.c (__gnat_full_name): Minor improvements and clean up
of previous change.
2003-10-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* tracebak.c (MAX): Avoid redefinition warning.
* init.c [sgi] (__gnat_error_handler): Remove i, unused.
Change msg to const char *.
(__gnat_install_handler): Remove ss, unused.
[sun && __SVR4 && !__vxworks] (__gnat_error_handler): Change msg
to const char *.
* cstreams.c (__gnat_full_name): Declare p only when used.
(__gnat_full_name) [sgi] Return buffer.
2003-10-22 Arnaud Charlet <charlet@act-europe.fr>
* mingw32.h: New file.
* gnat_wrapper.adb: New file.
2003-10-22 Jerome Roussel <roussel@act-europe.fr>
* g-regpat.ads, g-regpat.adb (Match): new function, to know if a
string match a pre compiled regular expression (the corresponding
version of the function working on a raw regular expression)
Fix typos in various comments
Update copyright notice in spec
2003-10-21 Gary Dismukes <dismukes@gnat.com>
* exp_ch3.adb:
(Component_Needs_Simple_Initialization): Return False when the type is a
packed bit array. Revise spec comments to document this case.
* exp_prag.adb:
(Expand_Pragma_Import): Set any expression on the imported object to
empty to avoid initializing imported objects (in particular this
covers the case of zero-initialization of bit arrays).
Update copyright notice.
2003-10-21 Ed Schonberg <schonberg@gnat.com>
* sem_ch12.adb:
(Load_Parent_Of_Generic): If parent is compilation unit, stop search,
a subunit is missing.
(Instantiate_Subprogram_Body): If body of function is missing, set type
of return expression explicitly in dummy body, to prevent cascaded
errors when a subunit is missing.
Fixes PR 5677.
* sem_ch3.adb:
(Access_Subprogram_Declaration): Verify that return type is valid.
Fixes PR 8693.
* sem_elab.adb:
(Check_Elab_Calls): Do not apply elaboration checks if the main unit is
generic.
Fixes PR 12318.
* sem_util.adb:
(Corresponding_Discriminant): If the scope of the discriminant is a
private type without discriminant, use its full view.
Fixes PR 8247.
2003-10-21 Arnaud Charlet <charlet@act-europe.fr>
* 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
vms_conv.ads, vms_conv.adb, vms_data.ads,
vxaddr2line.adb: Files added. Merge with ACT tree.
* 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
s-expssi.ads, style.adb: Files removed. Merge with ACT tree.
* 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
ali.adb, ali.ads, ali-util.adb, ali-util.ads,
a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
checks.adb, checks.ads, cio.c, comperr.adb,
comperr.ads, csets.adb, cstand.adb, cstreams.c,
debug_a.adb, debug_a.ads, debug.adb, decl.c,
einfo.adb, einfo.ads, errout.adb, errout.ads,
eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
fe.h, fmap.adb, fmap.ads, fname.adb,
fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
layout.adb, lib.adb, lib.ads, lib-list.adb,
lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
link.c, live.adb, make.adb, make.ads,
Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
misc.c, mkdir.c, mlib.adb, mlib.ads,
mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
namet.adb, namet.ads, namet.h, nlists.ads,
nlists.h, nmake.adt, opt.adb, opt.ads,
osint.adb, osint.ads, osint-b.adb, osint-c.adb,
par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
prj-util.adb, prj-util.ads, raise.c, raise.h,
repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
scans.ads, scn.adb, scn.ads, s-crc32.adb,
s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
s-memory.adb, s-memory.ads, snames.adb, snames.ads,
snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
stringt.adb, stringt.ads, stringt.h, style.ads,
stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
table.adb, table.ads, targparm.adb, targparm.ads,
targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
trans.c, tree_io.adb, treepr.adb, treeprs.adt,
ttypes.ads, types.ads, types.h, uintp.adb,
uintp.ads, uintp.h, uname.adb, urealp.adb,
urealp.ads, urealp.h, usage.adb, utils2.c,
utils.c, validsw.adb, validsw.ads, widechar.adb,
xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
gnatvsn.ads: Merge with ACT tree.
* gnatvsn.adb: Rewritten in a simpler and more efficient way.
2003-10-20 Mark Mitchell <mark@codesourcery.com>
* Make-lang.in (gnat_ug_unx.info): Add dependency on stmp-docobjdir.
(gnat_ug_vmx.info): Likewise.
(gnat_ug_vxw.info): Likewise.
(gnat_ug_wnt.info): Likewise.
(gnat_rm.info): Likewise.
(gnat-style.info): Likewise.
* Make-lang.in (ada.install-info): Remove target.
(info): New target.
(install-info): Likewise.
(gnat_ug_unx.info): Simplify rule.
(gnat_ug_vmx.info): Likewise.
(gnat_ug_vxw.info): Likewise.
(gnat_ug_wnt.info): Likewise.
(gnat_rm.info): Likewise.
(gnat-style.info): Likewise.
2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
* Make-lang.in: Replace uses of $(target_alias) with
$(target_noncanonical).
* ada/Makefile.in: Remove unused mention of $(target_alias).
2003-10-06 Mark Mitchell <mark@codesourcery.com>
* Make-lang.in (ada.info): Replace with ...
(info): ... this.
(ada.dvi): Replace with ...
(dvi): ... this.
2003-09-29 Zack Weinberg <zack@codesourcery.com>
* trans.c (gigi): Use REAL_ARITHMETIC, not REAL_VALUE_ATOF, to
initialize dconstp5 and dconstmp5.
2003-09-28 Richard Henderson <rth@redhat.com>
* trans.c (tree_transform): Update call to expand_asm_operands.
2003-09-21 Richard Henderson <rth@redhat.com>
* trans.c, utils.c: Revert.
2003-09-21 Richard Henderson <rth@redhat.com>
* trans.c, utils.c: Update for DECL_SOURCE_LOCATION rename and
change to const.
2003-09-04 Michael Matz <matz@suse.de>
* misc.c: Include "target.h".
* Make-lang.in (misc.o): Add dependency on target.h.
2003-09-03 DJ Delorie <dj@redhat.com>
* misc.c (default_pass_by_ref): Convert to calls.return_in_memory
hook.
2003-08-30 Zack Weinberg <zack@codesourcery.com>
* Makefile.in: Update substitutions to match changes to
configure. Use include directives instead of @-insertions
to read in host and target fragments. Add a rule to
regenerate ada/Makefile.
2003-07-18 Neil Booth <neil@daikokuya.co.uk>
* lang-options.h: Remove.
* lang.opt: Add help text.
2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
* trans.c (build_unit_elab, set_lineno): Adjust emit_line_note
calls.
2003-07-06 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_handle_option): Don't handle filenames.
2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
* Make-lang.in: Replace PWD with PWD_COMMAND.
* Makefile.adalib: Likewise.
* Makefile.in: Likewise.
2003-07-04 Matt Kraai <kraai@alumni.cmu.edu>
* misc.c (gnat_argv): Revert last change.
(gnat_handle_option, gnat_init_options): Copy arguments.
2003-07-03 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_argv): Make const.
2003-07-02 Neil Booth <neil@daikokuya.co.uk>
* misc.c (save_argc, save_argv): Keep non-static!
2003-07-02 Neil Booth <neil@daikokuya.co.uk>
* misc.c (save_argc, save_argv): Make static.
(gnat_init_options): New prototype.
(gnat_init_options): Update.
2003-07-01 Matt Kraai <kraai@alumni.cmu.edu>
* gnat_ug.texi: Remove unlikely characters from @vars.
* gnat_ug_vms.texi: Regenerate.
2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
* misc.c (record_code_position): Adjust emit_note call.
2003-06-26 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_handle_option): Don't check for missing arguments.
2003-06-20 Nathan Sidwell <nathan@codesourcery.com>
* utils.c (end_subprog_body): Adjust expand_function_end call.
2003-06-16 Matt Kraai <kraai@alumni.cmu.edu>
* bindgen.adb (Gen_Main_Ada, Gen_Main_C): Do not test
Bind_Main_Program.
2003-06-15 Neil Booth <neil@daikokuya.co.uk>
* lang.opt: Declare Ada.
* misc.c (gnat_init_options): Update.
2003-06-14 Nathan Sidwell <nathan@codesourcery.com>
* utils.c (begin_subprog_body): Adjust init_function_start call.
2003-06-14 Neil Booth <neil@daikokuya.co.uk>
* Make-lang.in: Update to use options.c and options.h.
* misc.c: Include options.h not aoptions.h.
(gnat_handle_option): Abort on unrecognized switch.
(gnat_init_options): Request Ada switches.
2003-06-14 Neil Booth <neil@daikokuya.co.uk>
* lang.opt: Add -Wall.
* misc.c (gnat_handle_option): Handle it.
2003-06-12 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_handle_option): Fix warnings.
2003-06-11 Matt Kraai <kraai@alumni.cmu.edu>
* Make-lang.in (gnatbind): Remove $(LIBIBERTY).
2003-06-11 Neil Booth <neil@daikokuya.co.uk>
* Make-lang.in: Update to handle command-line options.
* lang.opt: New file.
* misc.c: Include aoptions.h.
(cl_options_count, cl_options): Remove.
(gnat_handle_option): New.
(gnat_decode_option): Remove.
(LANG_HOOKS_DECODE_OPTION): Remove.
(LANG_HOOKS_HANDLE_OPTION): Override.
2003-06-10 Nathanael Nerode <neroden@gcc.gnu.org>
* init.c, misc.c, trans.c, utils.c: Remove dead code.
2003-06-09 Nathanael Nerode <neroden@gcc.gnu.org>
* Makefile.in: Replace "host_canonical" with "host" for autoconf
substitution.
2003-06-08 Neil Booth <neil@daikokuya.co.uk>
* Make-lang.in: Update.
* misc.c: Include opts.h. Define cl_options_count and cl_options.
2003-06-07 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_init_options): Update.
2003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
* Make-lang.in (ada/b_gnatb.o-warn): Remove.
* bindgen.adb (Gen_Main_C): Mark ensure_reference with
__attribute__ ((__unused__)).
2003-06-05 Jan Hubicka <jh@suse.cz>
* Make-lang.in: Add support for stageprofile and stagefeedback
2003-06-05 Matt Kraai <kraai@alumni.cmu.edu>
* bindgen.adb (Gen_Adafinal_C, Gen_Adainit_C, Gen_Elab_Defs_C)
(Gen_Main_C, Gen_Output_File_C): Generate ISO C.
2003-06-04 Matt Kraai <kraai@alumni.cmu.edu>
* gnat_ug.texi (The GNAT Run-Time Library Builder gnatlbr):
Remove non-VMS directive.
(Switches for gnatlbr, Optimization Levels): Remove non-VMS
alternatives.
(Examples of gnatls Usage): Remove VMS alternative.
2003-06-04 Olivier Hainque <hainque@act-europe.fr>
PR ada/9953:
* 5hsystem.ads: Remove pragma Linker_Option for pthreads library,
and turn ZCX_By_Default back to False since the underlying support
is not quite there yet.
2003-06-01 Andreas Jaeger <aj@suse.de>
* utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
and ROUND_TYPE_SIZE_UNIT.
2003-05-22 Geert Bosch <bosch@gnat.com>
* gnat_rm.texi : Remove reference to Ada Core Technologies.
2003-05-03 Nathan Sidwell <nathan@codesourcery.com>
* trans.c (tree_transform): Use location_t and input_location
directly.
(build_unit_elab): Likewise.
* utils.c (create_label_decl): Likewise.
2003-05-01 Nathan Sidwell <nathan@codesourcery.com>
* trans.c (tree_transform, build_unit_elab,
set_lineno): Rename lineno to input_line.
* utils.c (pushdecl, create_label_decl, begin_subprog_body,
end_subprog_body): Likewise.
* utils2.c (build_call_raise): Likewise.
2003-05-01 Laurent Guerby <guerby@acm.org>
PR ada/10546
* 5iosinte.ads: Increase pthread_cond_t size to match recent
LinuxThread and NPTL version, merge from ACT.
2003-04-28 Zack Weinberg <zack@codesourcery.com>
* utils.c (convert): No need to clear TREE_CST_RTL.
2003-04-23 Geert Bosch <bosch@gnat.com>
* 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
a-wttest.ads, ada-tree.h, ada.ads, ada.h,
adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
ali.adb, ali.ads, alloc.ads, argv.c,
atree.adb, atree.ads, atree.h, aux-io.c,
back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
binde.adb, binde.ads, binderr.adb, binderr.ads,
bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
butil.adb, butil.ads, cal.c, calendar.ads,
casing.adb, casing.ads, ceinfo.adb, checks.adb,
checks.ads, cio.c, comperr.adb, comperr.ads,
config-lang.in, csets.adb, csets.ads, csinfo.adb,
cstand.adb, cstand.ads, cuintp.c, debug.adb,
debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
dec-io.ads, dec.ads, deftarg.c, directio.ads,
einfo.adb, einfo.ads, elists.adb, elists.ads,
elists.h, errno.c, errout.adb, errout.ads,
eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
freeze.adb, freeze.ads, frontend.adb, frontend.ads,
g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
inline.adb, inline.ads, interfac.ads, ioexcept.ads,
itypes.adb, itypes.ads, krunch.adb, krunch.ads,
layout.adb, layout.ads, lib-list.adb, lib-load.adb,
lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
lib.adb, lib.ads, live.adb, live.ads,
machcode.ads, make.adb, make.ads, makeusg.adb,
makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
mlib.ads, namet.adb, namet.ads, nlists.adb,
nlists.ads, opt.adb, opt.ads, osint-b.adb,
osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
osint.ads, output.adb, output.ads, par-ch10.adb,
par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
par-tchk.adb, par-util.adb, par.adb, par.ads,
prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
prj.adb, prj.ads, repinfo.adb, repinfo.ads,
restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
snames.ads, sprint.adb, sprint.ads, stand.adb,
stand.ads, stringt.adb, stringt.ads, style.adb,
style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
switch-m.ads, switch.adb, switch.ads, system.ads,
table.adb, table.ads, targparm.adb, targparm.ads,
tbuild.adb, tbuild.ads, text_io.ads, trans.c,
tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
ttypef.ads, ttypes.ads, types.adb, types.ads,
uintp.adb, uintp.ads, uname.adb, uname.ads,
unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
usage.adb, usage.ads, validsw.adb, validsw.ads,
widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
formatting and other trivial changes from ACT.
2003-04-12 Zack Weinberg <zack@codesourcery.com>
* gigi.h, utils2.c (build_constructor):
Rename gnat_build_constructor. Use build_constructor.
* decl.c (gnat_to_gnu_entity)
* trans.c (tree_transform, pos_to_constructor, extract_values)
* ada/utils.c (build_template, convert_to_fat_pointer, convert)
(unchecked_convert)
* ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
(fill_vms_descriptor):
Update to match.
2003-04-06 Zack Weinberg <zack@codesourcery.com>
* ada-tree.def: Make fourth element for GNAT_LOOP_ID zero.
* misc.c (gnat_tree_size): New function.
(LANG_HOOKS_TREE_SIZE): Override.
2003-04-03 Jason Merrill <jason@redhat.com>
* misc.c (gnat_adjust_rli): #if 0.
2003-03-31 Geert Bosch <bosch@gnat.com>
PR ada/10020
* link.c : Fix misspelled "const" keyword
2003-03-23 Mark Mitchell <mark@codesourcery.com>
PR c++/7086
* utils2.c: Adjust calls to put_var_into_stack.
2003-03-12 Nathanael Nerode <neroden@gcc.gnu.org>
* Make-lang.in, Makefile.in, config-lang.in: GCC, not GNU CC.
2003-03-08 Neil Booth <neil@daikokuya.co.uk>
* misc.c (gnat_init): Update for new prototype.
2003-03-05 Olivier Hainque <hainque@gnat.com>
ada/9961
* raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
warning, and fix return type for the IN_RTS && !SJLJ case.
2003-03-04 Tom Tromey <tromey@redhat.com>
* Make-lang.in (ada.tags): New target.
2003-03-04 Olivier Hainque <hainque@act-europe.fr>
ada/9911
* a-except.adb (Unwind_RaiseException): Import a GNAT specific
wrapper, which name remains constant whatever underlying GCC
scheme.
* raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
the stable interface needed for a-except.
2003-03-02 Andreas Jaeger <aj@suse.de>
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
2003-03-02 Laurent Guerby <guerby@acm.org>
* Makefile.in (install-gnatlib): Match previous change there
so it works.
2003-02-28 Andreas Schwab <schwab@suse.de>
* Make-lang.in (install-gnatlib): Change to ada directory before
running make instead of using ada/Makefile directly.
2003-02-18 Ben Elliston <bje@redhat.com>
Part of fix for PR ada/9406
* gnat_ug.texi (Binder output file): Grammar fix.
2003-02-18 Ben Elliston <bje@redhat.com>
PR other/7350
* 5qtaprop.adb (Sleep): Fix typo in comment.
2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
* gnat_rm.texi, gnat_ug.texi: Update to GFDL 1.2.
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
2003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
be created if necessary.
(ada.install-common): Let $(DESTDIR)$(bindir) be created
if necessary. Remove erroneous and redundant gnatchop
installation commands. Test for gnatdll before attempting
to install it.
(ada.uninstall): Also uninstall gnatfind, gnatxref, gnatlbr,
and gnatdll from all plausible locations.
2003-02-01 Richard Sandiford <rsandifo@redhat.com>
* utils2.c (build_unary_op): Don't check flag_volatile.
* gnat_ug.texi: Remove -fvolatile from example.
* gnat_ug_vxw.texi: Likewise.
2003-01-29 Laurent Guerby <guerby@acm.org>
PR ada/8344
* final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
* Makefile.in: match previous change.
* Make-lang.in: match previous change.
2003-01-29 Joel Sherrill <joel@OARcorp.com>
* 5rosinte.ads: Add SIGXCPU.
* 5rtpopsp.adb: New file.
* Make-lang.in: Do not build gnatpsta and gnatpsys when cross.
* Makefile.in: Recognize more RTEMS targets and add the RTEMS
specific file 5rtpopsp.adb.
* adaint.h: Add include of <stdio.h> when target is RTEMS. This
is likely needed for all newlib targets.
* init.c: Add RTEMS specific version of __gnat_initialize().
2003-01-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* adaint.c, adaint.h, gmem.c, init.c: Update copyright year.
2003-01-27 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* init.c (__gnat_error_handler): Make msg const.
* gmem.c (convert_addresses): Move declaration ...
* adaint.h: ... here.
* adaint.c (convert_addresses): Adapt addrs type to match
prototype.
* adaint.c (__gnat_try_lock): Cast pid_t to long, adapt format.
2003-01-24 Andreas Schwab <schwab@suse.de>
* ada-tree.h (SET_TYPE_DIGITS_VALUE): Add intermediate cast to
size_t to avoid warning.
2003-01-21 Zack Weinberg <zack@codesourcery.com>
* Make-lang.in: Disable -Werror for tracebak.c and b_gnatb.c.
2003-01-09 Geoffrey Keating <geoffk@apple.com>
* gnat_rm.texi: Remove RCS version number.
* ada-tree.h (union lang_tree_node): Add chain_next option.
2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* Make-lang.in (ada.install-info, ada.install-common,
ada.uninstall): Prepend $(DESTDIR) to the destination
directory in all (un)installation commands.
* Makefile.in (install-gnatlib, install-rts): Ditto.
2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
* gnat_rm.texi, gnat_ug.texi: Use @copying.
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
* gnat_rm.texi: Include gcc-common.texi. Use GCC version number
only.
* Make-lang.in ($(srcdir)/ada/gnat_ug_unx.info,
$(srcdir)/ada/gnat_ug_vms.info, $(srcdir)/ada/gnat_ug_vxw.info,
$(srcdir)/ada/gnat_ug_wnt.info, $(srcdir)/ada/gnat_rm.info,
ada/gnat_ug_unx.dvi, ada/gnat_ug_vms.dvi, ada/gnat_ug_vxw.dvi,
ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
$(srcdir)/doc/include/gcc-common.texi.
2002-12-15 Geert Bosch <bosch@gnat.com>
* sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
2002-12-14 Geert Bosch <bosch@gnat.com>
* sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
case of a body created for a Renaming_As_Body, on which
conformance checks are not performed. Fixes PR ada/5690.
2002-11-30 Zack Weinberg <zack@codesourcery.com>
* cuintp.c, decl.c, deftarg.c, misc.c, targtyps.c, trans.c,
utils.c, utils2.c: Include coretypes.h and tm.h, and system.h when
not already included.
* Make-lang.in: Update dependencies.
2002-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
* adaint.c (__gnat_tmp_name): Better, but good enough for now,
solution to buffer overflow bug on GNU/Linux.
2002-11-14 Nathanael Nerode <neroden@gcc.gnu.org>
Closes PR ada/5856 and PR ada/6919 !
* bindgen.adb: Remove all references to Public_Version.
* comperr.adb: Remove all references to Public_Version and
GNATPRO_Version; correct bug reporting instructions.
* comperr.ads: Change to match bug box.
* gnatvsn.ads: Remove all references to Public version and
GNATPRO version.
2002-11-13 Nathanael Nerode <neroden@gcc.gnu.org>
PR ada/6919
* adaint.c (__gnat_tmp_name): Remove buffer overflow bug on
GNU/Linux.
PR ada/6558
* config-lang.in: Remove diff_excludes.
2002-11-05 Graham Stott <graham.stott@btinternet.com>
PR ada/8358
* trans.c (gnu_pending_elaboration_lists): New GC root.
(build_unit_elab): Use..
2002-10-30 Geert Bosch <bosch@gnat.com>
PR ada/6558
* misc.c : Include optabs.h
* Make-lang.in (misc.o): Add dependency on optabs.h
2002-10-29 Geert Bosch <bosch@gnat.com>
PR ada/6558
* Make-lang.in (gnatbind): Depend on CONFIG_H
2002-10-29 Geert bosch <bosch@gnat.com>
PR ada/6558
* misc.c: Unrevert misc.c (1.13)
2002-10-28 Nathanael Nerode <neroden@gcc.gnu.org>
* a-chlat9.ads a-cwila9.ads a-dynpri.adb a-retide.adb: Update
maintainership comments.
2002-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
PR ada/5904
* 5ataprop.adb 5atpopsp.adb 5bosinte.adb 5ftaprop.adb
5gtaprop.adb 5htaprop.adb 5rosinte.ads 5staprop.adb
5stpopse.adb 5vtaspri.ads 5zintman.adb 5ztaprop.adb
7staprop.adb: Correct statements in comments about
maintainership of GNAT.
PR ada/5904
* 1ssecsta.adb 1ssecsta.ads adadecode.c adadecode.h aux-io.c
gnatname.adb gnatname.ads mkdir.c osint-b.adb osint-b.ads
osint-c.adb osint-c.ads osint-l.adb osint-l.ads osint-m.adb
osint-m.ads prj-makr.adb prj-makr.ads prj-pp.adb prj-pp.ads
s-atacco.ads s-traceb.adb s-traceb.ads s-traces.adb
s-traces.ads s-tratas.adb s-tratas.ads sinput-d.adb
sinput-d.ads switch-b.adb switch-b.ads switch-c.adb
switch-c.ads switch-m.adb switch-m.ads: Correct statements in
comments about maintainership of GNAT.
PR ada/6919 (forward port of patch for PR ada/5904)
* 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
a-except.adb a-except.ads a-excpol.adb a-exctra.adb
a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
par-endh.adb par-labl.adb par-load.adb par-prag.adb
par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
s-direio.adb s-direio.ads s-except.ads s-exctab.adb
s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
sem_type.adb sem_type.ads sem_util.adb sem_util.ads
sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
stringt.ads stringt.h style.adb style.ads stylesw.adb
stylesw.ads switch.adb switch.ads sysdep.c system.ads
table.adb table.ads targparm.adb targparm.ads targtyps.c
tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
types.adb types.ads types.h uintp.adb uintp.ads uintp.h
uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
usage.ads utils.c utils2.c validsw.adb validsw.ads
widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
xtreeprs.adb: Correct statements in comments about maintainership
of GNAT.
2002-09-23 Zack Weinberg <zack@codesourcery.com>
* Make-lang.in (EXTRA_GNATBIND_OBJS): Add version.o.
* Makefile.in (TOOLS_LIBS): Add ../../version.o.
* gnatvsn.ads: Gnat_Version_String is now a function.
* gnatvsn.adb: New file. When asked for Gnat_Version_String,
copy the C version_string into a String and return it.
* gnatcmd.adb, gnatkr.adb, gnatlbr.adb, gnatlink.adb,
gnatls.adb,gnatmake.adb, gnatprep.adb, gnatpsta.adb:
Remove pragma Ident (Gnat_Version_String). If this was the
sole use of package Gnatvsn, remove the with statement too.
* gnat1drv.adb: Tweak -gnatv output.
2002-09-17 Richard Henderson <rth@redhat.com>
* trans.c (tree_transform): Use real_ldexp not REAL_VALUE_LDEXP.
* config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2): Use real_2expN.
* config/mips/mips.md (fixuns_truncdfsi2): Likewise.
(fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
* config/m68k/m68k.c (floating_exact_log2): Use real_exponent
and real_2expN instead of a loop.
* doc/tm.texi (REAL_VALUE_LDEXP): Remove.
(REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
2002-08-25 Andre Leis <a.leis@gmx.net>
David Billinghurst (David.Billinghurst@riotinto.com>
* sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
2002-08-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Make-lang.in (gnatbind$(exeext)): Link with $(SYSLIBS).
Remove $(CONFIG_H) dependency.
2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
* ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
2002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* adadecode.c (ada_demangle): Use xstrdup in lieu of
xmalloc/strcpy.
* misc.c (gnat_decode_option): Likewise.
2002-07-15 Florian Weimer <fw@deneb.enyo.de>
* make.adb (Add_Switch): Make Generic_Position a procedure. The
function approach did not work well because of a side effect (the
function call could reallocate the table which was being indexed
using its result). Fixes ada/4851. [RESURRECTED]
2002-07-01 Roger Sayle <roger@eyesopen.com>
* ada/utils.c (builtin_function): Accept an additional parameter.
2002-06-28 Andreas Jaeger <aj@suse.de>
PR ada/7144
* Makefile.in: Fix typo in comment, patch by Adrian Knoth
<adi@thur.de>.
2002-06-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* Makefile.in (SHELL): Set to @SHELL@.
2002-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* utils.c (init_gigi_decls): Use ARRAY_SIZE in lieu of explicit
array size calculation.
2002-06-04 Andreas Jaeger <aj@suse.de>
* Make-lang.in (gnatbind): Readd rule that has been lost in last
patch.
2002-06-03 Geoffrey Keating <geoffk@redhat.com>
Merge from pch-branch:
* config-lang.in (gtfiles): Add ada-tree.h.
* ada-tree.h (SET_TYPE_CI_CO_LIST): New.
(SET_TYPE_MODULUS): New.
(SET_TYPE_INDEX): New.
(SET_TYPE_DIGITS_VALUE): New.
(SET_TYPE_RM_SIZE): New.
(SET_TYPE_UNCONSTRAINED_ARRAY): New.
(SET_TYPE_ADA_SIZE): New.
(SET_TYPE_ACTUAL_BOUNDS): New.
(SET_DECL_CONST_CORRESPONDING_VAR): New.
(SET_DECL_ORIGINAL_FIELD): New.
(TREE_LOOP_ID): Correct typo.
* decl.c: Use new macros.
* utils.c: Include debug.h, use new macros.
* utils2.c: Use new macros.
* ada-tree.h: Update all macros for new tree description.
(struct tree_loop_id): New.
(union lang_tree_node): New.
(struct lang_decl): New.
(struct lang_type): New.
* misc.c (gnat_mark_tree): Delete.
(LANG_HOOKS_MARK_TREE): Delete.
* trans.c (tree_transform): No longer any need to cast
for TREE_LOOP_ID.
* utils.c (struct language_function): New dummy structure.
* Makefile.in (decl.o): gt-ada-<filename.h> is in objdir, not srcdir.
(misc.o): Likewise.
(utils.o): Likewise; also gtype-ada.h.
* Make-lang.in (gnat1): Add dependency on s-gtype.
(gnatbind): Add dependency on $(CONFIG_H).
* utils.c: Correct last #include.
(stuct e_stack): Remove unnecessary 'static'.
(mark_e_stack): Remove unused prototype.
* scn-nlit.adb: Remove whitespace after version number to
keep lines under 80 chars.
* snames.adb: Likewise.
* treepr.ads: Likewise.
* Makefile.in (decl.o): Include gt-ada-<filename>.h.
(misc.o): Likewise.
(utils.o): Include gt-ada-<filename>.h and gtype-ada.h.
* config-lang.in (gtfiles): New.
* decl.c: Use gengtype for roots.
* gigi.h: Use gengtype for roots.
* trans.c: Use gengtype for roots.
* utils.c: Use gengtype for roots, marking. Include gtype-ada.h.
2002-06-02 Gabriel Dos Reis <gdr@codesourcery.com>
* misc.c (gnat_init): Adjust setting of internal_error_function.
2002-06-01 Joseph S. Myers <jsm28@cam.ac.uk>
* gnat_ug.texi: Use @ifnottex instead of @ifinfo.
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
2002-05-31 Florian Weimer <fw@deneb.enyo.de>
* 5ntaprop.adb (with System.OS_Primitives): Remove.
* cstreams.c (max_path_len): Move from here ...
* adaint.c (__gnat_max_path_len): ... to here.
* adaint.c (__gnat_max_path_len): Declare.
* g-dirope.adb (Max_Path): Adjust.
* g-os_lib.adb (Normalize_Pathname.Max_Path): Adjust.
* i-cstrea.ads (max_path_len): Adjust.
* osint.adb (Get_RTS_Search_Dir.Max_Path): Adjust.
* xr_tabls.adb (Dir_Name.Max_Path: Adjust.
* Makefile.in, Make-lang.in: Documentation is now built in
Make-lang.in. Store Info and generated Texinfo files in the
source directory.
* gnat_ug.texi: Remove CVS keywords, correct version number.
Set file name correctly.
* gnat_ug_*.texi: Add.
* .cvsignore: Ignore generated Texinfo files.
2002-05-30 Zack Weinberg <zack@codesourcery.com>
* ada.h: Add MI guard macro.
(SUBTYPE): Define constants with an anonymous enum, not static
const variables.
(IN): Cast constants to appropriate type before use.
2002-05-26 Joseph S. Myers <jsm28@cam.ac.uk>
* gnatvsn.ads (Gnat_Version_String): Change to "3.2 20020526
(experimental)".
2002-05-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Make-lang.in (CP, ECHO): Copy from Makefile.in.
(X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS): Likewise.
(ALL_ADAFLAGS, FORCE_DEBUG_ADAFLAGS, ADA_CFLAGS): Likewise.
(ALL_ADA_CFLAGS): Likewise.
(ADA_INCLUDES): Likewise.
Adapt for new working dir.
(GNATBIND): Use Makefile.in version.
(.SUFFIXES): Copy from Makefile.in.
(ada-warn): Define.
(.adb.o, .ads.o): Copy from Makefile.in.
Added $(OUTPUT_OPTION).
(GNAT1_C_OBJS): Moved from Makefile.in.
Prefix with ada subdir.
(GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS, GNATBIND_OBJS): Likewise.
(EXTRA_GNAT1_OBJS): Moved from Makefile.in.
Adapt for new working dir.
(EXTRA_GNATBIND_OBJS): Likewise.
(ADA_BACKEND): Moved from Makefile.in.
Renamed to avoid conflict with global BACKEND.
Use that one.
(TARGET_ADA_SRCS): Moved from Makefile.in.
(gnat1$(exeext)): Replaced recursive rule with Makefile.in version.
Use ADA_BACKEND.
(gnatbind$(exeext)): Replaced recursive rule with Makefile.in version.
(ada_extra_files): Moved from Makefile.in.
Prefix with ada subdir.
(ada/b_gnat1.c, ada/b_gnat1.o, ada/b_gnatb.c, ada/b_gnatb.o): Likewise.
(ada/treeprs.ads, ada/einfo.h, ada/sinfo.h, ada/nmake.adb): Likewise.
(ada/nmake.ads): Likewise.
(update-sources): Moved from Makefile.in.
Prefix with ada subdir.
(ada/sdefault.adb, ada/stamp-sdefault, ada/sdefault.o): Likewise.
(ADA_TREE_H): Likewise.
(ada/a-except.o, ada/s-assert.o, ada/s-memory.o): Likewise.
(ada/memtrack.o): Likewise.
(ada/adadecode.o): Likewise.
Update dependencies.
(ada/adaint.o): New.
(ada/argv.o): Moved from Makefile.in.
Prefix with ada subdir.
Update dependencies.
(ada/cstreams.o, ada/exit.o, ada/final.o, ada/link.o): Likewise.
(ada/cio.o, ada/init.o, ada/raise.o, ada/tracebak.o): Likewise.
(ada/cuintp.o, ada/decl.o, ada/misc.o): Moved from Makefile.in.
Prefix with ada subdir.
(ada/targtyps.o, ada/trans.o, ada/utils.o, ada/utils2.o): Likewise.
(GNAT DEPENDENCIES): Regenerate.
* Makefile.in (MACHMODE_H, RTL_H, TREE_H): Removed, provided by
toplevel Makefile.in.
(EXTRA_GNAT1_OBJS, EXTRA_GNATBIND_OBJS): Removed.
(TARGET_ADA_SRCS): Removed.
(GNAT1_C_OBJS, GNAT_ADA_OBJS, GNAT1_ADA_OBJS, GNAT1_OBJS): Likewise.
(GNATBIND_OBJS): Likewise.
(ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Moved here.
(BACKEND): Removed.
(../gnat1$(exeext), ../gnatbind$(exeext)): Likewise.
(TREE_H): Likewise.
(ada_extra_files): Likewise.
(b_gnat1.c, b_gnat1.o, b_gnatb.c, b_gnatb.o): Likewise.
(treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads): Likewise.
(update-sources): Likewise.
(sdefault.adb, stamp-sdefault, sdefault.o): Likewise
(ADA_TREE_H): Likewise.
(adadecoce.o): Likewise.
(cuintp.o, decl.o, misc.o, trans.o, utils.o, utils2.o): Likewise.
(GNAT DEPENDENCIES): Likewise.
2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Makefile.adalib: Allow for PWDCMD to override hardcoded pwd.
* Makefile.in: Likewise.
2002-05-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Make-lang.in (gnat1$(exeext), gnatbind$(exeext), gnattools):
Restore $(CONFIG_H) and prefix.o dependencies.
(ada.stage[1-4]): Depend on stage?-start.
* Makefile.in (b_gnatb.c): Depend on interfac.o.
2002-05-02 Jim Wilson <wilson@redhat.com>
* utils.c (finish_record_type): Change record_size to record_type.
2001-05-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
* ada/Makefile.in (X_ADA_CFLAGS, T_ADA_CFLAGS): New fragment overrides.
(ALL_ADA_CFLAGS): Define. Replace ADA_CFLAGS with ALL_ADA_CFLAGS in
ALL_ADAFLAGS, MOST_ADAFLAGS, and all compilations using CC.
2002-04-25 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_parse_file): Update.
2002-04-24 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_init): Don't set lang_attribute_common.
2002-04-21 Joseph S. Myers <jsm28@cam.ac.uk>
* gnat_rm.texi: Use @ifnottex instead of @ifinfo.
2002-04-21 Florian Weimer <fw@deneb.enyo.de>
* gnat_ug.texi: New file.
* gnat_rm.texi: Do not include texiplus.texi. Include fdl.texi
instead of gfdl.texi
* xgnatug.adb, ug_words: New files.
* Makefile.in (doc, dvi): New targets. Build gnat_ug_*,
gnat_rm and gnat-style manuals.
2002-04-18 Neil Booth <neil@daikokuya.demon.co.uk>
* gigi.h (incomplete_type_error): Remove.
* utils.c (incomplete_type_error): Remove.
2002-04-16 Mark Mitchell <mark@codesourcery.com>
* trans.c (tree_transform): Add has_scope argument to
expand_start_stmt_expr.
2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
* gigi.h (truthvalue_conversion): Rename.
* misc.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Redefine.
* trans.c (tree_transform): Update.
* utils2.c (truthvalue_conversion): Rename, update.
(build_binary_op, build_unary_op): Update.
2002-04-04 Laurent Guerby <guerby@acm.org>
* make.adb: Implement -margs, remove restriction about file name placement.
* makeusg.adb: Documentation update.
* Makefile.in (TOOLS_FLAGS_TO_PASS): Add VPATH=$(fsrcdir).
* Makefile.in (gnattools3): Comment out, gnatmem does not build without libaddr2line.
2002-04-04 Neil Booth <neil@daikokuya.demon.co.uk>
* utils.c (create_subprog_decl): Use SET_DECL_ASSEMBLER_NAME.
(builtin_function): Similarly.
2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
* decl.c (gnat_to_gnu_entity): Update.
* gigi.h (mark_addressable): Rename.
* misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Redefine.
* trans.c (tree_transform): Update.
* utils.c (create_var_decl): Update.
* util2.c (build_binary_op, build_unary_op,
fill_vms_descriptor): Update.
(mark_addressable): Rename, update.
2002-04-01 Neil Booth <neil@daikokuya.demon.co.uk>
* gigi.h (unsigned_type, signed_type, signed_or_unsigned_type):
Rename.
* misc.c (LANG_HOOKS_SIGNED_TYPE, LANG_HOOKS_UNSIGNED_TYPE,
LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): New.
* trans.c (tree_transform, convert_with_check): Update.
* utils.c (unsigned_type, signed_type, signed_or_unsigned_type):
Rename.
2002-03-31 Neil Booth <neil@daikokuya.demon.co.uk>
* gigi.h (finish_incomplete_decl): Rename.
* misc.c (LANG_HOOKS_FINISH_INCOMPLETE_DECL): Redefine.
* utils.c (gnat_init_decl_processing): Don't set hook.
(finish_incomplete_decl): Rename.
2002-03-29 Andreas Schwab <schwab@suse.de>
* Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
directory.
2001-03-28 Robert Dewar <dewar@gnat.com>
* checks.ads:
(Remove_Checks): New procedure
* checks.adb:
(Remove_Checks): New procedure
* exp_util.adb:
Use new Duplicate_Subexpr functions
(Duplicate_Subexpr_No_Checks): New procedure
(Duplicate_Subexpr_No_Checks_Orig): New procedure
(Duplicate_Subexpr): Restore original form (checks duplicated)
(Duplicate_Subexpr): Call Remove_Checks
* exp_util.ads:
(Duplicate_Subexpr_No_Checks): New procedure
(Duplicate_Subexpr_No_Checks_Orig): New procedure
Add 2002 to copyright notice
* sem_util.adb: Use new Duplicate_Subexpr functions
* sem_eval.adb:
(Eval_Indexed_Component): This is the place to call
Constant_Array_Ref and to replace the value. We simply merge
the code of this function in here, since it is now no longer
used elsewhere. This fixes the problem of the back end not
realizing we were clever enough to see that this was
constant.
(Expr_Val): Remove call to Constant_Array_Ref
(Expr_Rep_Val): Remove call to Constant_Array_Ref
Minor reformatting
(Constant_Array_Ref): Deal with string literals (patch
suggested by Zack Weinberg on the gcc list)
2001-03-28 Ed Schonberg <schonber@gnat.com>
* exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
Duplicate_Subexpr_Move_Checks.
* exp_util.ads: Duplicate_Subexpr_No_Checks_Orig =>
Duplicate_Subexpr_Move_Checks.
* sem_eval.adb: (Constant_Array_Ref): Verify that constant
value of array exists before retrieving it (it may a private
protected component in a function).
2002-03-28 Geert Bosch <bosch@gnat.com>
* prj-pp.adb : New file.
* prj-pp.ads : New file.
2002-03-28 Andreas Jaeger <aj@suse.de>
* Makefile.in (stamp-sdefault): Fix path for Makefile.
2002-03-28 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_expand_expr): Move prototype.
2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (insert_default_attributes): Remove.
2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.
(gnat_init): Don't set hook.
(gnat_expand_expr): Fix prototype.
2002-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (ggc_p): Remove.
2002-03-27 Geert Bosch <bosch@gnat.com>
* prj-makr.ads, prj-makr.adb : New files.
2002-03-26 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (LANG_HOOKS_MARK_TREE): Redefine.
(lang_mark_tree): Make static, rename.
2002-03-25 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (maybe_build_cleanup): Remove.
2002-03-24 Neil Booth <neil@daikokuya.demon.co.uk>
* gigi.h (yyparse): Remove.
2002-03-23 Florian Weimer <fw@deneb.enyo.de>
* gnat_rm.texi: Sync with ACT version.
(From Ben Brosgol <brosgol@gnat.com>)
2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
(gnat_init): Remove old hook.
2002-03-17 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (LANG_HOOKS_PARSE_FILE): Redefine.
(yyparse): Rename gnat_parse_file.
2002-03-14 Geoffrey Keating <geoffk@redhat.com>
Delete all lines containing "$Revision:".
* xeinfo.adb: Don't look for revision numbers.
* xnmake.adb: Likewise.
* xsinfo.adb: Likewise.
* xsnames.adb: Likewise.
* xtreeprs.adb: Likewise.
2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* misc.c (gnat_tree_code_type, gnat_tree_code_length,
gnat_tree_code_name): Delete.
(tree_code_type, tree_code_length, tree_code_name): Define.
(gnat_init): Don't try to copy into the various tree_code
arrays.
2002-03-11 Richard Henderson <rth@redhat.com>
* Makefile.in (.NOTPARALLEL): Add fake tag.
2002-03-07 Geert Bosch <bosch@gnat.com>
* adadecode.c, adadecode.h, aux-io.c, s-traces.adb, s-traces.ads,
s-tratas.adb, s-tratas.ads, sinput-d.adb, sinput-d.ads,
switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads,
switch-m.adb, switch-m.ads : New files.
2002-03-07 Geert Bosch <bosch@gnat.com>
* 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.
* 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files
* 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed
* mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
to mdll-fil.ad[bs] and mdll-util.ad[bs]
* mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
from mdllfile.ad[bs] and mdlltool.ad[bs]
2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* utils.c (init_gnat_to_gnu, init_gigi_decls): Use ARRAY_SIZE in
lieu of explicit sizeof/sizeof.
2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (copy_lang_decl): Remove.
2002-02-27 Zack Weinberg <zack@codesourcery.com>
* misc.c: Delete traditional-mode-related code copied from the
C front end but not used, or used only to permit the compiler
to link.
2002-02-07 Richard Henderson <rth@redhat.com>
* adaint.c (__gnat_to_gm_time): First arg is int, not time_t.
* adaint.h (__gnat_to_gm_time): Update prototype.
2002-01-30 Richard Henderson <rth@redhat.com>
* trans.c (tree_transform) [N_Loop_Statement]: Use
expand_exit_loop_top_cond.
2001-12-23 Richard Henderson <rth@redhat.com>
* utils.c (end_subprog_body): Push GC context around
rest_of_compilation for nested functions.
2001-12-23 Richard Henderson <rth@redhat.com>
* 5nosinte.ads: Get definition of "int" from Interfaces.C.
2001-12-23 Florian Weimer <fw@deneb.enyo.de>
* gnat-style.texi (Declarations and Types): Remove ancient style
rule which was mandated by code generation issues.
* gnat-style.texi (header): Add @dircategory, @direntry.
(title page): Remove date.
(general) Add @./@: where approriate, and two spaces after the
full stop at the end of a sentence. Use @samp markup when
referring concrete lexical entities (keywords, attribute names
etc.), and @syntax for ARM grammar elements. Use @r for English
text in comments. Use @emph for emphasis. Change "if-statements"
etc. to "if statements" (without @samp). Break long lines. Make
casing of section names consistent.
(Identifiers): Use @samp markup for variable names.
(Comments): Use @samp markup for comment characters. Line-end
comments may follow any Ada code, not just statements. Fix
misspelling of "Integer" as "integer".
(Loop statements): Do not use variable name "I", use "J".
(Subprogram Declarations): Document alignment.
(Subprogram Bodies, Block statements): Document empty line before
"begin".
2001-12-22 Florian Weimer <fw@deneb.enyo.de>
* make.adb (Add_Switch): Make Generic_Position a procedure. The
function approach did not work well because of a side effect (the
function call could reallocate the table which was being indexed
using its result). Fixes ada/4851.
2001-12-19 Robert Dewar <dewar@gnat.com>
* bindgen.adb: Minor reformatting
* cstand.adb: Minor reformatting
* fmap.adb: Minor reformatting
Change name from Add for Add_To_File_Map (Add is much too generic)
Change Path_Name_Of to Mapped_Path_Name
Change File_Name_Of to Mapped_File_Name
Fix copyright dates in header
* fmap.ads:
Change name from Add for Add_To_File_Map (Add is much too generic)
Change Path_Name_Of to Mapped_Path_Name
Change File_Name_Of to Mapped_File_Name
Fix copyright dates in header
* fname-uf.adb: Minor reformatting. New names of stuff in Fmap.
Add use clause for Fmap.
* make.adb: Minor reformatting
* osint.adb: Minor reformatting. Change of names in Fmap.
Add use clause for Fmap.
* prj-env.adb: Minor reformatting
* prj-env.ads: Minor reformatting
* switch.adb: Minor reformatting. Do proper raise of Bad_Switch if
error found (there were odd exceptions to this general rule in
-gnatec/-gnatem processing)
2001-12-19 Olivier Hainque <hainque@gnat.com>
* raise.c (__gnat_eh_personality): Exception handling personality
routine for Ada. Still in rough state, inspired from the C++ version
and still containing a bunch of debugging artifacts.
(parse_lsda_header, get_ttype_entry): Local (static) helpers, also
inspired from the C++ library.
* raise.c (eh_personality): Add comments. Part of work for the GCC 3
exception handling integration.
2001-12-19 Arnaud Charlet <charlet@gnat.com>
* Makefile.in: Remove use of 5smastop.adb which is obsolete.
(HIE_SOURCES): Add s-secsta.ad{s,b}.
(HIE_OBJS): Add s-fat*.o
(RAVEN_SOURCES): Remove files that are no longer required. Add
interrupt handling files.
(RAVEN_MOD): Removed, no longer needed.
2001-12-19 Robert Dewar <dewar@gnat.com>
* a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
Add 2001 to copyright date
* g-regpat.adb: Change pragma Inline_Always to Inline. There is no
need to force universal inlining for these cases.
2001-12-19 Arnaud Charlet <charlet@gnat.com>
* s-taprob.adb: Minor clean ups so that this unit can be used in
Ravenscar HI.
* exp_ch7.adb: Allow use of secondary stack in HI mode.
Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
2001-12-19 Vincent Celier <celier@gnat.com>
* prj-tree.ads (Project_Node_Record): Add comments for components
Pkg_Id and Case_Insensitive.
2001-12-19 Pascal Obry <obry@gnat.com>
* g-socket.adb: Minor reformatting. Found while reading code.
2001-12-19 Robert Dewar <dewar@gnat.com>
* prj-tree.ads: Minor reformatting
2001-12-20 Joseph S. Myers <jsm28@cam.ac.uk>
* config-lang.in (diff_excludes): Remove.
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve_Selected_Component): do not generate a
discriminant check if the selected component is a component of
the argument of an initialization procedure.
* trans.c (tree_transform, case of arithmetic operators): If result
type is private, the gnu_type is the base type of the full view,
given that the full view itself may be a subtype.
2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_res.adb: Minor reformatting
* trans.c (tree_transform, case N_Real_Literal): Add missing third
parameter in call to Machine (unknown horrible effects from this
omission).
* urealp.h: Add definition of Round_Even for call to Machine
Add third parameter for Machine
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Check_One_Unit): Suppress warnings completely on
predefined units in No_Run_Time mode.
2001-12-17 Richard Kenner <kenner@gnat.com>
* misc.c (insn-codes.h): Now include.
2001-12-17 Olivier Hainque <hainque@gnat.com>
* a-except.adb: Preparation work for future integration of the GCC 3
exception handling mechanism
(Notify_Handled_Exception, Notify_Unhandled_Exception): New routines
to factorize previous code sequences and make them externally callable,
e.g. for the Ada personality routine when the GCC 3 mechanism is used.
(Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
Use the new notification routines.
2001-12-17 Emmanuel Briot <briot@gnat.com>
* prj-tree.ads (First_Choice_Of): Document the when others case
2001-12-17 Arnaud Charlet <charlet@gnat.com>
* bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
HI-E mode, in order to support Ravenscar profile properly.
* cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
mode on 32 bits targets.
2001-12-17 Vincent Celier <celier@gnat.com>
* fmap.adb: Initial version.
* fmap.ads: Initial version.
* fname-uf.adb (Get_File_Name): Use mapping if unit name mapped.
If search is successfully done, add to mapping.
* frontend.adb: Initialize the mapping if a -gnatem switch was used.
* make.adb:
(Gnatmake): Add new local variable Mapping_File_Name.
Create mapping file when using project file(s).
Delete mapping file before exiting.
* opt.ads (Mapping_File_Name): New variable
* osint.adb (Find_File): Use path name found in mapping, if any.
* prj-env.adb (Create_Mapping_File): New procedure
* prj-env.ads (Create_Mapping_File): New procedure.
* switch.adb (Scan_Front_End_Switches): Add processing for -gnatem
(Mapping_File)
* usage.adb: Add entry for new switch -gnatem.
* Makefile.in: Add dependencies for fmap.o.
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
is a package instantiation rewritten as a package body.
(Install_Withed_Unit): Undo previous change, now redundant.
2001-12-17 Gary Dismukes <dismukes@gnat.com>
* layout.adb:
(Compute_Length): Move conversion to Unsigned to callers.
(Get_Max_Size): Convert Len expression to Unsigned after calls to
Compute_Length and Determine_Range.
(Layout_Array_Type): Convert Len expression to Unsigned after calls to
Compute_Length and Determine_Range.
Above changes fix problem with length computation for supernull arrays
where Max (Len, 0) wasn't getting applied due to the Unsigned
conversion used by Compute_Length.
2001-12-17 Arnaud Charlet <charlet@gnat.com>
* rtsfind.ads:
(OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
System.Secondary_Stack.
(OK_To_Use_In_Ravenscar_Mode): New table needed to implement Ravenscar
in HI-E mode.
Remove unused entity RE_Exception_Data.
* rtsfind.adb (RTE): Allow Ravenscar Profile in HI mode.
* rident.ads (No_Secondary_Stack): New restriction.
2001-12-17 Joel Brobecker <brobecke@gnat.com>
* gnat_rm.texi: Fix minor typos. Found while reading the section
regarding "Bit_Order Clauses" that was sent to a customer.
Very interesting documentation!
2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_case.adb (Choice_Image): Avoid creating improper character
literal names by using the routine Set_Character_Literal_Name. This
fixes bombs in certain error message cases.
2001-12-17 Arnaud Charlet <charlet@gnat.com>
* a-reatim.adb: Minor reformatting.
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
case where the formal is an extension of another formal in the current
unit or in a parent generic unit.
2001-12-17 Arnaud Charlet <charlet@gnat.com>
* s-tposen.adb: Update comments. Minor reformatting.
Minor code clean up.
* s-tarest.adb: Update comments. Minor code reorganization.
2001-12-17 Gary Dismukes <dismukes@gnat.com>
* exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
when Java_VM.
2001-12-17 Robert Dewar <dewar@gnat.com>
* exp_attr.adb: Minor reformatting
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
derivations nested within a child unit: verify that the parent
type is declared in an outer scope.
2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb: Minor reformatting
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
warning if current unit is a predefined one, from which bodies may
have been deleted.
2001-12-17 Robert Dewar <dewar@gnat.com>
* eval_fat.ads: Add comment that Round_Even is referenced in Ada code
Fix header format. Add 2001 to copyright date.
* exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
which caused CE during compilation if checks were enabled.
2001-12-17 Vincent Celier <celier@gnat.com>
* make.adb:
(Switches_Of): New function
(Test_If_Relative_Path): New procedure
(Add_Switches): Use new function Switches_Of
(Collect_Arguments_And_Compile): Use new function Switches_Of.
When using a project file, test if there are any relative
search path. Fail if there are any.
(Gnatmake): Only add switches for the primary directory when not using
a project file. When using a project file, change directory to the
object directory of the main project file. When using a project file,
test if there are any relative search path. Fail if there are any.
When using a project file, fail if specified executable is relative
path with directory information, and prepend executable, if not
specified as an absolute path, with the exec directory. Make sure
that only one -o switch is transmitted to the linker.
* prj-attr.adb (Initialization_Data): Add project attribute Exec_Dir
* prj-nmsc.adb:
(Ada_Check): Get Spec_Suffix_Loc and Impl_Suffix_Loc,
when using a non standard naming scheme.
(Check_Ada_Naming_Scheme): Make sure that error messages
do not raise exceptions.
(Is_Illegal_Append): Return True if there is no dot in the suffix.
(Language_Independent_Check): Check the exec directory.
* prj.adb (Project_Empty): Add new component Exec_Directory
* prj.ads:
(Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Add defaults.
(Project_Data): Add component Exec_Directory
* snames.adb: Updated to match snames.ads revision 1.215
* snames.ads: Added Exec_Dir
2001-12-17 Robert Dewar <dewar@gnat.com>
* make.adb: Minor reformatting
* prj-nmsc.adb: Minor reformatting
* snames.adb: Updated to match snames.ads
* snames.ads: Alphebetize entries for project file
2001-12-17 Ed Schonberg <schonber@gnat.com>
* trans.c (process_freeze_entity): Do nothing if the entity is a
subprogram that was already elaborated.
2001-12-17 Richard Kenner <kenner@gnat.com>
* decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
and Esize if object is referenced via pointer.
2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
is discrete before analyzing choices.
2001-12-17 Joel Brobecker <brobecke@gnat.com>
* bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
containing the name of the Ada Main Program. This string is mainly
intended for the debugger.
(Gen_Output_File_C): Do the equivalent change when generating a C file.
2001-12-17 Robert Dewar <dewar@gnat.com>
* ali.adb: Set new Dummy_Entry field in dependency entry
* ali.ads: Add Dummy_Entry field to source dependency table
* bcheck.adb (Check_Consistency): Ignore dummy D lines
* lib-writ.adb (Writ_ALI): Write dummy D lines for missing source files
* lib-writ.ads: Document dummy D lines for missing files.
* types.ads: (Dummy_Time_Stamp): New value for non-existant files
2001-12-17 Robert Dewar <dewar@gnat.com>
* ali.adb: Type reference does not reset current file.
* ali.adb: Recognize and scan renaming reference
* ali.ads: Add spec for storing renaming references.
* lib-xref.ads: Add documentation for handling of renaming references
* lib-xref.adb: Implement output of renaming reference.
* checks.adb:
(Determine_Range): Document local variables
(Determine_Range): Make sure Hbound is initialized. It looks as though
there could be a real problem here with an uninitialized reference
to Hbound, but no actual example of failure has been found.
2001-12-17 Laurent Pautet <pautet@gnat.com>
* g-socket.ads:
Fix comment of Shutdown_Socket and Close_Socket. These functions
should not fail silently because if they are called twice, this
probably means that there is a race condition in the user program.
Anyway, this behaviour is consistent with the rest of this unit.
When an error occurs, an exception is raised with the error message
as exception message.
2001-12-17 Robert Dewar <dewar@gnat.com>
* frontend.adb: Move call to Check_Unused_Withs from Frontend, so
that it happens before modification of Sloc values for -gnatD.
* gnat1drv.adb: Move call to Check_Unused_Withs to Frontend,
so that it happens before modification of Sloc values for -gnatD.
* switch.adb: Minor reformatting
2001-12-15 Richard Henderson <rth@redhat.com>
* sem_ch7.adb: Wrap comment.
2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
* 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
spelling errors.
2001-12-14 Vincent Celier <celier@gnat.com>
* osint.adb(Create_Debug_File): When an object file is specified,
put the .dg file in the same directory as the object file.
2001-12-14 Robert Dewar <dewar@gnat.com>
* osint.adb: Minor reformatting
* lib-xref.adb (Output_Instantiation): New procedure to generate
instantiation references.
* lib-xref.ads: Add documentation of handling of generic references.
* ali.adb (Read_Instantiation_Ref): New procedure to read
instantiation references
* ali.ads: Add spec for storing instantiation references
* bindusg.adb: Minor reformatting
* switch.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* usage.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* gnatcmd.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* csets.adb: Add entry for Latin-5 (Cyrillic ISO-8859-5)
* csets.ads:
Fix header format
Add 2001 to copyright date
Add entry for Latin-5 (Cyrillic ISO-8859-5)
2001-12-14 Matt Gingell <gingell@gnat.com>
* adaint.c: mktemp is a macro on Lynx and can not be used as an
expression.
2001-12-14 Richard Kenner <kenner@gnat.com>
* misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
if operand is CONSTRUCTOR.
2001-12-14 Ed Schonberg <schonber@gnat.com>
* trans.c (tree_transform, case N_Assignment_Statement): Set lineno
before emiting check on right-hand side, so that exception information
is correct.
2001-12-14 Richard Kenner <kenner@gnat.com>
* utils.c (create_var_decl): Throw away initializing expression
if just annotating types and non-constant.
2001-12-14 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
Default_Ada_...
* prj.adb: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Remove functions.
(Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move to spec.
* prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Remove functions.
(Default_Ada_Spec_Suffix, Default_Ada_Impl_Suffix): Move from body.
2001-12-16 Joseph S. Myers <jsm28@cam.ac.uk>
* ChangeLog: Remove piece of diff output.
2001-12-14 Geert Bosch <bosch@gnat.com>
* config-lang.in: Update copyright notice
* layout.adb: Remove commented out code.
* mdllfile.ads: Update copyright notice. Fix header format.
* sem_case.ads: Likewise.
* sem_ch3.adb: Minor reformatting.
2001-12-12 Geert Bosch <bosch@gnat.com>
* freeze.ads: Update copyright date.
* g-comlin.ads: Minor reformatting.
* gnat-style.texi: Fix typo.
2001-12-12 Geert Bosch <bosch@gnat.com>
* einfo.h: Regenerate.
2001-12-12 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
on known node types, rather than untyped fields. Further cleanups.
2001-12-12 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb:
(Save_Entity_Descendant): Minor comment update.
(Copy_Generic_Node): Deal with incorrect reference to Associated_Node
of an N_Attribute_Reference node. As per note below, this does not
eliminate need for Associated_Node in attribute ref nodes.
(Associated_Node): Documentation explicitly mentions attribute
reference nodes, since this field is used in such nodes.
* sem_ch12.adb (Associated_Node): Minor documentation cleanup.
2001-12-12 Robert Dewar <dewar@gnat.com>
* s-stalib.adb: Add more comments on with statements being needed
* par-ch12.adb: Minor reformatting
* prj-dect.ads: Fix copyright header
* s-arit64.adb (Multiply_With_Ovflo_Check): Fix case where both
inputs fit in 32 bits, but the result still overflows.
* s-fatgen.ads: Minor comment improvement
2001-12-12 Ed Schonberg <schonber@gnat.com>
* sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
formal derived type, look for an inherited component from the full
view of the parent, if any.
2001-12-12 Robert Dewar <dewar@gnat.com>
* checks.ads (Apply_Alignment_Check): New procedure.
* exp_ch13.adb (Expand_N_Freeze_Entity): Generate dynamic check to
ensure that the alignment of objects with address clauses is
appropriate, and raise PE if not.
* exp_util.ads (Must_Be_Aligned): Removed, replaced by
Exp_Pakd.Known_Aligned_Enough
* mdllfile.ads: Minor reformatting
* mlib-fil.ads: Minor reformatting
2001-12-12 Ed Schonberg <schonber@gnat.com>
* exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
fix to any component reference if enclosing record has non-standard
representation.
2001-12-12 Vincent Celier <celier@gnat.com>
* g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
Iteration
2001-12-12 Ed Schonberg <schonber@gnat.com>
* freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
2001-12-12 Robert Dewar <dewar@gnat.com>
* impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
2001-12-12 Emmanuel Briot <briot@gnat.com>
* g-regexp.adb: Remove all debug code, since it isn't required anymore,
and it adds dependencies to system.io.
2001-12-12 Pascal Obry <obry@gnat.com>
* g-dirope.adb (Expand_Path.Var): Correctly detect end of
variable name.
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
that is the parent of other generics, the instance body replaces the
instance node. Retrieve the instance of the spec, which is the one
that is visible in clients and within the body.
2001-12-11 Vincent Celier <celier@gnat.com>
* gnatmain.adb: Initial version.
* gnatmain.ads: Initial version.
* prj-attr.adb (Initialisation_Data): Add package Gnatstub.
* snames.adb: Updated to match snames.ads.
* snames.ads: Added Gnatstub.
2001-12-11 Vincent Celier <celier@gnat.com>
* prj-attr.adb (Initialization_Data): Change name from
Initialisation_Data.
2001-12-11 Emmanuel Briot <briot@gnat.com>
* g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
+ and * applied to backslashed expressions like \r.
2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
* g-os_lib.ads: String_List type added, Argument_List type is now
subtype of String_List.
2001-12-11 Robert Dewar <dewar@gnat.com>
* g-os_lib.ads: Change copyright to FSF
Add comments for String_List type
2001-12-11 Vincent Celier <celier@gnat.com>
* g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
string to the buffer).
2001-12-11 Ed Schonberg <schonber@gnat.com>
* freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
* sem_attr.adb: Simplify previous fix for Address.
(Set_Bounds): If prefix is a non-frozen fixed-point type, freeze now,
to avoid anomalies where the bound of the type appears to raise
constraint error.
2001-12-11 Robert Dewar <dewar@gnat.com>
* lib-xref.adb (Output_Refs): Make sure pointers are always properly
handled.
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
renamed unit before checking for recursive instantiations.
2001-12-11 Emmanuel Briot <briot@gnat.com>
* prj.ads: Add comments for some of the fields.
2001-12-11 Robert Dewar <dewar@gnat.com>
* lib-xref.adb (Output_Refs): Don't output type references outside
the main unit if they are not otherwise referenced.
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
code and diagnose additional illegal uses
* sem_util.adb (Is_Object_Reference): An indexed component is an
object only if the prefix is.
2001-12-11 Vincent Celier <celier@gnat.com>
* g-diopit.adb: Initial version.
* g-diopit.ads: Initial version.
* g-dirope.adb:
(Expand_Path): Avoid use of Unbounded_String
(Find, Wildcard_Iterator): Moved to child package Iteration
* Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
2001-12-11 Robert Dewar <dewar@gnat.com>
* sem_attr.adb: Minor reformatting
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb: Clarify some ???.
2001-12-11 Robert Dewar <dewar@gnat.com>
* exp_util.adb (Must_Be_Aligned): Removed, replaced by
Exp_Pakd.Known_Aligned_Enough
* sem_ch13.adb (Check_Address_Alignment): Removed, extended
version is moved to Exp_Ch13.
2001-12-11 Robert Dewar <dewar@gnat.com>
* einfo.ads: Minor reformatting
* exp_ch5.adb: Add comment for previous.change
* ali.adb: New interface for extended typeref stuff.
* ali.ads: New interface for typeref stuff.
* checks.adb (Apply_Alignment_Check): New procedure.
* debug.adb: Add -gnatdM for modified ALI output
* exp_pakd.adb (Known_Aligned_Enough): Replaces Known_Aligned_Enough.
* lib-xref.adb: Extend generation of <..> notation to cover
subtype/object types. Note that this is a complete rewrite,
getting rid of the very nasty quadratic algorithm previously
used for derived type output.
* lib-xref.ads: Extend description of <..> notation to cover
subtype/object types. Uses {..} for these other cases.
Also use (..) for pointer types.
* sem_util.adb (Check_Potentially_Blocking_Operation): Slight cleanup.
* exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
(Known_Aligned_Enough): Replaces Must_Be_Aligned.
2001-12-11 Vincent Celier <celier@gnat.com>
* gnatcmd.adb:
Changed /COMPILE_ONLY to /ACTIONS=COMPILE
Changed /BIND_ONLY to /ACTIONS=BIND
Changed /LINK_ONLY to /ACTIONS=LINK
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch8.adb (Find_Selected_Component): improved search for a
candidate package in case of error.
* sem_ch12.adb (Inline_Instance_Body): place head of use_clause
chain back on scope stack before reinstalling use clauses.
* exp_ch5.adb (Expand_N_If_Statement): if Constant_Condition_Warnings
is enabled, do not kill the code for the condition, to preserve
warning.
2001-12-11 Robert Dewar <dewar@gnat.com>
* checks.adb (Insert_Valid_Check): Apply validity check to expression
of conversion, not to result of conversion.
2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
before freezing parent. If the declarations are mutually recursive,
an access to the current record type may be frozen before the
derivation is complete.
2001-12-05 Vincent Celier <celier@gnat.com>
* gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
-c /COMPILE_ONLY, -l /LINK_ONLY
* opt.ads:
(Bind_Only): New Flag
(Link_Only): New flag
* switch.adb (Scan_Make_Switches): Add processing for -b (Bind_Only)
and -l (Link_Only)
* makeusg.adb: Add new switches -b and -l. Update Copyright notice.
* make.adb:
(Do_Compile_Step, Do_Bind_Step, Do_Link_Step): New flags.
(Gnatmake): Set the step flags. Only perform a step if the
corresponding step flag is True.
(Scan_Make_Arg): Reset the bind and link step flags when -u
or -gnatc has been specified.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_eval.adb (Eval_Concatenation): If left operand is a null string,
get bounds from right operand.
* sem_eval.adb: Minor reformatting
* exp_util.adb (Make_Literal_Range): use bound of literal rather
than Index'First, its lower bound may be different from 1.
* exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
and C48009J
2001-12-05 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb Minor reformatting
* prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
set and libraries are not supported.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Private_Type): set Public status of
private view explicitly, so the back-end can treat as a global
when appropriate.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
unit, always replace instance node with new body, for ASIS use.
2001-12-05 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb (Language_Independent_Check): Issue a warning if
libraries are not supported and both attributes Library_Name and
Library_Dir are specified.
* prj-proc.adb (Expression): Set location of Result to location of
first term.
* Makefile.in: Add mlib.o, mlib-fil.o, mlib-tgt and mlib-utl to GNATLS.
(prj-nmsc is now importing MLib.Tgt)
* prj-proc.adb: Put the change indicated above that was forgotten.
2001-12-05 Robert Dewar <dewar@gnat.com>
* Makefile.in: Add dependencies for System.IO for GNAT.Regexp
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
constraint, introduce explicit subtype declaration and derive from it.
* sem_ch3.adb: Minor reformatting
2001-12-05 Robert Dewar <dewar@gnat.com>
* checks.adb (Determine_Range): Increase cache size for checks.
Minor reformatting
* exp_ch6.adb: Minor reformatting
(Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has
a parameter whose root type is System.Address, since treating such
subprograms as pure in the code generator is almost surely a mistake
that will lead to unexpected results.
* exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and
change handling of conversions.
* g-regexp.adb: Use System.IO instead of Ada.Text_IO.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Analyze_Object_Declaration): If expression is an
aggregate with static wrong size, attach generated Raise node to
declaration.
2001-12-05 Robert Dewar <dewar@gnat.com>
* sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
Fixes compilation abandoned bomb in B24009B.
2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb:
Document use of Associated_Node on Selected_Components.
(Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
to clarify use of untyped descendant fields.
2001-12-05 Robert Dewar <dewar@gnat.com>
* prj-dect.ads: Add ??? comment
Add 2001 to copyright notice (was not done in after all)
* prj-part.adb: Minor reformatting. Reword one awkward error message.
* prj.ads: Minor reformatting throughout, and add some ??? comments
* snames.ads: Minor reformatting
2001-12-05 Geert Bosch <bosch@gnat.com>
* snames.adb: Autoupdate
2001-12-05 Vincent Celier <celier@gnat.com>
* prj-dect.adb (Parse): Rename parameter Modifying to Extends.
* prj-dect.ads (Parse): Rename parameter Modifying to Extends.
* prj-env.adb: Minor comment changes (modifying -> extends).
* prj-nmsc.adb: Minor comment changes (modifying -> extends).
* prj-part.adb (Parse_Single_Project): Change Tok_Modifying to
Tok_Extends.
* prj.adb (Initialize): Change Modifying to Extends.
* scans.ads (Token_Type): Change Tok_Modifying to Tok_Extends.
* prj.ads: Minor comment change (Modifying -> extending).
* snames.ads: Change modifying to extends.
2001-12-05 Robert Dewar <dewar@gnat.com>
* sem_warn.adb: Remove stuff for conditionals, we are not going to
do this after all.
* sem_warn.ads: Remove stuff for conditionals, we are not going to
do this after all. Add 2001 to copyright notice
2001-12-04 Geert Bosch <bosch@gnat.com>
* einfo.h, sinfo.h, treeprs.ads: Regenerate.
2001-12-04 Robert Dewar <dewar@gnat.com>
* errout.adb (Error_Msg): Ignore attempt to put error msg at junk
location if we already have errors. Stops some cases of cascaded
errors.
* errout.adb: Improve comment.
2001-12-04 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb:
(Analyze_Formal_Type_Definition): Defend against Error.
(Analyze_Formal_Subprogram): Defend against Error.
* par-ch12.adb (F_Formal_Type_Declaration): In case of error,
remove following semicolon if present. Removes cascaded error.
2001-12-04 Douglas B. Rupp <rupp@gnat.com>
* bindgen.adb:
(Gen_Exception_Table_Ada): Write "begin" and then return if Num
exceptions equals 0.
(Gen_Exception_Table_C): Return if Num exceptions equals 0.
Fixes PIWG E tests (which have to be run with -gnatL).
2001-12-04 Robert Dewar <dewar@gnat.com>
* einfo.ads: Minor reformatting
2001-12-04 Ed Schonberg <schonber@gnat.com>
* einfo.ads: Block_Node points to the identifier of the block, not to
the block node itself, to preserve the link when the block is
rewritten, e.g. within an if-statement with a static condition.
* inline.adb (Cleanup_Scopes): recover block statement from block
entity using new meaning of Block_Node.
* sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
identifier of block node, rather than to node itself.
2001-12-04 Gary Dismukes <dismukes@gnat.com>
* layout.adb:
(Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
(Discrimify): Go back to setting the Etypes of the selected component
because the Vname component does not exist at this point and will
fail name resolution. Also set Analyzed.
Remove with and use of Sem_Res.
2001-12-04 Arnaud Charlet <charlet@gnat.com>
* Makefile.in: (HIE_SOURCES): add s-fat*.
2001-12-04 Robert Dewar <dewar@gnat.com>
* sem_attr.adb:
(Compile_Time_Known_Attribute): New procedure.
(Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
proper range check.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
processing discriminants to diagnose illegal default values.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
access discriminant within a type extension that constrains its
parent discriminants.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
is malformed, use instance of Any_Id to allow analysis to proceed.
* par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
type definition is illegal.
(P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
misplaced.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
constants.
2001-12-04 Robert Dewar <dewar@gnat.com>
* errout.adb: Minor reformatting
2001-12-04 Robert Dewar <dewar@gnat.com>
* exp_util.adb: Minor reformatting from last change
* errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
which is a rewriting of an expression, traverse the original
expression to remove warnings that may have been posted on it.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* exp_util.adb (Must_Be_Aligned): Return false for a component of a
record that has other packed components.
2001-12-04 Douglass B. Rupp <rupp@gnat.com>
* adaint.c: Minor cleanups.
2001-12-04 Douglass B. Rupp <rupp@gnat.com>
* adaint.c: Do not use utime.h on vxworks.
2001-12-04 Arnaud Charlet <charlet@gnat.com>
* Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
more confusion than it solves.
2001-12-04 Geert bosch <bosch@gnat.com>
* einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
2001-12-04 Geert Bosch <bosch@gnat.com>
* Makefile.in (update-sources): New target.
For use by gcc_release script.
2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
a configuration pragma, it is now legal wherever a pragma can appear.
2001-12-04 Zack Weinberg <zack@codesourcery.com>
* Makefile.in: Don't set ALL. Delete @cross_defines@,
@cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
is now @CROSS@ -DIN_GCC; update comment.
2001-12-04 Robert Dewar <dewar@gnat.com>
* einfo.adb (Has_Pragma_Pure_Function): New flag.
Fix problem that stopped ceinfo from working
* einfo.ads (Has_Pragma_Pure_Function): New flag.
* sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
2001-12-04 Douglas B. Rupp <rupp@gnat.com>
* gnatchop.adb:
(File_Time_Stamp): New procedure.
(Preserve_Mode): New boolean.
(Write_Unit): Pass time stamp.
Implement -p switch (preserve time stamps).
* gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).
* gnatchop.adb: Do usage info for -p switch
* adaint.h (__gnat_set_file_time_name): New function
* adaint.c (__gnat_set_file_time_name): Implement
* adaint.h: Fix typo
2001-12-03 Robert Dewar <dewar@gnat.com>
* sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
have Associated_Node.
2001-12-03 Robert Dewar <dewar@gnat.com>
* prj-proc.adb: Minor reformatting
* make.adb: Minor reformatting
2001-12-03 Geert Bosch <bosch@gnat.com>
* make.adb: Minor reformatting.
2001-12-03 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb: Minor reformatting
2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
push Standard on the stack before analyzing the instance body,
in order to have a clean visibility environment.
* sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Instantiate_Package_Body): Protect against double
instantiation of a body that contains an inlined body.
2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb:
(Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
to prevent freezing within formal packages.
(Freeze_Subprogram_Body): If body comes from another instance that
appeared before its own body, place freeze node at end of current
declarative part, to prevent a back-end crash.
(Inline_Instance_Body): Handle properly a package instance within
a subprogram instance that is a child unit.
2001-12-01 Graham Stott <grahams@redhat.com>
* Makefile.in (misc.o): Add missing $(srcdir) prefix
and add optabs.h dependency.
* misc.c: Include optabs.h
(gnat_tree_code_type): Make static and const.
(gnat_tree_code_length): Likewise.
(gnat_tree_code_name): Likewise.
(update_setjmp_buf): Obtain operands mode from insn_data.
2001-11-29 Richard Henderson <rth@redhat.com>
* init.c: Remove obsolete dwarf2 frame.h section.
2001-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
* Make-lang.in (ada.generated-manpages): New dummy target.
2001-11-29 Ed Schonberg <schonber@gnat.com>
* g-os_lib.adb (Add_To_Command): use explicit loop to move string
into Command, an array conversion is illegal here. Uncovered by
ACATS B460005.
2001/11/28 Geert Bosch <bosch@gnat.com>
* init.c: Minor whitespace changes.
2001-11-28 Doug Rupp <rupp@gnat.com>
* init.c: (__gnat_install_handler,VMS): Increase size of alternate
signal stack.
2001-11-28 Zack Weinberg <zack@codesourcery.com>
* misc.c (gnat_expand_constant): Move declaration above
definition of lang_hooks.
(LANG_HOOKS_EXPAND_CONSTANT): Set to gnat_expand_constant.
(gnat_init): lang_expand_constant no longer exists.
(internal_error_function): Remove #ifdef HAVE_VPRINTF. We
always have vprintf.
(gnat_init): Always call set_internal_error_function.
2001-11-27 Andreas Jaeger <aj@suse.de>
* Makefile.in (stamp-tool_src_dir): Use symbolic link.
2001-11-27 Laurent Guerby <guerby@acm.org>
* Makefile.in: Regenerate Ada dependencies.
2001-11-26 Richard Henderson <rth@redhat.com>
* Make-lang.in (gnatbind, gnatmake, gnatbl, gnatchop, gnatcmd,
gnatlink, gnatkr, gnatls, gnatmem, gnatprep, gnatpsta, gnatpsys,
gnatxref, gnatfind, gnatlbr): Depend on CONFIG_H and prefix.o.
2001-11-25 Laurent Guerby <guerby@acm.org>
* sysdep.c (rts_get_*): Fix style.
2001-11-19 Laurent Guerby <guerby@acm.org>
* Makefile.in (INCLUDES_FOR_SUBDIR): Remove redundant system include
since it is of no apparent use and cause warnings.
2001-11-18 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_decode_option, gnat_init_options): Make definitions
static too.
(gnat_init): Don't return NULL.
(finish_parse): Remove.
2001-11-17 Laurent Guerby <guerby@acm.org>
* Make-lang.in (GNATLIBFLAGS): Add -W -Wall.
* gigi.h (init_decl_processing): Rename to gnat_init_decl_processing.
* io-aux.c: Provide K&R prototypes to all functions, reformat code.
* lang-spec.h: Add missing struct field to silence warnings.
* sysdep.c (rts_get_*): Provide K&R prototype.
* sysdep.c (Unlock_Task, Lock_Task): Move to K&R prototype.
* traceback.c (Unlock_Task, Lock_Task): Likewise.
* tracebak.c (__gnat_backtrace): Remove unused variable.
* utils.c (end_subprog_body): Move to K&R style.
Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* trans.c, utils2.c: Remove PALIGN parameter to get_inner_reference.
2001-11-15 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_init): Change prototype. Include the
functionality of the old init_parse and init_decl_processing.
(gnat_init_decl_processing): New prototype.
(init_parse): Remove.
* utils.c (init_decl_processing): Rename gnat_init_decl_processing.
2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (gnat_print_decl, gnat_print_type): Renamed.
(LANG_HOOKS_PRINT_DECL, LANG_HOOKS_PRINT_TYPE): Override.
(print_lang_statistics, lang_print_xnode, print_lang_identifier,
set_yydebug): Remove.
2001-11-09 Neil Booth <neil@daikokuya.demon.co.uk>
* misc.c (LANG_HOOKS_NAME, LANG_HOOKS_IDENTIFIER_SIZE): Override.
(struct lang_hooks): Constify.
(language_string, lang_identify): Remove.
* utils.c (init_decl_processing): Update.
2001-11-06 Neil Booth <neil@cat.daikokuya.demon.co.uk>
* misc.c: Include langhooks-def.h.
* Makefile.in: Update.
2001-10-30 Robert Dewar <dewar@gnat.com>
* style.adb:
(Check_Identifier): Rewrite circuit to be compatible with use of letters
in the upper half of ASCII.
(Check_Identifier): Minor reformatting
2001-10-30 Geert Bosch <bosch@gnat.com>
* (Associated_Node, Set_Associated_Node): Do not check for
Freeze_Entity.
2001-10-30 Robert Dewar <dewar@gnat.com>
* a-reatim.ads: Minor reformatting
2001-10-30 Robert Dewar <dewar@gnat.com>
* gnatdll.adb: Minor reformatting throughout. Many ??? added for
undocumented declarations.
2001-10-30 Pascal Obry <obry@gnat.com>
* gnatdll.adb (Parse_Command_Line): handle -g option to be passed
to the binder and linker.
Minor style fix.
* mdll.ads: Fix layout. Update copyright notice.
* mdll.adb: Fix layout. Update copyright notice.
2001-10-30 Robert Dewar <dewar@gnat.com>
* usage.adb: Minor fix to output for -gnaty.
2001-10-30 Ed Schonberg <schonber@gnat.com>
* a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
to accommodate all its possible values.
* a-reatim.adb (Split): Special-case handling of Time_Span_First
and of small absolute values of T.
2001-10-30 Richard Kenner <kenner@gnat.com>
* misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
set_mem_attributes since not needed and wrong if RESULT if a REG;
fixes ACATS failures.
2001-10-30 Geert Bosch <bosch@gnat.com>
* 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
2001-10-30 Robert Dewar <dewar@gnat.com>
* bindusg.adb: Undocument -f switch.
* gnatcmd.adb: Remove /FULL_ELABORATION.
* opt.ads (Force_RM_Elaboration_Order): Document that this is
obsolescent.
* gnatbind.adb: Output new warning for use of obsolescent -f switch.
* gnatbind.adb: Minor update of warning msg.
2001-10-30 Vincent Celier <celier@gnat.com>
* gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
for project file switches (-P (/PROJECT_FILE=),
-X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
or MEDIUM or HIGH)
2001-10-30 Geert Bosch <bosch@gnat.com>
* decl.c: Minor whitespace fixes.
2001-10-30 Richard Kenner <kenner@gnat.com>
* utils2.c (build_allocator): Test for SIZE overflow in array case too
2001-10-30 Geert Bosch <bosch@gnat.com>
* ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
Found due to GCC 3.0 warning of using uninitialized value.
* layout.adb:
(Get_Max_Size): Use variant record for tracking value/expression.
Makes logic clearer and prevents warnings for uninitialized variables.
(Layout_Array_Type): Use variant record for tracking value/expression.
Makes logic clearer and prevents warnings for uninitialized variables.
2001-10-30 Robert Dewar <dewar@gnat.com>
* lib.adb: Minor reformatting
* s-taprop.ads: Minor reformatting
2001-10-29 Laurent Guerby <guerby@acm.org>
* init.c:
(Raise_From_Signal_Handler, Propagate_Signal_Exception): Make arg
const.
(_gnat_error_handler): Make MSG const.
2001-10-29 Richard Kenner <kenner@gnat.com>
* sysdep.c: Fix localtime_r problem on LynxOS.
Also remove #elif to avoid warnings.
* misc.c (yyparse): Don't set up and register jmpbuf; remove decls
used by this.
* decl.c (annotate_value): Make SIZE unsigned to avoid warning.
2001-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
* 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
types.ads, urealp.adb: Fix spelling errors.
2001-10-27 Laurent Guerby <guerby@acm.org>
* trans.c (gigi): Fix non determinism leading to bootstrap
comparison failures for debugging information.
2001-10-26 Florian Weimer <fw@deneb.enyo.de>
* gnat_rm.texi: Use @./@: where appropriate.
2001-10-26 Robert Dewar <dewar@gnat.com>
* sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
2001-10-26 Richard Kenner <kenner@gnat.com>
* gmem.c (__gnat_gmem_read_next): Properly check for EOF
2001-10-26 Richard Kenner <kenner@gnat.com>
* decl.c (validate_size): Modify message for bad size to avoid
implication that compiler is modifying the size.
2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting. Fix bad header format.
2001-10-26 Robert Dewar <dewar@gnat.com>
* sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
* sinfo.ads: Clarify use of Associated_Node (documentation only).
* sem_ch12.adb: Change Node4 to Associated_Node. Change
Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
much more narrowly in places where needed. These are cleanups.
2001-10-26 Joel Brobecker <brobecke@gnat.com>
* 5zosinte.ads (null_pthread): new constant.
* 5ztaprop.adb:
(Initialize_TCB): Initialize thread ID to null, to be able to verify
later that this field has been set.
(Finalize_TCB): ditto.
(Suspend_Task): Verify that the thread ID is not null before using it.
(Resume_Task): ditto.
* s-tasdeb.adb:
(Resume_All_Tasks): Lock the tasks list before using it.
(Suspend_All_Tasks): ditto.
2001-10-26 Richard Kenner <kenner@gnat.com>
* decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
Make constant variant of designated type for Is_Access_Constant.
Call update_pointer_to with main variant.
* trans.c (process_freeze_entity, process_type):
Call update_pointer_to on main variant.
* utils.c (update_pointer_to): Make corresponding variant for NEW_TYPE.
If main variant, update all other variants.
* utils2.c (build_unary_op, case INDIRECT_REF): No longer set
TREE_STATIC.
2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting
2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting
2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-attr.adb: Minor reformatting throughout
2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-attr.ads: Minor reformatting
Add ??? comment (this whole spec has almost no comments)
2001-10-26 Vincent Celier <celier@gnat.com>
* g-os_lib.adb (Normalize_Pathname): Preserve the double slash
("//") that precede the drive letter on Interix.
2001-10-26 Geert Bosch <bosch@gnat.com>
* gnat_rm.texi: Add GNAT Reference Manual.
2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
is Error. Similar change for other renaming cases.
2001-10-25 Robert Dewar <dewar@gnat.com>
* s-atacco.ads: Add pragma Inline_Always for functions.
Fix header format. Add copyright 2001
2001-10-25 Ed Schonberg <schonber@gnat.com>
* par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
return Error rather than Empty so that analysis can proceed.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_util.adb (Enter_Name): better handling of cascaded error
messages when a unit appears in its own context.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_util.adb (Defining_Entity): in case of error, attach created
entity to specification, so that semantic analysis can proceed.
2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_util.adb
(Defining_Entity): Deal with Error.
(Process_End_Label): Deal with bad end label for.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_elab.adb (Check_A_Call): refine message when call is in an
instance but callee is not declared in the generic unit.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_elab.adb (Check_A_Call): check for renaming before finding the
enclosing unit, which may already be different from the calling unit.
2001-10-25 Geert Bosch <bosch@gnat.com>
* 4gintnam.ads: fix header format.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve_Call): if the call is actually an indexing
operation on the result of a parameterless call, perform elaboration
check after the node has been properly rewritten.
* sem_ch12.adb (Copy_Generic_Node): after the proper body has been
inlined within the generic tree, the defining identifier is not a
compilation_unit.
2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve): special-case resolution of Null in an
instance or an inlined body to avoid view conflicts.
* sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
compatibility by retrieving the access type of the generic copy.
2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_ch3.adb:
(Analyze_Number_Declaration): Handle error expression.
(Signed_Integer_Type_Declaration): Handle error bound.
(Analyze_Subtype_Indication): Handle error range.
* sem_util.adb (Get_Index_Bounds): Check for Error.
2001-10-25 Robert Dewar <dewar@gnat.com>
* restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
in no run time mode.
2001-10-25 Pascal Obry <obry@gnat.com>
* gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
mode case for ALLOC case.
* gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
all platforms. Improvement of last change.
2001-10-25 Robert Dewar <dewar@gnat.com>
* exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
2001-10-25 Geert Bosch <bosch@gnat.com>
* osint.adb (Is_Relative): Remove duplicate.
2001-10-25 Pascal Obry <obry@gnat.com>
* osint.adb (Read_Default_Search_Dirs): correctly detect relative
pathnames in UNIX and DOS style with drive letter.
(Is_Relative): new routine.
* osint.adb: Minor reformatting
* osint.adb (Is_Relative): implementation using
GNAT.OS_Lib.Is_Absolute_Path. Better fix.
2001-10-25 Pascal Obry <obry@gnat.com>
* g-dirope.adb (Basename): correctly compute offset between the
original Path and the translated one.
* g-dirope.adb: (Base_Name): add some comments.
2001-10-25 Robert Dewar <dewar@gnat.com>
* exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
in HIE mode, avoids compilation abandoned message
* exp_imgv.adb: Correct typo in previous change
* exp_imgv.adb: Correct typo in previous change (not my day!)
2001-10-25 Robert Dewar <dewar@gnat.com>
* s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
2001-10-25 Pascal Obry <obry@gnat.com>
* g-awk.ads: Move all pragma inlines next to the routine
declarations. This is more uniform with other GNAT spec.
2001-10-22 Geert Bosch <bosch@gnat.com>
* Make-lang.in (gnattools, cross-gnattools): Remove gnatmem.
2001-10-19 Geert Bosch <bosch@gnat.com>
* Makefile.in (tools, gnattools): Remove gnatmem.
2001-10-17 Richard Henderson <rth@redhat.com>
* Makefile.in (misc.o): Depend on langhooks.h.
* misc.c: Include it.
(LANG_HOOKS_INIT, LANG_HOOKS_INIT_OPTIONS): New.
(LANG_HOOKS_DECODE_OPTION): New.
(lang_hooks): Use LANG_HOOKS_INITIALIZER.
2001-10-16 Florian Weimer <fw@deneb.enyo.de>
* trans.c (tree_transform): Adjust to recent change in
expand_asm_operands to implement named asm operands.
2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Bugfix in
renaming of discriminant for mutable record type.
2001-10-11 Robert Dewar <dewar@gnat.com>
* validsw.adb: Properly save -gnatVn status.
2001-10-11 Robert Dewar <dewar@gnat.com>
* usage.adb: Add lines for V switch.
* gnatcmd.adb (COMPILE): Revise translations for -gnatV
(/VALIDITY_CHECKING).
2001-10-11 Ed Schonberg <schonber@gnat.com>
* sem_type.adb (Add_One_Interp): an operator for a type declared in
an extension of System is known to be visible.
2001-10-11 Ed Schonberg <schonber@gnat.com>
* sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
properly. Fixes regression on ACATS C34005G.
2001-10-11 Robert Dewar <dewar@gnat.com>
* sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
loop in generic instance, since this is likely not very useful.
2001-10-11 Robert Dewar <dewar@gnat.com>
* restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
the error message for high integrity mode.
* rtsfind.adb (RTE): Give message if we try to find an entity that
is not available in high integrity mode.
* rtsfind.ads:
(OK_To_Use_In_HIE_Mode): New array.
(RTE): May return Empty in high integrity mode.
* rtsfind.ads (OK_To_Use_In_No_Run_Time_Mode): New name for
OK_To_Use_In_HIE_Mode, now includes System_FAT_xxx.
* sem_ch6.adb (Analyze_Subprogram_Body): Kill body in predefined
unit if not inlined always and in no runtime mode. Fixes problem
caused by new Rtsfind changes.
* sem_ch6.adb (Analyze_Subrogram_Body): Do not Check_References if
body is deleted.
* rtsfind.adb (RTE): Make sure we do not try to load unit after
giving message for entity not available in high integrity mode.
2001-10-11 Pascal Obry <obry@gnat.com>
* impunit.adb: Add GNAT.CRC32.
2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
properly the case where one universal operand in a non-static
exponentiation of a real literal.
2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
clause, return the gobal finalization list, for lack of anthing else.
2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_ch7.adb (Make_Transient_Block): if statement is within
exception handler, always use new transient scope to place Clean
procedure.
2001-10-11 Pascal Obry <obry@gnat.com>
* Makefile.in:
(GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
(GNATBIND_OBJS): add g-crc32.o, a-tags.o, a-stream.o
(GNATLS_RTL_OBJS): add g-crc32.o
(GNATMAKE_RTL_OBJS): add g-crc32.o
* ali-util.adb:
(CRC_Match): new function.
(Get_File_Checksum): renamed Get_File_CRC. Use the GNAT.CRC32 unit
instead of the previous simple checksum algorithm.
(Time_Stamp_Mismatch): use CRC_Match for comparison.
(Set_Source_Table): idem.
* ali-util.ads:
(Get_File_Checksum): renamed Get_File_CRC as now we compute CRC
instead of simple checksum.
(CRC_Match): new function.
(CRC_Error): new constant.
* ali.adb (Scan_ALI): rename variable Chk to CRC as we are handling
a CRC now and not a simple checksum. A CRC uses lower-case hex
letters, fixes ambiguity in parsing.
* ali.ads (Sdep_Record.Checksum): renamed Sdep_Record.CRC as this
is what this variable will store.
* bcheck.adb: Change reference to chechsum in comments by CRC.
(Check_Consistency): Rename Get_File_Checksum to Get_File_CRC.
rename All_Checksum_Match to All_CRC_Match. Change due to API
renaming since now GNAT does not use a simple checksum but a
CRC using GNAT.CRC32.
* gnatls.adb: Rename Checksum to CRC in many places, we use a CRC
now and not anymore a simple checksum.
* lib-load.adb: Use Source_CRC instead of Source_Checksum in many
places.
* lib-writ.adb (Write_ALI): Use Source_CRC instead of Source_Checksum.
* scans.adb:
(Restore_Scan_State): rename Checksum to CRC.
(Save_Scan_State): idem.
* scans.ads:
With GNAT.CRC32.
(Checksum): rename to CRC.
(Saved_Scan_State): Save_Checksum field renamed to Save_CRC
* scn-nlit.adb: Rename many Accumulate_Checksum to Update (from
GNAT.CRC32). Update copyright notice.
* scn-slit.adb: Rename many Accumulate_Checksum to Update (from
GNAT.CRC32). Update copyright notice.
* scn.adb:
(Accumulate_Checksum): removed.
(Update): new procedure. Add a wide-character into the CRC.
* sinput-l.adb:
(Complete_Source_File_Entry): use CRC32 instead of simple checksum.
(Load_File): fix initialization of S (change Source_Checksum to
Source_CRC)
* sinput-p.adb (Load_Project_File): rename Source_Checksum to
Source_CRC in S initialization.
* sinput.adb (Source_Checksum): renamed to Source_CRC.
* sinput.ads (Source_Checksum): renamed to Source_CRC.
Update comments for the CRC.
* types.adb (Hex): Use lowercase for the letter part.
* types.ads (Get_Hex_String): Returns the hexadecimal representation
for a word. This is currently used only for CRC. In previous version,
the checksum was using a representation with all letter being
upper-case. With the new implementation (using CRC) we do not remove
the 32th bit of the CRC, so we can have an upper-case starting letter
in the CRC. This is not possible to parse in Scan_ALI (ali.adb).
It is ambigous since the CRC was optional and could be followed by
options like EB, EE. So now this routines uses lower-case letter for
the hexadecimal representation. Strange enough only lower case letters
where checked in Scan_ALI (even if this was not a possible case).
* gnatvsn.ads (Library_Version): changed to 3.15a.
* s-crc32.ads: Initial version from GNAT.CRC32. This is the version
for the compiler.
* s-crc32.adb: Initial version from GNAT.CRC32. This is the version
for the compiler.
* ali-util.adb: Redo previous change to avoid using word CRC everywhere
Add 2001 to copyright notice
(Accumulate_Checksum): Modify to use System.CRC32.
* ali-util.ads: Redo changes of previous revision to continue to use
the word Checksum. Add 2001 to copyright notice.
* ali.adb: Undo some of previous changes, not needed.
Keep the change for lower case letters in the checksum.
* ali.ads: Undo previous change not needed.
* bcheck.adb: Undo most of previous change, not needed.
But do use Checksums_Match for checksum comparison.
* gnatls.adb: Undo most of previous change, not needed.
But do use Checksums_Match for comparing checksums.
* lib-load.adb: Undo previous change, not needed.
* lib-writ.adb: Undo previous change, not needed.
* lib-writ.ads: Document that checksums use lower case,
not upper case letters.
* scans.adb: Undo previous change, not needed
* scans.ads: Undo previous change, not needed.
* scn-nlit.adb: Undo previous changes, not needed.
* scn-slit.adb: Undo previous change, not needed. Fix header format.
* scn.adb:
(Accumulate_Checksum): Use System.CRC32.
(Initialize_Checksum): New procedure.
Remove other changes of previous revision.
* sinput-p.adb: Undo previous change, not needed.
* sinput.adb: Undo previous change, not needed.
* sinput-l.adb: Undo previous change, not needed.
* sinput.ads: Undo previous change, not needed. Keep only comment
on new checksum algorithm
* Makefile.in: Add s-crc32 as needed, remove g-crc32.
Also remove a-tags and a-stream from GNAT sources.
* ali.adb (Scan_ALI): fix typo introduce in latest check-in.
* Makefile.in (GNATRTL_NONTASKING_OBJS): Add g-crc32.o.
2001-10-11 Geert Bosch <bosch@gnat.com>
* einfo.h: Regenerate.
* nmake.ads: Regenerate.
* nmake.adb: Regenerate.
* sinfo.h: Regenerate.
* treeprs.adb: Regenerate.
2001-10-10 Geert Bosch <bosch@gnat.com>
* gnat-style.texi: New file describing coding guidelines for Ada.
2001-10-10 Ed Schonberg <schonber@gnat.com>
* einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
is Flag174.
2001-10-10 Geert Bosch <bosch@gnat.com>
* snames.ads: Add new names for project facility.
* snames.adb: Update to reflect snames.ads changes.
* snames.h: Update to reflect snames.ads changes.
2001-10-10 Vincent Celier <celier@gnat.com>
* make.adb:
(Add_Switches): reflect the changes for the switches attributes
Default_Switches indexed by the programming language,
Switches indexed by the file name.
(Collect_Arguments_And_Compile): Idem.
Reflect the attribute name changes.
* prj-attr.adb:
(Initialisation_Data): Change the names of some packages and
attributes.
(Initialize): process case insensitive associative arrays.
* prj-attr.ads:
(Attribute_Kind): Remove Both, add Case_Insensitive_Associative_Array.
* prj-dect.adb:
(Parse_Attribute_Declaration): For case insensitive associative
arrays, set the index string to lower case.
* prj-env.adb:
Reflect the changes of the project attributes.
* prj-nmsc.adb:
Replace Check_Naming_Scheme by Ada_Check and
Language_Independent_Check.
* prj-nmsc.ads:
Replaced Check_Naming_Scheme by 2 procedures:
Ada_Check and Language_Independent_Check.
* prj-proc.adb:
(Process_Declarative_Items): For case-insensitive associative
arrays, set the index string to lower case.
(Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
Prj.Nmsc.Check_Naming_Scheme.
* prj-tree.adb:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
* prj-tree.ads:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
(Project_Node_Record): New flag Case_Insensitive.
* prj-util.adb:
(Value_Of): new function to get the string value of a single
string variable or attribute.
* prj-util.ads:
(Value_Of): new function to get the string value of a single
string variable or attribute.
* prj.adb:
(Ada_Default_Spec_Suffix): New function
(Ada_Default_Impl_Suffix): New function
Change definitions of several constants to reflect
new components of record types.
* prj.ads:
(Naming_Data): Change several components to reflect new
elements of naming schemes.
(Project_Data): New flags Sources_Present and
Language_Independent_Checked.
(Ada_Default_Spec_Suffix): New function.
(Ada_Default_Impl_Suffix): New function.
* snames.ads:
Modification of predefined names for project manager: added
Implementation, Specification_Exceptions, Implementation_Exceptions,
Specification_Suffix, Implementation_Suffix, Separate_Suffix,
Default_Switches, _Languages, Builder, Cross_Reference,
Finder. Removed Body_Part, Specification_Append, Body_Append,
Separate_Append, Gnatmake, Gnatxref, Gnatfind, Gnatbind,
Gnatlink.
* prj.ads: (Ada_Default_Spec_Suffix, Ada_Default_Impl_Suffix):
Add comments.
* prj-nmsc.adb (Ada_Check): Test that Separate_Suffix is defaulted,
not that it is Nil_Variable_Value.
* prj.ads: Add ??? for uncommented declarations
2001-10-10 Ed Schonberg <schonber@gnat.com>
* sem_prag.adb: (Analyze_Pragma, case External): If entity is a
constant, do not indicate possible modification, so that gigi can
treat it as a bona fide constant.
2001-10-10 Robert Dewar <dewar@gnat.com>
* sem_prag.adb: Add processing for pragma External.
* snames.ads: Add entry for pragma External.
* par-prag.adb: Add pragma External.
* snames.adb: Updated to match snames.ads.
2001-10-10 Ed Schonberg <schonber@gnat.com>
* exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
a dynamic task if the allocator appears in an indexed assignment
or selected component assignment.
* exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
For a dynamic task in an assignment statement, use target of
assignment to generate meaningful name.
2001-10-10 Ed Schonberg <schonber@gnat.com>
* einfo.adb (Write_Field19_Name): Body_Entity is also defined for
a generic package.
* einfo.ads: Body_Entity is also defined for generic package.
Documentation change only
* exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
others_choice for a discriminated component initialization,
convert discriminant references into the corresponding discriminals.
* exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
only if original type is private and expression has to be wrapped
in a conversion.
* checks.adb:
(Apply_Constraint_Check): Do not perform length check
if expression is an aggregate with only an others_choice.
(Length_N_Cond): two references to the same in_parameter
(typically the discriminal in an init_proc) denote the same value.
Two useful optimization uncovered by bugfixes above.
2001-10-10 Robert Dewar <dewar@gnat.com>
* xeinfo.adb: Change int to char in translation of enumeration types.
This fixes a problem in the C representation of component alignment.
Add 2001 to copyright notice
2001-10-10 Richard Kenner <kenner@gnat.com>
* decl.c: (validate_size): Do check size of object of integral type
if it is a packed array type.
2001-10-10 Richard Kenner <kenner@gnat.com>
* decl.c: (gnat_to_gnu_entity, case object): Also materialize
VAR_DECL for constant if not Is_Public but -O0.
2001-10-10 Richard Kenner <kenner@gnat.com>
* misc.c (struct lang_hooks): Add new initializer to match GCC change.
2001-10-10 Geert Bosch <bosch@gnat.com>
* xnmake.adb (XNmake): Fix handling of -s/-b options. No longer
use '/' as switch character, allowing for absolute file names.
2001-10-09 Joseph S. Myers <jsm28@cam.ac.uk>
* 4gintnam.ads, Make-lang.in, Makefile.in, config-lang.in: Update
FSF address.
2001-10-08 Geert Bosch <bosch@gnat.com>
* Makefile.in (treeprs.ads, einfo.h, sinfo.h, nmake.adb, nmake.ads):
Automatically build utilities when files need to be regenerated.
2001-10-08 Geert Bosch <bosch@gnat.com>
* xsnames.adb: New utility for updating snames.ads and snames.adb
2001-10-08 Zack Weinberg <zack@codesourcery.com>
* Make-lang.in (ADAFLAGS): Add -W -Wall.
(ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
(gnat1): Also depend on attribs.o.
(gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
* Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
(ADAC): Set to @ADAC@ in stage1, $(CC) later.
(ADAFLAGS): Add -W -Wall.
(ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
take out CFLAGS.
(.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
Use $(ADAC), not $(CC), as compilation command.
(gnattools): Depend directly on tools to build, don't use
recursive make.
(gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
* einfo.h, sinfo.h: New files (autogenerated).
2001-10-08 Richard Henderson <rth@redhat.com>
* comperr.adb (Abort_In_Progress): New.
(Compiler_Abort): Use it to prevent recursion.
2001-10-08 Robert Dewar <dewar@gnat.com>
* atree.adb: Set Error_Posted in Error node, helps error recovery.
* par-endh.adb (Output_End_Expected): We should also not test
Error_Posted on the Error node, since now it is always set.
* cstand.adb (Create_Standard): Set Etype of Error to Any_Type
to help error recovery. Part of general work on 9407-004.
* par.adb: Add ??? for misuse of error
* sem_res.adb:
(Resolve): Defend against Error, fixes 9407-003.
(Resolve_Discrete_Subtype_Indication): Defend against Error.
* sinfo.ads (N_Error): Now has Etype field (which will be set
to Any_Type to help error recovery).
2001-10-08 Richard Kenner (kenner@gnat.com)
* misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
Consistently set MEM attributes from expression; fixes
bootstrap failure on x86.
2001-10-08 Geert Bosch (bosch@gnat.com)
* 5oosinte.adb: Add 2001 to copyright notice.
2001-10-08 Geert Bosch (bosch@gnat.com)
* ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
* csinfo.adb: Add utility for consistency checking of sinfo.ad[bs].
2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
* 5oosinte.adb: Fix spelling error of "separate" as "seperate".
2001-10-05 Geert Bosch (bosch@gnat.com)
* adaint.h: Small formatting fix.
2001-10-04 Geert Bosch <bosch@gnat.com>
* sysdep.c (__gnat_set_binary_mode, __gnat_set_text_mode):
Arg is int, not FILE *, in dummy version of functions.
* adaint.h (__gnat_set_binary_mode, __gnat_set_text_mode):
Arg is int, not FILE *.
2001-10-04 Geert Bosch <bosch@gnat.com>
* 3lsoccon.ads: Added file, missed with initial check ins.
* 4lintnam.ads: Fix header format.
Change Linux to GNU/Linux.
* 5iosinte.adb: Change Linux to GNU/Linux.
* 5iosinte.ads: Change Linux to GNU/Linux.
* 5itaprop.adb: Change Linux to GNU/Linux.
* 5itaspri.ads: Change Linux to GNU/Linux.
Update copyright notice.
* 5lintman.adb: Change Linux to GNU/Linux.
* 5lml-tgt.adb: Change Linux to GNU/Linux.
* 5losinte.ads: Change Linux to GNU/Linux.
* 5lsystem.ads: Change Linux to GNU/Linux.
* 5qosinte.adb: Change Linux to GNU/Linux.
* 5qosinte.ads: Change Linux to GNU/Linux.
* 5qparame.ads: Change Linux to GNU/Linux.
* 5qtaprop.adb: Change Linux to GNU/Linux.
* 5qtaspri.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice.
* 5vintman.ads: Change Linux to GNU/Linux.
Fix header format. Add 2001 to copyright notice.
* g-soccon.ads: Change Linux to GNU/Linux.
* g-trasym.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice.
* memtrack.adb: Change Linux to GNU/Linux.
* s-intman.ads: Change Linux to GNU/Linux.
Add 2001 to copyright notice. Fix header format.
* s-stache.adb: Change Linux to GNU/Linux.
* adaint.c: Change Linux to GNU/Linux.
* cio.c: Change Linux to GNU/Linux.
* cstreams.c: Change Linux to GNU/Linux.
* init.c: Change Linux to GNU/Linux.
* gmem.c: Change Linux to GNU/Linux.
* tracebak.c: Change Linux to GNU/Linux.
2001-10-02 Geert Bosch <bosch@gnat.com>
* misc.c (insert_default_attributes): Add dummy version.